You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@synapse.apache.org by ru...@apache.org on 2010/09/26 15:38:37 UTC

svn commit: r1001427 - in /synapse/branches/2.0/repository/schema: mediators/mediators.xsd mediators/transformation/fault.xsd misc/common.xsd

Author: ruwan
Date: Sun Sep 26 13:38:37 2010
New Revision: 1001427

URL: http://svn.apache.org/viewvc?rev=1001427&view=rev
Log:
Adding the fault mediator to the schema and few re-factoring

Added:
    synapse/branches/2.0/repository/schema/mediators/transformation/fault.xsd
Modified:
    synapse/branches/2.0/repository/schema/mediators/mediators.xsd
    synapse/branches/2.0/repository/schema/misc/common.xsd

Modified: synapse/branches/2.0/repository/schema/mediators/mediators.xsd
URL: http://svn.apache.org/viewvc/synapse/branches/2.0/repository/schema/mediators/mediators.xsd?rev=1001427&r1=1001426&r2=1001427&view=diff
==============================================================================
--- synapse/branches/2.0/repository/schema/mediators/mediators.xsd (original)
+++ synapse/branches/2.0/repository/schema/mediators/mediators.xsd Sun Sep 26 13:38:37 2010
@@ -32,6 +32,7 @@
     <xs:include schemaLocation="filter/out.xsd"/>
     <xs:include schemaLocation="filter/filter.xsd"/>
     <xs:include schemaLocation="filter/switch.xsd"/>
+    <xs:include schemaLocation="transformation/fault.xsd"/>
     <xs:include schemaLocation="advanced/rm_sequence.xsd"/>
 
     <xs:group name="mediatorList">
@@ -62,6 +63,7 @@
             <xs:element ref="filter"/>
             <xs:element ref="switch"/>
             <xs:element ref="RMSequence"/>
+            <xs:element ref="makefault"/>
         </xs:choice>
     </xs:group>
 

Added: synapse/branches/2.0/repository/schema/mediators/transformation/fault.xsd
URL: http://svn.apache.org/viewvc/synapse/branches/2.0/repository/schema/mediators/transformation/fault.xsd?rev=1001427&view=auto
==============================================================================
--- synapse/branches/2.0/repository/schema/mediators/transformation/fault.xsd (added)
+++ synapse/branches/2.0/repository/schema/mediators/transformation/fault.xsd Sun Sep 26 13:38:37 2010
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  ~  Licensed to the Apache Software Foundation (ASF) under one
+  ~  or more contributor license agreements.  See the NOTICE file
+  ~  distributed with this work for additional information
+  ~  regarding copyright ownership.  The ASF licenses this file
+  ~  to you under the Apache License, Version 2.0 (the
+  ~  "License"); you may not use this file except in compliance
+  ~  with the License.  You may obtain a copy of the License at
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~  Unless required by applicable law or agreed to in writing,
+  ~  software distributed under the License is distributed on an
+  ~   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~  KIND, either express or implied.  See the License for the
+  ~  specific language governing permissions and limitations
+  ~  under the License.
+  -->
+
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
+           targetNamespace="http://synapse.apache.org/ns/2010/04/configuration"
+           xmlns="http://synapse.apache.org/ns/2010/04/configuration">
+
+    <xs:include schemaLocation="../../misc/common.xsd"/>
+
+    <xs:element name="makefault">
+        <xs:annotation>
+            <xs:documentation source="description">
+                Fault mediator to convert the messages into a fault
+            </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+            <xs:sequence>
+                <xs:element name="code" minOccurs="0" maxOccurs="1">
+                    <xs:annotation>
+                        <xs:documentation source="description">
+                            The fault code
+                        </xs:documentation>
+                    </xs:annotation>
+                    <xs:complexType>
+                        <xs:attributeGroup ref="valueOrExpression"/>
+                    </xs:complexType>
+                </xs:element>
+                <xs:element name="reason" minOccurs="0" maxOccurs="1">
+                    <xs:annotation>
+                        <xs:documentation source="description">
+                            The fault reason
+                        </xs:documentation>
+                    </xs:annotation>
+                    <xs:complexType>
+                        <xs:attributeGroup ref="valueOrExpression"/>
+                    </xs:complexType>
+                </xs:element>
+                <xs:element name="node" minOccurs="0" maxOccurs="1" type="xs:anyType"/>
+                <xs:element name="role" minOccurs="0" maxOccurs="1" type="xs:anyType"/>
+                <xs:element name="detail" type="xs:anyType" minOccurs="0" maxOccurs="1">
+                    <xs:annotation>
+                        <xs:documentation source="description">
+                            The fault Detail
+                        </xs:documentation>
+                    </xs:annotation>
+                    <xs:complexType>
+                        <xs:attribute name="expression" type="xs:string" use="optional"/>
+                    </xs:complexType>
+                </xs:element>
+            </xs:sequence>
+            <xs:attribute name="version" use="optional" default="soap12">
+                <xs:simpleType>
+                    <xs:restriction base="xs:string">
+                        <xs:enumeration value="soap11"/>
+                        <xs:enumeration value="soap12"/>
+                        <xs:enumeration value="pox"/>
+                    </xs:restriction>
+                </xs:simpleType>
+            </xs:attribute>
+            <xs:attribute name="response" type="xs:boolean" use="optional" default="true"/>
+        </xs:complexType>
+    </xs:element>
+
+</xs:schema>
\ No newline at end of file

Modified: synapse/branches/2.0/repository/schema/misc/common.xsd
URL: http://svn.apache.org/viewvc/synapse/branches/2.0/repository/schema/misc/common.xsd?rev=1001427&r1=1001426&r2=1001427&view=diff
==============================================================================
--- synapse/branches/2.0/repository/schema/misc/common.xsd (original)
+++ synapse/branches/2.0/repository/schema/misc/common.xsd Sun Sep 26 13:38:37 2010
@@ -73,7 +73,7 @@
             <xs:element ref="wsdl20:description" minOccurs="0" maxOccurs="1"/>
         </xs:choice>
     </xs:group>
-    
+
     <xs:attributeGroup name="monitoringAspect">
         <xs:annotation>
             <xs:documentation source="description">
@@ -93,9 +93,19 @@
             </xs:documentation>
         </xs:annotation>
         <xs:attribute name="name" type="xs:string" use="required"/>
+        <xs:attribute name="action" type="setRemove" use="optional"/>
+        <xs:attributeGroup ref="valueOrExpression"/>
+    </xs:attributeGroup>
+
+    <xs:attributeGroup name="valueOrExpression">
+        <xs:annotation>
+            <xs:documentation>
+                This group of attributes are mainly used in places where the value can be
+                statically specified or dynamically evaluated over the given xpath
+            </xs:documentation>
+        </xs:annotation>
         <xs:attribute name="value" type="xs:string" use="optional"/>
         <xs:attribute name="expression" type="xs:string" use="optional"/>
-        <xs:attribute name="action" type="setRemove" use="optional"/>
     </xs:attributeGroup>
 
     <xs:complexType name="mediatorProperty">
@@ -109,8 +119,7 @@
         <xs:complexContent mixed="true">
             <xs:extension base="xs:anyType">
                 <xs:attribute name="name" type="xs:string" use="required"/>
-                <xs:attribute name="value" type="xs:string" use="optional"/>
-                <xs:attribute name="expression" type="xs:string" use="optional"/>
+                <xs:attributeGroup ref="valueOrExpression"/>
             </xs:extension>
         </xs:complexContent>
     </xs:complexType>