Class CasMultiplier_ImplBase
java.lang.Object
org.apache.uima.analysis_component.AnalysisComponent_ImplBase
org.apache.uima.analysis_component.CasMultiplier_ImplBase
- All Implemented Interfaces:
AnalysisComponent
Base class to be extended by CAS Multipliers that use the
CAS
interface. A CAS Multiplier
can produce multiple output CASes while processing an input CAS. See AnalysisComponent
for a description of how the framework calls the methods on this interface.-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
Returns the maximum number of CAS instances that this CAS Multiplier expects to use at the same time.protected final CAS
Gets an empty CAS that this CAS Multiplier can then populate.Returns the specific CAS interface that this AnalysisComponent requires the framework to pass to itsAnalysisComponent.process(AbstractCas)
method.final void
process
(AbstractCas aCAS) Inputs a CAS to the AnalysisComponent.abstract void
This method should be overriden by subclasses.void
typeSystemInit
(TypeSystem aTypeSystem) Informs this annotator that the CAS TypeSystem has changed.Methods inherited from class org.apache.uima.analysis_component.AnalysisComponent_ImplBase
batchProcessComplete, collectionProcessComplete, destroy, getContext, getLogger, getResultSpecification, initialize, reconfigure, setResultSpecification
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.uima.analysis_component.AnalysisComponent
hasNext, next
-
Constructor Details
-
CasMultiplier_ImplBase
public CasMultiplier_ImplBase()
-
-
Method Details
-
getRequiredCasInterface
Description copied from interface:AnalysisComponent
Returns the specific CAS interface that this AnalysisComponent requires the framework to pass to itsAnalysisComponent.process(AbstractCas)
method.- Returns:
- the required CAS interface. This must specify a subtype of
AbstractCas
.
-
getCasInstancesRequired
public int getCasInstancesRequired()Returns the maximum number of CAS instances that this CAS Multiplier expects to use at the same time. Returns a default value of 1, which will be sufficient for most CAS Multipliers. Only if there is a clear need should this be overridden to return something greater than 1.- Returns:
- the number of CAS instances required by this AnalysisComponent.
-
process
Description copied from interface:AnalysisComponent
Inputs a CAS to the AnalysisComponent. The AnalysisComponent "owns" this CAS until such time asAnalysisComponent.hasNext()
is called and returns false or untilprocess
is called again (see class description).- Parameters:
aCAS
- A CAS that this AnalysisComponent should process. The framework will ensure that aCAS implements the specific CAS interface specified by theAnalysisComponent.getRequiredCasInterface()
method.- Throws:
AnalysisEngineProcessException
- if a problem occurs during processing
-
process
This method should be overriden by subclasses. Inputs a CAS to the AnalysisComponent. The AnalysisComponent "owns" this CAS until such time asAnalysisComponent.hasNext()
is called and returns false, or until theprocess
method is called again (seeAnalysisComponent
for details).- Parameters:
aCAS
- A CAS that this AnalysisComponent should process.- Throws:
AnalysisEngineProcessException
- if a problem occurs during processing
-
typeSystemInit
Informs this annotator that the CAS TypeSystem has changed. The Analysis Engine calls this from PrimitiveAnalysisEngine_impl which-calls CasMultiplier_ImplBase.process which-calls checkTypeSystemChange and will call it again whenever the CAS TypeSystem changes.In this method, the Annotator should use the
TypeSystem
to resolve the names of Type and Features to the actualType
andFeature
objects, which can then be used during processing.- Parameters:
aTypeSystem
- the new type system to use as input to your initialization- Throws:
AnalysisEngineProcessException
- if the provided type system is missing types or features required by this annotator
-
getEmptyCAS
Gets an empty CAS that this CAS Multiplier can then populate.- Returns:
- an empty CAS
-