Table of Contents
This chapter bundles the documentation for common XML types used by XServices web service.
The AntProperty type defines a list of key/value pairs.
The defining Java class is
net.brutex.xservices.types.AntProperty
.
<xs:complexType name="antProperty"> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="value" type="xs:string"/> </xs:sequence> </xs:complexType>
<AntProperty> <name>key2</name> <value>value2</value> </AntProperty>
The FileResource type defines an URI to a file with optional on-the-fly decompression.
The defining Java class is
net.brutex.xservices.types.FileResource
.
<xs:complexType name="FileResourceType"> <xs:sequence> <xs:element default="FILE" name="type" type="tns:type"/> <xs:element name="uri" type="xs:string"/> </xs:sequence> </xs:complexType>
Available types:
FILE: URI points to a local file resource. Examples: c:\temp\something.txt, c:/dir/another.file, /home/brian/file
URL: File from URL (http, https, ftp, ...). Example: http://brutex.net/file.pdf
GZIP and BZIP2: File from a local file system with on-the-fly decompression.
<resource> <type>FILE</type> <uri>c:\temp\xservices.war</uri> </resource>
The HostConnection type identifies a server resource and login credentials.
The defining Java class is
net.brutex.xservices.types.HostConnection
.
<xs:complexType name="connection"> <xs:sequence> <xs:element name="hostname" type="xs:string"/> <xs:element name="port" type="xs:int"/> <xs:element minOccurs="0" name="user" type="xs:string"/> <xs:element minOccurs="0" name="password" type="xs:string"/> </xs:sequence> </xs:complexType>
<host> <hostname>server.brutex.net</hostname> <port>512</port> <!-- default rExec port --> <user>brian</user> <!--Optional:--> <password>somepass</password> </host>
The PatternElement type defines single string pattern for file/ directory matching.
The defining Java class is
net.brutex.xservices.types.PatternElement
.
These patterns look exactly like those used in Apache Ant Patterns. The '*' matches zero or more characters and the '?' will match a single character. Both symbols can be combined in one pattern. The '**' symbol can be used to match any directory deepth.
Some example patterns:
**/mydir/**
Match all file that are located in any directory that has "mydir" string in its pathname. Also applies to files with "mydir" in their name.
/mydir/
The
parser will automatically append an '**' symbol, thus the
resulting pattern is
/mydir/**
.
All files below the "/mydir/" directory (including its
sub-directories will be chosen.
Note | |
---|---|
The pattern is OS independent. You should always use "/" as path separator, even on windows based systems. |
<xs:simpleType name="patternElement"> <xs:restriction base="xs:string"/> </xs:simpleType>
<PatternElement>**/*</PatternElement>
The PatternSetType exposes various filters/ selectors for the selection of resources (files).
The defining Java class is
net.brutex.xservices.types.PatternSetType
.
<xs:complexType name="patternSetType"> <xs:sequence> <xs:element default="**/*" maxOccurs="unbounded" minOccurs="0" name="include" type="tns:patternElement"/> <xs:element maxOccurs="unbounded" minOccurs="0" name="exclude" type="tns:patternElement"/> <xs:element minOccurs="0" name="selector" nillable="true" type="tns:selectorType"/> </xs:sequence> </xs:complexType>
tbd.
The ReturnCode type is used as the generic answer type for most of the BruteXservices operations.
The defining Java class is
net.brutex.xservices.types.ReturnCode
.
<xs:complexType name="ReturnCodeType"> <xs:sequence> <xs:element name="returnCode" type="xs:int"/> <xs:element minOccurs="0" name="stdOut" type="xs:string"/> <xs:element minOccurs="0" name="stdErr" type="xs:string"/> <xs:element maxOccurs="unbounded" minOccurs="0" name="propertyList" nillable="true" type="tns:antProperty"/> </xs:sequence> </xs:complexType>
<ReturnCode
xmlns:ns2="http://ws.xservices.brutex.net">
<returnCode>0</returnCode>
<stdOut/>
<stdErr/>
<propertyList>
See
tns:antProperty
for details about the <propertyList> elements.
<name>key1</name>
<value>value1</value>
</propertyList>
<propertyList>
<name>key2</name>
<value>value2</value>
</propertyList>
</ReturnCode>
The SelectorType exposes various selectors for the selection of resources (files).
The defining Java class is
net.brutex.xservices.types.SelectorType
.
<xs:complexType abstract="true" name="selectorType"> <xs:sequence> <xs:element maxOccurs="unbounded" minOccurs="0" name="contains" nillable="true" type="tns:containsSelectorType"/> </xs:sequence> </xs:complexType>
tbd.