Interface IFlowGraphFilterInstance
-
- All Superinterfaces:
IValueGraphEdgePredicate<NodeKey,IFlowGraphEdgeData>
public interface IFlowGraphFilterInstance extends IValueGraphEdgePredicate<NodeKey,IFlowGraphEdgeData>
Filter for the nodes and edges of a workflow node flow graph,to exclude some existing nodes or edges.- Since:
- 8.0.0
- Author:
- XIMA MEDIA GmbH
- See Also:
FlowGraphFilter
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description boolean
allowsEdge(NodeKey nodeU, NodeKey nodeV, IFlowGraphEdgeData data)
Filter for all edges.boolean
allowsFinalEdge(NodeKey nodeU, NodeKey nodeV, IFlowGraphEdgeData data)
Filter for the fianl edge type via which a source node should connect to a target node.boolean
allowsInitialEdge(NodeKey nodeU, NodeKey nodeV, IFlowGraphEdgeData data)
Filter for the initial edge type via which a source node should connect to a target node.default boolean
test(NodeKey nodeU, NodeKey nodeV, IFlowGraphEdgeData edgeValue)
Evaluates this predicate on the given edge from aValueGraph
.
-
-
-
Method Detail
-
allowsEdge
boolean allowsEdge(NodeKey nodeU, NodeKey nodeV, IFlowGraphEdgeData data)
Filter for all edges. Edges that do not pass this test are completely ignored.- Parameters:
nodeU
- The first node of the initial directed edge (U, V).nodeV
- The second node of the initial directed edge (U, V).data
- The data of the initial directed edge (U, V).- Returns:
true
to allow the edge,false
to disallow it.
-
allowsFinalEdge
boolean allowsFinalEdge(NodeKey nodeU, NodeKey nodeV, IFlowGraphEdgeData data)
Filter for the fianl edge type via which a source node should connect to a target node. This is called with the last edge of the path that connects the source node to the target node. When this method returnsfalse
, the path is omitted when analyzing the flow graph. E.g. when computing successors of a node, valid successors are only those nodes for which a path exists from the source node to that node, where the final edge of the path matches this predicate.- Parameters:
nodeU
- The first node of the initial directed edge (U, V).nodeV
- The second node of the initial directed edge (U, V).data
- The data of the initial directed edge (U, V).- Returns:
true
to allow the edge as the final edge of a path,false
to disallow it.
-
allowsInitialEdge
boolean allowsInitialEdge(NodeKey nodeU, NodeKey nodeV, IFlowGraphEdgeData data)
Filter for the initial edge type via which a source node should connect to a target node. This is called with the first edge of the path that connects the source node to the target node. When this method returnsfalse
, the path is omitted when analyzing the flow graph. E.g. when computing predecessors of a node, valid predecessor are only those nodes for which a path exists from that node to the target node, where the initial edge of the path matches this predicate.- Parameters:
nodeU
- The first node of the initial directed edge (U, V).nodeV
- The second node of the initial directed edge (U, V).data
- The data of the initial directed edge (U, V).- Returns:
true
to allow the edge as the initial edge of a path,false
to disallow it.
-
test
default boolean test(NodeKey nodeU, NodeKey nodeV, IFlowGraphEdgeData edgeValue)
Description copied from interface:IValueGraphEdgePredicate
Evaluates this predicate on the given edge from aValueGraph
. Fordirected
graph,(nodeU, nodeV)
is an edge from node U to node V.- Specified by:
test
in interfaceIValueGraphEdgePredicate<NodeKey,IFlowGraphEdgeData>
- Parameters:
nodeU
- First node of the edge.nodeV
- Second node of the edge.edgeValue
- Value of the edge.- Returns:
true
if the input edge matches the predicate, otherwisefalse
-
-