|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.knime.core.node.workflow.NodeContainer
org.knime.core.node.workflow.WorkflowManager
public final class WorkflowManager
Container holding nodes and connections of a (sub) workflow. In contrast to previous implementations, this class will now handle all control, such as transport of data and specs from node to subsequent nodes. That is, nodes do not know their pre- or successors anymore. A WorkflowManager can also play the role of a NodeContainer, thus representing a metanode/subworkflow.
Nested Class Summary |
---|
Nested classes/interfaces inherited from class org.knime.core.node.workflow.NodeContainer |
---|
NodeContainer.NodeContainerSettings, NodeContainer.State |
Field Summary | |
---|---|
(package private) static String |
CFG_CREATED_BY
Version of KNIME that has written the workflow. |
(package private) static String |
CFG_VERSION
Workflow version, indicates the "oldest" version that is compatible to the current workflow format. |
static WorkflowManager |
ROOT
The root of everything, a workflow with no in- or outputs. |
Fields inherited from class org.knime.core.node.workflow.NodeContainer |
---|
m_nodeMutex |
Method Summary | |
---|---|
ConnectionContainer |
addConnection(NodeID source,
int sourcePort,
NodeID dest,
int destPort)
Add new connection - throw Exception if the same connection already exists. |
void |
addListener(WorkflowListener listener)
Add listener to list. |
void |
addWorkflowVariables(boolean skipReset,
FlowVariable... newVars)
Set new workflow variables. |
boolean |
areDialogAndNodeSettingsEqual()
|
(package private) boolean |
areSettingsValid(NodeSettingsRO settings)
|
(package private) void |
assembleInputSpecs(NodeID id,
PortObjectSpec[] inSpecs)
Fill array holding all input specs for the given node. |
boolean |
canAddConnection(NodeID source,
int sourcePort,
NodeID dest,
int destPort)
Check if a new connection can be added. |
(package private) void |
cancelExecution()
Cancel execution of a marked, queued, or executing node. |
void |
cancelExecution(NodeContainer nc)
Cancel execution of the given NodeContainer. |
boolean |
canExecuteNode(NodeID nodeID)
Check if a node can be executed directly. |
boolean |
canRemoveConnection(ConnectionContainer cc)
Check if a connection can safely be removed. |
boolean |
canRemoveNode(NodeID nodeID)
Check if specific node can be removed (i.e. |
boolean |
canResetNode(NodeID nodeID)
Check if a node can be reset, meaning that it is executed and all of it's successors are idle or executed as well. |
boolean |
canSetJobManager(NodeID nodeID)
Is the node with the given ID ready to take a new job manager. |
(package private) void |
cleanup()
Method that's called when the node is discarded. |
boolean |
containsNodeContainer(NodeID id)
Does the workflow contain a node with the argument id? |
(package private) boolean |
continueExecutionOnLoad(NodeContainer nc,
NodeContainerPersistor persistor)
|
WorkflowPersistor |
copy(NodeID... nodeIDs)
Copy the nodes with the given ids. |
NodeID[] |
copyFromAndPasteHere(WorkflowManager sourceManager,
NodeID... nodeIDs)
Copies the nodes with the given ids from the argument workflow manager into this wfm instance. |
NodeID |
createAndAddNode(NodeFactory<?> factory)
Uses given Factory to create a new node and then adds new node to the workflow manager. |
WorkflowManager |
createAndAddProject(String name)
Create new project - which is the same as creating a new subworkflow at this level with no in- or outports. |
WorkflowManager |
createAndAddSubWorkflow(PortType[] inPorts,
PortType[] outPorts,
String name)
Creates new meta node. |
WorkflowExecutionResult |
createExecutionResult(ExecutionMonitor exec)
Saves all internals that are necessary to mimic the computed result into a new execution result object. |
(package private) WorkflowManager |
createSubWorkflow(WorkflowPersistor persistor,
NodeID newID)
Creates new meta node from a persistor instance. |
(package private) void |
doAfterExecution(NodeContainer nc,
NodeContainerExecutionStatus status)
Cleanup a node after execution. |
(package private) void |
doBeforeExecution(NodeContainer nc)
Call-back from NodeContainer called before node is actually executed. |
(package private) void |
doBeforePostExecution(NodeContainer nc)
Callback from NodeContainer to request a safe transition into the NodeContainer.State.POSTEXECUTE state. |
(package private) boolean |
doBeforePreExecution(NodeContainer nc)
Callback from NodeContainer to request a safe transition into the NodeContainer.State.PREEXECUTE state. |
void |
executeAll()
Convenience method: (Try to) Execute all nodes in the workflow. |
boolean |
executeAllAndWaitUntilDone()
Convenience method: execute all and wait for execution to be done. |
void |
executeUpToHere(NodeID... ids)
mark these nodes and all not-yet-executed predecessors for execution. |
Collection<ConnectionContainer> |
getConnectionContainers()
|
protected NodeContainerPersistor |
getCopyPersistor(HashMap<Integer,ContainerTable> tableRep,
boolean preserveDeletableFlags)
Get a new persistor that is used to copy this node (copy&paste action). |
(package private) NodeDialogPane |
getDialogPane()
|
(package private) NodeDialogPane |
getDialogPaneWithSettings(PortObjectSpec[] inSpecs)
|
(package private) HashMap<Integer,ContainerTable> |
getGlobalTableRepository()
|
URL |
getIcon()
|
ConnectionContainer |
getIncomingConnectionFor(NodeID id,
int portIdx)
Returns the incoming connection of the node with the passed node id at the specified port. |
Set<ConnectionContainer> |
getIncomingConnectionsFor(NodeID id)
Get all incoming connections for a node. |
WorkflowInPort |
getInPort(int index)
|
UIInformation |
getInPortsBarUIInfo()
Get UI information for workflow input ports. |
String |
getName()
Get the name of the workflow. |
(package private) String |
getNameField()
|
NodeContainer |
getNodeContainer(NodeID id)
|
Collection<NodeContainer> |
getNodeContainers()
|
List<NodeMessage> |
getNodeErrorMessages()
|
NodeView<NodeModel> |
getNodeView(int i)
Return the view with the specified index provided by the node. |
String |
getNodeViewName(int i)
|
int |
getNrInPorts()
|
int |
getNrNodeViews()
Returns the number of views provided by the node implementation. |
int |
getNrOutPorts()
|
int |
getNrWorkflowIncomingPorts()
|
int |
getNrWorkflowOutgoingPorts()
|
Set<ConnectionContainer> |
getOutgoingConnectionsFor(NodeID id)
Get all outgoing connections for a node. |
Set<ConnectionContainer> |
getOutgoingConnectionsFor(NodeID id,
int portIdx)
Returns the set of outgoing connections for the node with the passed id at the specified port. |
WorkflowOutPort |
getOutPort(int index)
|
UIInformation |
getOutPortsBarUIInfo()
Get UI information for workflow output ports. |
NodeFactory.NodeType |
getType()
|
(package private) Workflow |
getWorkflow()
|
NodeOutPort |
getWorkflowIncomingPort(int i)
|
NodeInPort |
getWorkflowOutgoingPort(int i)
|
List<FlowVariable> |
getWorkflowVariables()
Get read-only access on the current workflow variables. |
boolean |
hasDialog()
|
(package private) void |
invokeResetOnPortSuccessors(int inportIndex)
Reset those nodes which are connected to a specific workflow incoming port. |
protected boolean |
isLocalWFM()
Is this node a to be locally executed workflow. |
(package private) boolean |
isResetable()
check if node can be safely reset. |
WorkflowPersistor.WorkflowLoadResult |
load(File directory,
ExecutionMonitor exec,
boolean keepNodeMessages)
Loads the workflow contained in the directory as node into this workflow instance. |
(package private) NodeID[] |
loadContent(NodeContainerPersistor nodePersistor,
Map<Integer,BufferedDataTable> tblRep,
FlowObjectStack ignoredStack,
ExecutionMonitor exec,
WorkflowPersistor.LoadResult loadResult,
boolean preserveNodeMessage)
Restore content from persistor. |
void |
loadExecutionResult(NodeContainerExecutionResult result,
ExecutionMonitor exec,
WorkflowPersistor.LoadResult loadResult)
Load information from execution result. |
void |
loadNodeSettings(NodeID id,
NodeSettingsRO settings)
Load Settings into specified node. |
static WorkflowPersistor.WorkflowLoadResult |
loadProject(File directory,
ExecutionMonitor exec)
|
(package private) void |
loadSettings(NodeSettingsRO settings)
|
(package private) void |
markForExecution(boolean flag)
Enable (or disable) queuing of underlying node for execution. |
(package private) void |
mimicRemoteExecuted(NodeContainerExecutionStatus status)
Put this node into either the NodeContainer.State.EXECUTED or
NodeContainer.State.IDLE state depending on the argument. |
(package private) void |
mimicRemoteExecuting()
Marks this node as remotely executing. |
(package private) void |
mimicRemotePostExecute()
Puts this node (and all its children) into the NodeContainer.State.POSTEXECUTE
state. |
(package private) void |
mimicRemotePreExecute()
Puts this node (and all its children) into the NodeContainer.State.PREEXECUTE
state. |
protected void |
notifyJobManagerChangedListener()
|
NodeID[] |
paste(WorkflowPersistor persistor)
Pastes the contents of the argument persistor into this wfm. |
(package private) void |
performShutdown()
Called when the workflow is to be disposed. |
(package private) void |
performStateTransitionEXECUTED(NodeContainerExecutionStatus status)
This should be used to change the nodes states correctly (and likely needs to be synchronized with other changes visible to successors of this node as well!) AFTER the actual execution. |
(package private) void |
performStateTransitionEXECUTING()
This should be used to change the nodes states correctly (and likely needs to be synchronized with other changes visible to successors of this node as well!) BEFORE the actual execution. |
(package private) void |
performStateTransitionPOSTEXECUTE()
Called when the state of a node should switch from NodeContainer.State.EXECUTING (or NodeContainer.State.EXECUTINGREMOTELY ) to
NodeContainer.State.POSTEXECUTE . |
(package private) boolean |
performStateTransitionPREEXECUTE()
Called when the state of a node should switch from NodeContainer.State.QUEUED to NodeContainer.State.PREEXECUTE . |
String |
printNodeSummary(NodeID prefix,
int indent)
Produce summary of node. |
(package private) void |
reconfigureAllNodesOnlyInThisWFM()
Re-configure all configured (NOT executed) nodes in this workflow to make sure that new workflow variables are spread accordingly. |
void |
removeConnection(ConnectionContainer cc)
Remove connection. |
void |
removeListener(WorkflowListener listener)
Remove listener. |
void |
removeNode(NodeID nodeID)
Remove node if possible. |
void |
removeProject(NodeID id)
Remove a project - the same as remove node but we make sure it really looks like a project (i.e. |
void |
removeWorkflowVariable(String name)
Remove workflow variable of given name. |
boolean |
renameWorkflowDirectory(String newName)
Renames the underlying workflow directory to the new name. |
void |
resetAll()
Reset all nodes in this workflow. |
(package private) void |
resetAllNodesInWFM()
Reset all nodes in this workflow. |
(package private) void |
resetAllNodesOnlyInThisWFM()
Reset all executed nodes in this workflow to make sure that new workflow variables are spread accordingly. |
void |
resetAndConfigureNode(NodeID id)
Reset node and all executed successors of a specific node. |
void |
save(File directory,
ExecutionMonitor exec,
boolean isSaveData)
|
void |
saveNodeSettings(NodeID id,
NodeSettingsWO settings)
write node settings into Settings object. |
(package private) void |
saveSettings(NodeSettingsWO settings)
|
void |
setDirty()
Mark this node container to be changed, that is, it needs to be saved. |
void |
setInPortsBarUIInfo(UIInformation inPortsBarUIInfo)
Set UI information for workflow's input ports (typically aligned as a bar). |
void |
setJobManager(NodeID nodeID,
NodeExecutionJobManager jobMgr)
Sets a new job manager on the node with the given ID. |
void |
setName(String name)
Set new name of this workflow or null to reset the name (will then return the workflow directory in getName() or null if this flow
has not been saved yet). |
void |
setOutPortsBarUIInfo(UIInformation outPortsBarUIInfo)
Set UI information for workflow's output ports (typically aligned as a bar). |
void |
shutdown()
Attempts to cancel or running nodes in preparation for a removal of this node (or its parent) from the root. |
(package private) boolean |
sweep(boolean propagate)
Performs sanity check on workflow. |
String |
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final WorkflowManager ROOT
static final String CFG_VERSION
static final String CFG_CREATED_BY
Method Detail |
---|
Workflow getWorkflow()
public WorkflowManager createAndAddProject(String name)
name
- The name of the workflow (null value is ok)
public void removeProject(NodeID id)
id
- of the project to be removed.public NodeID createAndAddNode(NodeFactory<?> factory)
factory
- NodeFactory used to create the new node
public boolean canRemoveNode(NodeID nodeID)
nodeID
- id of node to be removed
public void removeNode(NodeID nodeID)
nodeID
- id of node to be removedpublic WorkflowManager createAndAddSubWorkflow(PortType[] inPorts, PortType[] outPorts, String name)
inPorts
- types of external inputs (going into this workflow)outPorts
- types of external outputs (exiting this workflow)name
- Name of the workflow (null values will be handled)
WorkflowManager createSubWorkflow(WorkflowPersistor persistor, NodeID newID)
persistor
- to read fromnewID
- new id to be used
public ConnectionContainer addConnection(NodeID source, int sourcePort, NodeID dest, int destPort)
source
- node idsourcePort
- port index at source nodedest
- destination node iddestPort
- port index at destination node
IllegalArgumentException
- if connection already existspublic boolean canAddConnection(NodeID source, int sourcePort, NodeID dest, int destPort)
source
- node idsourcePort
- port index at source nodedest
- destination node iddestPort
- port index at destination node
public boolean canRemoveConnection(ConnectionContainer cc)
cc
- connection
public void removeConnection(ConnectionContainer cc)
cc
- connectionpublic Set<ConnectionContainer> getOutgoingConnectionsFor(NodeID id, int portIdx)
id
- id of the node of interestportIdx
- port index of that node
public Set<ConnectionContainer> getOutgoingConnectionsFor(NodeID id)
id
- The requested node
IllegalArgumentException
- If the node is unknown or null.public ConnectionContainer getIncomingConnectionFor(NodeID id, int portIdx)
id
- id of the node of interestportIdx
- port index
public Set<ConnectionContainer> getIncomingConnectionsFor(NodeID id)
id
- The requested node
IllegalArgumentException
- If the node is unknown or null.public void loadNodeSettings(NodeID id, NodeSettingsRO settings) throws InvalidSettingsException
id
- of nodesettings
- to be load by node
InvalidSettingsException
- if settings are wrong
IllegalArgumentException
- if node does not existpublic void saveNodeSettings(NodeID id, NodeSettingsWO settings) throws InvalidSettingsException
id
- of nodesettings
- to be saved to
InvalidSettingsException
- thrown if nonsense is writtenpublic void resetAll()
void reconfigureAllNodesOnlyInThisWFM()
void resetAllNodesOnlyInThisWFM()
void resetAllNodesInWFM()
public void executeUpToHere(NodeID... ids)
ids
- node ids to markboolean doBeforePreExecution(NodeContainer nc)
NodeContainer.State.PREEXECUTE
state. This method is mostly
only called with SingleNodeContainer
as argument but may also be
called with a remotely executed meta node.
nc
- node whose execution is about to start
void doBeforePostExecution(NodeContainer nc)
NodeContainer.State.POSTEXECUTE
state. This method is mostly
only called with SingleNodeContainer
as argument but may also be
called with a remotely executed meta node.
nc
- node whose execution is ending (and is now copying
result data, e.g.)void doBeforeExecution(NodeContainer nc)
SingleNodeContainer
, although
it can also be a meta node (i.e. a WorkflowManager
), which
is executed remotely (execution takes place as a single operation).
nc
- node whose execution is about to start
IllegalFlowObjectStackException
- If loop end nodes have
problems identifying their start nodevoid doAfterExecution(NodeContainer nc, NodeContainerExecutionStatus status)
NodeContainer.performStateTransitionEXECUTED(NodeContainerExecutionStatus)
.
This method also takes care of restarting loops, if there are any to be
continued.
As in doBeforeExecution(NodeContainer)
the argument node is
usually a SingleNodeContainer
but can also be a remotely executed
WorkflowManager
.
nc
- node which just finished executionstatus
- indicates if node execution was finished successfully
(note that this does not imply State=EXECUTED e.g. for loop ends)boolean isResetable()
isResetable
in class NodeContainer
void markForExecution(boolean flag)
markForExecution
in class NodeContainer
flag
- determines if node is marked or unmarked for executionvoid mimicRemoteExecuting()
mimicRemoteExecuting
in class NodeContainer
void mimicRemotePreExecute()
NodeContainer.State.PREEXECUTE
state. This method is used when a workflow is executed remotely.
mimicRemotePreExecute
in class NodeContainer
void mimicRemotePostExecute()
NodeContainer.State.POSTEXECUTE
state. This method is used when a workflow is executed remotely.
mimicRemotePostExecute
in class NodeContainer
void mimicRemoteExecuted(NodeContainerExecutionStatus status)
NodeContainer.State.EXECUTED
or
NodeContainer.State.IDLE
state depending on the argument. This method is
applied recursively on all of this node's children (if a meta node).
mimicRemoteExecuted
in class NodeContainer
status
- Where to get the success flag from.boolean performStateTransitionPREEXECUTE()
NodeContainer.State.QUEUED
to NodeContainer.State.PREEXECUTE
. The method is to be
called from the node's parent in a synchronized environment.
performStateTransitionPREEXECUTE
in class NodeContainer
void performStateTransitionEXECUTING()
performStateTransitionEXECUTING
in class NodeContainer
void performStateTransitionPOSTEXECUTE()
NodeContainer.State.EXECUTING
(or NodeContainer.State.EXECUTINGREMOTELY
) to
NodeContainer.State.POSTEXECUTE
. The method is to be called from the node's
parent in a synchronized environment.
performStateTransitionPOSTEXECUTE
in class NodeContainer
void performStateTransitionEXECUTED(NodeContainerExecutionStatus status)
performStateTransitionEXECUTED
in class NodeContainer
status
- indicates if execution was successfulpublic boolean canResetNode(NodeID nodeID)
nodeID
- the id of the node
void invokeResetOnPortSuccessors(int inportIndex)
inportIndex
- index of port.public void resetAndConfigureNode(NodeID id)
id
- of first node in chain to be reset.public boolean canExecuteNode(NodeID nodeID)
nodeID
- id of node
void cancelExecution()
cancelExecution
in class NodeContainer
public void cancelExecution(NodeContainer nc)
nc
- node to be canceledpublic boolean canSetJobManager(NodeID nodeID)
nodeID
- The node in question.
setJobManager(NodeID, NodeExecutionJobManager)
method.public void setJobManager(NodeID nodeID, NodeExecutionJobManager jobMgr)
nodeID
- The node in question.jobMgr
- The new job manager (may be null to use parent's one).
IllegalStateException
- If the node is not ready
IllegalArgumentException
- If the node is unknowncanSetJobManager(NodeID)
public void shutdown()
void performShutdown()
performShutdown
in class NodeContainer
public boolean executeAllAndWaitUntilDone()
public void executeAll()
boolean continueExecutionOnLoad(NodeContainer nc, NodeContainerPersistor persistor) throws InvalidSettingsException, NodeExecutionJobReconnectException
InvalidSettingsException
NodeExecutionJobReconnectException
public boolean hasDialog()
hasDialog
in class NodeContainer
NodeDialogPane getDialogPaneWithSettings(PortObjectSpec[] inSpecs) throws NotConfigurableException
getDialogPaneWithSettings
in class NodeContainer
NotConfigurableException
NodeDialogPane getDialogPane()
getDialogPane
in class NodeContainer
public boolean areDialogAndNodeSettingsEqual()
areDialogAndNodeSettingsEqual
in class NodeContainer
HashMap<Integer,ContainerTable> getGlobalTableRepository()
void assembleInputSpecs(NodeID id, PortObjectSpec[] inSpecs)
id
- of nodeinSpecs
- return array for specs of all predecessorspublic String printNodeSummary(NodeID prefix, int indent)
prefix
- if containing node/workflowindent
- number of leading spaces
public String toString()
toString
in class NodeContainer
public Collection<NodeContainer> getNodeContainers()
public Collection<ConnectionContainer> getConnectionContainers()
public NodeContainer getNodeContainer(NodeID id)
id
- node ID
public boolean containsNodeContainer(NodeID id)
id
- The id in question.
public List<NodeMessage> getNodeErrorMessages()
public void addListener(WorkflowListener listener)
listener
- new listenerpublic void removeListener(WorkflowListener listener)
listener
- listener to be removedprotected void notifyJobManagerChangedListener()
notifyJobManagerChangedListener
in class NodeContainer
protected NodeContainerPersistor getCopyPersistor(HashMap<Integer,ContainerTable> tableRep, boolean preserveDeletableFlags)
getCopyPersistor
in class NodeContainer
tableRep
- Table repository of the destination.preserveDeletableFlags
- Whether the "isdeleteable" annotation
should be copied also (false when individual nodes are copied
but true when an entire meta node is copied).
public NodeID[] copyFromAndPasteHere(WorkflowManager sourceManager, NodeID... nodeIDs)
sourceManager
- The wfm to copy fromnodeIDs
- The node ids to copy (must exist in sourceManager)
public WorkflowPersistor copy(NodeID... nodeIDs)
nodeIDs
- The nodes to copy (must exist).
paste(WorkflowPersistor)
method.public NodeID[] paste(WorkflowPersistor persistor)
persistor
- The persistor created with copy(NodeID...)
.
public static WorkflowPersistor.WorkflowLoadResult loadProject(File directory, ExecutionMonitor exec) throws IOException, InvalidSettingsException, CanceledExecutionException
IOException
InvalidSettingsException
CanceledExecutionException
public WorkflowExecutionResult createExecutionResult(ExecutionMonitor exec) throws CanceledExecutionException
#loadExecutionResult(NodeContainerExecutionResult, ExecutionMonitor, LoadResult)
is called).
createExecutionResult
in class NodeContainer
exec
- For progress information (this method will copy port
objects).
CanceledExecutionException
- If canceled.public void loadExecutionResult(NodeContainerExecutionResult result, ExecutionMonitor exec, WorkflowPersistor.LoadResult loadResult)
super.loadEx...
.
loadExecutionResult
in class NodeContainer
result
- The execution result (contains port objects, messages, etc)exec
- For progress information (no cancelation supported)loadResult
- A load result that contains, e.g. error messages.public WorkflowPersistor.WorkflowLoadResult load(File directory, ExecutionMonitor exec, boolean keepNodeMessages) throws IOException, InvalidSettingsException, CanceledExecutionException
loadProject(File, ExecutionMonitor)
.
directory
- to load fromexec
- For progress/cancellation (currently not supported)keepNodeMessages
- Whether to keep the messages that are associated
with the nodes in the loaded workflow (mostly false but true when
remotely computed results are loaded).
IOException
- If errors reading the "important" files fails due to
I/O problems (file not present, e.g.)
InvalidSettingsException
- If parsing the "important" files fails.
CanceledExecutionException
- If canceled.NodeID[] loadContent(NodeContainerPersistor nodePersistor, Map<Integer,BufferedDataTable> tblRep, FlowObjectStack ignoredStack, ExecutionMonitor exec, WorkflowPersistor.LoadResult loadResult, boolean preserveNodeMessage) throws CanceledExecutionException
loadContent
in class NodeContainer
nodePersistor
- To load from.tblRep
- A table repository to restore BufferedDatTablesignoredStack
- Incoming FlowObjectStack
.exec
- For progressloadResult
- Where to report errors/warnings topreserveNodeMessage
- Whether possible node messages in the
persistor are to be preserved (parameter to configure method
that is called during load).
CanceledExecutionException
- If canceled.public void save(File directory, ExecutionMonitor exec, boolean isSaveData) throws IOException, CanceledExecutionException
IOException
CanceledExecutionException
boolean sweep(boolean propagate)
propagate
- Whether to also reflect state changes in our parent
protected boolean isLocalWFM()
This method returns false for all single node container.
isLocalWFM
in class NodeContainer
public void setDirty()
setDirty
in class NodeContainer
public int getNrInPorts()
getNrInPorts
in class NodeContainer
public WorkflowInPort getInPort(int index)
getInPort
in class NodeContainer
public WorkflowOutPort getOutPort(int index)
getOutPort
in class NodeContainer
public int getNrOutPorts()
getNrOutPorts
in class NodeContainer
public void setName(String name)
getName()
or null if this flow
has not been saved yet).
name
- The new name or nullpublic boolean renameWorkflowDirectory(String newName)
newName
- The name of the directory.
IllegalStateException
- If the worklow has not been saved yet
(has no corresponding node directory).public String getName()
getName
in class NodeContainer
String getNameField()
setName(String)
.
In comparison to getName()
this method does not use the workflow
directory name if no other name is set.public int getNrNodeViews()
getNrNodeViews
in class NodeContainer
public NodeView<NodeModel> getNodeView(int i)
getNodeView
in class NodeContainer
i
- the view to create
public String getNodeViewName(int i)
getNodeViewName
in class NodeContainer
void loadSettings(NodeSettingsRO settings) throws InvalidSettingsException
loadSettings
in class NodeContainer
InvalidSettingsException
void saveSettings(NodeSettingsWO settings)
saveSettings
in class NodeContainer
boolean areSettingsValid(NodeSettingsRO settings)
areSettingsValid
in class NodeContainer
public NodeFactory.NodeType getType()
getType
in class NodeContainer
public URL getIcon()
getIcon
in class NodeContainer
void cleanup()
cleanup
in class NodeContainer
public int getNrWorkflowIncomingPorts()
public int getNrWorkflowOutgoingPorts()
public NodeOutPort getWorkflowIncomingPort(int i)
public NodeInPort getWorkflowOutgoingPort(int i)
public void setInPortsBarUIInfo(UIInformation inPortsBarUIInfo)
inPortsBarUIInfo
- The new UI info.public void setOutPortsBarUIInfo(UIInformation outPortsBarUIInfo)
outPortsBarUIInfo
- The new UI info.public UIInformation getInPortsBarUIInfo()
setInPortsBarUIInfo(UIInformation)
public UIInformation getOutPortsBarUIInfo()
setOutPortsBarUIInfo(UIInformation)
public List<FlowVariable> getWorkflowVariables()
public void addWorkflowVariables(boolean skipReset, FlowVariable... newVars)
newVars
- new variables to be setskipReset
- if false the workflow will be re-configuredpublic void removeWorkflowVariable(String name)
name
- of variable to be removed.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |