<?xml version="1.0" encoding="UTF-8"?>

<wsdl:definitions
      targetNamespace="http://www.jboss.org/sysmon"
      xmlns:tns="http://www.jboss.org/sysmon"
      xmlns:wse='http://schemas.xmlsoap.org/ws/2004/08/eventing'
      xmlns:wsdl='http://schemas.xmlsoap.org/wsdl/'
      xmlns:wsa10='http://www.w3.org/2005/08/addressing'
      xmlns:xs='http://www.w3.org/2001/XMLSchema'
      xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">

   <wsdl:import
           namespace='http://schemas.xmlsoap.org/ws/2004/08/eventing'
           location='ws-eventing.wsdl' />

   <wsdl:types>

      <xs:schema targetNamespace='http://schemas.xmlsoap.org/ws/2004/08/eventing'>
         <xs:include schemaLocation='ws-eventing.xsd'/>
      </xs:schema>

      <xs:schema
            targetNamespace="http://www.jboss.org/sysmon"
            elementFormDefault="qualified"
            blockDefault="#all">

         <xs:element name="SystemStatus">
            <xs:complexType>
               <xs:sequence>
                  <xs:element name="Time " type="xs:dateTime"/>
                  <xs:element name="HostName" type="xs:string"/>
                  <xs:element name="HostAddress" type="xs:string"/>
                  <xs:element name="ActiveThreadCount" type="xs:int"/>
                  <xs:element name="FreeMemory" type="xs:string"/>
                  <xs:element name="MaxMemory" type="xs:string"/>
               </xs:sequence>
            </xs:complexType>
         </xs:element>
         
      </xs:schema>

   </wsdl:types>

   <wsdl:message name='SystemInfoMsg'>
      <wsdl:part name='body' element='tns:SystemStatus'/>
   </wsdl:message>

   <wsdl:portType name='SystemInfo' wse:EventSource='true'>
      <wsdl:operation name='SysmonOp'>
         <wsdl:output message='tns:SystemInfoMsg'/>
      </wsdl:operation>
   </wsdl:portType>

   <wsdl:binding name="SystemInfoBinding" type="tns:SystemInfo">
      <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
      <wsdl:operation name="SysmonOp">
         <soap:operation soapAction=""/>
         <wsdl:output>
            <soap:body use="literal"/>
         </wsdl:output>
      </wsdl:operation>
   </wsdl:binding>

</wsdl:definitions>