[
https://issues.apache.org/jira/browse/QPID-7352?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15434891#comment-15434891
]
Alex Rudyy commented on QPID-7352:
----------------------------------
Lorenz,
I reviewed your changes and here my review comments:
* I think that instances of ObjectMapers should be kept in the fields where it
is possible rather then being constructed on every read/write. It seems that
current approach would increase the pressure to GC , as more short-lived
objects would be 'garbage collected' for every ObjectMaper instance. For
example, in MapBinding we can move the ObjectMaper into a private field. As
result, only one instance of ObjectMaper would be used for
serialization/deserialization of preferences on bdb store. I think that we can
move ObjectMaper into a static private field in AbstractConfiguredObject as
well. The same applies to ConfiguredObjectTypeRegistry.
* I think that QpidPrincipal should have a method toExternalForm() to return a
string with properly formatted principal. That would eliminate the need for
formatting logic in JsonSerializer. It seems to me that it isa responsibility
of QpidPrincipal to present the principal as String in right format.
* As agreed GenericPrincipal parsing regexp needs changes to be less
restrictive. The username and CO names should be URL encoded
* The current format of QpidPrincipal relies on fact that type names are unique
across all authentication and group providers. We aggreed that it is Ok at the
moment as we do not have overlapping types between authentication and group
providers.
> [Java Broker] Principal serialisation
> -------------------------------------
>
> Key: QPID-7352
> URL: https://issues.apache.org/jira/browse/QPID-7352
> Project: Qpid
> Issue Type: Improvement
> Components: Java Broker
> Reporter: Keith Wall
> Assignee: Lorenz Quack
> Fix For: qpid-java-6.1
>
>
> Implement a Jackson serialiser for Principals and add a corresponding
> {{AttributeValueConverter}} that takes the serialised form any produces
> Generic Principals. The serialised form is to include the reference to the
> AuthenticationProvider (name and type). Group Providers need the
> corresponding change.
> Update the preference store and preference store recoverer to store the
> principal's serialised form for {{owner}} and {{visibilityList}}, and recover
> generic principal objects.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]