org.apache.uima.flow

## Class ParallelStep

- java.lang.Object
- - org.apache.uima.flow.Step
  - - org.apache.uima.flow.ParallelStep

-     public class ParallelStep
      extends Step

  Indicates that a CAS should be routed to a multiple AnalysisEngines and that the relative order in which these execute does not matter. Logically, they can run in parallel. The runtime is not obligated to actually execute them in parallel, however.

  After all the specified Analysis Engines have completed their processing, the `Flow.next()` method will be called again to determine the next destination for the CAS.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ParallelStep(Collection<String> aAnalysisEngineKeys)` Creates a new ParallelStep

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Collection<String>` | `getAnalysisEngineKeys()` Gets the keys of the Analysis Engines to which the CAS should be routed.
    `void` | `setAnalysisEngineKeys(Collection<String> aKeys)` Sets the keys of the Analysis Engines to which the CAS should be routed.

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

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

- - ### Constructor Detail

    - #### ParallelStep

          public ParallelStep(Collection<String> aAnalysisEngineKeys)

      Creates a new ParallelStep
      Parameters:
        `aAnalysisEngineKeys` - A Collection of Strings, where each String is the key of an Analysis Engine to which the CAS should be routed. Each String must bee one of the keys in the FlowController's `FlowControllerContext.getAnalysisEngineMetaDataMap()`.

  - ### Method Detail

    - #### getAnalysisEngineKeys

          public Collection<String> getAnalysisEngineKeys()

      Gets the keys of the Analysis Engines to which the CAS should be routed.
      Returns:
        an unmodifiable Collection of Strings, where each String is the key of an Analysis Engine to which the CAS should be routed.

    - #### setAnalysisEngineKeys

          public void setAnalysisEngineKeys(Collection<String> aKeys)

      Sets the keys of the Analysis Engines to which the CAS should be routed. By using this method, a user's Flow implementation can (but is not required to) reuse the same ParallelStep object multiple times.
      Parameters:
        `aKeys` - A Collection of Strings, where each String is the key of an Analysis Engine to which the CAS should be routed. Each String must bee one of the keys in the FlowController's `FlowControllerContext.getAnalysisEngineMetaDataMap()`.

Copyright © 2006–2022 The Apache Software Foundation. All rights reserved.