[ https://issues.apache.org/jira/browse/OAK-3191?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14660776#comment-14660776 ]
Timothee Maret commented on OAK-3191: ------------------------------------- Thanks [~anchela], ensuring backaward compatibility also makes sense. I agree, this is not urgent (I used the default priority). > Oak UserManager#getAuthorizable handles null and empty string differently > than Jackrabbit > ----------------------------------------------------------------------------------------- > > Key: OAK-3191 > URL: https://issues.apache.org/jira/browse/OAK-3191 > Project: Jackrabbit Oak > Issue Type: Bug > Components: core > Affects Versions: 1.3.2 > Reporter: Timothee Maret > Assignee: angela > Priority: Minor > Attachments: OAK-3191.patch > > > With Jackrabbit, the following API call > {code} > UserManager#getAuthorizable(String auth) > {code} > with either {{null}} or {{""}} used to throw > {code} > throw new IllegalArgumentException("Invalid authorizable name '" + id + "'"); > {code} > With Oak UserManager, the same input does not throw an IAE, but instead > return a {{null}} value when providing {{""}} and throws a NPE when providing > {{null}}. > From my POV, it would be best to avoid throwing exceptions on those two > cases. Indeed, returning a {{null}} value is simpler for the API user and > would comply with the API. > If so, the implementation in case of {{null}} may be changed in order to > swallow the {{null}} value and the difference between Jackrabbit and Oak may > be documented. -- This message was sent by Atlassian JIRA (v6.3.4#6332)