1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299 |
- <?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.3"
- targetNamespace="urn:jboss:domain:1.3"
- 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:attribute name="name" type="xs:string" use="optional" default="Unnamed Domain">
- <xs:annotation>
- <xs:documentation>
- The name to use for the domain controller. Useful for administrators who need to work with multiple domains.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </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="plug-ins" type="plug-insType" minOccurs="0" />
- <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="plug-insType">
- <xs:annotation>
- <xs:documentation>
- List of modules to be searched for supported security realm plug-ins.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="plug-in" type="plug-inType" />
- </xs:sequence>
- </xs:complexType>
-
- <xs:complexType name="plug-inType">
- <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="plug-inAuthType">
- <xs:annotation>
- <xs:documentation>
- This type defines which plug in will be used to handle either the loading of the
- authentication data or authorization data during the authentication process.
- </xs:documentation>
- </xs:annotation>
- <xs:sequence>
- <xs:element name="properties" type="properties" minOccurs="0">
- <xs:annotation>
- <xs:documentation>
- The properties to be made available to the plug-in.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
- </xs:sequence>
- <xs:attribute name="name" type="xs:string" use="required">
- <xs:annotation>
- <xs:documentation>
- The short name of the plug-in as already dynamically registered by being referenced
- in the plug-ins element.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="mechanism" default="DIGEST" use="optional">
- <xs:annotation>
- <xs:documentation>
- By default plug-ins will be assumed to be used with the DIGEST authentication mechanism,
- this attribute can override the plug-in for use with the PLAIN mechanism.
- </xs:documentation>
- </xs:annotation>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:enumeration value="DIGEST" />
- <xs:enumeration value="PLAIN" />
- </xs:restriction>
- </xs:simpleType>
- </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:choice>
- <xs:element name="properties" type="propertiesFileType" minOccurs="0" />
- <xs:element name="plug-in" type="plug-inAuthType" minOccurs="0" />
- </xs:choice>
- </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="extendedKeyStoreType" />
- </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="keystore-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="extendedKeyStoreType">
- <xs:annotation>
- <xs:documentation>
- This is a more complex keystore definition which also allows for an alias
- and key password to be specified.
- </xs:documentation>
- </xs:annotation>
- <xs:complexContent>
- <xs:extension base="keyStoreType">
- <xs:attribute name="alias" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The alias of the entry to use from the keystore, if specified all remaining
- entries in the keystore will be ignored.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="key-password" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- The password to use when loading keys from the keystore.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
-
- <xs:complexType name="localType">
- <xs:annotation>
- <xs:documentation>
- This type definition is used to control the local authentication mechanism.
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="default-user" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- When using the local mechanism it is optional for the client side to send an
- authentication user name - this attribute specifies the user name to be assumed
- if the remote client does not send one.
- </xs:documentation>
- </xs:annotation>
- </xs:attribute>
- <xs:attribute name="allowed-users" type="xs:string" use="optional">
- <xs:annotation>
- <xs:documentation>
- A comma separated list of users that can be specified by the client when connecting
- using the local authentication mechanism.
-
- If a default user has been specified then that user is automatically added to the
- allowed list. If both default-user and allowed-users are ommitted despite the mechanism
- being enabled no incomming connection attemps using the mechanism will succeed.
-
- If any user name should be accepted the value should be set to "*".
- </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:element name="local" type="localType" minOccurs="0">
- <xs:annotation>
- <xs:documentation>
- Configuration to enable the local authentication mechanism, if this element
- is ommitted then local authentication will be disabled.
- </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:element name="plug-in" type="plug-inAuthType" 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:attribute name="username" 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>
|