[jboss-svn-commits] JBL Code SVN: r29505 - in labs/jbossesb/trunk/product: rosetta/src/org/jboss/soa/esb/actions and 4 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Sep 29 12:22:35 EDT 2009


Author: tfennelly
Date: 2009-09-29 12:22:34 -0400 (Tue, 29 Sep 2009)
New Revision: 29505

Added:
   labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/cbr/RegexRouter.java
   labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/
   labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/RegexRouterUnitTest.java
   labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/config.xml
   labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/rules.properties
   labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/regex-rules.properties
Modified:
   labs/jbossesb/trunk/product/docs/ProgrammersGuide.odt
   labs/jbossesb/trunk/product/docs/ServicesGuide.odt
   labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/ContentBasedWiretap.java
   labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/build.xml
   labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/deployment.xml
   labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/jbm-queue-service.xml
   labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/jbmq-queue-service.xml
   labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/jboss-esb.xml
Log:
https://jira.jboss.org/jira/browse/JBESB-2582
Add support for regexp routing

Modified: labs/jbossesb/trunk/product/docs/ProgrammersGuide.odt
===================================================================
(Binary files differ)

Modified: labs/jbossesb/trunk/product/docs/ServicesGuide.odt
===================================================================
(Binary files differ)

Modified: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/ContentBasedWiretap.java
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/ContentBasedWiretap.java	2009-09-29 14:10:35 UTC (rev 29504)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/ContentBasedWiretap.java	2009-09-29 16:22:34 UTC (rev 29505)
@@ -30,6 +30,7 @@
 import org.jboss.soa.esb.ConfigurationException;
 import org.jboss.soa.esb.Service;
 import org.jboss.soa.esb.actions.cbr.XPathRouter;
+import org.jboss.soa.esb.actions.cbr.RegexRouter;
 import org.jboss.soa.esb.helpers.ConfigTree;
 import org.jboss.soa.esb.listeners.ListenerTagNames;
 import org.jboss.soa.esb.client.ServiceInvoker;
@@ -223,6 +224,8 @@
                 _cbrClass = DEFAULT_CBR_CLASS;
             } else if(cbrAlias.equalsIgnoreCase("XPath")) {
                 _cbrClass = XPathRouter.class.getName();
+            } else if(cbrAlias.equalsIgnoreCase("Regex") || cbrAlias.equalsIgnoreCase("Regexp")) {
+                _cbrClass = RegexRouter.class.getName();
             } else {
                 throw new ConfigurationException("Invalid " + getClass().getSimpleName() + " configuration.  Unsupported '" + ListenerTagNames.CBR_ALIAS + "' property value '" + cbrAlias + "'.");
             }

