Package org.apache.uima.uimacpp
Class UimacppAnalysisComponent
java.lang.Object
org.apache.uima.analysis_component.AnalysisComponent_ImplBase
org.apache.uima.uimacpp.UimacppAnalysisComponent
- All Implemented Interfaces:
AnalysisComponent
-
Constructor Summary
ConstructorDescriptionUimacppAnalysisComponent
(ResourceCreationSpecifier aeDescription, AnalysisEngineImplBase ae) -
Method Summary
Modifier and TypeMethodDescriptionvoid
Completes the processing of a batch of CASes.void
Notifies this AnalysisComponent that processing of an entire collection has been completed.void
destroy()
Frees all resources held by this AnalysisComponent.protected void
finalize()
Deprecated.int
Returns the maximum number of CAS instances that this AnalysisComponent expects to use at the same time.protected CAS
static int
Get the logging level of the logger for TAFAnnotator.Returns the specific CAS interface that this AnalysisComponent requires the framework to pass to itsAnalysisComponent.process(AbstractCas)
method.boolean
hasNext()
Asks if this AnalysisComponent has another CAS to output.void
initialize
(UimaContext context) Performs any startup tasks required by this component.static void
next()
Gets the next output CAS.void
process
(AbstractCas aCAS) Inputs a CAS to the AnalysisComponent.void
void
process
(CAS cas, ResultSpecification aResultSpec) void
Notifies this AnalysisComponent that its configuration parameters have changed.void
Methods inherited from class org.apache.uima.analysis_component.AnalysisComponent_ImplBase
getContext, getLogger, getResultSpecification, setResultSpecification
-
Constructor Details
-
UimacppAnalysisComponent
-
-
Method Details
-
initialize
Description copied from interface:AnalysisComponent
Performs any startup tasks required by this component. The framework calls this method only once, just after the AnalysisComponent has been instantiated.The framework supplies this AnalysisComponent with a reference to the
UimaContext
that it will use, for example to access configuration settings or resources. This AnalysisComponent should store a reference to its theUimaContext
for later use.- Specified by:
initialize
in interfaceAnalysisComponent
- Overrides:
initialize
in classAnalysisComponent_ImplBase
- Parameters:
context
- the UIMA Context- Throws:
ResourceInitializationException
- wraps exceptions thrown from called routines- See Also:
-
typeSystemInit
public void typeSystemInit(TypeSystem ts) throws AnnotatorConfigurationException, AnnotatorInitializationException - Parameters:
ts
- TypeSystem to use in the initialization- Throws:
AnnotatorConfigurationException
- pass thruAnnotatorInitializationException
- pass thru- See Also:
-
reconfigure
public void reconfigure()Description copied from class:AnalysisComponent_ImplBase
Notifies this AnalysisComponent that its configuration parameters have changed. This implementation just callsAnalysisComponent_ImplBase.destroy()
followed byAnalysisComponent_ImplBase.initialize(UimaContext)
. Subclasses can override to provide more efficient reconfiguration logic if necessary.- Specified by:
reconfigure
in interfaceAnalysisComponent
- Overrides:
reconfigure
in classAnalysisComponent_ImplBase
- See Also:
-
process
- Parameters:
cas
- the CAS to processaResultSpec
- the Result Specification to use- Throws:
AnnotatorProcessException
- wraps exceptions thrown from called methods- See Also:
-
process
- Throws:
AnalysisEngineProcessException
-
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
-
hasNext
Description copied from interface:AnalysisComponent
Asks if this AnalysisComponent has another CAS to output. If this method returns true, then a call toAnalysisComponent.next()
should retrieve the next output CAS. When this method returns false, the AnalysisComponent gives up control of the initial CAS that was passed to itsAnalysisComponent.process(AbstractCas)
method.- Returns:
- true if this AnalysisComponent has another CAS to output, false if not.
- Throws:
AnalysisEngineProcessException
- if a problem occurs during processing
-
next
Description copied from interface:AnalysisComponent
Gets the next output CAS. The framework will only call this method after first callingAnalysisComponent.hasNext()
and checking that it returns true.The AnalysisComponent can obtain a new CAS by calling
UimaContext.getEmptyCas(Class)
(or instead, one of the helper methods in the ImplBase class that it extended).- Returns:
- the next output CAS.
- Throws:
AnalysisEngineProcessException
- if a problem occurs during processing
-
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()Description copied from interface:AnalysisComponent
Returns the maximum number of CAS instances that this AnalysisComponent expects to use at the same time. This only applies to CasMultipliers. Most CasMultipliers will only need one CAS at a time. 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.
-
batchProcessComplete
Description copied from interface:AnalysisComponent
Completes the processing of a batch of CASes. The size of a batch is determined based on configuration provided by the application that is using this component. The purpose ofbatchProcessComplete
is to give this AnalysisComponent the change to flush information from memory to persistent storage. In the event of an error, this allows the processing to be restarted from the end of the last completed batch.If this component's descriptor declares that it is
recoverable
, then this component is required to be restartable from the end of the last completed batch.- Specified by:
batchProcessComplete
in interfaceAnalysisComponent
- Overrides:
batchProcessComplete
in classAnalysisComponent_ImplBase
- Throws:
AnalysisEngineProcessException
- if this component encounters a problem in flushing its state to persistent storage
-
collectionProcessComplete
Description copied from interface:AnalysisComponent
Notifies this AnalysisComponent that processing of an entire collection has been completed. In this method, this component should finish writing any output relating to the current collection.- Specified by:
collectionProcessComplete
in interfaceAnalysisComponent
- Overrides:
collectionProcessComplete
in classAnalysisComponent_ImplBase
- Throws:
AnalysisEngineProcessException
- if this component encounters a problem in its end-of-collection processing
-
destroy
public void destroy()Description copied from interface:AnalysisComponent
Frees all resources held by this AnalysisComponent. The framework calls this method only once, when it is finished using this component.- Specified by:
destroy
in interfaceAnalysisComponent
- Overrides:
destroy
in classAnalysisComponent_ImplBase
- See Also:
-
finalize
Deprecated. -
getLoggingLevel
public static int getLoggingLevel()Get the logging level of the logger for TAFAnnotator. TAF only supports three levels of logging. All logging levels INFO and below are mapped to the TAF message level.- Returns:
- the logging level
-
log
-
getEmptyCAS
-