Author: ruwan
Date: Wed Nov 17 02:22:33 2010
New Revision: 1035903

URL: http://svn.apache.org/viewvc?rev=1035903&view=rev
Log:
Improving the endpoint schema

Modified:
    synapse/trunk/java/repository/schema/endpoint.xsd

Modified: synapse/trunk/java/repository/schema/endpoint.xsd
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/endpoint.xsd?rev=1035903&r1=1035902&r2=1035903&view=diff
==============================================================================
--- synapse/trunk/java/repository/schema/endpoint.xsd (original)
+++ synapse/trunk/java/repository/schema/endpoint.xsd Wed Nov 17 02:22:33 2010
@@ -126,15 +126,19 @@
             <xs:element name="loadbalance" minOccurs="1" maxOccurs="1">
                 <xs:complexType>
                     <xs:sequence>
-                        <xs:element name="endpoint" minOccurs="1" 
maxOccurs="unbounded">
+                        <xs:element name="endpoint" minOccurs="2" 
maxOccurs="unbounded">
                             <xs:complexType>
-                                <xs:group ref="leafEndpoints" minOccurs="1" 
maxOccurs="1"/>
+                                <xs:choice>
+                                    <xs:group ref="leafEndpoints" 
minOccurs="0" maxOccurs="1"/>
+                                    <xs:group ref="failoverEndpoints" 
minOccurs="0" maxOccurs="1"/>
+                                </xs:choice>
                                 <xs:attribute name="name" type="xs:string" 
use="optional"/>
                                 <xs:attribute name="key" type="xs:string" 
use="optional"/>
                             </xs:complexType>
                         </xs:element>
                     </xs:sequence>
-                    <xs:attribute name="algorithm" type="xs:string" 
default="org.apache.synapse.endpoints.algorithms.RoundRobin" use="required"/>
+                    <xs:attribute name="algorithm" type="xs:string" 
default="org.apache.synapse.endpoints.algorithms.RoundRobin" use="optional"/>
+                    <xs:attribute name="failover" type="xs:boolean" 
default="true" use="optional"/>
                 </xs:complexType>
             </xs:element>
         </xs:all>
@@ -149,7 +153,18 @@
         <xs:all>
             <xs:element name="failover" minOccurs="1" maxOccurs="1">
                 <xs:complexType>
-                    <xs:group ref="leafEndpoints" minOccurs="1" 
maxOccurs="unbounded"/>
+                    <xs:sequence>
+                        <xs:element name="endpoint" minOccurs="2" 
maxOccurs="unbounded">
+                            <xs:complexType>
+                                <xs:choice>
+                                    <xs:group ref="leafEndpoints" 
minOccurs="0" maxOccurs="1"/>
+                                    <xs:group ref="lbEndpoints" minOccurs="0" 
maxOccurs="1"/>
+                                </xs:choice>
+                                <xs:attribute name="name" type="xs:string" 
use="optional"/>
+                                <xs:attribute name="key" type="xs:string" 
use="optional"/>
+                            </xs:complexType>
+                        </xs:element>
+                    </xs:sequence>
                 </xs:complexType>
             </xs:element>
         </xs:all>


Reply via email to