mirror of
https://github.com/correl/mage.git
synced 2024-12-01 19:19:55 +00:00
104 lines
4.6 KiB
XML
104 lines
4.6 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
|
|
|
<xs:element name="config">
|
|
<xs:complexType>
|
|
<xs:sequence>
|
|
<xs:element ref="server"/>
|
|
<xs:element ref="playerTypes"/>
|
|
<xs:element ref="gameTypes"/>
|
|
<xs:element ref="tournamentTypes"/>
|
|
<xs:element ref="draftCubes"/>
|
|
<xs:element ref="deckTypes"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
|
|
<xs:element name="server">
|
|
<xs:complexType>
|
|
<xs:attribute name="serverAddress" type="xs:string" use="required"/>
|
|
<xs:attribute name="serverName" type="xs:string" use="required"/>
|
|
<xs:attribute name="port" type="xs:positiveInteger" use="required"/>
|
|
<xs:attribute name="maxGameThreads" type="xs:positiveInteger" use="required"/>
|
|
<xs:attribute name="maxSecondsIdle" type="xs:positiveInteger" use="required"/>
|
|
<xs:attribute name="secondaryBindPort" type="xs:integer" use="required"/>
|
|
<xs:attribute name="backlogSize" type="xs:positiveInteger" use="required"/>
|
|
<xs:attribute name="numAcceptThreads" type="xs:positiveInteger" use="required"/>
|
|
<xs:attribute name="maxPoolSize" type="xs:positiveInteger" use="required"/>
|
|
<xs:attribute name="leasePeriod" type="xs:positiveInteger" use="required"/>
|
|
<xs:attribute name="socketWriteTimeout" type="xs:positiveInteger" use="required"/>
|
|
<xs:attribute name="minUserNameLength" type="xs:positiveInteger" use="required"/>
|
|
<xs:attribute name="maxUserNameLength" type="xs:positiveInteger" use="required"/>
|
|
<xs:attribute name="invalidUserNamePattern" type="xs:string" use="required"/>
|
|
<xs:attribute name="minPasswordLength" type="xs:positiveInteger" use="required"/>
|
|
<xs:attribute name="maxPasswordLength" type="xs:positiveInteger" use="required"/>
|
|
<xs:attribute name="maxAiOpponents" type="xs:string" use="optional"/>
|
|
<xs:attribute name="saveGameActivated" type="xs:boolean" use="optional"/>
|
|
<xs:attribute name="authenticationActivated" type="xs:boolean" use="optional"/>
|
|
<xs:attribute name="googleAccount" type="xs:string" use="optional"/>
|
|
<xs:attribute name="mailgunApiKey" type="xs:string" use="optional"/>
|
|
<xs:attribute name="mailgunDomain" type="xs:string" use="optional"/>
|
|
<xs:attribute name="mailSmtpHost" type="xs:string" use="optional"/>
|
|
<xs:attribute name="mailSmtpPort" type="xs:string" use="optional"/>
|
|
<xs:attribute name="mailUser" type="xs:string" use="optional"/>
|
|
<xs:attribute name="mailPassword" type="xs:string" use="optional"/>
|
|
<xs:attribute name="mailFromAddress" type="xs:string" use="optional"/>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
|
|
<xs:complexType name="plugin">
|
|
<xs:attribute name="name" type="xs:string"/>
|
|
<xs:attribute name="jar" type="xs:string"/>
|
|
<xs:attribute name="className" type="xs:string"/>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="gamePlugin">
|
|
<xs:complexContent>
|
|
<xs:extension base="plugin">
|
|
<xs:attribute name="typeName" type="xs:string"/>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
|
|
<xs:element name="playerTypes">
|
|
<xs:complexType>
|
|
<xs:sequence>
|
|
<xs:element name="playerType" type="plugin" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
|
|
<xs:element name="gameTypes">
|
|
<xs:complexType>
|
|
<xs:sequence>
|
|
<xs:element name="gameType" type="gamePlugin" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
|
|
<xs:element name="tournamentTypes">
|
|
<xs:complexType>
|
|
<xs:sequence>
|
|
<xs:element name="tournamentType" type="gamePlugin" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
|
|
<xs:element name="draftCubes">
|
|
<xs:complexType>
|
|
<xs:sequence>
|
|
<xs:element name="draftCube" type="plugin" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
|
|
<xs:element name="deckTypes">
|
|
<xs:complexType>
|
|
<xs:sequence>
|
|
<xs:element name="deckType" type="plugin" maxOccurs="unbounded"/>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
|
|
</xs:schema>
|