org.apache.catalina.ant.jmx

## Class JMXAccessorInvokeTask

- java.lang.Object
- - org.apache.tools.ant.ProjectComponent
  - - org.apache.tools.ant.Task
    - - org.apache.catalina.ant.BaseRedirectorHelperTask
      - - org.apache.catalina.ant.jmx.JMXAccessorTask
        - - org.apache.catalina.ant.jmx.JMXAccessorInvokeTask

- All Implemented Interfaces:
    Cloneable

      public class JMXAccessorInvokeTask
      extends JMXAccessorTask

  Access JMX JSR 160 MBeans Server.
  - open more then one JSR 160 rmi connection
  - Get/Set Mbeans attributes
  - Call Mbean Operation with arguments
  - Argument values can be converted from string to int,long,float,double,boolean,ObjectName or InetAddress
  - Query Mbeans
  - Show Get, Call, Query result at Ant console log
  - Bind Get, Call, Query result at Ant properties
  Examples:
  - Get a session attribute hello from session with ref ${sessionid.0} form app Catalina:type=Manager,context=/ClusterTest,host=localhost

           <jmx:invoke
                   name="Catalina:type=Manager,context=/ClusterTest,host=localhost"
                   operation="getSessionAttribute"
                   resultproperty="hello">
                 <arg value="${sessionid.0}"/>
                 <arg value="Hello"/>
           </jmx:invoke>

  - Create new AccessLogger at localhost `<jmx:invoke name="Catalina:type=MBeanFactory" operation="createAccessLoggerValve" resultproperty="accessLoggerObjectName" > <arg value="Catalina:type=Host,host=localhost"/> </jmx:invoke>`
  - Remove existing AccessLogger at localhost `<jmx:invoke name="Catalina:type=MBeanFactory" operation="removeValve" > <arg value="Catalina:type=Valve,name=AccessLogValve,host=localhost"/> </jmx:invoke>`

  First call to a remote MBeanserver save the JMXConnection a referenz jmx.server

  These tasks require Ant 1.6 or later interface.
  Since:
    5.5.10
  Author:
    Peter Rossbach

- - ### Field Summary

    - ### Fields inherited from class org.apache.catalina.ant.jmx.JMXAccessorTask

      `JMX_SERVICE_PREFIX, JMX_SERVICE_SUFFIX`

    - ### Fields inherited from class org.apache.catalina.ant.BaseRedirectorHelperTask

      `alwaysLog, failOnError, redirectErrStream, redirector, redirectorConfigured, redirectorElement, redirectOutput, redirectOutStream`

    - ### Fields inherited from class org.apache.tools.ant.Task

      `target, taskName, taskType, wrapper`

    - ### Fields inherited from class org.apache.tools.ant.ProjectComponent

      `description, location, project`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `JMXAccessorInvokeTask()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addArg(Arg arg)`
    `List<Arg>` | `getArgs()`
    `String` | `getInfo()` Return descriptive information about this implementation and the corresponding version number, in the format `<description>/<version>`.
    `String` | `getOperation()`
    `String` | `jmxExecute(MBeanServerConnection jmxServerConnection)` Execute the specified command, based on the configured properties.
    `protected String` | `jmxInvoke(MBeanServerConnection jmxServerConnection, String name)`
    `void` | `setArgs(List<Arg> args)`
    `void` | `setOperation(String operation)`

    - ### Methods inherited from class org.apache.catalina.ant.jmx.JMXAccessorTask

      `accessJMXConnection, convertStringToType, createJMXConnection, createProperty, createProperty, echoResult, execute, getDelimiter, getHost, getIf, getJMXConnection, getName, getPassword, getPort, getProperty, getRef, getResultproperty, getUnless, getUrl, getUsername, isEcho, isSeparatearrayresults, isUseRef, setDelimiter, setEcho, setHost, setIf, setName, setPassword, setPort, setProperty, setRef, setResultproperty, setSeparatearrayresults, setUnless, setUrl, setUsername, testIfCondition, testUnlessCondition`

    - ### Methods inherited from class org.apache.catalina.ant.BaseRedirectorHelperTask

      `addConfiguredRedirector, closeRedirector, handleErrorFlush, handleErrorOutput, handleFlush, handleOutput, handleOutput, isFailOnError, openRedirector, setAlwaysLog, setAppend, setCreateEmptyFiles, setError, setErrorProperty, setFailonerror, setLogError, setOutput, setOutputproperty`

    - ### Methods inherited from class org.apache.tools.ant.Task

      `bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleInput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType`

    - ### Methods inherited from class org.apache.tools.ant.ProjectComponent

      `clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject`

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

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

- - ### Constructor Detail

    - #### JMXAccessorInvokeTask

          public JMXAccessorInvokeTask()

  - ### Method Detail

    - #### getInfo

          public String getInfo()

      Return descriptive information about this implementation and the corresponding version number, in the format `<description>/<version>`.
      Overrides:
        `getInfo` in class `JMXAccessorTask`

    - #### getOperation

          public String getOperation()

      Returns:
        Returns the operation.

    - #### setOperation

          public void setOperation(String operation)

      Parameters:
        `operation` - The operation to set.

    - #### addArg

          public void addArg(Arg arg)

    - #### getArgs

          public List<Arg> getArgs()

      Returns:
        Returns the args.

    - #### setArgs

          public void setArgs(List<Arg> args)

      Parameters:
        `args` - The args to set.

    - #### jmxExecute

          public String jmxExecute(MBeanServerConnection jmxServerConnection)
                            throws Exception

      Execute the specified command, based on the configured properties. The input stream will be closed upon completion of this task, whether it was executed successfully or not.
      Overrides:
        `jmxExecute` in class `JMXAccessorTask`
      Throws:
        `org.apache.tools.ant.BuildException` - if an error occurs
        `Exception` - if an error occurs

    - #### jmxInvoke

          protected String jmxInvoke(MBeanServerConnection jmxServerConnection,
                         String name)
                              throws Exception

      Parameters:
        `jmxServerConnection` -
      Throws:
        `Exception`

Copyright © 2000-2017 Apache Software Foundation. All Rights Reserved.