status.xsd 5.35 KB
<?xml version="1.0" encoding="utf-8"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
   <xs:element name="status" type="StatusType"/>
   <xs:complexType name="StatusType">
      <xs:sequence>
         <xs:element name="runtime" type="RuntimeType" minOccurs="0" maxOccurs="1"/>
         <xs:element name="os" type="OsType" minOccurs="0" maxOccurs="1"/>
         <xs:element name="disk" type="DiskType" minOccurs="0" maxOccurs="1"/>
         <xs:element name="memory" type="MemoryType" minOccurs="0" maxOccurs="1"/>
         <xs:element name="thread" type="ThreadType" minOccurs="0" maxOccurs="1"/>
         <xs:element name="message" type="MessageType" minOccurs="0" maxOccurs="1"/>
         <xs:element name="extension" type="ExtensionType" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="timestamp" type="xs:string"/>
   </xs:complexType>
   <xs:complexType name="RuntimeType">
      <xs:sequence>
         <xs:element name="user-dir" type="xs:string" minOccurs="0" maxOccurs="1"/>
         <xs:element name="java-classpath" type="xs:string" minOccurs="0" maxOccurs="1"/>
      </xs:sequence>
      <xs:attribute name="start-time" type="xs:long"/>
      <xs:attribute name="up-time" type="xs:long"/>
      <xs:attribute name="java-version" type="xs:string"/>
      <xs:attribute name="user-name" type="xs:string"/>
   </xs:complexType>
   <xs:complexType name="OsType">
      <xs:simpleContent>
         <xs:extension base="xs:string">
            <xs:attribute name="name" type="xs:string"/>
            <xs:attribute name="arch" type="xs:string"/>
            <xs:attribute name="version" type="xs:string"/>
            <xs:attribute name="available-processors" type="xs:int"/>
            <xs:attribute name="system-load-average" type="xs:double"/>
            <xs:attribute name="process-time" type="xs:long"/>
            <xs:attribute name="total-physical-memory" type="xs:long"/>
            <xs:attribute name="free-physical-memory" type="xs:long"/>
            <xs:attribute name="committed-virtual-memory" type="xs:long"/>
            <xs:attribute name="total-swap-space" type="xs:long"/>
            <xs:attribute name="free-swap-space" type="xs:long"/>
         </xs:extension>
      </xs:simpleContent>
   </xs:complexType>
   <xs:complexType name="MemoryType">
      <xs:sequence>
         <xs:element name="gc" type="GcType" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="max" type="xs:long"/>
      <xs:attribute name="total" type="xs:long"/>
      <xs:attribute name="free" type="xs:long"/>
      <xs:attribute name="heap-usage" type="xs:long"/>
      <xs:attribute name="non-heap-usage" type="xs:long"/>
   </xs:complexType>
   <xs:complexType name="ThreadType">
      <xs:sequence>
         <xs:element name="dump" type="xs:string" minOccurs="0" maxOccurs="1"/>
      </xs:sequence>
      <xs:attribute name="count" type="xs:int"/>
      <xs:attribute name="daemon-count" type="xs:int"/>
      <xs:attribute name="peek-count" type="xs:int"/>
      <xs:attribute name="total-started-count" type="xs:int"/>
      <xs:attribute name="cat-thread-count" type="xs:int"/>
      <xs:attribute name="pigeon-thread-count" type="xs:int"/>
      <xs:attribute name="http-thread-count" type="xs:int"/>
   </xs:complexType>
   <xs:complexType name="DiskType">
      <xs:sequence>
         <xs:element name="disk-volume" type="DiskVolumeType" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
   </xs:complexType>
   <xs:complexType name="DiskVolumeType">
      <xs:simpleContent>
         <xs:extension base="xs:string">
            <xs:attribute name="id" type="xs:string" use="required"/>
            <xs:attribute name="total" type="xs:long"/>
            <xs:attribute name="free" type="xs:long"/>
            <xs:attribute name="usable" type="xs:long"/>
         </xs:extension>
      </xs:simpleContent>
   </xs:complexType>
   <xs:complexType name="MessageType">
      <xs:simpleContent>
         <xs:extension base="xs:string">
            <xs:attribute name="produced" type="xs:long"/>
            <xs:attribute name="overflowed" type="xs:long"/>
            <xs:attribute name="bytes" type="xs:long"/>
         </xs:extension>
      </xs:simpleContent>
   </xs:complexType>
   <xs:complexType name="GcType">
      <xs:simpleContent>
         <xs:extension base="xs:string">
            <xs:attribute name="name" type="xs:string"/>
            <xs:attribute name="count" type="xs:long"/>
            <xs:attribute name="time" type="xs:long"/>
         </xs:extension>
      </xs:simpleContent>
   </xs:complexType>
   <xs:complexType name="ExtensionType">
      <xs:sequence>
         <xs:element name="description" type="xs:string" minOccurs="0" maxOccurs="1"/>
         <xs:element name="extensionDetail" type="ExtensionDetailType" minOccurs="0" maxOccurs="unbounded"/>
      </xs:sequence>
      <xs:attribute name="id" type="xs:string" use="required"/>
      <xs:anyAttribute processContents="lax"/>
   </xs:complexType>
   <xs:complexType name="ExtensionDetailType">
      <xs:simpleContent>
         <xs:extension base="xs:string">
            <xs:attribute name="id" type="xs:string" use="required"/>
            <xs:attribute name="value" type="xs:double"/>
            <xs:anyAttribute processContents="lax"/>
         </xs:extension>
      </xs:simpleContent>
   </xs:complexType>
</xs:schema>