org.apache.geode.admin.jmx

## Interface Agent

- Deprecated.
  as of 7.0 use the `management` package instead

      public interface Agent

  A server component that provides administration-related information about a GemFire distributed system via the Java Management Extension JMX API. When a JMX `Agent` is created, it registers an MBean that represents `itself`. Click here for a description of the attributes, operations, and notifications of this and other GemFire JMX MBeans.

  The GemFire JMX Agent currently supports three JMX "adapters" through which clients can access the GemFire management beans: an "HTTP adapter" that allows a web browser client to view and modify management beans via HTTP or HTTPS, an "RMI adapter" that allows Java programs to access management beans using Remote Method Invocation, and an "SNMP adapter" that allows SNMP to access management beans. Information about configuring these adapters can be found in `AgentConfig`.

  In most distributed caching architectures, JMX administration agents are run in their own processes. A stand-alone JMX agent is managed using the `agent` command line utility:

       $ agent start

  This class allows a GemFire application VM to host a JMX management agent. Architectures with "co-located" JMX agents reduce the number of overall proceses required. However, hosting a JMX management agent in the same VM as a GemFire application is not generally recommended because it adds extra burden to an application VM and in the event that the application VM exits the administration information will no longer be available.
  Since:
    GemFire 4.0
  See Also:
    `AgentConfig`, `AgentFactory`

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `JNDI_NAME` Deprecated. Lookup name for RMIConnector when rmi-registry-enabled is true

  - ### Method Summary

    All Methods Instance Methods Abstract Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `javax.management.ObjectName` | `connectToSystem()` Deprecated. Connects to the distributed system described by this `Agent`'s configuration.
    `void` | `disconnectFromSystem()` Deprecated. Disconnects this agent from the distributed system and unregisters the management beans that provided information about it.
    `AgentConfig` | `getConfig()` Deprecated. Returns the configuration object for this JMX Agent.
    `AdminDistributedSystem` | `getDistributedSystem()` Deprecated. Returns the `AdminDistributedSystem` that underlies this JMX `Agent` or `null` is this agent is not connected.
    `LogWriter` | `getLogWriter()` Deprecated. Returns the `LogWriter` used for logging information.
    `javax.management.MBeanServer` | `getMBeanServer()` Deprecated. Returns the JMX `MBeanServer` with which GemFire MBeans are registered or `null` if this `Agent` is not started.
    `javax.management.ObjectName` | `getObjectName()` Deprecated. Returns the `ObjectName` of the JMX management bean that represents this agent or `null` if this `Agent` has not been started.
    `boolean` | `isConnected()` Deprecated. Returns whether or not this JMX `Agent` is currently providing information about a distributed system.
    `javax.management.ObjectName` | `manageDistributedSystem()` Deprecated. Returns the object name of the JMX MBean that represents the distributed system administered by this `Agent` or `null` if this `Agent` has not connected to the distributed system.
    `void` | `saveProperties()` Deprecated. Saves the configuration for this `Agent` to the file specified by @link AgentConfig#getPropertyFile.
    `void` | `start()` Deprecated. Starts this JMX Agent and its associated adapters.
    `void` | `stop()` Deprecated. Disconnects from the distributed system and stops this JMX Agent and all of its associated adapters.

- - ### Field Detail

    - #### JNDI_NAME

          static final java.lang.String JNDI_NAME

      Deprecated.
      Lookup name for RMIConnector when rmi-registry-enabled is true
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### getConfig

          AgentConfig getConfig()

      Deprecated.
      Returns the configuration object for this JMX Agent.

    - #### start

          void start()

      Deprecated.
      Starts this JMX Agent and its associated adapters. This method does not connect to the distributed system.

    - #### getMBeanServer

          javax.management.MBeanServer getMBeanServer()

      Deprecated.
      Returns the JMX `MBeanServer` with which GemFire MBeans are registered or `null` if this `Agent` is not started.

    - #### stop

          void stop()

      Deprecated.
      Disconnects from the distributed system and stops this JMX Agent and all of its associated adapters.

    - #### getObjectName

          javax.management.ObjectName getObjectName()

      Deprecated.
      Returns the `ObjectName` of the JMX management bean that represents this agent or `null` if this `Agent` has not been started.

    - #### isConnected

          boolean isConnected()

      Deprecated.
      Returns whether or not this JMX `Agent` is currently providing information about a distributed system.

    - #### connectToSystem

          javax.management.ObjectName connectToSystem()
                                               throws AdminException,
                                                      javax.management.MalformedObjectNameException

      Deprecated.
      Connects to the distributed system described by this `Agent`'s configuration.
      Returns:
        The object name of the system that the `Agent` is now connected to.
      Throws:
        `AdminException`
        `javax.management.MalformedObjectNameException`

    - #### getDistributedSystem

          AdminDistributedSystem getDistributedSystem()

      Deprecated.
      Returns the `AdminDistributedSystem` that underlies this JMX `Agent` or `null` is this agent is not connected.

    - #### manageDistributedSystem

          javax.management.ObjectName manageDistributedSystem()
                                                       throws javax.management.MalformedObjectNameException

      Deprecated.
      Returns the object name of the JMX MBean that represents the distributed system administered by this `Agent` or `null` if this `Agent` has not connected to the distributed system.
      Throws:
        `javax.management.MalformedObjectNameException`

    - #### disconnectFromSystem

          void disconnectFromSystem()

      Deprecated.
      Disconnects this agent from the distributed system and unregisters the management beans that provided information about it. However, this agent's adapters are not stopped and it is possible to reconfigure this `Agent` to connect to another distributed system.

    - #### saveProperties

          void saveProperties()

      Deprecated.
      Saves the configuration for this `Agent` to the file specified by @link AgentConfig#getPropertyFile.

    - #### getLogWriter

          LogWriter getLogWriter()

      Deprecated.
      Returns the `LogWriter` used for logging information.