[ https://issues.apache.org/jira/browse/OAK-89?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13270581#comment-13270581 ]
Jukka Zitting commented on OAK-89: ---------------------------------- bq. Why {{AbstractNameMapper.getJcrName()}} should throw a {{IllegalStateException}} here is beyond me. Here's how I'd define the error-handling for the NameMapper interface: {code:java} /** * Returns the Oak name for the given JCR name, or {@code null} if no * such mapping exists because the given JCR name contains an unknown * namespace URI or prefix, or is otherwise invalid. * * @param jcrName JCR name * @return Oak name, or {@code null} */ String getOakName(String jcrName); /** * Returns the JCR name for the given Oak name. The given name is * expected to have come from a valid Oak repository that contains * only valid names with proper namespace mappings. If that's not * the case, either a programming error or a repository corruption * has occurred and an appropriate unchecked exception gets thrown. * * @param oakName Oak name * @return JCR name */ String getJcrName(String oakName); {code} Are there some cases that aren't covered by such a definition? > Improve exception handling > -------------------------- > > Key: OAK-89 > URL: https://issues.apache.org/jira/browse/OAK-89 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: core, jcr > Affects Versions: 0.2.1 > Reporter: Michael Dürig > Attachments: OAK-89-2.patch, OAK-89.patch > > > As discusses on the @oak-dev list [1] we need to improve the way exceptions > are thrown and handled. > I suggest to create a OakException which extends from RuntimeException and > encapsulate a RepositoryException into it. These exceptions can then be > handled where appropriate. We can the later turn this into a more > sophisticated mechanism where the OakException is mapped to a corresponding > RepositoryException by an injected mapping (see Jukka's proposal in the > discussion). > [1] http://markmail.org/message/t5czrpkvyamn7sym -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira