cascading.flow.planner

## Class BaseFlowNode

- java.lang.Object
- - cascading.flow.planner.BaseFlowNode

All Implemented Interfaces:
  FlowNode, ProcessModel, ProcessLogger, java.io.Serializable

    public class BaseFlowNode
    extends java.lang.Object
    implements java.io.Serializable, FlowNode, ProcessLogger

See Also:
  Serialized Form

### Field Summary

Fields
`protected FlowNodeStats` `flowNodeStats`
`protected ElementGraph` `nodeSubGraph`
`protected java.util.List<? extends ElementGraph>` `pipelineGraphs`
`protected java.util.Set<Tap>` `sinkTaps`
`protected java.util.Set<Tap>` `sourceTaps`

### Fields inherited from interface cascading.flow.FlowNode

`CASCADING_FLOW_NODE`

### Fields inherited from interface cascading.util.ProcessLogger

`NULL`

### Constructor Summary

Constructors
Constructor and Description
`BaseFlowNode(ElementGraph nodeSubGraph)`
`BaseFlowNode(ElementGraph nodeSubGraph, java.util.List<? extends ElementGraph> pipelineGraphs)`
`BaseFlowNode(ElementGraph nodeSubGraph, java.util.Map<java.lang.String,java.lang.String> flowNodeDescriptor)`
`BaseFlowNode(ElementGraph nodeSubGraph, java.lang.String name, int ordinal)`
`BaseFlowNode(ElementGraph nodeSubGraph, java.lang.String name, int ordinal, java.util.Map<java.lang.String,java.lang.String> flowNodeDescriptor)`
`BaseFlowNode(FlowElementGraph flowElementGraph, ElementGraph nodeSubGraph, java.util.List<? extends ElementGraph> pipelineGraphs)`
`BaseFlowNode(FlowElementGraph flowElementGraph, ElementGraph nodeSubGraph, java.util.List<? extends ElementGraph> pipelineGraphs, java.util.Map<java.lang.String,java.lang.String> flowNodeDescriptor)`
`BaseFlowNode(FlowElementGraph flowElementGraph, ElementGraph nodeSubGraph, java.util.Map<java.lang.String,java.lang.String> flowNodeDescriptor)`
`BaseFlowNode(java.lang.String name, int ordinal)`
`BaseFlowNode(java.lang.String name, int ordinal, java.util.Map<java.lang.String,java.lang.String> flowNodeDescriptor)`

### Method Summary

