## org.apache.catalina.ant.jmx
Class JMXAccessorQueryTask

    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.JMXAccessorQueryTask

All Implemented Interfaces:
  java.lang.Cloneable

    public class JMXAccessorQueryTask

extends JMXAccessorTask

Query for Mbeans.

- open no existing JSR 160 rmi jmx connection
- Get all Mbeans attributes
- Get only the Query Mbeans ObjectNames
- Show query result as Ant console log
- Bind query result as Ant properties

Query a list of Mbeans.

       <jmxQuery
               host="127.0.0.1"
               port="9014"
               name="Catalina:type=Manager,*
               resultproperty="manager" />

with attribute attributebinding="true" you can get all attributes also from result objects.
The poperty manager.lenght show the size of the result and with manager.[0..lenght].name the resulted ObjectNames are saved. These tasks require Ant 1.6 or later interface.

Since:
  5.5.10
Version:
  $Revision: 467222 $ $Date: 2006-10-24 05:17:11 +0200 (Tue, 24 Oct 2006) $
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
`JMXAccessorQueryTask()`

Method Summary
`protected void` `bindAttributes(javax.management.MBeanServerConnection jmxServerConnection, java.lang.String resultproperty, java.lang.String pname, javax.management.ObjectName oname)`
`java.lang.String` `getInfo()` Return descriptive information about this implementation and the corresponding version number, in the format `<description>/<version>`.
`boolean` `isAttributebinding()`
`java.lang.String` `jmxExecute(javax.management.MBeanServerConnection jmxServerConnection)` Execute the specified command, based on the configured properties.
`protected java.lang.String` `jmxQuery(javax.management.MBeanServerConnection jmxServerConnection, java.lang.String qry)` Call Mbean server for some mbeans with same domain, attributes.
`void` `setAttributebinding(boolean attributeBinding)`

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

`accessJMXConnection, convertStringToType, createJMXConnection, createProperty, createProperty, echoResult, execute, getDelimiter, getHost, getIf, getJMXConnection, getName, getPassword, getPort, getProperties, 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, 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

### JMXAccessorQueryTask

    public JMXAccessorQueryTask()

Method Detail

### getInfo

    public java.lang.String getInfo()

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

  Overrides:
    `getInfo` in class `JMXAccessorTask`

### isAttributebinding

    public boolean isAttributebinding()

  Returns:
    Returns the attributebinding.

### setAttributebinding

    public void setAttributebinding(boolean attributeBinding)

  Parameters:
    `attributeBinding` - The attributebinding to set.

### jmxExecute

    public java.lang.String jmxExecute(javax.management.MBeanServerConnection jmxServerConnection)
                                throws java.lang.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:
    `java.lang.Exception` - if an error occurs

### jmxQuery

    protected java.lang.String jmxQuery(javax.management.MBeanServerConnection jmxServerConnection,
                                        java.lang.String qry)

  Call Mbean server for some mbeans with same domain, attributes. with attributebindung=true you can save all attributes from all found objects as your ant properties

  Parameters:
    `jmxServerConnection` -
    `qry` -
  Returns:
    The query result

### bindAttributes

    protected void bindAttributes(javax.management.MBeanServerConnection jmxServerConnection,
                                  java.lang.String resultproperty,
                                  java.lang.String pname,
                                  javax.management.ObjectName oname)

  Parameters:
    `jmxServerConnection` -
    `resultproperty` -
    `pname` -
    `oname` -

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