Package org.jbpm.ruleflow.core.factory

## Class ForEachNodeFactory<T extends org.kie.api.fluent.NodeContainerBuilder<T,​?>>

- java.lang.Object
- - org.jbpm.ruleflow.core.factory.NodeFactory<T,​P>
  - - org.jbpm.ruleflow.core.RuleFlowNodeContainerFactory<T,​P>
    - - org.jbpm.ruleflow.core.factory.ForEachNodeFactory<T>

- All Implemented Interfaces:
    `org.kie.api.fluent.CompositeNodeOperations<org.kie.api.fluent.ForEachNodeBuilder<T>,​T>`, `org.kie.api.fluent.ForEachNodeBuilder<T>`, `org.kie.api.fluent.NodeBuilder<org.kie.api.fluent.ForEachNodeBuilder<T>,​T>`, `org.kie.api.fluent.NodeContainerBuilder<org.kie.api.fluent.ForEachNodeBuilder<T>,​T>`

      public class ForEachNodeFactory<T extends org.kie.api.fluent.NodeContainerBuilder<T,​?>>
      extends RuleFlowNodeContainerFactory<T,​P>
      implements org.kie.api.fluent.ForEachNodeBuilder<T>

- - ### Field Summary

    - ### Fields inherited from class org.jbpm.ruleflow.core.factory.NodeFactory

      `node, nodeContainer, nodeContainerFactory`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ForEachNodeFactory​(T nodeContainerFactory, NodeContainer nodeContainer, long id)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `ForEachNodeFactory<T>` | `collectionExpression​(String collectionExpression)` |
    `P` | `done()` |
    `protected CompositeContextNode` | `getCompositeNode()` |
    `protected ForEachNode` | `getForEachNode()` |
    `T` | `linkIncomingConnections​(long nodeId)` |
    `T` | `linkOutgoingConnections​(long nodeId)` |
    `ForEachNodeFactory<T>` | `variable​(String variableName, DataType dataType)` |
    `T` | `variable​(String name, DataType type, Object value)` |
    `ForEachNodeFactory<T>` | `waitForCompletion​(boolean waitForCompletion)` |

    - ### Methods inherited from class org.jbpm.ruleflow.core.RuleFlowNodeContainerFactory

      `actionNode, boundaryEventNode, compositeNode, connection, dynamicNode, endNode, eventNode, exceptionHandler, exceptionHandler, exceptionHandler, faultNode, forEachNode, humanTaskNode, joinNode, milestoneNode, ruleSetNode, splitNode, startNode, subProcessNode, timerNode, variable, workItemNode`

    - ### Methods inherited from class org.jbpm.ruleflow.core.factory.NodeFactory

      `getNode, name, setId, setMetadata`

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

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

    - ### Methods inherited from interface org.kie.api.fluent.CompositeNodeOperations

      `linkIncomingConnections, linkOutgoingConnections`

    - ### Methods inherited from interface org.kie.api.fluent.NodeBuilder

      `done, name, setMetadata`

    - ### Methods inherited from interface org.kie.api.fluent.NodeContainerBuilder

      `actionNode, boundaryEventNode, compositeNode, connection, dynamicNode, endNode, eventNode, exceptionHandler, faultNode, forEachNode, humanTaskNode, joinNode, milestoneNode, ruleSetNode, splitNode, startNode, subProcessNode, timerNode, variable, workItemNode`

- - ### Constructor Detail

    - #### ForEachNodeFactory

          public ForEachNodeFactory​(T nodeContainerFactory,
                                    NodeContainer nodeContainer,
                                    long id)

  - ### Method Detail

    - #### getForEachNode

          protected ForEachNode getForEachNode()

    - #### collectionExpression

          public ForEachNodeFactory<T> collectionExpression​(String collectionExpression)

      Specified by:
        `collectionExpression` in interface `org.kie.api.fluent.ForEachNodeBuilder<T extends org.kie.api.fluent.NodeContainerBuilder<T,​?>>`

    - #### variable

          public ForEachNodeFactory<T> variable​(String variableName,
                                                DataType dataType)

    - #### waitForCompletion

          public ForEachNodeFactory<T> waitForCompletion​(boolean waitForCompletion)

      Specified by:
        `waitForCompletion` in interface `org.kie.api.fluent.ForEachNodeBuilder<T extends org.kie.api.fluent.NodeContainerBuilder<T,​?>>`

    - #### getCompositeNode

          protected CompositeContextNode getCompositeNode()

    - #### variable

          public T variable​(String name,
                            DataType type,
                            Object value)

    - #### linkIncomingConnections

          public T linkIncomingConnections​(long nodeId)

    - #### linkOutgoingConnections

          public T linkOutgoingConnections​(long nodeId)

    - #### done

          public P done()

      Specified by:
        `done` in interface `org.kie.api.fluent.NodeBuilder<T extends org.kie.api.fluent.NodeContainerBuilder<T,​P>,​P extends org.kie.api.fluent.NodeContainerBuilder<P,​?>>`
      Overrides:
        `done` in class `NodeFactory<T extends org.kie.api.fluent.NodeContainerBuilder<T,​P>,​P extends org.kie.api.fluent.NodeContainerBuilder<P,​?>>`