Author: ruwan
Date: Mon Jul 12 02:21:32 2010
New Revision: 963175

URL: http://svn.apache.org/viewvc?rev=963175&view=rev
Log:
Adding the filter mediator schema

Added:
    synapse/trunk/java/repository/schema/mediators/filter/filter.xsd
Modified:
    synapse/trunk/java/repository/schema/mediators/mediators.xsd

Added: synapse/trunk/java/repository/schema/mediators/filter/filter.xsd
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/mediators/filter/filter.xsd?rev=963175&view=auto
==============================================================================
--- synapse/trunk/java/repository/schema/mediators/filter/filter.xsd (added)
+++ synapse/trunk/java/repository/schema/mediators/filter/filter.xsd Mon Jul 12 
02:21:32 2010
@@ -0,0 +1,65 @@
+<?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="../mediators.xsd"/>
+
+    <xs:element name="filter">
+        <xs:annotation>
+            <xs:documentation source="description">
+                Filter mediator to filter messages by looking at the
+                provided conditions by evaluating xpath over the current 
message
+            </xs:documentation>
+        </xs:annotation>
+        <xs:complexType>
+            <xs:all>
+                <xs:element name="then" minOccurs="1" maxOccurs="1">
+                    <xs:annotation>
+                        <xs:documentation>
+                            If the filter criteria matches, the enclosing
+                            mediator list will be invoked
+                        </xs:documentation>
+                    </xs:annotation>
+                    <xs:complexType>
+                        <xs:group ref="mediatorList" minOccurs="0" 
maxOccurs="unbounded"/>
+                    </xs:complexType>
+                </xs:element>
+                <xs:element name="else" minOccurs="0" maxOccurs="1">
+                    <xs:annotation>
+                        <xs:documentation>
+                            If the filter criteria fails, the enclosing
+                            mediator list will be invoked
+                        </xs:documentation>
+                    </xs:annotation>
+                    <xs:complexType>
+                        <xs:group ref="mediatorList" minOccurs="0" 
maxOccurs="unbounded"/>
+                    </xs:complexType>
+                </xs:element>
+            </xs:all>
+            <xs:attribute name="source" type="xs:string" use="optional"/>
+            <xs:attribute name="regex" type="xs:string" use="optional"/>
+            <xs:attribute name="xpath" type="xs:string" use="optional"/>
+        </xs:complexType>
+    </xs:element>
+
+</xs:schema>
\ No newline at end of file

Modified: synapse/trunk/java/repository/schema/mediators/mediators.xsd
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/repository/schema/mediators/mediators.xsd?rev=963175&r1=963174&r2=963175&view=diff
==============================================================================
--- synapse/trunk/java/repository/schema/mediators/mediators.xsd (original)
+++ synapse/trunk/java/repository/schema/mediators/mediators.xsd Mon Jul 12 
02:21:32 2010
@@ -22,14 +22,15 @@
            targetNamespace="http://synapse.apache.org/ns/2010/04/configuration";
            xmlns="http://synapse.apache.org/ns/2010/04/configuration";>
 
-    <xs:include schemaLocation="filter/in.xsd"/>
-    <xs:include schemaLocation="filter/out.xsd"/>
     <xs:include schemaLocation="core/header.xsd"/>
     <xs:include schemaLocation="core/send.xsd"/>
     <xs:include schemaLocation="core/log.xsd"/>
     <xs:include schemaLocation="core/property.xsd"/>
     <xs:include schemaLocation="core/drop.xsd"/>
     <xs:include schemaLocation="core/validate.xsd"/>
+    <xs:include schemaLocation="filter/in.xsd"/>
+    <xs:include schemaLocation="filter/out.xsd"/>
+    <xs:include schemaLocation="filter/filter.xsd"/>
 
     <xs:group name="mediatorList">
         <xs:annotation>
@@ -56,6 +57,7 @@
             <xs:element ref="property"/>
             <xs:element ref="drop"/>
             <xs:element ref="validate"/>
+            <xs:element ref="filter"/>
         </xs:choice>
     </xs:group>
 


Reply via email to