Methods
`void` `addProcessAnnotation(java.lang.Enum annotation)`
`void` `addProcessAnnotation(java.lang.String key, java.lang.String value)`
`boolean` `equals(java.lang.Object object)`
`ElementGraph` `getElementGraph()`
`java.util.Set<? extends FlowElement>` `getFlowElementsFor(java.lang.Enum annotation)`
`java.util.Map<java.lang.String,java.lang.String>` `getFlowNodeDescriptor()` Returns an immutable map of properties giving more details about the FlowNode object.
`FlowNodeStats` `getFlowNodeStats()`
`FlowStep` `getFlowStep()`
`java.util.Collection<Group>` `getGroups()`
`java.lang.String` `getID()`
`java.lang.String` `getName()`
`java.util.Collection<? extends Scope>` `getNextScopes(FlowElement flowElement)`
`int` `getOrdinal()`
`ElementGraph` `getPipelineGraphFor(FlowElement streamedSource)`
`java.util.List<? extends ElementGraph>` `getPipelineGraphs()`
`java.util.Collection<? extends Scope>` `getPreviousScopes(FlowElement flowElement)`
`java.util.Map<java.lang.String,java.lang.String>` `getProcessAnnotations()` Method getProcessAnnotations returns an immutable Map of platform specific annotations or meta-data that describe the current model type.
`java.util.Set<java.lang.String>` `getSinkElementNames()`
`java.util.Set<FlowElement>` `getSinkElements()`
`java.util.Set<? extends FlowElement>` `getSinkElements(java.lang.Enum annotation)`
`java.util.Set<java.lang.String>` `getSinkTapNames(Tap sink)`
`java.util.Set<Tap>` `getSinkTaps()`
`java.util.Set<java.lang.String>` `getSourceElementNames()`
`java.util.Set<FlowElement>` `getSourceElements()`
`java.util.Set<? extends FlowElement>` `getSourceElements(java.lang.Enum annotation)`
`java.util.Set<java.lang.String>` `getSourceTapNames(Tap source)`
`java.util.Set<Tap>` `getSourceTaps()`
`int` `getSubmitPriority()`
`Tap` `getTrap(java.lang.String branchName)`
`java.util.Map<java.lang.String,Tap>` `getTrapMap()`
`java.util.Collection<? extends Tap>` `getTraps()`
`int` `hashCode()`
`boolean` `isDebugEnabled()`
`boolean` `isInfoEnabled()`
`void` `logDebug(java.lang.String message, java.lang.Object... arguments)`
`void` `logError(java.lang.String message, java.lang.Object... arguments)`
`void` `logError(java.lang.String message, java.lang.Throwable throwable)`
`void` `logInfo(java.lang.String message, java.lang.Object... arguments)`
`void` `logWarn(java.lang.String message)`
`void` `logWarn(java.lang.String message, java.lang.Object... arguments)`
`void` `logWarn(java.lang.String message, java.lang.Throwable throwable)`
`protected void` `setFlowNodeDescriptor(java.util.Map<java.lang.String,java.lang.String> flowNodeDescriptor)`
`void` `setFlowNodeStats(FlowNodeStats flowNodeStats)`
`void` `setFlowStep(FlowStep flowStep)`
`void` `setName(java.lang.String name)`
`void` `setOrdinal(int ordinal)`
`protected void` `setPipelineGraphs(java.util.List<? extends ElementGraph> pipelineGraphs)`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### nodeSubGraph

    protected ElementGraph nodeSubGraph

#### pipelineGraphs

    protected java.util.List<? extends ElementGraph> pipelineGraphs

#### sourceTaps

    protected java.util.Set<Tap> sourceTaps

#### sinkTaps

    protected java.util.Set<Tap> sinkTaps

#### flowNodeStats

    protected transient FlowNodeStats flowNodeStats

### Constructor Detail

#### BaseFlowNode

    public BaseFlowNode(java.lang.String name,
                int ordinal)

#### BaseFlowNode

    public BaseFlowNode(java.lang.String name,
                int ordinal,
                java.util.Map<java.lang.String,java.lang.String> flowNodeDescriptor)

#### BaseFlowNode

    public BaseFlowNode(ElementGraph nodeSubGraph,
                java.lang.String name,
                int ordinal)

#### BaseFlowNode

    public BaseFlowNode(ElementGraph nodeSubGraph,
                java.lang.String name,
                int ordinal,
                java.util.Map<java.lang.String,java.lang.String> flowNodeDescriptor)

#### BaseFlowNode

    public BaseFlowNode(ElementGraph nodeSubGraph)

#### BaseFlowNode

    public BaseFlowNode(ElementGraph nodeSubGraph,
                java.util.Map<java.lang.String,java.lang.String> flowNodeDescriptor)

#### BaseFlowNode

    public BaseFlowNode(ElementGraph nodeSubGraph,
                java.util.List<? extends ElementGraph> pipelineGraphs)

#### BaseFlowNode

    public BaseFlowNode(FlowElementGraph flowElementGraph,
                ElementGraph nodeSubGraph,
                java.util.Map<java.lang.String,java.lang.String> flowNodeDescriptor)

#### BaseFlowNode

    public BaseFlowNode(FlowElementGraph flowElementGraph,
                ElementGraph nodeSubGraph,
                java.util.List<? extends ElementGraph> pipelineGraphs)