Copied: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/cbr/RegexRouter.java (from rev 29503, labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/cbr/XPathRouter.java)
===================================================================
--- labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/cbr/RegexRouter.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/cbr/RegexRouter.java	2009-09-29 16:22:34 UTC (rev 29505)
@@ -0,0 +1,75 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.actions.cbr;
+
+import org.jboss.soa.esb.services.routing.MessageRouterException;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.util.XPathNamespaceContext;
+import org.jboss.soa.esb.ConfigurationException;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import org.xml.sax.InputSource;
+import org.apache.taglibs.bsf.expression;
+
+import javax.xml.xpath.*;
+import java.util.*;
+import java.util.regex.Pattern;
+import java.io.*;
+
+/**
+ * Regex Content Based Router implementation.
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class RegexRouter extends AbstractPropertyRulesRouter {
+
+    public Map<String, RoutingRule> buildRoutingMap(Properties rules) throws MessageRouterException {
+        Map<String, RoutingRule> routingMap = new HashMap<String, RoutingRule>();
+
+        Set<Map.Entry<Object, Object>> ruleSet = rules.entrySet();
+        for(Map.Entry<Object, Object> rule : ruleSet) {
+            String destinationName = (String) rule.getKey();
+            String expression = (String) rule.getValue();
+
+            routingMap.put(destinationName, new RegexRoutingRule(Pattern.compile(expression, Pattern.DOTALL)));
+        }
+
+        return routingMap;
+    }
+
+    private class RegexRoutingRule implements RoutingRule {
+
+        private Pattern regexExpression;
+
+        private RegexRoutingRule(Pattern regexExpression) {
+            this.regexExpression = regexExpression;
+        }
+
+        public boolean evaluate(Object objectToTest) throws MessageRouterException {
+            if(objectToTest instanceof CharSequence) {
+                return regexExpression.matcher((CharSequence) objectToTest).matches();
+            } else {
+                logger.debug("Unsupported Regex evaluation type '" + objectToTest.getClass().getName() + "'.  Only supports CharSequence types.");
+            }
+
+            return false;
+        }
+    }
+}
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/rosetta/src/org/jboss/soa/esb/actions/cbr/RegexRouter.java
___________________________________________________________________
Name: svn:mergeinfo
   + 

Copied: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/RegexRouterUnitTest.java (from rev 29503, labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/xpath/XPathRouterUnitTest.java)
===================================================================
--- labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/RegexRouterUnitTest.java	                        (rev 0)
+++ labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/RegexRouterUnitTest.java	2009-09-29 16:22:34 UTC (rev 29505)
@@ -0,0 +1,105 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.actions.cbr.regex;
+
+import junit.framework.TestCase;
+import org.jboss.soa.esb.testutils.ESBConfigUtil;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.format.MessageFactory;
+import org.jboss.soa.esb.services.routing.MessageRouterException;
+import org.jboss.soa.esb.actions.cbr.RoutingRule;
+import org.jboss.soa.esb.actions.cbr.RegexRouter;
+import org.jboss.soa.esb.actions.cbr.XPathRouter;
+import org.xml.sax.SAXException;
+
+import java.io.IOException;
+import java.io.File;
+import java.util.Map;
+import java.util.List;
+import java.util.Arrays;
+import java.util.regex.Pattern;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class RegexRouterUnitTest extends TestCase {
+
+    public void test_rulefile_load_classpath() throws IOException, SAXException, ConfigurationException, MessageRouterException {
+        test("1");
+    }
+
+    public void test_rulefile_load_filesys() throws IOException, SAXException, ConfigurationException, MessageRouterException {
+        String cwd = new File(".").getAbsolutePath().replace("\\", "/");
+        if(!cwd.endsWith("product/.")) {
+            throw new IllegalStateException("Invalid working directory for test.  Must be the 'product/rosetta/tests' dir.  Current working directory is '" + cwd + "'.");
+        }
+
+        test("2");
+    }
+
+    public void test_inlineRules() throws IOException, SAXException, ConfigurationException, MessageRouterException {
+        test("3");
+    }
+
+    private void test(String configName) throws MessageRouterException, IOException, SAXException, ConfigurationException {
+        ESBConfigUtil esbConfig = new ESBConfigUtil(getClass().getResourceAsStream("config.xml"));
+        ConfigTree configTree = esbConfig.getActionConfig("null-listener", configName);
+        RegexRouter router = new RegexRouter();
+
+        router.setConfigTree(configTree);
+
+        Map<String, RoutingRule> map = router.getRoutingMap();
+        assertEquals(3, map.size());
+        assertNotNull(map.get("scat-red"));
+        assertNotNull(map.get("scat-green"));
+        assertNotNull(map.get("scat-blue"));
+    }
+
+    public static final String GREEN_MESSAGE = "#############333#############";
+
+    public void test_routing_String() throws IOException, SAXException, ConfigurationException, MessageRouterException {
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add(GREEN_MESSAGE);
+        test_routing(message, null);
+    }
+
+    public void test_routing_ObjectList() throws IOException, SAXException, ConfigurationException, MessageRouterException {
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add("x", "<x/>");
+        message.getBody().add("y", GREEN_MESSAGE);
+        test_routing(message, Arrays.asList("y"));
+        test_routing(message, Arrays.asList("body.y"));
+    }
+
+    public void test_routing(Message message, List objectLists) throws IOException, SAXException, ConfigurationException, MessageRouterException {
+        ESBConfigUtil esbConfig = new ESBConfigUtil(getClass().getResourceAsStream("config.xml"));
+        ConfigTree configTree = esbConfig.getActionConfig("null-listener", "3");
+        RegexRouter router = new RegexRouter();
+
+        router.setConfigTree(configTree);
+
+        List<String> destinations = router.route(null, false, message, objectLists);
+        assertEquals("[scat-green]", destinations.toString());
+    }
+}
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/RegexRouterUnitTest.java
___________________________________________________________________
Name: svn:mergeinfo
   + 

Copied: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/config.xml (from rev 29503, labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/xpath/config.xml)
===================================================================
--- labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/config.xml	                        (rev 0)
+++ labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/config.xml	2009-09-29 16:22:34 UTC (rev 29505)
@@ -0,0 +1,35 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd">
+
+    <providers>
+        <bus-provider name="null"><bus busid="null"/></bus-provider>
+    </providers>
+
+    <services>
+        <service category="scat" name="sname" description="boo">
+
+            <listeners>
+                <listener name="null-listener" busidref="null" />
+            </listeners>
+
+            <actions mep="OneWay">
+                <action name="1" class="org.jboss.soa.esb.actions.ContentBasedRouter">
+                    <property name="ruleSet" value="/org/jboss/soa/esb/actions/cbr/regex/rules.properties"/>
+                </action>
+
+                <action name="2" class="org.jboss.soa.esb.actions.ContentBasedRouter">
+                    <property name="ruleSet" value="rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/rules.properties"/>
+                </action>
+
+                <action name="3" class="org.jboss.soa.esb.actions.ContentBasedRouter">
+                    <property name="destinations">
+                        <route-to service-category="scat" service-name="blue"  expression="#*111#*" />
+                        <route-to service-category="scat" service-name="red"   expression="#*222#*" />
+                        <route-to service-category="scat" service-name="green" expression="#*333#*" />
+                    </property>
+                </action>
+
+            </actions>
+        </service>
+    </services>
+</jbossesb>

Copied: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/rules.properties (from rev 29503, labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/xpath/rules.properties)
===================================================================
--- labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/rules.properties	                        (rev 0)
+++ labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/rules.properties	2009-09-29 16:22:34 UTC (rev 29505)
@@ -0,0 +1,3 @@
+scat-blue=#*111#*
+scat-red=#*222#*
+scat-green=#*333#*
\ No newline at end of file


Property changes on: labs/jbossesb/trunk/product/rosetta/tests/src/org/jboss/soa/esb/actions/cbr/regex/rules.properties
___________________________________________________________________
Name: svn:mergeinfo
   + 

Modified: labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/build.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/build.xml	2009-09-29 14:10:35 UTC (rev 29504)
+++ labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/build.xml	2009-09-29 16:22:34 UTC (rev 29505)
@@ -5,7 +5,7 @@
 		${line.separator}
 	</description>
 		
-	<property name="additional.deploys" value="FunCBRRules-XPath.drl,smooks-res.xml"/>
+	<property name="additional.deploys" value="FunCBRRules-XPath.drl,regex-rules.properties,smooks-res.xml"/>
 	<property name="deploy.exploded" value="true"/>
 
 	<!-- Import the base Ant build script... -->
@@ -22,6 +22,14 @@
        </java>
     </target>
 
+    <target name="runtestRegex" depends="compile" description="Send JMS message to tigger the actions in the ESB">
+       <echo>Runs Regex Example</echo>
+       <java fork="yes" classname="org.jboss.soa.esb.samples.quickstart.funcbr.test.SendJMSMessage" failonerror="true">
+          <classpath refid="exec-classpath" />
+          <arg value="quickstart_Fun_RegexCBR_Request_GW" />
+       </java>
+    </target>
+
     <target name="runtestDrools" depends="compile" description="Send JMS message to tigger the actions in the ESB">
        <echo>Runs Drools Example</echo>
        <java fork="yes" classname="org.jboss.soa.esb.samples.quickstart.funcbr.test.SendJMSMessage" failonerror="true">

Modified: labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/deployment.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/deployment.xml	2009-09-29 14:10:35 UTC (rev 29504)
+++ labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/deployment.xml	2009-09-29 16:22:34 UTC (rev 29505)
@@ -3,6 +3,7 @@
   <depends>jboss.esb:deployment=smooks.esb</depends>
   <depends>jboss.esb:deployment=jbrules.esb</depends>
   <depends>jboss.esb.quickstart.destination:service=Queue,name=quickstart_Fun_XPathCBR_Request_GW</depends>
+  <depends>jboss.esb.quickstart.destination:service=Queue,name=quickstart_Fun_RegexCBR_Request_GW</depends>
   <depends>jboss.esb.quickstart.destination:service=Queue,name=quickstart_Fun_DroolsCBR_Request_GW</depends>
   <depends>jboss.esb.quickstart.destination:service=Queue,name=quickstart_Fun_CBR_ToBlue</depends>
   <depends>jboss.esb.quickstart.destination:service=Queue,name=quickstart_Fun_CBR_Blue_Alert</depends>

Modified: labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/jbm-queue-service.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/jbm-queue-service.xml	2009-09-29 14:10:35 UTC (rev 29504)
+++ labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/jbm-queue-service.xml	2009-09-29 16:22:34 UTC (rev 29505)
@@ -9,6 +9,12 @@
 	<depends>jboss.messaging:service=PostOffice</depends>
   </mbean>
     <mbean code="org.jboss.jms.server.destination.QueueService"
+      name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_Fun_RegexCBR_Request_GW"
+      xmbean-dd="xmdesc/Queue-xmbean.xml">
+      <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
+      <depends>jboss.messaging:service=PostOffice</depends>
+    </mbean>
+    <mbean code="org.jboss.jms.server.destination.QueueService"
       name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_Fun_DroolsCBR_Request_GW"
       xmbean-dd="xmdesc/Queue-xmbean.xml">
       <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>

Modified: labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/jbmq-queue-service.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/jbmq-queue-service.xml	2009-09-29 14:10:35 UTC (rev 29504)
+++ labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/jbmq-queue-service.xml	2009-09-29 16:22:34 UTC (rev 29505)
@@ -9,6 +9,12 @@
     </depends>
   </mbean>
     <mbean code="org.jboss.mq.server.jmx.Queue"
+      name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_Fun_RegexCBR_Request_GW">
+      <depends optional-attribute-name="DestinationManager">
+        jboss.mq:service=DestinationManager
+      </depends>
+    </mbean>
+    <mbean code="org.jboss.mq.server.jmx.Queue"
       name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_Fun_DroolsCBR_Request_GW">
       <depends optional-attribute-name="DestinationManager">
         jboss.mq:service=DestinationManager

Modified: labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/jboss-esb.xml
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/jboss-esb.xml	2009-09-29 14:10:35 UTC (rev 29504)
+++ labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/jboss-esb.xml	2009-09-29 16:22:34 UTC (rev 29505)
@@ -6,6 +6,9 @@
              <jms-bus busid="xpathQuickstartGwChannel">
                  <jms-message-filter dest-type="QUEUE" dest-name="queue/quickstart_Fun_XPathCBR_Request_GW"/>
              </jms-bus>
+             <jms-bus busid="regexQuickstartGwChannel">
+                 <jms-message-filter dest-type="QUEUE" dest-name="queue/quickstart_Fun_RegexCBR_Request_GW"/>
+             </jms-bus>
              <jms-bus busid="droolsQuickstartGwChannel">
                  <jms-message-filter dest-type="QUEUE" dest-name="queue/quickstart_Fun_DroolsCBR_Request_GW"/>
              </jms-bus>
@@ -45,6 +48,26 @@
               </actions>
           </service>
 
+          <!-- ESB Regex CBR Service -->
+          <service category="Fun_CBRServices_ESB" name="Regex_FunCBRService_ESB" description="ESB Listener - for the native clients" invmScope="GLOBAL">
+              <listeners>
+                  <!-- Gateway -->
+                  <jms-listener name="TheGateway" busidref="regexQuickstartGwChannel" is-gateway="true" />
+               </listeners>
+              <actions mep="OneWay">
+                  <action class="org.jboss.soa.esb.actions.ContentBasedRouter" name="ContentBasedRouter">
+                      <property name="cbrAlias" value="Regex"/>
+                      <property name="ruleSet" value="/regex-rules.properties"/>                      
+                      <property name="ruleReload" value="true"/>
+                      <property name="destinations">
+                          <route-to destination-name="blue"  service-category="BlueTeam"  service-name="GoBlue" />
+                          <route-to destination-name="red"   service-category="RedTeam"   service-name="GoRed" />
+                          <route-to destination-name="green" service-category="GreenTeam" service-name="GoGreen" />
+                      </property>
+                  </action>
+              </actions>
+          </service>
+
         <!-- ESB Drools CBR Service -->
           <service category="Fun_CBRServices_ESB" name="Drools_FunCBRService_ESB" description="ESB Listener - for the native clients" invmScope="GLOBAL">
               <listeners>

Added: labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/regex-rules.properties
===================================================================
--- labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/regex-rules.properties	                        (rev 0)
+++ labs/jbossesb/trunk/product/samples/quickstarts/fun_cbr/regex-rules.properties	2009-09-29 16:22:34 UTC (rev 29505)
@@ -0,0 +1,3 @@
+blue=.* statusCode="0".*
+red=.* statusCode="1".*
+green=.* statusCode="2".*
\ No newline at end of file



More information about the jboss-svn-commits mailing list