org.eclipse.uml2.uml
Interface ExceptionHandler

All Superinterfaces:
Element, EModelElement, EObject, Notifier

public interface ExceptionHandler
extends Element

A representation of the model object 'Exception Handler'. An exception handler is an element that specifies a body to execute in case the specified exception occurs during the execution of the protected node.

The following features are supported:

See Also:
UMLPackage.getExceptionHandler()

Method Summary
 ObjectNode getExceptionInput()
          Returns the value of the 'Exception Input' reference
 Classifier getExceptionType(String name)
          Retrieves the first Classifier with the specified 'Name' from the 'Exception Type' reference list
 Classifier getExceptionType(String name, boolean ignoreCase, EClass eClass)
          Retrieves the first Classifier with the specified 'Name' from the 'Exception Type' reference list
 EList getExceptionTypes()
          Returns the value of the 'Exception Type' reference list.
 ExecutableNode getHandlerBody()
          Returns the value of the 'Handler Body' reference
 ExecutableNode getProtectedNode()
          Returns the value of the 'Protected Node' container reference.
 void setExceptionInput(ObjectNode value)
          Sets the value of the 'Exception Input' reference
 void setHandlerBody(ExecutableNode value)
          Sets the value of the 'Handler Body' reference
 void setProtectedNode(ExecutableNode value)
          Sets the value of the 'Protected Node' container reference
 boolean validateEdgeSourceTarget(DiagnosticChain diagnostics, Map context)
           An edge that has a source in an exception handler structured node must have its target in the handler also, and vice versa.
 boolean validateExceptionBody(DiagnosticChain diagnostics, Map context)
           The exception handler and its input object node are not the source or target of any edge.
 boolean validateOneInput(DiagnosticChain diagnostics, Map context)
           The handler body has one input, and that input is the same as the exception input.
 boolean validateResultPins(DiagnosticChain diagnostics, Map context)
           The result pins of the exception handler body must correspond in number and types to the result pins of the protected node.
 
Methods inherited from interface org.eclipse.uml2.uml.Element
addKeyword, allOwnedElements, applyStereotype, createEAnnotation, createOwnedComment, destroy, getApplicableStereotype, getApplicableStereotypes, getAppliedStereotype, getAppliedStereotypes, getAppliedSubstereotype, getAppliedSubstereotypes, getKeywords, getModel, getNearestPackage, getOwnedComments, getOwnedElements, getOwner, getRelationships, getRelationships, getRequiredStereotype, getRequiredStereotypes, getSourceDirectedRelationships, getSourceDirectedRelationships, getStereotypeApplication, getStereotypeApplications, getTargetDirectedRelationships, getTargetDirectedRelationships, getValue, hasKeyword, hasValue, isStereotypeApplicable, isStereotypeApplied, isStereotypeRequired, mustBeOwned, removeKeyword, setValue, unapplyStereotype, validateHasOwner, validateNotOwnSelf
 
Methods inherited from interface org.eclipse.emf.ecore.EModelElement
getEAnnotation, getEAnnotations
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 

Method Detail

getHandlerBody

public ExecutableNode getHandlerBody()
Returns the value of the 'Handler Body' reference. A node that is executed if the handler satisfies an uncaught exception.

Returns:
the value of the 'Handler Body' reference.
See Also:
ExceptionHandler.setHandlerBody(ExecutableNode), UMLPackage.getExceptionHandler_HandlerBody()

setHandlerBody

public void setHandlerBody(ExecutableNode value)
Sets the value of the 'Handler Body' reference.

Parameters:
value - the new value of the 'Handler Body' reference.
See Also:
ExceptionHandler.getHandlerBody()

getExceptionInput

public ObjectNode getExceptionInput()
Returns the value of the 'Exception Input' reference. An object node within the handler body. When the handler catches an exception, the exception token is placed in this node, causing the body to execute.

Returns:
the value of the 'Exception Input' reference.
See Also:
ExceptionHandler.setExceptionInput(ObjectNode), UMLPackage.getExceptionHandler_ExceptionInput()

setExceptionInput

public void setExceptionInput(ObjectNode value)
Sets the value of the 'Exception Input' reference.

Parameters:
value - the new value of the 'Exception Input' reference.
See Also:
ExceptionHandler.getExceptionInput()

getExceptionTypes

public EList getExceptionTypes()
Returns the value of the 'Exception Type' reference list. The list contents are of type Classifier. The kind of instances that the handler catches. If an exception occurs whose type is any of the classifiers in the set, the handler catches the exception and executes its body.

Returns:
the value of the 'Exception Type' reference list.
See Also:
UMLPackage.getExceptionHandler_ExceptionType()

getExceptionType

public Classifier getExceptionType(String name)
Retrieves the first Classifier with the specified 'Name' from the 'Exception Type' reference list.

Parameters:
name - The 'Name' of the Classifier to retrieve, or null.
Returns:
The first Classifier with the specified 'Name', or null.
See Also:
ExceptionHandler.getExceptionTypes()

getExceptionType

public Classifier getExceptionType(String name,
                                   boolean ignoreCase,
                                   EClass eClass)
Retrieves the first Classifier with the specified 'Name' from the 'Exception Type' reference list.

Parameters:
name - The 'Name' of the Classifier to retrieve, or null.
ignoreCase - Whether to ignore case in String comparisons.
eClass - The Ecore class of the Classifier to retrieve, or null.
Returns:
The first Classifier with the specified 'Name', or null.
See Also:
ExceptionHandler.getExceptionTypes()

getProtectedNode

public ExecutableNode getProtectedNode()
Returns the value of the 'Protected Node' container reference. It is bidirectional and its opposite is 'Handler'. The node protected by the handler. The handler is examined if an exception propagates to the outside of the node.

Returns:
the value of the 'Protected Node' container reference.
See Also:
ExceptionHandler.setProtectedNode(ExecutableNode), UMLPackage.getExceptionHandler_ProtectedNode(), ExecutableNode.getHandlers()

setProtectedNode

public void setProtectedNode(ExecutableNode value)
Sets the value of the 'Protected Node' container reference.

Parameters:
value - the new value of the 'Protected Node' container reference.
See Also:
ExceptionHandler.getProtectedNode()

validateExceptionBody

public boolean validateExceptionBody(DiagnosticChain diagnostics,
                                     Map context)
The exception handler and its input object node are not the source or target of any edge. true


validateResultPins

public boolean validateResultPins(DiagnosticChain diagnostics,
                                  Map context)
The result pins of the exception handler body must correspond in number and types to the result pins of the protected node. true


validateOneInput

public boolean validateOneInput(DiagnosticChain diagnostics,
                                Map context)
The handler body has one input, and that input is the same as the exception input. true


validateEdgeSourceTarget

public boolean validateEdgeSourceTarget(DiagnosticChain diagnostics,
                                        Map context)
An edge that has a source in an exception handler structured node must have its target in the handler also, and vice versa. true


Copyright 2003, 2006 IBM Corporation and others.
All Rights Reserved.