12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- ~ JBoss, Home of Professional Open Source.
- ~ Copyright 2012, 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.2"
- targetNamespace="urn:jboss:domain:1.2"
- 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:element name="management-client-content" type="management-client-contentType" 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="vault" type="vaultType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="management" type="host-managementType" minOccurs="1" 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 "HOSTNAME" or "COMPUTERNAME" environment variables,
- or, if neither environment variable is present, to the value of InetAddress.getLocalHost().getHostName().
- If the special value "jboss.domain.uuid" is used, a java.util.UUID will be created
- and used, based on the value of InetAddress.getLocalHost().
- </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="vault" type="vaultType" minOccurs="0" maxOccurs="1"/>
- <xs:element name="management" type="server-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 "HOSTNAME" or "COMPUTERNAME" environment variables,
- or, if neither environment variable is present, to the value of InetAddress.getLocalHost().getHostName().
- If the special value "jboss.domain.uuid" is used, a java.util.UUID will be created
- and used, based on the value of InetAddress.getLocalHost().
- </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="host-managementType">
- <xs:annotation>
- <xs:documentation>
- The centralized configuration for the management of a Host Controller.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="domain-managementType">
- <xs:sequence>
- <xs:element name="management-interfaces" type="host-management-interfacesType" minOccurs="1"/>
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="server-managementType">
- <xs:annotation>
- <xs:documentation>
- The centralized configuration for the management of standalone server.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="domain-managementType">
- <xs:sequence>
- <xs:element name="management-interfaces" type="server-management-interfacesType" minOccurs="0"/>
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="ldapType">
- <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>
- <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:element name="authorization" type="authorizationType" 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="authorizationType">
- <xs:annotation>
- <xs:documentation>
- Configuration defining how to load the authorization information for the authenticated user.
- After a user has been authenticated additional information such as roles can be loaded and
- associated with the user for subsequent authorization checks, this type is used to define
- how the roles are loaded.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="properties" type="propertiesFileType" minOccurs="1" /> <!-- minOccurs="1" while this is the only mech -->
- </xs:sequence>
- </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 secret/password-based 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="path" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The path of the keystore.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <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="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.
- Optionally one truststore can be defined and one username/password based store can be defined.
- Authentication will first attempt to use the truststore and if this is not available will fall back
- to the username/password authentication.
- If none of these are specified the only available mechanism will be the local mechanism for the
- Native interface and the HTTP interface will not be accessible.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="truststore" type="keystoreType" minOccurs="0">
- <xs:annotation>
- <xs:documentation>
- Configuration of a keystore to use to create a trust manager to verify clients.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
- <xs:choice minOccurs="0">
- <xs:element name="jaas" type="jaasAuthenticationType" minOccurs="0" />
- <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:sequence>
- </xs:complexType>
- <xs:complexType name="jaasAuthenticationType">
- <xs:annotation>
- <xs:documentation>
- Definition to use a JAAS based configuration for authentication.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name identifying the jaas configuration of LoginModules.
- </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:choice>
- <xs:element name="username-filter">
- <xs:complexType>
- <xs:attribute name="attribute" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of the attribute to search for the user, this filter will then perform
- a simple search where the username entered by the user matches the attribute
- specified here.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- <xs:element name="advanced-filter">
- <xs:complexType>
- <xs:attribute name="filter" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The fully defined filter to be used to search for the user based on their entered
- user ID. The filter should contain a variable in the form {0} - this will be
- replaced with the username supplied by the user.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- </xs:element>
- </xs:choice>
- <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="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="propertiesFileType">
- <xs:annotation>
- <xs:documentation>
- Declaration of a location of a properties file.
- </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.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="propertiesAuthenticationType">
- <xs:annotation>
- <xs:documentation>
- Declaration of users stored within properties files.
- The entries within the properties file are username={credentials} with each user
- being specified on it's own line.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="propertiesFileType">
- <xs:attribute name="plain-text" type="xs:boolean" default="false">
- <xs:annotation>
- <xs:documentation>
- Are the credentials within the properties file stored in plain text, if not
- the {credential} is expected to be the hex encoded Digest hash
- of 'username : realm : password'.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="host-management-interfacesType">
- <xs:sequence>
- <xs:element name="native-interface" type="host-native-management-interfaceType"/>
- <xs:element name="http-interface" type="host-http-management-interfaceType" minOccurs="0"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="management-interfaceType">
- <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="host-native-management-interfaceType">
- <xs:annotation>
- <xs:documentation>
- Configuration of a host's exposed native management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="management-interfaceType">
- <xs:sequence>
- <xs:element name="socket" type="native-management-socketType"/>
- </xs:sequence>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="management-socketType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the socket used by host 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:complexType>
- <xs:complexType name="native-management-socketType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the socket used by host or standalone server's exposed HTTP management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="management-socketType">
- <xs:attribute name="port" type="xs:int" use="required">
- <xs:annotation>
- <xs:documentation>
- Port on which the host's socket for native
- management communication should be opened.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="host-http-management-interfaceType">
- <xs:annotation>
- <xs:documentation>
- Configuration of a host's exposed HTTP management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="management-interfaceType">
- <xs:sequence>
- <xs:element name="socket" type="http-management-socketType"/>
- </xs:sequence>
- <xs:attribute name="console-enabled" type="xs:boolean" use="optional" default="true"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="http-management-socketType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the socket used by host or standalone server's exposed HTTP management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="management-socketType">
- <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>
- Port on which the host's socket for HTTPS
- 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:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="server-management-interfacesType">
- <xs:sequence>
- <xs:element name="native-remoting-interface" type="management-remoting-interfaceType" minOccurs="0"/>
- <xs:element name="native-interface" type="server-native-management-interfaceType" minOccurs="0"/>
- <xs:element name="http-interface" type="server-http-management-interfaceType" minOccurs="0"/>
- </xs:sequence>
- </xs:complexType>
- <xs:complexType name="server-native-management-interfaceType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the socket used by host or standalone server's exposed HTTP management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="management-interfaceType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the socket to use for the native management interface is a choice
- between a direct configuration of the address and port, or a reference to a socket-binding
- configuration in the server's socket-binding-group element. The latter is the recommended
- approach is it makes it easier to avoid port conflicts by taking advantage of the
- socket-binding-group's port-offset configuration. Direct configuration of the address and
- ports is provided to preserve backward compatibility.
- </xs:documentation>
- </xs:annotation>
- <xs:choice>
- <xs:element name="socket" type="native-management-socketType"/>
- <xs:element name="socket-binding" type="native-management-socket-binding-refType"/>
- </xs:choice>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="native-management-socket-binding-refType">
- <xs:annotation>
- <xs:documentation>
- Reference to the configuration of the socket to be used by a standalone server's exposed native management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="native" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- Name of a socket-binding configuration declared in the server's socket-binding-group.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="server-http-management-interfaceType">
- <xs:annotation>
- <xs:documentation>
- Configuration of a standalone server's exposed HTTP/HTTPS management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="management-interfaceType">
- <xs:annotation>
- <xs:documentation>
- Configuration of the socket to use for the HTTP/HTTPS management interface is a choice
- between a direct configuration of the address and ports, or a reference to socket-binding
- configurations in the server's socket-binding-group element. The latter is the recommended
- approach is it makes it easier to avoid port conflicts by taking advantage of the
- socket-binding-group's port-offset configuration. Direct configuration of the address and
- ports is provided to preserve backward compatibility.
- </xs:documentation>
- </xs:annotation>
- <xs:choice>
- <xs:element name="socket" type="http-management-socketType"/>
- <xs:element name="socket-binding" type="http-management-socket-binding-refType"/>
- </xs:choice>
- <xs:attribute name="console-enabled" type="xs:boolean" use="optional" default="true"/>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- <xs:complexType name="http-management-socket-binding-refType">
- <xs:annotation>
- <xs:documentation>
- Reference to the configurations of the sockets to be used by a standalone server's exposed HTTP and HTTPS management interface.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="http" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- Name of a socket-binding configuration declared in the server's socket-binding-group to use for a HTTP socket.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="https" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- Name of a socket-binding configuration declared in the server's socket-binding-group to use for a HTTPS socket.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="management-remoting-interfaceType">
- <xs:annotation>
- <xs:documentation>
- Makes the native management interface available via the connectors set up in the remoting subsystem,
- using the remoting subsystem's endpoint. This should only be used for a server not for a HC/DC.
- </xs:documentation>
- </xs:annotation>
- </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:sequence>
- <xs:element name="ignored-resources" type="ignored-resourcesType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- <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="ignored-resourcesType">
- <xs:annotation>
- <xs:documentation>
- Provides names of direct child resources of the domain root resource requests for which the
- Host Controller should ignore. Only relevant on a slave Host Controller. Configuring such
- "ignored resources" may help allow a Host Controller from an earlier release to function as a
- slave to a master Host Controller running a later release, by letting the slave ignore portions
- of the configuration its version of the software cannot understand. This strategy can only be
- successful if the servers managed by the slave Host Controller do not reference any of the
- ignored configuration.
- Supports the following attributes:
- type -- the type of resource (e.g. 'profile' or 'socket-binding-group') certain instances of which
- should be ignored. The value corresponds to the 'key' portion of the first element in the
- resource's address (e.g. 'profile' in the address /profile=ha/subsystem=web)
- wildcard -- if 'true', all resources of the given type should be ignored.
- Child elements list the names of specific instances of the given type of resource
- that should be ignored. Each element in the list corresponds to the 'value' portion of
- the first element in the resource's address (e.g. 'ha' in the address /profile=ha/subsystem=web.)
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="instance" type="ignored-resource-instanceType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attribute name="type" type="xs:string" use="required" />
- <xs:attribute name="wildcard" type="xs:boolean" use="optional" default="false" />
- <xs:attribute name="names" type="xs:string" use="optional" />
- </xs:complexType>
- <xs:complexType name="ignored-resource-instanceType">
- <xs:annotation>
- <xs:documentation>
- The name of a specific instances of a particular type of resource that should be ignored.
- The 'name' attribute corresponds to the 'value' portion of the first element in the resource's address
- (e.g. 'ha' in the address /profile=ha/subsystem=web.)
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="name" type="xs:string" use="required" />
- </xs:complexType>
- <xs:complexType name="serversType">
- <xs:sequence>
- <xs:element name="server" type="serverType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attribute name="directory-grouping" default="by-server" use="optional">
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="by-server">
- <xs:annotation>
- <xs:documentation>
- Indicates each server's writable directories should be grouped under the server's name
- in the domain/servers directory. This is the default option.
- </xs:documentation>
- </xs:annotation>
- </xs:enumeration>
- <xs:enumeration value="by-type">
- <xs:annotation>
- <xs:documentation>
- Indicates each server's writable directories should be grouped based on their "type"
- (i.e. "data", "log", "tmp") with directories of a given type for all servers appearing
- in the domain level directory for that type, e.g. domain/data/servers/server-name.
- </xs:documentation>
- </xs:annotation>
- </xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="serverType">
- <xs:all>
- <xs:element name="paths" type="specified-pathsType" minOccurs="0" maxOccurs="1" />
- <xs:element name="interfaces" type="specified-interfacesType" minOccurs="0"/>
- <xs:element name="socket-bindings" type="server-socket-bindingsType" 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="server-socket-bindingsType">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- Server-specific overrides to the default socket binding configuration inherited from the server group.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="socket-binding-group" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- The socket binding group to use for the server. If undefined, the socket binding group
- specified for the server group is used.
- ]]>
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="port-offset" type="xs:int" default="0" use="optional">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- Increment to apply to the base port values defined in the
- referenced socket binding group to derive the values to use on this
- server.
- ]]>
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </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:attribute name="management-subsystem-endpoint" type="xs:boolean" default="false">
- <xs:annotation>
- <xs:documentation>
- Set to true to have servers belonging to the server group connect back to the host controller using the
- endpoint from their remoting subsystem. The subsystem must be preset for this to
- work.
- </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="server-groupDeploymentType">
- <xs:annotation>
- <xs:documentation>A deployment that has been mapped to a server group.</xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="base-deploymentType">
- <!-- 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="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: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="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="socket-binding" type="socket-bindingType" maxOccurs="unbounded"/>
- <xs:element name="outbound-socket-binding" type="outbound-socket-bindingType" minOccurs="0" 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="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:element name="outbound-socket-binding" type="outbound-socket-bindingType" minOccurs="0" 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:choice>
- <xs:element name="client-mapping" type="socket-binding-client-mappingType"
- minOccurs="0" maxOccurs="unbounded">
- <xs:annotation>
- <xs:documentation>
- Specifies zero or more client mappings for this socket binding.
- A client connecting to this socket should use the destination address
- specified in the mapping that matches its desired outbound interface.
- This allows for advanced network topologies that use either network
- address translation, or have bindings on multiple network interfaces
- to function.
- Each mapping should be evaluated in declared order, with the first successful
- match used to determine the destination.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
- </xs:choice>
- <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-client-mappingType">
- <xs:annotation>
- <xs:documentation>
- Type definition for a client mapping on a socket binding. A client
- mapping specifies how external clients should connect to this
- socket's port, provided that the client's outbound interface
- match the specified source network value.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="source-network" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- Source network the client connection binds on. This value is in
- the form of ip/netmask. A client should match this value against
- the desired client host network interface, and if matched the
- client should connect to the corresponding destination values.
- If omitted this mapping should match any interface.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="destination-address" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The destination address that a client should connect to if the
- source-network matches. This value can either be a hostname or
- an ip address.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="destination-port" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The destination port that a client should connect to if the
- source-network matches.
- If omitted this mapping will reuse the effective socket binding
- port.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="outbound-socket-bindingType">
- <xs:annotation>
- <xs:documentation>Configuration information for a outbound socket.</xs:documentation>
- </xs:annotation>
- <xs:choice>
- <xs:element name="remote-destination" type="remote-destinationType" maxOccurs="1"/>
- <xs:element name="local-destination" type="local-destinationType" maxOccurs="1"/>
- </xs:choice>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The name of the outbound socket binding
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="source-interface" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The name of the interface that should be used for setting up the source address of the
- outbound socket. This should be one of the declared interfaces.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="source-port" type="xs:positiveInteger" use="optional">
- <xs:annotation>
- <xs:documentation>
- The port number that will be used for setting the source addresss of the outbound socket. If the
- source-interface attribute has been specified and the source-port attribute is absent,
- then the system uses a ephemeral port while binding the socket to a source address.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="fixed-source-port" type="xs:boolean" use="optional" default="false">
- <xs:annotation>
- <xs:documentation>
- Whether the source-port value should remain fixed even if the socket binding group specifies
- a port offset
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="remote-destinationType">
- <xs:attribute name="host" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The remote server address to which the outbound socket has to be connect.
- The address can be either a IP address of the host server of the hostname of the server
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="port" type="xs:positiveInteger" use="required">
- <xs:annotation>
- <xs:documentation>
- The remote port to which the outbound socket has to connect.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:complexType>
- <xs:complexType name="local-destinationType">
- <xs:attribute name="socket-binding-ref" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The reference to a socket binding that has to be used as the destination for the outbound
- socket binding. This socket binding name should belong to the same socket binding group
- to which this local destination client socket belongs.
- </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" use="optional">
- <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" minOccurs="0" maxOccurs="unbounded"/>
- <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 be 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: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: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:complexType name="vaultType">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- Vault Configuration.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="vault-option" type="propertyType" minOccurs="0" maxOccurs="unbounded"/>
- </xs:sequence>
- <xs:attribute name="code" type="xs:string" use="optional"/>
- </xs:complexType>
- <xs:complexType name="management-client-contentType">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- Storage information about re-usable chunks of data useful to management clients that are stored
- in the domain content repository.
- ]]>
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="rollout-plans" type="contentType" minOccurs="0" maxOccurs="1">
- <xs:annotation>
- <xs:documentation>
- <![CDATA[
- Storage information about a set of named management update rollout plans useful to management
- clients that are stored in the domain content repository. The management API exposed by the domain
- controller provides access to these plans to management clients, allowing clients to use the plans
- by referencing them by name, avoiding the need to recreate them for each use.
- ]]>
- </xs:documentation>
- </xs:annotation>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- </xs:schema>
|