org.apache.uima.flow
Class FinalStep

java.lang.Object
  extended by org.apache.uima.flow.Step
      extended by org.apache.uima.flow.FinalStep

public class FinalStep
extends Step

Indicates that a CAS has finished being processed by the aggregate. After returning a FinalStep, the Flow.next() method will not be called again for this CAS.

If the CAS was passed in as an input to the aggregate's process method, then the aggregate's processing is completed and ownership of this CAS is returned to the caller.

If the CAS was generated internally to this aggregate (by a CAS Multiplier that is part of this aggregate), then it will either be output from the aggregate or it will be dropped. A CAS can only be output if the aggregate's metadata includes declares the operational property outputsNewCASes == true. (see OperationalProperties.getOutputsNewCASes()).

By default, if the aggregate's metadata declares outputsNewCASes == true, then all CASes generated internal to the aggregate are output. However, by passing true to the FinalStep(boolean) constructor, the Flow Controller can force a particular CAS to be dropped. This allows the Flow Controller to output some CASes but not others.

It is not permitted to drop a CAS that was passed as input to the AnalysisEngine, and using FinalStep(true) for such a CAS is an error.


Constructor Summary
FinalStep()
          Creates a new FinalStep.
FinalStep(boolean aForceCasToBeDropped)
          Creates a new FinalStep, and may indicate that a CAS should be dropped.
 
Method Summary
 boolean getForceCasToBeDropped()
          Gets whether the CAS should be dropped.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FinalStep

public FinalStep()
Creates a new FinalStep.


FinalStep

public FinalStep(boolean aForceCasToBeDropped)
Creates a new FinalStep, and may indicate that a CAS should be dropped. This can only be used for CASes that are produced internally to the aggregate. It is an error to attempt to drop a CAS that was passed as input to the aggregate.

Parameters:
aForceCasToBeDropped - true forces this CAS to be dropped. false causes the default behavior, which is to output the CAS whenever appropriate.
Method Detail

getForceCasToBeDropped

public boolean getForceCasToBeDropped()
Gets whether the CAS should be dropped.

Returns:
true forces this CSA to be dropped. false causes the default behavior, which is to output the CAS whenever appropriate.


Copyright © 2010 The Apache Software Foundation. All Rights Reserved.