blob: e0605f0716b5e719d1df16d634f6e4770075cfe9 [file] [log] [blame]
ramangrover29b2201c42013-05-30 15:40:24 -07001<?xml version="1.0" encoding="ISO-8859-1" ?>
Till Westmann5b431ca2015-10-01 19:16:11 -07002
3<!--
4 ! Licensed to the Apache Software Foundation (ASF) under one
5 ! or more contributor license agreements. See the NOTICE file
6 ! distributed with this work for additional information
7 ! regarding copyright ownership. The ASF licenses this file
8 ! to you under the Apache License, Version 2.0 (the
9 ! "License"); you may not use this file except in compliance
10 ! with the License. You may obtain a copy of the License at
11 !
12 ! http://www.apache.org/licenses/LICENSE-2.0
13 !
14 ! Unless required by applicable law or agreed to in writing,
15 ! software distributed under the License is distributed on an
16 ! "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17 ! KIND, either express or implied. See the License for the
18 ! specific language governing permissions and limitations
19 ! under the License.
20 !-->
21
ramangrover29b2201c42013-05-30 15:40:24 -070022<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
23 xmlns:cl="cluster" targetNamespace="cluster" elementFormDefault="qualified">
24
25 <!-- definition of simple types -->
ramangrover298679d452013-06-11 07:36:23 -070026 <xs:element name="instance_name" type="xs:string" />
27 <xs:element name="cluster_name" type="xs:string" />
ramangrover29b2201c42013-05-30 15:40:24 -070028 <xs:element name="log_dir" type="xs:string" />
29 <xs:element name="txn_log_dir" type="xs:string" />
30 <xs:element name="id" type="xs:string" />
31 <xs:element name="client_ip" type="xs:string" />
32 <xs:element name="cluster_ip" type="xs:string" />
33 <xs:element name="key" type="xs:string" />
34 <xs:element name="value" type="xs:string" />
35 <xs:element name="dir" type="xs:string" />
36 <xs:element name="NFS" type="xs:boolean" />
37 <xs:element name="store" type="xs:string" />
38 <xs:element name="iodevices" type="xs:string" />
39 <xs:element name="java_home" type="xs:string" />
40 <xs:element name="username" type="xs:string" />
ramangrover29f7f449a2013-06-10 10:50:21 -070041 <xs:element name="web_port" type="xs:string" />
42 <xs:element name="client_port" type="xs:integer" />
43 <xs:element name="cluster_port" type="xs:integer" />
44 <xs:element name="http_port" type="xs:integer" />
ramangrover2993dd8232013-07-03 22:51:25 -070045 <xs:element name="debug_port" type="xs:integer" />
ramangrover29d9702ac2013-09-14 19:14:39 -070046 <xs:element name="metadata_node" type="xs:string" />
Murtadha Hubail209f3902015-11-11 22:11:28 -080047 <xs:element name="enabled" type="xs:boolean" />
48 <xs:element name="replication_port" type="xs:integer" />
49 <xs:element name="replication_factor" type="xs:integer" />
Murtadha Hubail8fc8bf82016-01-23 22:26:59 -080050 <xs:element name="auto_failover" type="xs:boolean" />
Murtadha Hubail209f3902015-11-11 22:11:28 -080051 <xs:element name="replication_time_out" type="xs:integer" />
ramangrover29b2201c42013-05-30 15:40:24 -070052
53 <!-- definition of complex elements -->
54 <xs:element name="working_dir">
55 <xs:complexType>
56 <xs:sequence>
57 <xs:element ref="cl:dir" />
58 <xs:element ref="cl:NFS" />
59 </xs:sequence>
60 </xs:complexType>
61 </xs:element>
62
63 <xs:element name="master_node">
64 <xs:complexType>
65 <xs:sequence>
66 <xs:element ref="cl:id" />
67 <xs:element ref="cl:client_ip" />
68 <xs:element ref="cl:cluster_ip" />
69 <xs:element ref="cl:java_home" minOccurs="0" />
70 <xs:element ref="cl:log_dir" minOccurs="0" />
ramangrover298679d452013-06-11 07:36:23 -070071 <xs:element ref="cl:client_port" />
72 <xs:element ref="cl:cluster_port" />
73 <xs:element ref="cl:http_port" />
ramangrover2993dd8232013-07-03 22:51:25 -070074 <xs:element ref="cl:debug_port" minOccurs="0" />
ramangrover29b2201c42013-05-30 15:40:24 -070075 </xs:sequence>
76 </xs:complexType>
77 </xs:element>
78
Murtadha Hubail209f3902015-11-11 22:11:28 -080079 <xs:element name="data_replication">
80 <xs:complexType>
81 <xs:sequence>
82 <xs:element ref="cl:enabled" />
83 <xs:element ref="cl:replication_port" />
84 <xs:element ref="cl:replication_factor" />
Murtadha Hubail8fc8bf82016-01-23 22:26:59 -080085 <xs:element ref="cl:auto_failover" />
Murtadha Hubail209f3902015-11-11 22:11:28 -080086 <xs:element ref="cl:replication_time_out" />
87 </xs:sequence>
88 </xs:complexType>
89 </xs:element>
90
ramangrover29b2201c42013-05-30 15:40:24 -070091 <xs:element name="property">
92 <xs:complexType>
93 <xs:sequence>
94 <xs:element ref="cl:key" />
95 <xs:element ref="cl:value" />
96 </xs:sequence>
97 </xs:complexType>
98 </xs:element>
99
100 <xs:element name="env">
101 <xs:complexType>
102 <xs:sequence>
103 <xs:element ref="cl:property" minOccurs="0" maxOccurs="unbounded" />
104 </xs:sequence>
105 </xs:complexType>
106 </xs:element>
107
108 <xs:element name="node">
109 <xs:complexType>
110 <xs:sequence>
111 <xs:element ref="cl:id" />
112 <xs:element ref="cl:cluster_ip" />
113 <xs:element ref="cl:java_home" minOccurs="0" />
114 <xs:element ref="cl:log_dir" minOccurs="0" />
115 <xs:element ref="cl:txn_log_dir" minOccurs="0" />
ramangrover29b2201c42013-05-30 15:40:24 -0700116 <xs:element ref="cl:iodevices" minOccurs="0" />
ramangrover2993dd8232013-07-03 22:51:25 -0700117 <xs:element ref="cl:debug_port" minOccurs="0" />
ramangrover29b2201c42013-05-30 15:40:24 -0700118 </xs:sequence>
119 </xs:complexType>
120 </xs:element>
121
122 <xs:element name="substitute_nodes">
123 <xs:complexType>
124 <xs:sequence>
125 <xs:element ref="cl:node" maxOccurs="unbounded" />
126 </xs:sequence>
127 </xs:complexType>
128 </xs:element>
129
130 <xs:element name="cluster">
131 <xs:complexType>
132 <xs:sequence>
ramangrover298679d452013-06-11 07:36:23 -0700133 <xs:element ref="cl:instance_name" />
134 <xs:element ref="cl:cluster_name" />
ramangrover29b2201c42013-05-30 15:40:24 -0700135 <xs:element ref="cl:username" />
136 <xs:element ref="cl:env" minOccurs="0" />
137 <xs:element ref="cl:java_home" minOccurs="0" />
138 <xs:element ref="cl:log_dir" minOccurs="0" />
139 <xs:element ref="cl:txn_log_dir" minOccurs="0" />
140 <xs:element ref="cl:store" minOccurs="0" />
141 <xs:element ref="cl:iodevices" minOccurs="0" />
142 <xs:element ref="cl:working_dir" />
ramangrover29d9702ac2013-09-14 19:14:39 -0700143 <xs:element ref="cl:metadata_node" />
Murtadha Hubail209f3902015-11-11 22:11:28 -0800144 <xs:element ref="cl:data_replication" minOccurs="0" />
ramangrover29b2201c42013-05-30 15:40:24 -0700145 <xs:element ref="cl:master_node" />
146 <xs:element ref="cl:node" maxOccurs="unbounded" />
ramangrover298679d452013-06-11 07:36:23 -0700147 <xs:element ref="cl:substitute_nodes" />
ramangrover29b2201c42013-05-30 15:40:24 -0700148 </xs:sequence>
149 </xs:complexType>
150 </xs:element>
151
152</xs:schema>