Class ASB_impl
- java.lang.Object
-
- org.apache.uima.resource.Resource_ImplBase
-
- org.apache.uima.analysis_engine.asb.impl.ASB_impl
-
public class ASB_impl extends Resource_ImplBase implements ASB
A simpleASBimplementation. This implementation is not specific to any transport technology. It simply uses theResourceFactoryto acquire instances of its delegate AnalysisEngines and then communicates with these delegate AnalysisEngines through theAnalysisEngineinterface. Any communication with remote AnalysisEngine services is done through aAnalysisEngineServiceAdapterand is not the concern of this ASB implementation.
-
-
Field Summary
-
Fields inherited from interface org.apache.uima.analysis_engine.asb.ASB
PARAM_AGGREGATE_ANALYSIS_ENGINE_NAME
-
Fields inherited from interface org.apache.uima.resource.Resource
PARAM_AGGREGATE_SOFA_MAPPINGS, PARAM_CONFIG_MANAGER, PARAM_CONFIG_PARAM_SETTINGS, PARAM_EXTERNAL_OVERRIDE_SETTINGS, PARAM_PERFORMANCE_TUNING_SETTINGS, PARAM_RESOURCE_MANAGER, PARAM_UIMA_CONTEXT
-
-
Constructor Summary
Constructors Constructor Description ASB_impl()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddestroy()Releases all resources held by thisResource.java.util.Map<java.lang.String,ProcessingResourceMetaData>getAllComponentMetaData()Gets the metadata for all components known to this ASB.java.util.Map<java.lang.String,AnalysisEngineMetaData>getComponentAnalysisEngineMetaData()Gets metadata for all of the component AnalysisEngines known to thisASB.java.util.Map<java.lang.String,AnalysisEngine>getComponentAnalysisEngines()Gets references to the component AnalysisEngines known to thisASB.FlowControllerContainergetFlowControllerContainer()Not public API.protected AnalysisEngineManagementImplgetMBean()Gets the MBean that provides the management interface to this AE.protected voidinitFlowController(FlowControllerDeclaration aFlowControllerDeclaration, UimaContextAdmin aParentContext, AnalysisEngineMetaData aAggregateMetadata)booleaninitialize(ResourceSpecifier aSpecifier, java.util.Map<java.lang.String,java.lang.Object> aAdditionalParams)Initializes this ASB.CasIteratorprocess(CAS aCAS)Invokes the processing of the aggregate on the given input CAS.voidsetup(java.util.Map<java.lang.String,ResourceSpecifier> aSpecifiers, UimaContextAdmin aParentContext, FlowControllerDeclaration aFlowControllerDeclaration, AnalysisEngineMetaData aAggregateMetadata)Called after calling initialize() (see above) by the Aggregate Analysis Engine to provide this ASB with information it needs to operate.-
Methods inherited from class org.apache.uima.resource.Resource_ImplBase
getCasManager, getLogger, getMetaData, getRelativePathResolver, getResourceManager, getUimaContext, getUimaContextAdmin, setLogger, setMetaData
-
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.resource.Resource
getLogger, getMetaData, getResourceManager, getUimaContext, getUimaContextAdmin, setLogger
-
-
-
-
Method Detail
-
initialize
public boolean initialize(ResourceSpecifier aSpecifier, java.util.Map<java.lang.String,java.lang.Object> aAdditionalParams) throws ResourceInitializationException
Initializes this ASB.- Specified by:
initializein interfaceResource- Overrides:
initializein classResource_ImplBase- Parameters:
aSpecifier- describes how to create this ASB.aAdditionalParams- parameters which are passed along to the delegate Analysis Engines when they are constructed- Returns:
- true if and only if initialization completed successfully. Returns false if this
implementation cannot handle the given
ResourceSpecifier. - Throws:
ResourceInitializationException- if a failure occurs during initialization.- See Also:
Resource.initialize(ResourceSpecifier, Map)
-
destroy
public void destroy()
Description copied from interface:ResourceReleases all resources held by thisResource.- Specified by:
destroyin interfaceResource- Overrides:
destroyin classResource_ImplBase- See Also:
Resource.destroy()
-
setup
public void setup(java.util.Map<java.lang.String,ResourceSpecifier> aSpecifiers, UimaContextAdmin aParentContext, FlowControllerDeclaration aFlowControllerDeclaration, AnalysisEngineMetaData aAggregateMetadata) throws ResourceInitializationException
Called after calling initialize() (see above) by the Aggregate Analysis Engine to provide this ASB with information it needs to operate.- Specified by:
setupin interfaceASB- Parameters:
aSpecifiers- the specifiers for all component AEs within this Aggregate. The ASB will instantiate those AEs.aParentContext- UIMA context for the aggregate AEaFlowControllerDeclaration- declaration (key and specifier) of FlowController to be used for this aggregate.aAggregateMetadata- metadata for the aggregate AE- Throws:
ResourceInitializationException- passthru
-
initFlowController
protected void initFlowController(FlowControllerDeclaration aFlowControllerDeclaration, UimaContextAdmin aParentContext, AnalysisEngineMetaData aAggregateMetadata) throws ResourceInitializationException
- Throws:
ResourceInitializationException
-
getComponentAnalysisEngineMetaData
public java.util.Map<java.lang.String,AnalysisEngineMetaData> getComponentAnalysisEngineMetaData()
Description copied from interface:ASBGets metadata for all of the component AnalysisEngines known to thisASB.- Specified by:
getComponentAnalysisEngineMetaDatain interfaceASB- Returns:
- a Map from String keys (the same keys used in
AnalysisEngineDescription.getDelegateAnalysisEngineSpecifiers()toAnalysisEngineMetaDatavalues. - See Also:
ASB.getComponentAnalysisEngineMetaData()
-
getComponentAnalysisEngines
public java.util.Map<java.lang.String,AnalysisEngine> getComponentAnalysisEngines()
Description copied from interface:ASBGets references to the component AnalysisEngines known to thisASB.- Specified by:
getComponentAnalysisEnginesin interfaceASB- Returns:
- a Map from String keys (the same keys used in
AnalysisEngineDescription.getDelegateAnalysisEngineSpecifiers()toAnalysisEngineobjects. - See Also:
ASB.getComponentAnalysisEngines()
-
getAllComponentMetaData
public java.util.Map<java.lang.String,ProcessingResourceMetaData> getAllComponentMetaData()
Description copied from interface:ASBGets the metadata for all components known to this ASB. This includes the FlowController as well as the component AnalysisEngines.- Specified by:
getAllComponentMetaDatain interfaceASB- Returns:
- a Map from String keys (the same keys used in the aggregate AE descriptor) to
ProcessingResourceMetaDatavalues.
-
process
public CasIterator process(CAS aCAS) throws AnalysisEngineProcessException
Description copied from interface:ASBInvokes the processing of the aggregate on the given input CAS. This returns a CasIterator that provides access to the one or more output CASes generated from the processing. The input CAS, including any modifications made to it during processing, will always be the very last element returned by theCasIterator.If the aggregate does not generate any output CASes of the input CAS, an empty
CasIteratorwill be returned.- Specified by:
processin interfaceASB- Parameters:
aCAS- the CAS to process- Returns:
- an iterator over all output CASes
- Throws:
AnalysisEngineProcessException- -
-
getFlowControllerContainer
public FlowControllerContainer getFlowControllerContainer()
Not public API. Is declared public so it can be used by test case.- Specified by:
getFlowControllerContainerin interfaceASB- Returns:
- an instance of
FlowControllerContainer
-
getMBean
protected AnalysisEngineManagementImpl getMBean()
Gets the MBean that provides the management interface to this AE. Returns the same object as UimaContext.getManagementInterface() but casted to the AnalysisEngineManagement type.- Returns:
- the MBean for the management interface to this AE
-
-