public abstract class AbstractNode extends ProcessTreeElementImpl implements Node
Modifier and Type | Field and Description |
---|---|
protected java.util.List<Edge> |
incoming |
protected java.util.Set<Variable> |
readVars |
protected java.util.Set<Variable> |
remReadVars |
protected java.util.Set<Variable> |
remWriteVars |
protected ProcessTree |
tree |
protected java.util.Set<Variable> |
writeVars |
id, name, propertyDependent, propertyIndependent
Constructor and Description |
---|
AbstractNode(Node n) |
AbstractNode(java.lang.String name) |
AbstractNode(java.lang.String name,
java.util.List<Edge> incoming) |
AbstractNode(java.util.UUID id,
Node n) |
AbstractNode(java.util.UUID id,
java.lang.String name) |
AbstractNode(java.util.UUID id,
java.lang.String name,
java.util.List<Edge> incoming) |
Modifier and Type | Method and Description |
---|---|
void |
addIncomingEdge(Edge edge)
Adds an incoming edge to the node
|
Edge |
addParent(Block parent)
adds a new parent with random id and empty expression to this node as the rightmost parent
|
Edge |
addParent(Block parent,
Expression expression)
adds a new parent with random id and given expression to this node as the rightmost parent
|
Edge |
addParent(java.util.UUID id,
Block parent) |
Edge |
addParent(java.util.UUID id,
Block parent,
Expression expression)
adds a new parent with given id and given expression to this node as the rightmost parent
|
boolean |
addReadVariable(Variable var)
adds the read variable to this node
|
boolean |
addRemovableReadVariable(Variable var)
adds the removable read variable to this node
|
boolean |
addRemovableWriteVariable(Variable var)
adds the removable write variable to this node
|
boolean |
addWriteVariable(Variable var)
adds the write variable to this node
|
java.util.UUID |
getID() |
java.util.List<Edge> |
getIncomingEdges()
returns an immutable list of incoming edges.
|
java.lang.String |
getName() |
java.util.Collection<Block> |
getParents()
returns an collection of blocks that are the parents of this node in the
tree
changes to the collection are NOT reflected in the tree
|
ProcessTree |
getProcessTree()
returns the process tree to which this node belongs
|
java.util.Collection<Variable> |
getReadVariables()
returns an editable collection of variables that are read by this node
|
java.util.Collection<Variable> |
getRemovableReadVariables()
returns an editable collection of variables which can be removed from the list of read variables
|
java.util.Collection<Variable> |
getRemovableWrittenVariables()
returns an editable collection of variables which can be removed from the list of written variables
|
java.util.Collection<Variable> |
getWrittenVariables()
returns an editable collection of variables that are written by this node
|
boolean |
isRoot()
returns true if this node has no parents.
|
int |
numParents()
returns the number of parents
|
boolean |
removeIncomingEdge(Edge edge)
removes an incoming edge from this node
|
boolean |
removeReadVariable(Variable var)
removes the read variable from this node
|
boolean |
removeRemovableReadVariable(Variable var)
removes the removable read variable to this node
|
boolean |
removeRemovableWriteVariable(Variable var)
removes the removable write variable to this node
|
boolean |
removeWriteVariable(Variable var)
removes the write variable from this node
|
void |
setProcessTree(ProcessTree tree)
sets the processtree to which this node belongs
|
java.lang.String |
toString() |
equals, getDependentProperties, getDependentProperty, getDependentProperty, getIndependentProperties, getIndependentProperty, getIndependentProperty, hashCode, removeDependentProperty, removeDependentProperty, removeIndependentProperty, removeIndependentProperty, setDependentProperty, setDependentProperty, setIndependentProperty, setIndependentProperty, setName
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
getReadVariablesRecursive, getWrittenVariablesRecursive, isLeaf, toStringShort
getDependentProperties, getDependentProperty, getDependentProperty, getIndependentProperties, getIndependentProperty, getIndependentProperty, removeDependentProperty, removeDependentProperty, removeIndependentProperty, removeIndependentProperty, setDependentProperty, setDependentProperty, setIndependentProperty, setIndependentProperty, setName
protected ProcessTree tree
protected final java.util.Set<Variable> readVars
protected final java.util.Set<Variable> writeVars
protected final java.util.Set<Variable> remReadVars
protected final java.util.Set<Variable> remWriteVars
protected final java.util.List<Edge> incoming
public AbstractNode(java.lang.String name)
public AbstractNode(java.util.UUID id, java.lang.String name)
public AbstractNode(java.lang.String name, java.util.List<Edge> incoming)
public AbstractNode(java.util.UUID id, java.lang.String name, java.util.List<Edge> incoming)
public AbstractNode(Node n)
public AbstractNode(java.util.UUID id, Node n)
public void setProcessTree(ProcessTree tree)
Node
setProcessTree
in interface Node
public java.util.UUID getID()
getID
in interface org.processmining.plugins.properties.processmodel.PropertableElement
getID
in interface ProcessTreeElement
getID
in class ProcessTreeElementImpl
public boolean isRoot()
Node
public java.util.Collection<Variable> getReadVariables()
Node
getReadVariables
in interface Node
public java.util.Collection<Variable> getRemovableReadVariables()
Node
getRemovableReadVariables
in interface Node
public java.util.Collection<Variable> getWrittenVariables()
Node
getWrittenVariables
in interface Node
public java.util.Collection<Variable> getRemovableWrittenVariables()
Node
getRemovableWrittenVariables
in interface Node
public boolean addReadVariable(Variable var)
Node
addReadVariable
in interface Node
public boolean addRemovableReadVariable(Variable var)
Node
addRemovableReadVariable
in interface Node
public boolean removeReadVariable(Variable var)
Node
removeReadVariable
in interface Node
public boolean removeRemovableReadVariable(Variable var)
Node
removeRemovableReadVariable
in interface Node
public boolean addWriteVariable(Variable var)
Node
addWriteVariable
in interface Node
public boolean addRemovableWriteVariable(Variable var)
Node
addRemovableWriteVariable
in interface Node
public boolean removeWriteVariable(Variable var)
Node
removeWriteVariable
in interface Node
public boolean removeRemovableWriteVariable(Variable var)
Node
removeRemovableWriteVariable
in interface Node
public Edge addParent(java.util.UUID id, Block parent, Expression expression)
Node
public Edge addParent(Block parent, Expression expression)
Node
public Edge addParent(Block parent)
Node
public void addIncomingEdge(Edge edge)
Node
addIncomingEdge
in interface Node
public boolean removeIncomingEdge(Edge edge)
Node
removeIncomingEdge
in interface Node
public java.util.Collection<Block> getParents()
Node
getParents
in interface Node
public java.util.List<Edge> getIncomingEdges()
Node
getIncomingEdges
in interface Node
public int numParents()
Node
numParents
in interface Node
public java.lang.String getName()
getName
in interface org.processmining.plugins.properties.processmodel.PropertableElement
getName
in interface ProcessTreeElement
getName
in class ProcessTreeElementImpl
public ProcessTree getProcessTree()
Node
getProcessTree
in interface Node
public java.lang.String toString()
toString
in class ProcessTreeElementImpl