12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- ~ JBoss, Home of Professional Open Source.
- ~ Copyright 2010, Red Hat, Inc., and individual contributors
- ~ as indicated by the @author tags. See the copyright.txt file in the
- ~ distribution for a full listing of individual contributors.
- ~
- ~ This is free software; you can redistribute it and/or modify it
- ~ under the terms of the GNU Lesser General Public License as
- ~ published by the Free Software Foundation; either version 2.1 of
- ~ the License, or (at your option) any later version.
- ~
- ~ This software is distributed in the hope that it will be useful,
- ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
- ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- ~ Lesser General Public License for more details.
- ~
- ~ You should have received a copy of the GNU Lesser General Public
- ~ License along with this software; if not, write to the Free
- ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- ~ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- -->
- <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns="urn:jboss:domain:1.0"
- targetNamespace="urn:jboss:domain:1.0"
- elementFormDefault="qualified"
- attributeFormDefault="unqualified"
- >
- <xs:element name="domain">
- <xs:annotation>
- <xs:documentation>
- Root element for the master document specifying the core configuration
- for the servers in a domain. There should be one such master
- document per domain, available to the host controller that
- is configured to act as the domain controller.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element name="extensions" type="extensionsType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="system-properties" type="properties-with-boottime" minOccurs="0" maxOccurs="1"/>
- <xs:element name="paths" type="named-pathsType" minOccurs="0" maxOccurs="1" />
- <xs:element name="profiles" type="profilesType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="interfaces" type="named-interfacesType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="socket-binding-groups" type="socket-binding-groupsType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="deployments" type="domain-deploymentsType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="server-groups" type="server-groupsType" minOccurs="0" maxOccurs="1"/>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="host">
- <xs:annotation>
- <xs:documentation>
- Root element for a document configuring a host controller and
- the group of servers under the control of that host controller.
- The standard usage would be for a domain to have one such host controller
- on each physical (or virtual) host machine. Emphasis in this
- document is on enumerating the servers, configuring items that
- are specific to the host environment (e.g. IP addresses), and
- on any server-specific configuration settings.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element name="system-properties" type="properties-with-boottime" minOccurs="0"/>
- <xs:element name="paths" type="specified-pathsType" minOccurs="0" maxOccurs="1" />
- <xs:element name="management" type="managementType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="domain-controller" type="domain-controllerType"/>
- <xs:element name="interfaces" type="specified-interfacesType" minOccurs="0"/>
- <xs:element name="jvms" type="jvmsType" minOccurs="0"/>
- <xs:element name="servers" type="serversType" minOccurs="0"/>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The name to use for this host's host controller. Must be
- unique across the domain. If not set, defaults to the
- runtime value of InetAddress.getLocalHost().getHostName().
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- <xs:element name="server">
- <xs:annotation>
- <xs:documentation>
- Root element for a document specifying the configuration
- of a single "standalone" server that does not operate
- as part of a domain.
- Note that this element is distinct from the 'serverType'
- specified in this schema. The latter type forms part of the
- configuration of a server that operates as part of a domain.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType>
- <xs:sequence>
- <xs:element name="extensions" type="extensionsType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="system-properties" type="properties" minOccurs="0" maxOccurs="1"/>
- <xs:element name="paths" type="specified-pathsType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="management" type="managementType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="profile" type="standalone-profileType" minOccurs="0"/>
- <xs:element name="interfaces" type="specified-interfacesType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="socket-binding-group" type="standalone-socket-binding-groupType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="deployments" type="server-deploymentsType" minOccurs="0" maxOccurs="1"/>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The name to use for this server. If not set, defaults to
- the runtime value of InetAddress.getLocalHost().getHostName().
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- <xs:complexType name="domain-managementType">
- <xs:annotation>
- <xs:documentation>
- Domain-wide default configuration settings for the management of standalone servers and a Host Controller.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="security-realms" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="security-realm" type="security-realmType" minOccurs="1"
- maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="outbound-connections" minOccurs="0">
- <xs:complexType>
- <xs:sequence>
- <xs:element name="ldap" type="ldapType" minOccurs="1" /> <!-- TODO minOccurs only while ldap is only supported connection. -->
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="managementType">
- <xs:annotation>
- <xs:documentation>
- The centralized configuration for the management of standalone servers and a Host Controller.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="domain-managementType">
- <xs:sequence>
- <xs:element name="management-interfaces" type="management-interfacesType" minOccurs="0"/>
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="ldapType"> <!-- TODO - May extend from a common connection type for name -->
- <xs:annotation>
- <xs:documentation>
- The LDAP connection definition.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of this connection.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="url" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The URL to connect to ldap.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <!-- TODO - Later will be optional if we support GSSAPI to connect to LDAP -->
- <xs:attribute name="search-dn" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The distinguished name to use when connecting to LDAP to perform searches.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="search-credential" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The credential to use when connecting to perform a search.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <!-- TODO - May drop this and just allow free name/value properties for extension. -->
- <xs:attribute name="initial-context-factory" type="xs:string" default="com.sun.jndi.ldap.LdapCtxFactory">
- <xs:annotation>
- <xs:documentation>
- The initial context factory to establish the LdapContext.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="security-realmType">
- <xs:annotation>
- <xs:documentation>
- Configuration of a security realm for securing access to the management interfaces.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="server-identities" type="server-identitiesType" minOccurs="0" />
- <xs:element name="authentication" type="authenticationType" minOccurs="0" />
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of this security-realm, each security-realm must be assigned a unique name.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="server-identitiesType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the identities that represent the server.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="ssl" type="sslType" minOccurs="0" />
- <xs:element name="secret" type="secretType" minOccurs="0" />
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="secretType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the SSL identity of this server.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="value" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The secret / password - Base64 Encoded
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="sslType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the SSL identity of this server.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="keystore" type="keystoreType" />
- </xs:sequence>
- <xs:attribute name="protocol" type="xs:string" default="TLS">
- <xs:annotation>
- <xs:documentation>
- The protocol to use when creating the SSLContext.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="keystoreType">
- <xs:annotation>
- <xs:documentation>
- The keystore configuration for the server.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="relative-to" use="optional" type="xs:string">
- <xs:annotation>
- <xs:documentation>
- The name of another previously named path, or of one of the
- standard paths provided by the system. If 'relative-to' is
- provided, the value of the 'path' attribute is treated as
- relative to the path specified by this attribute.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="path" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The path of the keystore.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="password" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The password to open the keystore.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="authenticationType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the server side authentication mechanisms.
- </xs:documentation>
- </xs:annotation>
- <xs:choice>
- <xs:element name="ldap" type="ldapAuthenticationType" minOccurs="0" />
- <xs:element name="properties" type="propertiesAuthenticationType" minOccurs="0" />
- <xs:element name="users" type="usersAuthenticationType" minOccurs="0" />
- </xs:choice>
- <xs:attribute name="useDomainController" type="xs:boolean" default="false">
- <xs:annotation>
- <xs:documentation>
- Should the request delegate to the domain controller or handle the authentication locally.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="ldapAuthenticationType">
- <xs:annotation>
- <xs:documentation>
- Definition to use LDAP as the user repository.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="connection" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of the connection to use to connect to LDAP.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="base-dn" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The base distinguished name to commence the search for the user.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="username-attribute" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of the attribute to search for the user.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="recursive" type="xs:boolean" default="false">
- <xs:annotation>
- <xs:documentation>
- Should the search be recursive.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="user-dn" type="xs:string" default="dn">
- <xs:annotation>
- <xs:documentation>
- The name of the attribute which is the users distinguished name.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="usersAuthenticationType">
- <xs:annotation>
- <xs:documentation>
- A set of users
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="user" type="userType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="userType">
- <xs:annotation>
- <xs:documentation>
- A single user.
- </xs:documentation>
- </xs:annotation>
- <xs:choice>
- <xs:element name="password" type="xs:string" />
- </xs:choice>
- <xs:attribute name="username" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The users username.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="propertiesAuthenticationType">
- <xs:annotation>
- <xs:documentation>
- Declaration of users stored within properties files.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="relative-to" use="optional" type="xs:string">
- <xs:annotation>
- <xs:documentation>
- The name of another previously named path, or of one of the
- standard paths provided by the system. If 'relative-to' is
- provided, the value of the 'path' attribute is treated as
- relative to the path specified by this attribute.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="path" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The path of the properties file containing the users.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="management-interfaceType">
- <xs:annotation>
- <xs:documentation>
- Configuration of a host's or standalone server's exposed management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="interface" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- Network interface on which the host's socket for
- management communication should be opened.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="port" type="xs:int" use="optional">
- <xs:annotation>
- <xs:documentation>
- Port on which the host's socket for
- management communication should be opened.
- If not specified the port will not be opened.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="secure-port" type="xs:int" use="optional">
- <xs:annotation>
- <xs:documentation>
- Secure port on which the host's socket for
- management communication should be opened.
- If not specified the port will not be opened.
- If specified the security-realm will be required to obtain
- the SSL configuration.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="security-realm" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The security realm to use for this management interface, the capabilities
- of the security realm will be queried to identify the authentication mechanism(s) to
- offer.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="management-interfacesType">
- <xs:all minOccurs="0">
- <xs:element name="native-interface" type="management-interfaceType"/>
- <xs:element name="http-interface" type="management-interfaceType"/>
- </xs:all>
- </xs:complexType>
- <xs:complexType name="domain-controllerType">
- <xs:choice>
- <xs:element name="local" type="domain-controller-localType"/>
- <xs:element name="remote" type="domain-controller-remoteType"/>
- </xs:choice>
- </xs:complexType>
- <xs:complexType name="domain-controller-localType" />
- <xs:complexType name="domain-controller-remoteType">
- <xs:attribute name="host" type="xs:string" use="required" />
- <xs:attribute name="port" type="xs:integer" use="required" />
- <xs:attribute name="security-realm" type="xs:string" use="optional" />
- </xs:complexType>
- <xs:complexType name="serversType">
- <xs:sequence>
- <xs:element name="server" type="serverType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="serverType">
- <xs:all>
- <xs:element name="paths" type="specified-pathsType" minOccurs="0" maxOccurs="1" />
- <xs:element name="interface-specs" type="specified-interfacesType" minOccurs="0"/>
- <xs:element name="socket-binding-group" type="socket-binding-group-refType" minOccurs="0"/>
- <!--<xs:element name="loggers" type="loggersType" minOccurs="0"/>-->
- <xs:element name="system-properties" type="properties-with-boottime" minOccurs="0"/>
- <xs:element name="jvm" minOccurs="0" type="serverJvmType"/>
- </xs:all>
- <xs:attribute name="name" type="xs:string" use="required"/>
- <xs:attribute name="group" type="xs:string" use="required"/>
- <xs:attribute name="auto-start" type="xs:boolean" default="true"/>
- </xs:complexType>
- <xs:complexType name="extensionsType">
- <xs:annotation>
- <xs:documentation>Contains a list of extension modules.</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="extension" type="extensionType" minOccurs="1" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="extensionType">
- <xs:annotation>
- <xs:documentation>
- A module that extends the standard capabilities of a domain
- or a standalone server.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="module" use="required" type="xs:string">
- <xs:annotation>
- <xs:documentation>The name of the module</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="server-groupsType">
- <xs:sequence>
- <xs:element name="server-group" type="server-groupType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="server-groupType">
- <xs:sequence>
- <xs:element name="jvm" type="namedJvmType" minOccurs="0"/>
- <xs:element name="socket-binding-group" type="socket-binding-group-refType" minOccurs="1"/>
- <xs:element name="deployments" type="server-groupDeploymentsType" minOccurs="0"/>
- <xs:element name="system-properties" minOccurs="0" type="properties-with-boottime"/>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string">
- <xs:annotation>
- <xs:documentation>
- The name of the server group
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="profile" type="xs:string">
- <xs:annotation>
- <xs:documentation>
- The name of the profile this server is running.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="server-groupDeploymentsType">
- <xs:annotation>
- <xs:documentation>Contains a list of deployments that have been mapped to a server-group.</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="deployment" type="base-deploymentType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="base-deploymentType">
- <xs:attribute name="name" use="required">
- <xs:annotation>
- <xs:documentation>Unique identifier of the deployment. Must be unique across all deployments.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="runtime-name" use="required">
- <xs:annotation>
- <xs:documentation>Name by which the deployment will be known within a running server.of the deployment.
- Does not need to be unique across all deployments in the domain, although it must be unique within
- an individual server. For example, two different deployments running on different servers in
- the domain could both have a 'runtime-name' of 'example.war', with one having a 'name'
- of 'example.war_v1' and another with an 'name' of 'example.war_v2'.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType><xs:complexType name="server-deploymentsType">
- <xs:annotation>
- <xs:documentation>Contains a list of deployments that have been mapped to a server.</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="deployment" type="server-deploymentType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="server-deploymentType">
- <xs:annotation>
- <xs:documentation>A deployment that has been mapped to a server.</xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="base-deploymentType">
- <xs:sequence>
- <!-- TODO: maxOccurs should be unbounded once overlays are in place -->
- <xs:choice maxOccurs="1">
- <xs:element name="content" type="contentType"/>
- <xs:element name="fs-archive" type="fs-archiveType"/>
- <xs:element name="fs-exploded" type="fs-explodedType"/>
- </xs:choice>
- </xs:sequence>
- <!-- TODO clarify what a value of 'false' means -->
- <xs:attribute name="enabled" use="optional" type="xs:boolean" default="true">
- <xs:annotation>
- <xs:documentation>Whether the deployment deploy automatically when the server starts up.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="contentType">
- <xs:attribute name="sha1" use="required">
- <xs:annotation>
- <xs:documentation>The checksum of the content</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="fs-archiveType">
- <xs:annotation>
- <xs:documentation>Archived content found on the filesystem</xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="fs-baseType"/>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="fs-baseType">
- <xs:complexContent>
- <xs:extension base="pathType"/>
- </xs:complexContent>
- <!-- TODO: make path required
- <xs:complexContent>
- <xs:restriction base="pathType">
- <xs:attribute name="path" use="required"/>
- </xs:restriction>
- </xs:complexContent>
- -->
- </xs:complexType>
- <xs:complexType name="fs-explodedType">
- <xs:annotation>
- <xs:documentation>Exploded content found on the filesystem</xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="fs-baseType"/>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="domain-deploymentsType">
- <xs:annotation>
- <xs:documentation>Contains a list of domain-level deployments</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="deployment" type="domain-deploymentType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="domain-deploymentType">
- <xs:annotation>
- <xs:documentation>Deployment represents anything that can be deployed (e.g. an application such as EJB-JAR,
- WAR, EAR,
- any kind of standard archive such as RAR or JBoss-specific deployment),
- which can be enabled or disabled on a domain level.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="base-deploymentType">
- <xs:sequence>
- <!-- TODO: maxOccurs should be unbounded once overlays are in place -->
- <xs:choice maxOccurs="1">
- <xs:element name="content" type="contentType"/>
- <xs:element name="fs-archive" type="fs-archiveType"/>
- <xs:element name="fs-exploded" type="fs-explodedType"/>
- </xs:choice>
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <!-- TODO this is not used anywhere yet -->
- <xs:complexType name="clustersType">
- <xs:complexContent>
- <xs:extension base="server-groupType">
- <xs:sequence>
- <xs:element name="partition-name" type="xs:string"/>
- <xs:element name="state-transfer-timeout" type="xs:integer"/>
- <xs:element name="method-call-timeout" type="xs:integer"/>
- </xs:sequence>
- <xs:attribute name="category" type="xs:string" use="required"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <!-- domain-configuration related definitions -->
- <xs:complexType name="domain-configurationType">
- <xs:annotation>
- <xs:documentation>The domain controller/server bootstrap configuration</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element ref="bootstrapURI"/>
- </xs:sequence>
- </xs:complexType>
- <xs:element name="bootstrapURI" type="xs:string">
- <xs:annotation>
- <xs:documentation>The URI for bootstrapping a domain server</xs:documentation>
- </xs:annotation>
- </xs:element>
- <xs:complexType name="profilesType">
- <xs:annotation>
- <xs:documentation>Contains a list of profiles available for use in the domain</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="profile" type="domain-profileType" minOccurs="1" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="domain-profileType">
- <xs:annotation>
- <xs:documentation>Contains a list of subsystems</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="include" type="profile-includeType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded">
- <xs:annotation>
- <xs:documentation>A profile declaration may include configuration
- elements from other namespaces for the subsystems that make up the profile.
- </xs:documentation>
- </xs:annotation>
- </xs:any>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>Name of the profile</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="profile-includeType">
- <xs:annotation>
- <xs:documentation>Specifies that a contents of a named profile are to be included in
- the profile whose definition includes this type.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="profile" use="required">
- <xs:annotation>
- <xs:documentation>Name of the profile to include</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="standalone-profileType">
- <xs:annotation>
- <xs:documentation>Contains a list of subsystems</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:choice minOccurs="1" maxOccurs="unbounded">
- <xs:any namespace="##other">
- <xs:annotation>
- <xs:documentation>A profile declaration may include configuration
- elements from other namespaces for the subsystems that make up the profile.
- </xs:documentation>
- </xs:annotation>
- </xs:any>
- </xs:choice>
- </xs:sequence>
- </xs:complexType>
- <!-- general socket definition -->
- <xs:complexType name="socket-binding-groupsType">
- <xs:annotation>
- <xs:documentation>Contains a list of socket binding groups</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="socket-binding-group" type="socket-binding-groupType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="socket-binding-groupType">
- <xs:annotation>
- <xs:documentation>Contains a list of socket configurations</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="include" type="socket-binding-group-includeType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="socket-binding" type="socket-bindingType" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required"/>
- <xs:attribute name="default-interface" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- Name of an interface that should be used as the interface for
- any sockets that do not explicitly declare one.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="socket-binding-group-includeType">
- <xs:annotation>
- <xs:documentation>Specifies that a contents of a named socket-binding-group are to be included in
- the socket-binding-group whose definition includes this type.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="socket-binding-group" use="required">
- <xs:annotation>
- <xs:documentation>Name of the socket-binding-group to include</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="standalone-socket-binding-groupType">
- <xs:annotation>
- <xs:documentation>Contains a list of socket configurations</xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="socket-binding" type="socket-bindingType" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required"/>
- <xs:attribute name="default-interface" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- Name of an interface that should be used as the interface for
- any sockets that do not explicitly declare one.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="port-offset" type="xs:int" use="optional" default="0">
- <xs:annotation>
- <xs:documentation>
- Increment to apply to the base port values defined in the
- socket group to derive the values to use on this
- server.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="socket-bindingType">
- <xs:annotation>
- <xs:documentation>Configuration information for a socket.</xs:documentation>
- </xs:annotation>
- <xs:attribute name="name" type="xs:string" use="required"/>
- <xs:attribute name="interface" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- Name of the interface to which the socket should be bound, or, for multicast
- sockets, the interface on which it should listen. This should
- be one of the declared interfaces.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="port" type="xs:unsignedShort" use="optional" default="0">
- <xs:annotation>
- <xs:documentation>
- Number of the port to which the socket should be bound.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="fixed-port" type="xs:boolean" use="optional" default="false">
- <xs:annotation>
- <xs:documentation>
- Whether the port value should remain fixed even if numerically offsets
- are applied to the other sockets in the socket group..
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="multicast-address" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- Multicast address on which the socket should receive multicast
- traffic. If unspecified, the socket will not be configured
- to receive multicast.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="multicast-port" type="xs:positiveInteger" use="optional">
- <xs:annotation>
- <xs:documentation>
- Port on which the socket should receive multicast
- traffic. Must be configured if 'multicast-address' is configured.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="socket-binding-group-refType">
- <xs:attribute name="ref" type="xs:string">
- <xs:annotation>
- <xs:documentation>
- The socket group to use for the server group or server.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="port-offset" type="xs:int" default="0">
- <xs:annotation>
- <xs:documentation>
- Increment to apply to the base port values defined in the
- referenced socket group to derive the values to use on this
- server.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="named-interfacesType">
- <xs:annotation>
- <xs:documentation>
- A list of named network interfaces. The interfaces may or may
- not be fully specified (i.e. include criteria on how to determine
- their IP address.)
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="interface" type="named-interfaceType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <!-- TODO make this and specified-interfaceType the same except for interface-criteriaGroup minOccurs -->
- <xs:complexType name="named-interfaceType">
- <xs:annotation>
- <xs:documentation>
- A named network interface, but without any criteria
- for determining the IP address to associate with that interface.
- Acts as a placeholder in the model (e.g. at the domain level)
- until a fully specified interface definition is applied at a
- lower level (e.g. at the server level, where available addresses
- are known.)
- </xs:documentation>
- </xs:annotation>
- <xs:group ref="interface-criteriaGroup" minOccurs="0"/>
- <xs:attribute name="name" type="xs:string" use="required"/>
- </xs:complexType>
- <xs:complexType name="specified-interfacesType">
- <xs:annotation>
- <xs:documentation>
- A list of fully specified named network interfaces.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="interface" type="specified-interfaceType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="specified-interfaceType">
- <xs:annotation>
- <xs:documentation>
- A named network interface, along with required criteria
- for determining the IP address to associate with that interface.
- </xs:documentation>
- </xs:annotation>
- <xs:group ref="interface-criteriaGroup" minOccurs="1"/>
- <xs:attribute name="name" type="xs:string" use="required"/>
- </xs:complexType>
- <xs:group name="interface-criteriaGroup">
- <xs:annotation>
- <xs:documentation>
- A set of criteria that can be used at runtime to determine
- what IP address to use for an interface.
- </xs:documentation>
- </xs:annotation>
- <xs:choice>
- <xs:element name="any-address" type="any-addressType"/>
- <xs:element name="any-ipv6-address" type="any-ipv6-addressType"/>
- <xs:element name="any-ipv4-address" type="any-ipv4-addressType"/>
- <xs:choice maxOccurs="unbounded">
- <xs:element name="inet-address" type="inet-addressType"/>
- <xs:element name="loopback" type="loopbackType"/>
- <xs:element name="loopback-address" type="loopback-addressType"/>
- <xs:element name="multicast" type="multicastType"/>
- <xs:element name="point-to-point" type="point-to-pointType"/>
- <xs:element name="virtual" type="interface-virtualType"/>
- <xs:element name="up" type="interface-upType"/>
- <xs:element name="public-address" type="public-addressType"/>
- <xs:element name="link-local-address" type="link-local-addressType"/>
- <xs:element name="site-local-address" type="site-local-addressType"/>
- <xs:element name="nic" type="nicType"/>
- <xs:element name="nic-match" type="nic-matchType"/>
- <xs:element name="subnet-match" type="subnet-matchType"/>
- <xs:element name="not" type="address-exclusionType"/>
- <xs:element name="any" type="address-exclusionType"/>
- </xs:choice>
- </xs:choice>
- </xs:group>
- <xs:complexType name="inet-addressType">
- <xs:attribute name="value" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- Either a IP address in IPv6 or IPv4 dotted decimal notation,
- or a hostname that can be resolved to an IP address.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="nicType">
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of a network interface (e.g. eth0, eth1, lo).
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="nic-matchType">
- <xs:attribute name="pattern" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- A regular expression against which the names of the network
- interfaces available on the machine can be matched to find
- an acceptable interface.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="subnet-matchType">
- <xs:attribute name="value" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- A network IP address and the number of bits in the
- address' network prefix, written in "slash notation";
- e.g. "192.168.0.0/16".
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="address-exclusionType">
- <xs:choice>
- <xs:element name="inet-address" type="inet-addressType"/>
- <xs:element name="loopback" type="loopbackType"/>
- <xs:element name="loopback-address" type="loopback-addressType"/>
- <xs:element name="multicast" type="multicastType"/>
- <xs:element name="point-to-point" type="point-to-pointType"/>
- <xs:element name="virtual" type="interface-virtualType"/>
- <xs:element name="up" type="interface-upType"/>
- <xs:element name="public-address" type="public-addressType"/>
- <xs:element name="link-local-address" type="link-local-addressType"/>
- <xs:element name="site-local-address" type="site-local-addressType"/>
- <xs:element name="nic" type="nicType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="nic-match" type="nic-matchType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="subnet-match" type="subnet-matchType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:choice>
- </xs:complexType>
- <xs:complexType name="loopbackType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not it is a loopback
- interface.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="loopback-addressType">
- <xs:annotation>
- <xs:documentation>
- A loopback address that may not actually configured on the machine's loopback interface.
- Differs from inet-addressType in that the given value will be used even if no NIC can
- be found that has the IP address associated with it.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="value" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- An IP address in IPv6 or IPv4 dotted decimal notation.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="multicastType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not it supports
- multicast.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="point-to-pointType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not it is a point-to-point
- interface.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="interface-upType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not it is currently up.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="interface-virtualType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not it is a virtual
- interface.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="public-addressType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not it has a publicly
- routable address.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="site-local-addressType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not an address associated
- with it is site-local.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="link-local-addressType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that part of the selection criteria
- for an interface should be whether or not an address associated
- with it is link-local.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="any-ipv6-addressType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that sockets using this interface
- should be bound to the IPv6 wildcard address (::).
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="any-ipv4-addressType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that sockets using this interface
- should be bound to the IPv4 wildcard address (0.0.0.0).
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="any-addressType">
- <xs:annotation>
- <xs:documentation>
- Empty element indicating that sockets using this interface
- should be bound to a wildcard address. The IPv6 wildcard
- address (::) will be used unless the java.net.preferIpV4Stack
- system property is set to true, in which case the IPv4
- wildcard address (0.0.0.0) will be used. If a socket is
- bound to an IPv6 anylocal address on a dual-stack machine,
- it can accept both IPv6 and IPv4 traffic; if it is bound to
- an IPv4 (IPv4-mapped) anylocal address, it can only accept
- IPv4 traffic.
- </xs:documentation>
- </xs:annotation>
- </xs:complexType>
- <xs:complexType name="socketType">
- <xs:annotation>
- <xs:documentation>Configuration information for a socket.</xs:documentation>
- </xs:annotation>
- <xs:attribute name="name" type="xs:string" use="required"/>
- <xs:attribute name="interface" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- Name of the interface to which the socket should be bound, or, for multicast
- sockets, the interface on which it should listen. This should
- be one of the declared interfaces.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="port" type="xs:unsignedShort" use="optional" default="0">
- <xs:annotation>
- <xs:documentation>
- Number of the port to which the socket should be bound.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="fixed-port" type="xs:boolean" use="optional" default="false">
- <xs:annotation>
- <xs:documentation>
- Whether the port value should remain fixed even if numerically offsets
- are applied to the other sockets in the socket group..
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="multicast-address" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- Multicast address on which the socket should receive multicast
- traffic. If unspecified, the socket will not be configured
- to receive multicast.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="multicast-port" type="xs:positiveInteger" use="optional">
- <xs:annotation>
- <xs:documentation>
- Port on which the socket should receive multicast
- traffic. If unspecified, the socket will not be configured
- to receive multicast.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <!-- Path configurations -->
- <xs:complexType name="named-pathsType">
- <xs:annotation>
- <xs:documentation>
- A list of named filesystem paths. The paths may or may
- not be fully specified (i.e. include the actual paths.)
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="path" type="named-pathType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="named-pathType">
- <xs:annotation>
- <xs:documentation>
- A named filesystem path, but without a requirement to specify
- the actual path. If no actual path is specified, acts as a
- as a placeholder in the model (e.g. at the domain level)
- until a fully specified path definition is applied at a
- lower level (e.g. at the host level, where available addresses
- are known.)
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="pathType">
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of the path. Cannot be one of the standard fixed paths
- provided by the system:
- jboss.home - the root directory of the JBoss AS distribution
- user.home - user's home directory
- user.dir - user's current working directory
- java.home - java installation directory
- jboss.server.base.dir - root directory for an individual server
- instance
- Note that the system provides other standard paths that can be
- overridden by declaring them in the configuration file. See
- the 'relative-to' attribute documentation for a complete
- list of standard paths.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="pathType">
- <xs:attribute name="path">
- <xs:annotation>
- <xs:documentation>
- The actual filesystem path. Treated as an absolute path, unless the
- 'relative-to' attribute is specified, in which case the value
- is treated as relative to that path.
- If treated as an absolute path, the actual runtime pathname specified
- by the value of this attribute will be determined as follows:
- If this value is already absolute, then the value is directly
- used. Otherwise the runtime pathname is resolved in a
- system-dependent way. On UNIX systems, a relative pathname is
- made absolute by resolving it against the current user directory.
- On Microsoft Windows systems, a relative pathname is made absolute
- by resolving it against the current directory of the drive named by the
- pathname, if any; if not, it is resolved against the current user
- directory.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:minLength value="1"></xs:minLength>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="relative-to" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The name of another previously named path, or of one of the
- standard paths provided by the system. If 'relative-to' is
- provided, the value of the 'path' attribute is treated as
- relative to the path specified by this attribute. The standard
- paths provided by the system include:
- jboss.home - the root directory of the JBoss AS distribution
- user.home - user's home directory
- user.dir - user's current working directory
- java.home - java installation directory
- jboss.server.base.dir - root directory for an individual server
- instance
- jboss.server.config.dir - directory in which server configuration
- files are stored.
- jboss.server.data.dir - directory the server will use for persistent
- data file storage
- jboss.server.log.dir - directory the server will use for
- log file storage
- jboss.server.temp.dir - directory the server will use for
- temporary file storage
- jboss.domain.servers.dir - directory under which a host controller
- will create the working area for
- individual server instances
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="specified-pathsType">
- <xs:annotation>
- <xs:documentation>
- A list of named filesystem paths.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="path" type="specified-pathType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="specified-pathType">
- <xs:annotation>
- <xs:documentation>
- A named filesystem path.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of the path. Cannot be one of the standard fixed paths
- provided by the system:
- jboss.home.dir - the root directory of the JBoss AS distribution
- user.home - user's home directory
- user.dir - user's current working directory
- java.home - java installation directory
- jboss.server.base.dir - root directory for an individual server
- instance
- Note that the system provides other standard paths that can be
- overridden by declaring them in the configuration file. See
- the 'relative-to' attribute documentation for a complete
- list of standard paths.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="path" use="required">
- <xs:annotation>
- <xs:documentation>
- The actual filesystem path. Treated as an absolute path, unless the
- 'relative-to' attribute is specified, in which case the value
- is treated as relative to that path.
- If treated as an absolute path, the actual runtime pathname specified
- by the value of this attribute will be determined as follows:
- If this value is already absolute, then the value is directly
- used. Otherwise the runtime pathname is resolved in a
- system-dependent way. On UNIX systems, a relative pathname is
- made absolute by resolving it against the current user directory.
- On Microsoft Windows systems, a relative pathname is made absolute
- by resolving it against the current directory of the drive named by the
- pathname, if any; if not, it is resolved against the current user
- directory.
- Note relative path declarations have to use '/' as file separator.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:minLength value="1"></xs:minLength>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="relative-to" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The name of another previously named path, or of one of the
- standard paths provided by the system. If 'relative-to' is
- provided, the value of the 'path' attribute is treated as
- relative to the path specified by this attribute. The standard
- paths provided by the system include:
- jboss.home.dir - the root directory of the JBoss AS distribution
- user.home - user's home directory
- user.dir - user's current working directory
- java.home - java installation directory
- jboss.server.base.dir - root directory for an individual server
- instance
- jboss.server.config.dir - directory in which server configuration
- files are stored.
- jboss.server.data.dir - directory the server will use for persistent
- data file storage
- jboss.server.log.dir - directory the server will use for
- log file storage
- jboss.server.temp.dir - directory the server will use for
- temporary file storage
- jboss.domain.servers.dir - directory under which a host controller
- will create the working area for
- individual server instances
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <!-- JVM configurations -->
- <xs:complexType name="jvmsType">
- <xs:sequence>
- <xs:element name="jvm" type="namedJvmType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="jvmType">
- <xs:all minOccurs="0" maxOccurs="1">
- <xs:element name="heap" type="heapType" minOccurs="0"/>
- <!-- XX:PermSize, XX:MaxPermSize -->
- <xs:element name="permgen" type="bounded-memory-sizeType" minOccurs="0"/>
- <!-- Xss -->
- <xs:element name="stack" type="memory-sizeType" minOccurs="0"/>
- <xs:element name="agent-lib" type="jvm-agentLibType" minOccurs="0"/>
- <xs:element name="agent-path" type="jvm-agentPathType" minOccurs="0"/>
- <xs:element name="java-agent" type="jvm-javaagentType" minOccurs="0"/>
- <xs:element name="jvm-options" type="jvm-optionsType" minOccurs="0"/>
- <xs:element name="environment-variables" type="environmentVariablesType" minOccurs="0"/>
- </xs:all>
- <xs:attribute name="java-home" type="xs:string"/>
- <xs:attribute name="type" default="SUN">
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="SUN">
- <xs:annotation>
- <xs:documentation>Allows the full set of JVM options to be set via the jvm schema elements</xs:documentation>
- </xs:annotation>
- </xs:enumeration>
- <xs:enumeration value="IBM">
- <xs:annotation>
- <xs:documentation>Sets a subset of the JVM options via the jvm schema elements</xs:documentation>
- </xs:annotation>
- </xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="env-classpath-ignored" default="true" type="xs:boolean"/>
- </xs:complexType>
- <xs:complexType name="namedJvmType">
- <xs:complexContent>
- <xs:extension base="jvmType">
- <xs:attribute name="name" type="xs:string"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="serverJvmType">
- <xs:complexContent>
- <xs:extension base="namedJvmType">
- <xs:attribute name="debug-enabled" type="xs:boolean" default="false"/>
- <xs:attribute name="debug-options" type="xs:string" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="heapType">
- <xs:attribute name="size" use="optional">
- <xs:annotation>
- <xs:documentation>Initial JVM heap size</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="max-size" use="optional">
- <xs:annotation>
- <xs:documentation>Maximum JVM heap size</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="jvm-optionsType">
- <xs:sequence>
- <xs:element name="option" type="jvm-optionType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="jvm-optionType">
- <xs:attribute name="value" use="required">
- <xs:annotation>
- <xs:documentation>JVM option value</xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="jvm-agentLibType">
- <xs:attribute name="value" use="required">
- <xs:annotation>
- <xs:documentation>JVM agent lib value </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="jvm-agentPathType">
- <xs:attribute name="value" use="required">
- <xs:annotation>
- <xs:documentation>JVM agent path value </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="jvm-javaagentType">
- <xs:attribute name="value" use="required">
- <xs:annotation>
- <xs:documentation>JVM javaagent value </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="bounded-memory-sizeType">
- <xs:attribute name="size" type="xs:string"/>
- <xs:attribute name="max-size" type="xs:string"/>
- </xs:complexType>
- <xs:complexType name="memory-sizeType">
- <xs:attribute name="size" type="xs:string" use="required"/>
- </xs:complexType>
- <xs:complexType name="properties-with-boottime">
- <xs:sequence>
- <xs:element name="property" type="boottimePropertyType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="properties">
- <xs:sequence>
- <xs:element name="property" type="propertyType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="environmentVariablesType">
- <xs:sequence>
- <xs:element name="variable" type="propertyType" maxOccurs="unbounded"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="propertyType">
- <xs:attribute name="name" use="required"/>
- <xs:attribute name="value" use="optional"/>
- </xs:complexType>
- <xs:complexType name="boottimePropertyType">
- <xs:complexContent>
- <xs:extension base="propertyType">
- <xs:attribute name="boot-time" type="xs:boolean" default="true"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:schema>
|