change terminology for exception type hierarchy traversal
---------------------------------------------------------

                 Key: SEAMCATCH-31
                 URL: https://issues.jboss.org/browse/SEAMCATCH-31
             Project: Seam Catch
          Issue Type: Feature Request
            Reporter: Dan Allen
            Assignee: Jason Porter


There appears to be some confusion about what the traversal path means. We've 
come up with some better terms that should help users understand how to use it.

When one of the exceptions in the stack trace is being handled, the handlers 
for that exception are notified in a particular order. That order is based on 
the type hierarchy of the exception. The traversal seeks to address this 
scenario:

Assume that a group of exceptions have a common super class. You may choose to 
write a handler that catches all of those exceptions by handling that super 
type. We'll call that a category handler, where the super class represents a 
category (i.e., SQLException) So the question you have to ask yourself, then, 
is: 

Do you want your category handler to be notified before or after the handler 
for the subtype gets notified?

You specify you want the category handler to be notified before by adding the 
attribute during = TraversalPath.DESCENDING to the @Handles exception.

However, this descending/ascending isn't catching on. Tree traversal is more 
commonly referred to using the terms breadth-first or depth-first. Catch 
notifies breadth-first handlers before depth-first handlers, in the order of 
the tree traversal (walking the exception type hierarchy).

Therefore, these attribute values would make more sense:

during = TraversalMode.BREADTH_FIRST
during = TraversalMode.DEPTH_FIRST (default)

If you write a SQLException handler with during = TraversalMode.BREADTH_FIRST, 
then it will be notified before a handler for BatchUpdateException.  

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        
_______________________________________________
seam-issues mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/seam-issues

Reply via email to