Interface IFlowGraphEndPoints

All Superinterfaces:
Serializable
All Known Implementing Classes:
FlowGraphEndPoints

public interface IFlowGraphEndPoints extends Serializable
Represents the result of IWorkflowNodeExecutionAnalyzer#createFlowGraph, i.e. the set of all successor nodes to which a node can transfer control when executed.
Since:
7.0.0
Author:
XIMA MEDIA GmbH
  • Method Summary

    Modifier and Type
    Method
    Description
    com.google.common.collect.ImmutableSet<NodeKey>
    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.
    com.google.common.collect.ImmutableSet<NodeKey>
    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.
  • Method Details

    • getNormalEndPoints

      com.google.common.collect.ImmutableSet<NodeKey> getNormalEndPoints()
      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.

      Returns:
      All normal end points of the root node.
    • getThrowingEndPoints

      com.google.common.collect.ImmutableSet<NodeKey> getThrowingEndPoints()
      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 or 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.

      Returns:
      All throwing end points of the root node.