Interface CasProcessor
-
- All Known Subinterfaces:
AnalysisEngine
,CasConsumer
,CasDataConsumer
,CasDataProcessor
,CasObjectProcessor
,TextAnalysisEngine
- All Known Implementing Classes:
AggregateAnalysisEngine_impl
,AnalysisEngineImplBase
,AnalysisEngineServiceAdapter
,AnnotationWriter
,CasConsumer_ImplBase
,CasDataConsumer_ImplBase
,CasObjectNetworkCasProcessorImpl
,InlineXmlCasConsumer
,MultiprocessingAnalysisEngine_impl
,NetworkCasProcessorImpl
,PearAnalysisEngineWrapper
,PrimitiveAnalysisEngine_impl
,SoapAnalysisEngineServiceAdapter
,UimacppAnalysisEngineImpl
,VinciAnalysisEngineServiceAdapter
,XCasWriterCasConsumer
,XmiWriterCasConsumer
public interface CasProcessor
Base interface for a component that can process a CAS. This includes both components that modify the CAS (such as anAnalysisEngine
as well as those that do not (such as aCasConsumer
). Whether the CasProcessor modifies the CAS can be determined by calling itsisReadOnly()
method.CasProcessor
s can be "plugged into" theCollectionProcessingManager
.CAS Processors should not directly implement this interface; instead they should implement one of its subinterfaces:
CasDataProcessor
- for CAS processors that want to interact directly with theCasData
. This works best for simple processors that do not need the indexing or strong typing features provided by the CAS container.CasObjectProcessor
- for CAS processors that want to use the fullCAS
implementation.
CasObjectProcessor
.All CAS processors must publish their metadata via the
getProcessingResourceMetaData()
method.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
batchProcessComplete(ProcessTrace aTrace)
Completes the processing of a batch.void
collectionProcessComplete(ProcessTrace aTrace)
Completes the processing of an entire collection.ProcessingResourceMetaData
getProcessingResourceMetaData()
Gets the metadata that describes thisCasProcesor
.boolean
isReadOnly()
Gets whether this is a read-only CAS Processor, which does not modify the CAS.boolean
isStateless()
Gets whether this is a stateless CAS Processor.
-
-
-
Method Detail
-
isStateless
boolean isStateless()
Gets whether this is a stateless CAS Processor. Stateless CAS Processors do not maintain any data between calls to their process methods.- Returns:
- true if this CAS processor is stateless, false if it is stateful.
-
isReadOnly
boolean isReadOnly()
Gets whether this is a read-only CAS Processor, which does not modify the CAS.- Returns:
- true if this CAS processor does not modify the CAS, false if it does.
-
getProcessingResourceMetaData
ProcessingResourceMetaData getProcessingResourceMetaData()
Gets the metadata that describes thisCasProcesor
.- Returns:
- an object containing all metadata for this CasProcessor
-
batchProcessComplete
void batchProcessComplete(ProcessTrace aTrace) throws ResourceProcessException, IOException
Completes the processing of a batch. A collection may be divided into one or more batches - it is up to the CollectionProcessingManager or the application to determine the number and size of batches.- Parameters:
aTrace
- an object that records information, such as timing, about this method's execution.- Throws:
ResourceProcessException
- if an exception occurs during processingIOException
- if an I/O failure occurs
-
collectionProcessComplete
void collectionProcessComplete(ProcessTrace aTrace) throws ResourceProcessException, IOException
Completes the processing of an entire collection.- Parameters:
aTrace
- an object that records information, such as timing, about this method's execution.- Throws:
ResourceProcessException
- if an exception occurs during processingIOException
- if an I/O failure occurs
-
-