[ https://issues.apache.org/jira/browse/OAK-2690?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
angela updated OAK-2690: ------------------------ Attachment: getgroupmembership.txt updated benchmark results for - PrincipalManager#getGroupMembership - Repository#login apart from some performance improvement, optionally exposing an impl specific principal provider with the user mgt implementation would allow us to further add implementation specific optimization relying on the very details of the implementation which is not possible with the generic default principal mgt implementation. > Add optional UserConfiguration#getUserPrincipalProvider() > --------------------------------------------------------- > > Key: OAK-2690 > URL: https://issues.apache.org/jira/browse/OAK-2690 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: core > Reporter: angela > Assignee: angela > Fix For: 1.3.0 > > Attachments: OAK-2690.patch, getgroupmembership.txt, > loginmembership_compare_userprincipalprovider.txt > > > while playing around with overall group principal resolution during the > repository login, I thought that having a principal provider that knows about > the details of the user management implementation may might be a slight > improvement compared to the generic default implementation as present in > {{org.apache.jackrabbit.oak.security.principal.PrincipalProviderImpl}}, which > just acts on the {{UserManager}} interface and thus always creates > intermediate {{Authorizable}} objects. > in order to be able to get there (without having the default principal mgt > implementation rely on implementation details of the user mgt module), we > would need an addition to the {{UserConfiguration}} that allows to optionally > obtain a {{PrincipalProvider}}; the fallback in the default > {{PrincipalConfiguration}} in case the user configuration does not expose a > specific principal provider would be the current (generic) solution. -- This message was sent by Atlassian JIRA (v6.3.4#6332)