Package org.apache.uima.analysis_engine

# Interface AnalysisEngineManagement

All Superinterfaces:
  `ManagementObject`

All Known Implementing Classes:
  `AnalysisEngineManagementImpl`

public interface AnalysisEngineManagement extends ManagementObject
Monitoring and management interface to an AnalysisEngine. An application can obtain an instance of this object by calling `AnalysisEngine.getManagementInterface()`.

In this implementation, objects implementing this interface will always be JMX-compatible MBeans that you can register with an MBeanServer. For information on JMX see http://java.sun.com/j2se/1.5.0/docs/api/javax/management/package-summary.html

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Interface
  Description
  `static enum`
  `AnalysisEngineManagement.State`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `long`
  `getAnalysisTime()`
  Gets the total time this AnalysisEngine has spent doing analysis over its entire lifetime.
  `long`
  `getBatchProcessCompleteTime()`
  Gets the total time this AnalysisEngine has spent in its batchProcessComplete method over its entire lifetime.
  `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.
  `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.
  `String`
  `getState()`
  Gets the current state of an AnalysisEngine.
  `long`
  `getThreadId()`
  Gets an id of a thread that was used to initialize AE instance
  `void`
  `resetStats()`
  Resets all of the performance statistics to zero.

  ### Methods inherited from interface org.apache.uima.resource.ManagementObject

  `getUniqueMBeanName`

- ## Method Details

  - ### getName

    String getName()
    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 `getComponents()` method.
    Returns:
      a name for this AnalysisEngineManagement object

  - ### getAnalysisTime

    long getAnalysisTime()
    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.
    Returns:
      the analysis time time in milliseconds

  - ### getBatchProcessCompleteTime

    long getBatchProcessCompleteTime()
    Gets the total time this AnalysisEngine has spent in its batchProcessComplete method over its entire lifetime.
    Returns:
      the batch process complete time in milliseconds

  - ### getCollectionProcessCompleteTime

    long getCollectionProcessCompleteTime()
    Gets the total time this AnalysisEngine has spent in its collectionProcessComplete method over its entire lifetime.
    Returns:
      the batch process complete time in milliseconds

  - ### getServiceCallTime

    long getServiceCallTime()
    If this AnalysisEngine is a proxy to a remote service, gets the total time spent making calls on that service.
    Returns:
      the service call time in milliseconds, or 0 if this AnalysisEngine is not a proxy to a service

  - ### getNumberOfCASesProcessed

    long getNumberOfCASesProcessed()
    Gets the total number of CASes this AnalysisEngine has processed over its lifetime. For a CAS Multipliers, this includes both input and output CASes.
    Returns:
      the number of CASes processed

  - ### getCASesPerSecond

    String getCASesPerSecond()
    Gets the throughput of this AnalysisEngine, represented as number of CASes processed per second.
    Returns:
      a string representation of the throughput

  - ### getComponents

    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. 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.
    Returns:
      a map from String keys to AnalysisEngineManagement objects

  - ### resetStats

    void resetStats()
    Resets all of the performance statistics to zero. For an Aggregate Analysis Engine, also resets the statistics for all the components of the aggregate.

  - ### getState

    String getState()
    Gets the current state of an AnalysisEngine. The AE should either be in Initializing or Ready state.
    Returns:
      the state of the analysis engine, from the State enum above

  - ### getThreadId

    long getThreadId()
    Gets an id of a thread that was used to initialize AE instance
    Returns:
      - thread id

  - ### getInitializationTime

    long getInitializationTime()
    Total time it took AnalysisEngine to initialize
    Returns:
      - initialization time