#### BaseFlowNode

    public BaseFlowNode(FlowElementGraph flowElementGraph,
                ElementGraph nodeSubGraph,
                java.util.List<? extends ElementGraph> pipelineGraphs,
                java.util.Map<java.lang.String,java.lang.String> flowNodeDescriptor)

### Method Detail

#### setOrdinal

    public void setOrdinal(int ordinal)

#### getOrdinal

    public int getOrdinal()

Specified by:
  `getOrdinal` in interface `ProcessModel`

#### getID

    public java.lang.String getID()

Specified by:
  `getID` in interface `FlowNode`
Specified by:
  `getID` in interface `ProcessModel`

#### setName

    public void setName(java.lang.String name)

#### getName

    public java.lang.String getName()

Specified by:
  `getName` in interface `ProcessModel`

#### getFlowNodeDescriptor

    public java.util.Map<java.lang.String,java.lang.String> getFlowNodeDescriptor()

Description copied from interface: `FlowNode`
Returns an immutable map of properties giving more details about the FlowNode object.

FlowNode descriptions provide meta-data to monitoring systems describing the workload a given FlowNode represents. For known description types, see `FlowNodeDescriptors`.

Specified by:
  `getFlowNodeDescriptor` in interface `FlowNode`
Returns:
  Map<String,String>

#### setFlowNodeDescriptor

    protected void setFlowNodeDescriptor(java.util.Map<java.lang.String,java.lang.String> flowNodeDescriptor)

#### getProcessAnnotations

    public java.util.Map<java.lang.String,java.lang.String> getProcessAnnotations()

Description copied from interface: `ProcessModel`
Method getProcessAnnotations returns an immutable Map of platform specific annotations or meta-data that describe the current model type.

Use `ProcessModel.addProcessAnnotation(Enum)` or `ProcessModel.addProcessAnnotation(String, String)` to insert annotations or meta-data.

Specified by:
  `getProcessAnnotations` in interface `ProcessModel`
Returns:
  an immutable Map

#### addProcessAnnotation

    public void addProcessAnnotation(java.lang.Enum annotation)

Specified by:
  `addProcessAnnotation` in interface `ProcessModel`

#### addProcessAnnotation

    public void addProcessAnnotation(java.lang.String key,
                            java.lang.String value)

Specified by:
  `addProcessAnnotation` in interface `ProcessModel`

#### setFlowNodeStats

    public void setFlowNodeStats(FlowNodeStats flowNodeStats)

#### getFlowNodeStats

    public FlowNodeStats getFlowNodeStats()

Specified by:
  `getFlowNodeStats` in interface `FlowNode`

#### setFlowStep

    public void setFlowStep(FlowStep flowStep)

#### getFlowStep

    public FlowStep getFlowStep()

Specified by:
  `getFlowStep` in interface `FlowNode`

#### getElementGraph

    public ElementGraph getElementGraph()

Specified by:
  `getElementGraph` in interface `ProcessModel`

#### getSourceElementNames

    public java.util.Set<java.lang.String> getSourceElementNames()

Specified by:
  `getSourceElementNames` in interface `FlowNode`

#### getSourceElements

    public java.util.Set<FlowElement> getSourceElements()

Specified by:
  `getSourceElements` in interface `ProcessModel`

#### getSourceElements

    public java.util.Set<? extends FlowElement> getSourceElements(java.lang.Enum annotation)

Specified by:
  `getSourceElements` in interface `FlowNode`

#### getSinkElementNames

    public java.util.Set<java.lang.String> getSinkElementNames()

Specified by:
  `getSinkElementNames` in interface `FlowNode`

#### getSinkElements

    public java.util.Set<FlowElement> getSinkElements()

Specified by:
  `getSinkElements` in interface `ProcessModel`

#### getSinkElements

    public java.util.Set<? extends FlowElement> getSinkElements(java.lang.Enum annotation)

Specified by:
  `getSinkElements` in interface `FlowNode`

