Class CasObjectNetworkCasProcessorImpl
java.lang.Object
org.apache.uima.collection.impl.cpm.container.CasObjectNetworkCasProcessorImpl
- All Implemented Interfaces:
CasObjectProcessor
,CasProcessor
Implementation of the
CasObjectProcessor
interface used for both Local and Remote
CasObjectProcessors. This objects plugs in a transport object defined in the CPE Descriptor and
uses it to delegate analysis of CAS to a remote AE.-
Constructor Summary
ConstructorDescriptionCasObjectNetworkCasProcessorImpl
(CpeCasProcessor aCasProcessor) Using information from the CPE descriptor creates an instance of Transport class. -
Method Summary
Modifier and TypeMethodDescriptionvoid
batchProcessComplete
(ProcessTrace aTrace) Completes the processing of a batch.void
Closes the connection to the remote service.void
Connects to a service endpoint defined in the given URL.Creates URL object containing service endpoint info ( host and port).ReturnsProcessingResourceMetaData
object returned from the remote CasProcessor.boolean
Gets whether this is a read-only CAS Processor, which does not modify the CAS.boolean
Gets whether this is a stateless CAS Processor.void
processCas
(CAS aCAS) Uses configured transport to delegate given CAS to the remote service.void
processCas
(CAS[] aCASes) Uses configured transport to delegate given CASes to the remote service.void
typeSystemInit
(TypeSystem aTypeSystem) Informs this CasConsumer that the CAS TypeSystem has changed.
-
Constructor Details
-
CasObjectNetworkCasProcessorImpl
public CasObjectNetworkCasProcessorImpl(CpeCasProcessor aCasProcessor) throws ResourceConfigurationException Using information from the CPE descriptor creates an instance of Transport class. The transport class will delegate analysis of CAS to a remote object.- Parameters:
aCasProcessor
- - Cas Process configuration from the CPE descriptor- Throws:
ResourceConfigurationException
- the resource configuration exception
-
-
Method Details
-
getEndpoint
Creates URL object containing service endpoint info ( host and port).- Returns:
- URL
-
connect
Connects to a service endpoint defined in the given URL.- Parameters:
aURL
- - contains service endpoint info (hots and port)- Throws:
ResourceInitializationException
- wraps SocketException
-
processCas
Uses configured transport to delegate given CAS to the remote service.- Specified by:
processCas
in interfaceCasObjectProcessor
- Parameters:
aCAS
- CAS to be analyzed- Throws:
ResourceProcessException
- wraps Exception, SocketException
-
processCas
Uses configured transport to delegate given CASes to the remote service.- Specified by:
processCas
in interfaceCasObjectProcessor
- Parameters:
aCASes
- - an array of CASes to be analyzed- Throws:
ResourceProcessException
- wraps SocketException, SocketTimeoutException
-
typeSystemInit
Description copied from interface:CasObjectProcessor
Informs this CasConsumer that the CAS TypeSystem has changed. The CPM calls this method prior to initiating collection processing, and will call it again whenever the CAS TypeSystem changes.In this method, the CasConsumer should use the
TypeSystem
to resolve the names of Type and Features to the actualType
andFeature
objects, which can then be used during processing.- Specified by:
typeSystemInit
in interfaceCasObjectProcessor
- Parameters:
aTypeSystem
- the type system to use- Throws:
ResourceInitializationException
- if the type system is not compatible with this Cas Consumer
-
isStateless
public boolean isStateless()Description copied from interface:CasProcessor
Gets whether this is a stateless CAS Processor. Stateless CAS Processors do not maintain any data between calls to their process methods.- Specified by:
isStateless
in interfaceCasProcessor
- Returns:
- true if this CAS processor is stateless, false if it is stateful.
-
isReadOnly
public boolean isReadOnly()Description copied from interface:CasProcessor
Gets whether this is a read-only CAS Processor, which does not modify the CAS.- Specified by:
isReadOnly
in interfaceCasProcessor
- Returns:
- true if this CAS processor does not modify the CAS, false if it does.
-
getProcessingResourceMetaData
ReturnsProcessingResourceMetaData
object returned from the remote CasProcessor.- Specified by:
getProcessingResourceMetaData
in interfaceCasProcessor
- Returns:
- the processing resource meta data
-
batchProcessComplete
Description copied from interface:CasProcessor
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.- Specified by:
batchProcessComplete
in interfaceCasProcessor
- 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
public void collectionProcessComplete(ProcessTrace aTrace) throws ResourceProcessException, IOException Closes the connection to the remote service.- Specified by:
collectionProcessComplete
in interfaceCasProcessor
- Parameters:
aTrace
- the a trace- Throws:
ResourceProcessException
- the resource process exceptionIOException
- Signals that an I/O exception has occurred.
-