Class AnnotatorAdapter

    • Constructor Detail

      • AnnotatorAdapter

        public AnnotatorAdapter​(BaseAnnotator aAnnotator,
                                AnalysisEngineMetaData aMetaData,
                                Map<String,​Object> aAdditionalParams)
                         throws ResourceInitializationException
        Create a new annotator adapter.
        Parameters:
        aAnnotator - the annotator instance
        aMetaData - metadata for the annotator. Needed to compute ResultSpecification.
        aAdditionalParams - parameters passed to AE's initialize method. Used to allow containing Aggregate to influence ResultSpecification, for backwards compatibility with CapabilityLanguageFlow.
        Throws:
        ResourceInitializationException - if the component is sofa-aware
    • Method Detail

      • initialize

        public void initialize​(UimaContext aContext)
                        throws ResourceInitializationException
        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 the UimaContext for later use.

        Specified by:
        initialize in interface AnalysisComponent
        Parameters:
        aContext - Provides access to services and resources managed by the framework. This includes configuration parameters, logging, and access to external resources.
        Throws:
        ResourceInitializationException - if this AnalysisComponent cannot initialize successfully.
      • setResultSpecification

        public void setResultSpecification​(ResultSpecification aResultSpec)
        Description copied from interface: AnalysisComponent
        Sets the ResultSpecification that this AnalysisComponent should use. The ResultSpecification is a set of types and features that this AnalysisComponent is asked to produce. An Analysis Component may (but is not required to) optimize its processing by omitting the generation of any types or features that are not part of the ResultSpecification.
        Specified by:
        setResultSpecification in interface AnalysisComponent
        Parameters:
        aResultSpec - the ResultSpecification for this Analysis Component to use.
      • checkTypeSystemChange

        public void checkTypeSystemChange​(AbstractCas aCAS)
                                   throws AnalysisEngineProcessException
        Checks it the type system of the given CAS is different from the last type system this component was operating on. If it is different, calls the typeSystemInit method on the component.
        Parameters:
        aCAS - -
        Throws:
        AnalysisEngineProcessException - -
      • batchProcessComplete

        public void batchProcessComplete()
                                  throws AnalysisEngineProcessException
        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 of batchProcessComplete 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 interface AnalysisComponent
        Throws:
        AnalysisEngineProcessException - if this component encounters a problem in flushing its state to persistent storage
      • 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 interface AnalysisComponent
      • reconfigure

        public void reconfigure()
                         throws ResourceConfigurationException,
                                ResourceInitializationException
        Description copied from interface: AnalysisComponent
        Alerts this AnalysisComponent that the values of its configuration parameters or external resources have changed. This AnalysisComponent should re-read its configuration from the UimaContext and take appropriate action to reconfigure itself.

        In the abstract base classes provided by the framework, this is generally implemented by calling destroy followed by initialize and typeSystemChanged. If a more efficient implementation is needed, you can override that implementation.

        Specified by:
        reconfigure in interface AnalysisComponent
        Throws:
        ResourceConfigurationException - if the configuration specified for this component is invalid.
        ResourceInitializationException - if this component fails to reinitialize itself based on the new configuration.
      • 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.
        Specified by:
        getCasInstancesRequired in interface AnalysisComponent
        Returns:
        the number of CAS instances required by this AnalysisComponent.