Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "SMILA/Documentation/JMXClient"

(New page: == What is JMXClient== The main goal of generic JMX Client is to execute management operations from console; For example, its able to invoke JMX operation, to read JMX attribute, to proc...)
 
Line 6: Line 6:
 
== Configuration ==
 
== Configuration ==
 
Source  
 
Source  
   Schema: "org.eclipse.smila.management.jmx.client/schemas/jmx.xsd"
+
   Schema: "org.eclipse.smila.management.jmx.client/schemas/jmxclient.xsd"
 
   Location: "org.eclipse.smila.management.jmx.client/config.xml"
 
   Location: "org.eclipse.smila.management.jmx.client/config.xml"
  
 
Application
 
Application
   Schema: "jmxclient/schemas/jmx.xsd"
+
   Schema: "jmxclient/schemas/jmxclient.xsd"
 
   Location: "jmxclient/config.xml"
 
   Location: "jmxclient/config.xml"
  
Line 17: Line 17:
 
<source lang="xml">
 
<source lang="xml">
 
<xs:schema
 
<xs:schema
   targetNamespace="http://www.eclipse.org/smila/management/jmx/launcher"
+
   targetNamespace="http://www.eclipse.org/smila/management/jmx/client"
 
   elementFormDefault="qualified"
 
   elementFormDefault="qualified"
 
   attributeFormDefault="unqualified"
 
   attributeFormDefault="unqualified"
 
   xmlns:xs="http://www.w3.org/2001/XMLSchema"
 
   xmlns:xs="http://www.w3.org/2001/XMLSchema"
   xmlns="http://www.eclipse.org/smila/management/jmx/launcher"
+
   xmlns="http://www.eclipse.org/smila/management/jmx/client"
 
>
 
>
  
Line 164: Line 164:
 
   </xs:complexType>
 
   </xs:complexType>
 
    
 
    
   <xs:complexType name="JmxConfigType">
+
   <xs:complexType name="JmxClientConfigType">
 
     <xs:sequence>
 
     <xs:sequence>
 
       <xs:element name="connection"  type="ConnectionConfigType" minOccurs="1" maxOccurs="unbounded"/>
 
       <xs:element name="connection"  type="ConnectionConfigType" minOccurs="1" maxOccurs="unbounded"/>
Line 172: Line 172:
 
   </xs:complexType>
 
   </xs:complexType>
 
    
 
    
   <xs:element name="jmx" type="JmxConfigType"/>
+
   <xs:element name="jmxclient" type="JmxClientConfigType"/>
 
    
 
    
 
</xs:schema>
 
</xs:schema>

Revision as of 09:54, 10 February 2009

What is JMXClient

The main goal of generic JMX Client is to execute management operations from console; For example, its able to invoke JMX operation, to read JMX attribute, to process result by regular expression, to wait while some term becomes equal to other term and many more.

Configuration

Source

 Schema: "org.eclipse.smila.management.jmx.client/schemas/jmxclient.xsd"
 Location: "org.eclipse.smila.management.jmx.client/config.xml"

Application

 Schema: "jmxclient/schemas/jmxclient.xsd"
 Location: "jmxclient/config.xml"


Schema

<xs:schema
  targetNamespace="http://www.eclipse.org/smila/management/jmx/client"
  elementFormDefault="qualified"
  attributeFormDefault="unqualified"
  xmlns:xs="http://www.w3.org/2001/XMLSchema"
  xmlns="http://www.eclipse.org/smila/management/jmx/client"