#### getPipelineGraphs

    public java.util.List<? extends ElementGraph> getPipelineGraphs()

Specified by:
  `getPipelineGraphs` in interface `FlowNode`

#### setPipelineGraphs

    protected void setPipelineGraphs(java.util.List<? extends ElementGraph> pipelineGraphs)

#### getPipelineGraphFor

    public ElementGraph getPipelineGraphFor(FlowElement streamedSource)

Specified by:
  `getPipelineGraphFor` in interface `FlowNode`

#### getGroups

    public java.util.Collection<Group> getGroups()

Specified by:
  `getGroups` in interface `ProcessModel`

#### getSourceTaps

    public java.util.Set<Tap> getSourceTaps()

Specified by:
  `getSourceTaps` in interface `ProcessModel`

#### getSinkTaps

    public java.util.Set<Tap> getSinkTaps()

Specified by:
  `getSinkTaps` in interface `ProcessModel`

#### getSubmitPriority

    public int getSubmitPriority()

Specified by:
  `getSubmitPriority` in interface `ProcessModel`

#### getSourceTapNames

    public java.util.Set<java.lang.String> getSourceTapNames(Tap source)

Specified by:
  `getSourceTapNames` in interface `FlowNode`

#### getSinkTapNames

    public java.util.Set<java.lang.String> getSinkTapNames(Tap sink)

Specified by:
  `getSinkTapNames` in interface `FlowNode`

#### getTrapMap

    public java.util.Map<java.lang.String,Tap> getTrapMap()

Specified by:
  `getTrapMap` in interface `ProcessModel`

#### getTraps

    public java.util.Collection<? extends Tap> getTraps()

Specified by:
  `getTraps` in interface `FlowNode`

#### getTrap

    public Tap getTrap(java.lang.String branchName)

Specified by:
  `getTrap` in interface `FlowNode`

#### getPreviousScopes

    public java.util.Collection<? extends Scope> getPreviousScopes(FlowElement flowElement)

Specified by:
  `getPreviousScopes` in interface `FlowNode`

#### getNextScopes

    public java.util.Collection<? extends Scope> getNextScopes(FlowElement flowElement)

Specified by:
  `getNextScopes` in interface `FlowNode`

#### equals

    public boolean equals(java.lang.Object object)

Overrides:
  `equals` in class `java.lang.Object`

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `java.lang.Object`

#### getFlowElementsFor

    public java.util.Set<? extends FlowElement> getFlowElementsFor(java.lang.Enum annotation)

Specified by:
  `getFlowElementsFor` in interface `FlowNode`

#### isInfoEnabled

    public boolean isInfoEnabled()

Specified by:
  `isInfoEnabled` in interface `ProcessLogger`

#### isDebugEnabled

    public boolean isDebugEnabled()

Specified by:
  `isDebugEnabled` in interface `ProcessLogger`

#### logInfo

    public void logInfo(java.lang.String message,
               java.lang.Object... arguments)

Specified by:
  `logInfo` in interface `ProcessLogger`

#### logDebug

    public void logDebug(java.lang.String message,
                java.lang.Object... arguments)

Specified by:
  `logDebug` in interface `ProcessLogger`

#### logWarn

    public void logWarn(java.lang.String message)

Specified by:
  `logWarn` in interface `ProcessLogger`

#### logWarn

    public void logWarn(java.lang.String message,
               java.lang.Object... arguments)

Specified by:
  `logWarn` in interface `ProcessLogger`

#### logWarn

    public void logWarn(java.lang.String message,
               java.lang.Throwable throwable)

Specified by:
  `logWarn` in interface `ProcessLogger`

#### logError

    public void logError(java.lang.String message,
                java.lang.Object... arguments)

Specified by:
  `logError` in interface `ProcessLogger`

#### logError

    public void logError(java.lang.String message,
                java.lang.Throwable throwable)

Specified by:
  `logError` in interface `ProcessLogger`