Class FlowGraphEndPoints
- java.lang.Object
-
- de.xima.fc.workflow.processor.model.FlowGraphEndPoints
-
- All Implemented Interfaces:
IFlowGraphEndPoints
,Serializable
public final class FlowGraphEndPoints extends Object implements IFlowGraphEndPoints
POJO implementation ofIFlowGraphEndPoints
.- Since:
- 7.0.0
- Author:
- XIMA MEDIA GmbH
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description FlowGraphEndPoints(com.google.common.collect.ImmutableSet<NodeKey> normalEndPoints, com.google.common.collect.ImmutableSet<NodeKey> throwingEndPoints)
Creates a new POJO with the given data.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static IFlowGraphEndPoints
empty()
com.google.common.collect.ImmutableSet<NodeKey>
getNormalEndPoints()
Returns the set of all nodes (including the children, grand-children etc.com.google.common.collect.ImmutableSet<NodeKey>
getThrowingEndPoints()
Returns the set of all nodes (including the children, grand-children etc.
-
-
-
Constructor Detail
-
FlowGraphEndPoints
public FlowGraphEndPoints(com.google.common.collect.ImmutableSet<NodeKey> normalEndPoints, com.google.common.collect.ImmutableSet<NodeKey> throwingEndPoints)
Creates a new POJO with the given data.- Parameters:
normalEndPoints
- The value returned bygetNormalEndPoints()
throwingEndPoints
- The value returned bygetThrowingEndPoints()
-
-
Method Detail
-
getNormalEndPoints
public com.google.common.collect.ImmutableSet<NodeKey> getNormalEndPoints()
Description copied from interface:IFlowGraphEndPoints
Returns the set of all nodes (including the children, grand-children etc. of this node) that represent the normal end points when the node is executed. A normal end point is a node that can complete normally (i.e. will not always throw or return) and does not always transfer control to the node or a child of the node when it completes normally.More formally, given a syntax tree of nodes representing the parent-child relationship, a normal end point of a node n is the set of all nodes {m} such that all of the following hold:
- (a) m is in the subtree of n,
- (b) m can potentially complete normally (=does not always throw or return); and
- (c) m does not always transfer control to a node in the subtree of n when m completes normally.
The subtree of a node n is set of all nodes {m} that are either equal to n or have n as one of their parents.
- Specified by:
getNormalEndPoints
in interfaceIFlowGraphEndPoints
- Returns:
- All normal end points of the root node.
-
getThrowingEndPoints
public com.google.common.collect.ImmutableSet<NodeKey> getThrowingEndPoints()
Description copied from interface:IFlowGraphEndPoints
Returns the set of all nodes (including the children, grand-children etc. of this node) that represent the throwing end points when the node is executed. A throwing end point is a node that can complete abruptly by throwing an exception and does not always transfer control to the node or a child of the node when it completes abruptly by throwing an exception.More formally, given a syntax tree of nodes representing the parent-child relationship, a throwing end point of a node n is the set of all nodes {m} such that all of the following hold:
- (a) m is in the subtree of n,
- (b) m can potentially complete abruptly by throwing an exception (=does not always complete normally of return); and
- (c) m does not always transfer control to a node in the subtree of n when m completes abruptly by throwing an exception.
The subtree of a node n is set of all nodes {m} that are either equal to n or have n as one of their parents.
- Specified by:
getThrowingEndPoints
in interfaceIFlowGraphEndPoints
- Returns:
- All throwing end points of the root node.
-
empty
public static IFlowGraphEndPoints empty()
- Returns:
- An empty instance with no end points.
-
-