>
 
  <xs:complexType name="ConnectionConfigType">
    <xs:attribute name="id" type="xs:string" use="required"/>
    <xs:attribute name="host" type="xs:string" use="optional" default="localhost"/>
    <xs:attribute name="port" type="xs:int" use="optional" default="9004"/>
  </xs:complexType>
 
  <xs:complexType name="ItemType">
    <xs:attribute name="echo" type="xs:string" use="required"/>
  </xs:complexType>
 
  <xs:complexType name="PropertyType">
    <xs:complexContent>
      <xs:extension base="ItemType">
        <xs:attribute name="domain" type="xs:string" use="required"/>
        <xs:attribute name="key" type="xs:string" use="required"/>
        <xs:attribute name="name" type="xs:string" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
 
  <xs:complexType name="AttributeType">
    <xs:complexContent>
      <xs:extension base="PropertyType"/>
    </xs:complexContent>
  </xs:complexType>
 
  <xs:complexType name="ParameterType">
    <xs:complexContent>
      <xs:extension base="ItemType">
        <xs:attribute name="class" type="xs:string" use="optional" default="java.lang.String"/>
        <xs:attribute name="value" type="xs:string" use="optional"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
 
  <xs:complexType name="ConstantType">
    <xs:complexContent>
      <xs:extension base="ParameterType"/>
    </xs:complexContent>
  </xs:complexType>
 
  <xs:complexType name="OperationType">
    <xs:complexContent>
      <xs:extension base="PropertyType">
        <xs:sequence>
          <xs:element name="parameter" type="ParameterType" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:attribute name="printResult" type="xs:boolean" use="optional" default="true"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
 
  <xs:complexType name="RegexpType">
    <xs:complexContent>
      <xs:extension base="ItemType">
        <xs:attribute name="pattern" type="xs:string" use="required"/>
        <xs:attribute name="group" type="xs:int" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
 
  <xs:complexType name="BooleanOpType" abstract="true">
  </xs:complexType>
 
  <xs:complexType name="UnaryOpType" abstract="true">
    <xs:complexContent>
      <xs:extension base="BooleanOpType">
        <xs:sequence>
          <xs:element name="cmd" type="CmdConfigType"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
 
  <xs:complexType name="BinaryOpType" abstract="true">
    <xs:complexContent>
      <xs:extension base="BooleanOpType">
        <xs:sequence minOccurs="2" maxOccurs="2">
          <xs:choice>
            <xs:element name="cmd" type="CmdConfigType"/>
            <xs:element name="const" type="ConstantType"/>
          </xs:choice>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
 
  <xs:complexType name="EqualsOpType">
    <xs:complexContent>
      <xs:extension base="BinaryOpType"/>
    </xs:complexContent>
  </xs:complexType>
 
  <xs:complexType name="WaitType">
    <xs:complexContent>
      <xs:extension base="ItemType">
        <xs:sequence>
        <!-- TODO: extend with other opeartions required-->
          <xs:element name="equals" type="EqualsOpType"/>
          <xs:element name="cmd" type="CmdConfigType" minOccurs="0" maxOccurs="1"/>
        </xs:sequence>
        <xs:attribute name="pause" type="xs:int" use="optional" default="5000"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
 
  <xs:complexType name="CustomType">
    <!-- TODO -->
    <xs:complexContent>
      <xs:extension base="ItemType">
        <xs:attribute name="class" type="xs:string" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
 
  <xs:complexType name="CmdConfigType">
    <xs:complexContent>
      <xs:extension base="ItemType">
        <xs:sequence>
          <xs:choice  minOccurs="1" maxOccurs="unbounded">
            <xs:element name="attribute"  type="AttributeType"/>
            <xs:element name="operation"  type="OperationType"/>
            <xs:element name="regexp"  type="RegexpType"/>
            <xs:element name="wait"  type="WaitType"/>
            <xs:element name="custom"  type="CustomType"/>
          </xs:choice>
        </xs:sequence>
        <xs:attribute name="id" type="xs:string" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
 
  <xs:complexType name="SampleConfigType">
    <xs:complexContent>
      <xs:extension base="ItemType">
        <xs:attribute name="value" type="xs:string" use="required"/>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
 
  <xs:complexType name="JmxClientConfigType">
    <xs:sequence>
      <xs:element name="connection"  type="ConnectionConfigType" minOccurs="1" maxOccurs="unbounded"/>
      <xs:element name="cmd"  type="CmdConfigType" minOccurs="0" maxOccurs="unbounded"/>
      <xs:element name="sample"  type="SampleConfigType" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
  </xs:complexType>
 
  <xs:element name="jmxclient" type="JmxClientConfigType"/>
 
</xs:schema>

Back to the top