org.apache.catalina.ant.jmx

## Class JMXAccessorCreateTask

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

- All Implemented Interfaces:
    Cloneable

      public class JMXAccessorCreateTask
      extends JMXAccessorTask

  Create new MBean at JMX JSR 160 MBeans Server.
  - Create Mbeans
  - Create Mbeans with parameter
  - Create remote Mbeans with different classloader

  Examples:
  create a new Mbean at jmx.server connection

         <jmx:create
                 ref="jmx.server"
                 name="Catalina:type=MBeanFactory"
                 className="org.apache.catalina.mbeans.MBeanFactory"
                 classLoader="Catalina:type=ServerClassLoader,name=server">
                  <Arg value="org.apache.catalina.mbeans.MBeanFactory" />
         </jmxCreate/>

  WARNINGNot all Tomcat MBeans can create remotely and autoregister by its parents! Please, use the MBeanFactory operation to generate valves and realms.

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

  These tasks require Ant 1.6 or later interface.
  Since:
    5.5.12
  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
    `JMXAccessorCreateTask()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addArg(Arg arg)`
    `List<Arg>` | `getArgs()`
    `String` | `getClassLoader()`
    `String` | `getClassName()`
    `protected void` | `jmxCreate(MBeanServerConnection jmxServerConnection, String name)` Create new MBean from ClassLoader identified by an ObjectName.
    `String` | `jmxExecute(MBeanServerConnection jmxServerConnection)` Execute the specified command, based on the configured properties.
    `void` | `setArgs(List<Arg> args)`
    `void` | `setClassLoader(String classLoaderName)`
    `void` | `setClassName(String className)`

    - ### 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

    - #### JMXAccessorCreateTask

          public JMXAccessorCreateTask()

  - ### Method Detail

    - #### getClassLoader

          public String getClassLoader()

      Returns:
        Returns the classLoader.

    - #### setClassLoader

          public void setClassLoader(String classLoaderName)

      Parameters:
        `classLoaderName` - The classLoader to set.

    - #### getClassName

          public String getClassName()

      Returns:
        Returns the className.

    - #### setClassName

          public void setClassName(String className)

      Parameters:
        `className` - The className 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

      Description copied from class: `JMXAccessorTask`
      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`
      Parameters:
        `jmxServerConnection` - The JMX connection that should be used
      Returns:
        An error message string in some situations
      Throws:
        `Exception` - if an error occurs

    - #### jmxCreate

          protected void jmxCreate(MBeanServerConnection jmxServerConnection,
                       String name)
                            throws Exception

      Create new MBean from ClassLoader identified by an ObjectName.
      Parameters:
        `jmxServerConnection` - Connection to the JMX server
        `name` - MBean name
      Throws:
        `Exception` - Error creating MBean

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