jackrabbit-oak-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Dürig (JIRA) <j...@apache.org>
Subject [jira] [Commented] (OAK-89) Improve exception handling
Date Wed, 09 May 2012 10:05:50 GMT

    [ https://issues.apache.org/jira/browse/OAK-89?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13271266#comment-13271266
] 

Michael Dürig commented on OAK-89:
----------------------------------

bq. The trouble with this approach is that the NameMapper can't know what kind of a RepositoryException...

Right. That's why I said earlier (08/May/12 10:06) that when using checked exceptions, we
should make them specific, not inherit from a common base exception, and keep them locally
scoped. Otherwise we end with the same situation you just described plus all the noise which
goes with checked exceptions. 

bq. ... if it makes the code cleaner and/or safer, and doesn't lead to too much control flow

It makes it safer but noisier. And well, checked exceptions are a control flow construct.
Only that no one dares to admit ;-)
                
> 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

       

Mime
View raw message