org.apache.uima.analysis_engine.impl

## Class AnalysisEngineManagementImpl

- java.lang.Object
- - org.apache.uima.analysis_engine.impl.AnalysisEngineManagementImpl

- All Implemented Interfaces:
    Serializable, AnalysisEngineManagement, AnalysisEngineManagementImplMBean, ManagementObject

      public class AnalysisEngineManagementImpl
      extends Object
      implements AnalysisEngineManagementImplMBean, AnalysisEngineManagement

  Implements Monitoring/Management interface to an AnalysisEngine.
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.apache.uima.analysis_engine.AnalysisEngineManagement

      `AnalysisEngineManagement.State`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AnalysisEngineManagementImpl()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addComponent(String key, AnalysisEngineManagementImpl component)`
    `long` | `getAnalysisTime()` Gets the total time this AnalysisEngine has spent doing analysis over its entire lifetime.
    `long` | `getAnalysisTimeSinceMark()` Internal use only.
    `long` | `getBatchProcessCompleteTime()` Gets the total time this AnalysisEngine has spent in its batchProcessComplete method over its entire lifetime.
    `long` | `getBatchProcessCompleteTimeSinceMark()` Internal use only.
    `String` | `getCASesPerSecond()` Gets the throughput of this AnalysisEngine, represented as number of CASes processed per second.
    `long` | `getCollectionProcessCompleteTime()` Gets the total time this AnalysisEngine has spent in its collectionProcessComplete method over its entire lifetime.
    `long` | `getCollectionProcessCompleteTimeSinceMark()` Internal use only.
    `Map<String,AnalysisEngineManagement>` | `getComponents()` For an Aggregate AnalysisEngine, gets a Map whose values are AnalysisEngineManagement objects that contain the statistics for the components of the aggregate.
    `long` | `getInitializationTime()` Total time it took AnalysisEngine to initialize
    `String` | `getName()` Gets a name for this AnalysisEngineManagement object, which will be unique among all of its siblings (i.e.
    `long` | `getNumberOfCASesProcessed()` Gets the total number of CASes this AnalysisEngine has processed over its lifetime.
    `long` | `getServiceCallTime()` If this AnalysisEngine is a proxy to a remote service, gets the total time spent making calls on that service.
    `long` | `getServiceCallTimeSinceMark()` Internal use only.
    `String` | `getState()` Gets the current state of an AnalysisEngine.
    `long` | `getThreadId()` Gets an id of a thread that was used to initialize AE instance
    `String` | `getUniqueMBeanName()` Gets a valid JMX MBean name that is unique among all ManagementObjects in this JVM.
    `void` | `incrementCASesProcessed()`
    `void` | `mark()` Internal use only.
    `void` | `reportAnalysisTime(long time)`
    `void` | `reportBatchProcessCompleteTime(long time)`
    `void` | `reportCollectionProcessCompleteTime(long time)`
    `void` | `reportServiceCallTime(long time)`
    `void` | `resetStats()` Resets all of the performance statistics to zero.
    `void` | `setInitializationTime(long initializationTime)`
    `void` | `setName(String aName, UimaContextAdmin aContext, String aCustomPrefix)` Sets the name of this AnalyaisEngineManagement object, and also computes the unique MBean name that can later be used to register this object with an MBeanServer.
    `void` | `setState(AnalysisEngineManagement.State state)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### AnalysisEngineManagementImpl

          public AnalysisEngineManagementImpl()

  - ### Method Detail

    - #### getInitializationTime

          public long getInitializationTime()

      Description copied from interface: `AnalysisEngineManagement`
      Total time it took AnalysisEngine to initialize
      Specified by:
        `getInitializationTime` in interface `AnalysisEngineManagement`
      Specified by:
        `getInitializationTime` in interface `AnalysisEngineManagementImplMBean`
      Returns:
        - initialization time

    - #### setInitializationTime

          public void setInitializationTime(long initializationTime)

    - #### getThreadId

          public long getThreadId()

      Description copied from interface: `AnalysisEngineManagement`
      Gets an id of a thread that was used to initialize AE instance
      Specified by:
        `getThreadId` in interface `AnalysisEngineManagement`
      Specified by:
        `getThreadId` in interface `AnalysisEngineManagementImplMBean`
      Returns:
        - thread id

    - #### getState

          public String getState()

      Description copied from interface: `AnalysisEngineManagement`
      Gets the current state of an AnalysisEngine. The AE should either be in Initializing or Ready state.
      Specified by:
        `getState` in interface `AnalysisEngineManagement`
      Specified by:
        `getState` in interface `AnalysisEngineManagementImplMBean`
      Returns:
        the state of the analysis engine, from the State enum above

    - #### setState

          public void setState(AnalysisEngineManagement.State state)

    - #### reportAnalysisTime

          public void reportAnalysisTime(long time)

    - #### reportBatchProcessCompleteTime

          public void reportBatchProcessCompleteTime(long time)

    - #### reportCollectionProcessCompleteTime

          public void reportCollectionProcessCompleteTime(long time)

    - #### reportServiceCallTime

          public void reportServiceCallTime(long time)

    - #### incrementCASesProcessed

          public void incrementCASesProcessed()

    - #### getBatchProcessCompleteTime

          public long getBatchProcessCompleteTime()

      Description copied from interface: `AnalysisEngineManagement`
      Gets the total time this AnalysisEngine has spent in its batchProcessComplete method over its entire lifetime.
      Specified by:
        `getBatchProcessCompleteTime` in interface `AnalysisEngineManagement`
      Specified by:
        `getBatchProcessCompleteTime` in interface `AnalysisEngineManagementImplMBean`
      Returns:
        the batch process complete time in milliseconds

    - #### getCollectionProcessCompleteTime

          public long getCollectionProcessCompleteTime()

      Description copied from interface: `AnalysisEngineManagement`
      Gets the total time this AnalysisEngine has spent in its collectionProcessComplete method over its entire lifetime.
      Specified by:
        `getCollectionProcessCompleteTime` in interface `AnalysisEngineManagement`
      Specified by:
        `getCollectionProcessCompleteTime` in interface `AnalysisEngineManagementImplMBean`
      Returns:
        the batch process complete time in milliseconds

    - #### getAnalysisTime

          public long getAnalysisTime()

      Description copied from interface: `AnalysisEngineManagement`
      Gets the total time this AnalysisEngine has spent doing analysis over its entire lifetime. This includes calls to the `AnalysisEngine.process(CAS)` and `AnalysisEngine.processAndOutputNewCASes(CAS)` methods, as well as calls to the CasIterator returned from the processAndOutputNewCASes method.
      Specified by:
        `getAnalysisTime` in interface `AnalysisEngineManagement`
      Specified by:
        `getAnalysisTime` in interface `AnalysisEngineManagementImplMBean`
      Returns:
        the analysis time time in milliseconds

    - #### getServiceCallTime

          public long getServiceCallTime()

      Description copied from interface: `AnalysisEngineManagement`
      If this AnalysisEngine is a proxy to a remote service, gets the total time spent making calls on that service.
      Specified by:
        `getServiceCallTime` in interface `AnalysisEngineManagement`
      Specified by:
        `getServiceCallTime` in interface `AnalysisEngineManagementImplMBean`
      Returns:
        the service call time in milliseconds, or 0 if this AnalysisEngine is not a proxy to a service

    - #### mark

          public void mark()

      Internal use only. Used to implement backwards compatibility with the ProcessTrace interface.

    - #### getBatchProcessCompleteTimeSinceMark

          public long getBatchProcessCompleteTimeSinceMark()

      Internal use only. Used to implement backwards compatibility with the ProcessTrace interface.
      Returns:
        Batch Process Complete time since mark

    - #### getCollectionProcessCompleteTimeSinceMark

          public long getCollectionProcessCompleteTimeSinceMark()

      Internal use only. Used to implement backwards compatibility with the ProcessTrace interface.
      Returns:
        Collection Process Complete time since mark

    - #### getAnalysisTimeSinceMark

          public long getAnalysisTimeSinceMark()

      Internal use only. Used to implement backwards compatibility with the ProcessTrace interface.
      Returns:
        Analysis time since mark

    - #### getServiceCallTimeSinceMark

          public long getServiceCallTimeSinceMark()

      Internal use only. Used to implement backwards compatibility with the ProcessTrace interface.
      Returns:
        service call time since mark

    - #### getNumberOfCASesProcessed

          public long getNumberOfCASesProcessed()

      Description copied from interface: `AnalysisEngineManagement`
      Gets the total number of CASes this AnalysisEngine has processed over its lifetime. For a CAS Multipliers, this includes both input and output CASes.
      Specified by:
        `getNumberOfCASesProcessed` in interface `AnalysisEngineManagement`
      Specified by:
        `getNumberOfCASesProcessed` in interface `AnalysisEngineManagementImplMBean`
      Returns:
        the number of CASes processed

    - #### getCASesPerSecond

          public String getCASesPerSecond()

      Description copied from interface: `AnalysisEngineManagement`
      Gets the throughput of this AnalysisEngine, represented as number of CASes processed per second.
      Specified by:
        `getCASesPerSecond` in interface `AnalysisEngineManagement`
      Specified by:
        `getCASesPerSecond` in interface `AnalysisEngineManagementImplMBean`
      Returns:
        a string representation of the throughput

    - #### getComponents

          public Map<String,AnalysisEngineManagement> getComponents()

      Description copied from interface: `AnalysisEngineManagement`
      For an Aggregate AnalysisEngine, gets a Map whose values are AnalysisEngineManagement objects that contain the statistics for the components of the aggregate. The keys in the Map are the unique String keys specified in the aggregate AnalysisEngine descriptor. If this AnalysisEngine is a primitive, returns an empty Map.
      Specified by:
        `getComponents` in interface `AnalysisEngineManagement`
      Returns:
        a map from String keys to AnalysisEngineManagement objects

    - #### addComponent

          public void addComponent(String key,
                                   AnalysisEngineManagementImpl component)

    - #### getName

          public String getName()

      Description copied from interface: `AnalysisEngineManagement`
      Gets a name for this AnalysisEngineManagement object, which will be unique among all of its siblings (i.e. the objects returned from its parent's `AnalysisEngineManagement.getComponents()` method.
      Specified by:
        `getName` in interface `AnalysisEngineManagement`
      Specified by:
        `getName` in interface `AnalysisEngineManagementImplMBean`
      Returns:
        a name for this AnalysisEngineManagement object

    - #### getUniqueMBeanName

          public String getUniqueMBeanName()

      Description copied from interface: `ManagementObject`
      Gets a valid JMX MBean name that is unique among all ManagementObjects in this JVM. (Technically, it is unique only among ManagementObjects objects loaded by the same ClassLoader, which is whatever ClassLoader was used to load the UIMA Framework classes.)

      If you are running with JRE 1.5, this is the name used to register this object with the platform MBeanServer.

      Specified by:
        `getUniqueMBeanName` in interface `ManagementObject`
      Returns:
        a unique MBean name

    - #### resetStats

          public void resetStats()

      Description copied from interface: `AnalysisEngineManagement`
      Resets all of the performance statistics to zero. For an Aggregate Analysis Engine, also resets the statistics for all the components of the aggregate.
      Specified by:
        `resetStats` in interface `AnalysisEngineManagement`
      Specified by:
        `resetStats` in interface `AnalysisEngineManagementImplMBean`

    - #### setName

          public void setName(String aName,
                              UimaContextAdmin aContext,
                              String aCustomPrefix)

      Sets the name of this AnalyaisEngineManagement object, and also computes the unique MBean name that can later be used to register this object with an MBeanServer.
      Parameters:
        `aName` - the simple name of this AnalysisEngine (generally this is the `name` property from the AnalysisEngineMetaData)
        `aContext` - the UimaContext for this AnalysisEngine. Needed to compute the unique name, which is hierarchical
        `aCustomPrefix` - an optional prefix provided by the Application, which will be prepended to the name generated by UIMA. If null, the prefix "org.apache.uima:" will be used.

Copyright © 2006–2021 The Apache Software Foundation. All rights reserved.