[jboss-svn-commits] JBL Code SVN: r11839 - in labs/jbossesb/workspace/rearch2/core: etc and 27 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sun May 13 00:49:14 EDT 2007


Author: mark.little at jboss.com
Date: 2007-05-13 00:49:13 -0400 (Sun, 13 May 2007)
New Revision: 11839

Added:
   labs/jbossesb/workspace/rearch2/core/etc/
   labs/jbossesb/workspace/rearch2/core/etc/schemas/
   labs/jbossesb/workspace/rearch2/core/etc/schemas/test/
   labs/jbossesb/workspace/rearch2/core/etc/schemas/test/resources/
   labs/jbossesb/workspace/rearch2/core/etc/schemas/test/resources/jbossesb-unittest-properties.xml
   labs/jbossesb/workspace/rearch2/core/etc/schemas/test/resources/log4j.xml
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/build.xml
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/log4j.xml
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-email-epr-example.xml
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-ftp-epr-example.xml
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-jdbc-epr-example.xml
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-jms-epr-example.xml
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/src/
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/src/org/
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/src/org/jboss/
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/src/org/jboss/soa/
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/src/org/jboss/soa/esb/
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/src/org/jboss/soa/esb/services/
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/src/org/jboss/soa/esb/services/xml/
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/src/org/jboss/soa/esb/services/xml/XmlValidation.java
   labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/src/org/jboss/soa/esb/services/xml/XmlValidationTest.java
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/README.txt
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/common.xsd
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/contract.xsd
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/dispatcher.xsd
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/email.xsd
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/ftp.xsd
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/jdbc.xsd
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/jms.xsd
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/plugin.xsd
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/routing.xsd
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/ws-addr.xsd
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/email-epr.xsd
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/ftp-epr.xsd
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/jdbc-epr.xsd
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/jms-epr.xsd
   labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/message.xsd
   labs/jbossesb/workspace/rearch2/core/log4j.properties
   labs/jbossesb/workspace/rearch2/core/setup.sh
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/infrastructure/
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/infrastructure/DispatcherManager.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/plugin/
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/plugin/SenderPlugin.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/Contract.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/Dispatcher.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/DispatcherFactory.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/plugin/
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/plugin/DispatcherPlugin.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/plugin/
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/plugin/ReceiverPlugin.java
Removed:
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/conf/
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/plugin/SenderPlugin.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/conf/
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/plugin/ReceiverPlugin.java
Modified:
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/api/remoting/SenderPluginImpl.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/api/remoting/TwoWaySenderPluginImpl.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/spi/remoting/ReceiverPluginImpl.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/spi/remoting/TwoWayReceiverPluginImpl.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/FTPEpr.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/FileEpr.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/HTTPEpr.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/SFTPEpr.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/SenderFactory.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/common/ModulePropertyManager.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/common/Protocols.java
   labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/ReceiverFactory.java
Log:


Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/test/resources/jbossesb-unittest-properties.xml
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/test/resources/jbossesb-unittest-properties.xml	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/test/resources/jbossesb-unittest-properties.xml	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,85 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  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,
+  @author JBoss Inc.
+-->
+<!-- $Id: jbossesb-unittest-properties.xml $ -->
+<!--
+  These options are described in the JBossESB manual.
+  Defaults are provided here for convenience only.
+ 
+  Please read through this file prior to using the system, and consider
+  updating the specified entries.
+-->
+<esb
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:noNamespaceSchemaLocation="jbossesb-1_0.xsd">
+    <properties name="core">
+		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
+		<property name="org.jboss.soa.esb.jndi.server.context.factory" value="org.jnp.interfaces.NamingContextFactory"/>
+		<property name="org.jboss.soa.esb.jndi.server.pkg.prefix" value=""/>
+		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+    </properties>
+    <properties name="registry">
+    	<property name="org.jboss.soa.esb.registry.queryManagerURI" value="org.apache.juddi.registry.local.InquiryService#inquire"/>
+    	<property name="org.jboss.soa.esb.registry.lifeCycleManagerURI" value="org.apache.juddi.registry.local.PublishService#publish"/>
+    	<property name="org.jboss.soa.esb.registry.implementationClass" value="org.jboss.internal.soa.esb.services.registry.JAXRRegistryImpl"/>
+    	<property name="org.jboss.soa.esb.registry.factoryClass" value="org.apache.ws.scout.registry.ConnectionFactoryImpl"/>
+    	<property name="org.jboss.soa.esb.registry.user" value="jbossesb"/>
+    	<property name="org.jboss.soa.esb.registry.password" value="password"/>
+    	<!-- the following parameter is scout specific to set the type of communication between scout and the UDDI (embedded, rmi, soap) -->
+    	<property name="org.jboss.soa.esb.scout.proxy.transportClass" value="org.apache.ws.scout.transport.LocalTransport"/>
+    </properties>
+    <properties name="transports" depends="core">
+    	<property name="org.jboss.soa.esb.mail.smtp.host" value="localhost"/>
+    	<property name="org.jboss.soa.esb.mail.smtp.user" value="jbossesb"/>
+    	<property name="org.jboss.soa.esb.mail.smtp.password" value=""/>
+    	<property name="org.jboss.soa.esb.mail.smtp.port" value="25"/>
+    </properties>
+    <properties name="connection">
+    	<property name="min-pool-size" value="5"/>
+    	<property name="max-pool=size" value="10"/>
+    	<property name="blocking-timeout-millis" value="5000"/>
+    	<property name="abandoned-connection-timeout" value="10000"/>
+    	<property name="abandoned-connection-time-interval" value="30000"/>
+    </properties>
+    <properties name="dbstore">
+	    <!--  connection manager type -->
+	    <property name="org.jboss.soa.esb.persistence.db.conn.manager" 		value="org.jboss.soa.esb.persistence.manager.StandaloneConnectionManager"/>	    
+	    <!--  property name="org.jboss.soa.esb.persistence.db.conn.manager" value="org.jboss.soa.esb.persistence.manager.J2eeConnectionManager"/ -->
+	    
+	    <!-- this property is only used if using the j2ee connection manager -->
+	    <property name="org.jboss.soa.esb.persistence.db.datasource.name" 	value="java:/JBossesbDS"/>
+		
+		<!-- standalone connection pooling settings -->
+		<property name="org.jboss.soa.esb.persistence.db.connection.url" 	value="jdbc:hsqldb:hsql://localhost:9001/jbossesb"/>
+		<property name="org.jboss.soa.esb.persistence.db.jdbc.driver" 		value="org.hsqldb.jdbcDriver"/>
+		<property name="org.jboss.soa.esb.persistence.db.user" 				value="sa"/>
+		<property name="org.jboss.soa.esb.persistence.db.pwd" 				value=""/>		
+		<property name="org.jboss.soa.esb.persistence.db.pool.initial.size"	value="2"/>
+		<property name="org.jboss.soa.esb.persistence.db.pool.min.size"		value="2"/>
+		<property name="org.jboss.soa.esb.persistence.db.pool.max.size"		value="5"/>
+		<!--table managed by pool to test for valid connections - created by pool automatically -->
+		<property name="org.jboss.soa.esb.persistence.db.pool.test.table"	value="pooltest"/>		
+		<property name="org.jboss.soa.esb.persistence.db.pool.timeout.millis"	value="5000"/>
+    </properties>
+    <properties name="messagerouting">
+    	<property name="org.jboss.soa.esb.routing.cbrClass" value="org.jboss.internal.soa.esb.services.routing.cbr.JBossRulesRouter"/>
+    </properties>
+</esb>

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/test/resources/log4j.xml
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/test/resources/log4j.xml	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/test/resources/log4j.xml	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,126 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
+
+<!-- ===================================================================== -->
+<!--                                                                       -->
+<!--  Log4j Configuration                                                  -->
+<!--                                                                       -->
+<!-- ===================================================================== -->
+
+<!-- $Id: log4j.xml,v 1.26.2.10 2006/04/21 17:29:20 csuconic Exp $ -->
+
+<!--
+   | For more configuration infromation and examples see the Jakarta Log4j
+   | owebsite: http://jakarta.apache.org/log4j
+ -->
+
+<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
+
+   <!-- ============================== -->
+   <!-- Append messages to the console -->
+   <!-- ============================== -->
+
+   <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
+      <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+      <param name="Target" value="System.out"/>
+
+      <layout class="org.apache.log4j.PatternLayout">
+         <!-- The default pattern: Date Priority [Category] Message\n -->
+         <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%c{1}] %m%n"/>
+      </layout>
+   </appender>
+   
+   <!-- ================================= -->
+   <!-- Preserve messages in a local file -->
+   <!-- ================================= -->
+   
+   <!-- A time/date based rolling appender -->
+   <appender name="FILE" class="org.jboss.logging.appender.DailyRollingFileAppender">
+      <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+      <param name="File" value="./unittest.log"/>
+      <param name="Append" value="false"/>
+      
+      <!-- Rollover at midnight each day -->
+      <param name="DatePattern" value="'.'yyyy-MM-dd"/>
+      
+      <!-- Rollover at the top of each hour
+         <param name="DatePattern" value="'.'yyyy-MM-dd-HH"/>
+      -->
+      
+      <layout class="org.apache.log4j.PatternLayout">
+         <!-- The default pattern: Date Priority [Category] Message\n -->
+         <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/>
+         
+         <!-- The full pattern: Date MS Priority [Category] (Thread:NDC) Message\n
+            <param name="ConversionPattern" value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
+         -->
+      </layout>
+   </appender>
+   
+   <!-- ================ -->
+   <!-- Limit categories -->
+   <!-- ================ -->
+
+   <!-- Limit the org.apache category to INFO as its DEBUG is verbose -->
+   <category name="org.apache">
+      <priority value="INFO"/>
+   </category>
+
+   <!-- Limit the org.jboss.serial (jboss-serialization) to INFO as its DEBUG is verbose -->
+   <category name="org.jboss.serial">
+      <priority value="INFO"/>
+   </category>
+
+   <!-- Limit the org.jgroups category to WARN as its INFO is verbose -->
+   <category name="org.jgroups">
+      <priority value="WARN"/>
+   </category>
+
+   <!-- Limit the jacorb category to WARN as its INFO is verbose -->
+   <category name="jacorb">
+      <priority value="WARN"/>
+   </category>
+
+   <!-- Limit JBoss categories -->
+   <category name="org.jboss">
+      <priority value="DEBUG"/>
+   </category>
+
+
+   <!-- Limit the JSR77 categories -->
+   <category name="org.jboss.management">
+      <priority value="INFO"/>
+   </category>
+
+   <!-- Limit Axis based webservice category -->
+   <category name="org.jboss.webservice">
+      <priority value="DEBUG"/>
+   </category>
+   <category name="org.jboss.axis">
+      <priority value="INFO"/>
+   </category>
+
+   <category name="org.milyn">
+      <priority value="INFO"/>
+   </category>
+   <category name="org.milyn.delivery.SmooksXML">
+      <priority value="DEBUG"/>
+   </category>
+   <category name="org.milyn.delivery.serialize.Serializer">
+      <priority value="DEBUG"/>
+   </category>
+   <category name="org.milyn.cdr.XMLConfigDigester">
+      <priority value="INFO"/>
+   </category>
+
+   <!-- ======================= -->
+   <!-- Setup the Root category -->
+   <!-- ======================= -->
+
+   <root>
+      <appender-ref ref="CONSOLE"/>
+      <appender-ref ref="FILE"/>
+   </root>
+
+ 
+</log4j:configuration>

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/build.xml
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/build.xml	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/build.xml	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,143 @@
+<project name="JBESB" default="usage" basedir=".">
+
+
+    <!-- ================================================================== -->
+    <!--                      P R O P E R T I E S                           -->
+    <!-- ================================================================== -->
+    <!--
+    <property name="org.jboss.esb.etc.schema.xsd.home" value="../schemas/xml"/>
+    <property name="org.jboss.esb.etc.schema.xsd.examples" value="."/>
+    -->
+    <property name="org.jboss.esb.etc.validation.build.dir" value="build"/>
+    <property name="org.jboss.esb.etc.validation.classes.dir" value="${org.jboss.esb.etc.validation.build.dir}/classes"/>
+    <property name="org.jboss.esb.etc.validation.junit.dir" value="${org.jboss.esb.etc.validation.build.dir}/junit"/>
+
+
+    <!-- ================================================================== -->
+    <!--                            P A T H S                               -->
+    <!-- ================================================================== -->
+    <path id="build.classpath">
+        <fileset dir="../../../lib">
+            <include name="**/**/*.jar"/>
+        </fileset>
+    </path>
+
+
+    <!-- ================================================================== -->
+    <!--                        U S A G E                                   -->
+    <!-- ================================================================== -->
+    <target name="org.jboss.esb.etc.schema.usage" >
+        <echo message="+----------------------------------------------------------------+"/>
+        <echo message="|                                                                "/>
+        <echo message="| U S A G E:                                                     "/>
+        <echo message="|                                                                "/>
+        <echo message="| ant  [target] [options]		                                "/>
+        <echo message="|                                                                "/>
+        <echo message="| Where:                                                         "/>
+        <echo message="|                                                                "/>
+        <echo message="| targets =                                                      "/>
+        <echo message="|          clean          [ clean temporary dirs and classes ]   "/>
+        <echo message="|          build          [ compile classes                  ]   "/>
+        <echo message="|          validate       [ validate all xsd examples        ]   "/>
+        <echo message="|                                                                "/>
+        <echo message="+----------------------------------------------------------------+"/>
+    </target>
+
+
+    <!-- ================================================================== -->
+    <!--                        C L E A N                                   -->
+    <!-- ================================================================== -->
+    <target name="org.jboss.esb.etc.schema.clean" >
+        <echo message="+--------------------------------------------------------+"/>
+		<echo message="|                                                        |"/>
+		<echo message="|                      C L E A N                         |"/>
+		<echo message="|                                                        |"/>
+		<echo message="+--------------------------------------------------------+"/>
+        <delete dir="${org.jboss.esb.etc.validation.build.dir}"/>
+    </target>
+
+
+    <!-- ================================================================== -->
+    <!--                       P R E P A R E                                -->
+    <!-- ================================================================== -->
+    <target name="org.jboss.esb.etc.schema.prepare" depends="clean" >
+        <echo message="+--------------------------------------------------------+"/>
+        <echo message="|                                                        |"/>
+        <echo message="|                  P R E P A R E                         |"/>
+        <echo message="|                                                        |"/>
+        <echo message="+--------------------------------------------------------+"/>
+        <mkdir dir="${org.jboss.esb.etc.validation.classes.dir}"/>
+        <mkdir dir="${org.jboss.esb.etc.validation.junit.dir}"/>
+    </target>
+
+
+    <!-- ================================================================== -->
+    <!--                          B U I L D                                 -->
+    <!-- ================================================================== -->
+    <target name="org.jboss.esb.etc.schema.build" depends="org.jboss.esb.etc.schema.prepare" >
+        <echo message="+--------------------------------------------------------+"/>
+        <echo message="|                                                        |"/>
+        <echo message="|                C O M P I L E                           |"/>
+        <echo message="|                                                        |"/>
+        <echo message="+--------------------------------------------------------+"/>
+        <javac
+            destdir="${org.jboss.esb.etc.validation.classes.dir}"
+            classpathref="build.classpath">
+            <src path="src"/>
+        </javac>
+    </target>
+
+    <!-- ================================================================== -->
+    <!--                      V A L I D A T E                                -->
+    <!-- ================================================================== -->
+    <target name="org.jboss.esb.etc.schema.validate" depends="build" >
+        <echo message="+--------------------------------------------------------+"/>
+        <echo message="|                                                        |"/>
+        <echo message="|                V A L I D A T E                         |"/>
+        <echo message="|                                                        |"/>
+        <echo message="+--------------------------------------------------------+"/>
+        <junit printsummary="yes" haltonerror="yes" haltonfailure="yes" showoutput="no" fork="true">
+            <formatter type="plain" usefile="false"/>
+            <formatter type="xml"/>
+            <batchtest todir="${org.jboss.esb.etc.validation.junit.dir}">
+                <fileset dir="src">
+                    <include name="**/**Test.java"/>
+                </fileset>
+            </batchtest>
+            <classpath>
+                <pathelement location="${org.jboss.esb.etc.validation.classes.dir}"/>
+                <pathelement location="src"/>
+                <pathelement location="${basedir}"/>
+                <path refid="build.classpath"/>
+            </classpath>
+        	<sysproperty key="log4j.configuration" value="log4j.xml"/>
+            <sysproperty key="xml.base.dir" value="${basedir}/resources"/>
+            <sysproperty key="xsd.base.dir" value="${basedir}/../schemas/xml"/>
+        </junit>
+        <junitreport>
+            <fileset dir="${org.jboss.esb.etc.validation.junit.dir}">
+                <include name="*.xml"/>
+            </fileset>
+            <report format="frames" todir="${org.jboss.esb.etc.validation.junit.dir}"/>
+            <report format="noframes" todir="${org.jboss.esb.etc.validation.junit.dir}"/>
+        </junitreport>
+        <!-- clean up
+        <move file="TESTS-TestSuites.xml" todir="${org.jboss.esb.etc.validation.junit.dir}"/>
+        -->
+        
+    </target>
+
+
+
+
+    <!-- ================================================================== -->
+    <!--                    S H O R T   N A M E S                           -->
+    <!-- ================================================================== -->
+    <target name="usage" depends="org.jboss.esb.etc.schema.usage" />
+    <target name="clean" depends="org.jboss.esb.etc.schema.clean" />
+    <target name="build" depends="org.jboss.esb.etc.schema.build" />
+    <target name="validate" depends="org.jboss.esb.etc.schema.validate" />
+
+
+
+</project>

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/log4j.xml
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/log4j.xml	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/log4j.xml	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,263 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
+
+<!-- ===================================================================== -->
+<!--                                                                       -->
+<!--  Log4j Configuration                                                  -->
+<!--                                                                       -->
+<!-- ===================================================================== -->
+
+<!-- $Id: log4j.xml,v 1.26.2.5 2005/09/15 09:31:02 dimitris Exp $ -->
+
+<!--
+   | For more configuration infromation and examples see the Jakarta Log4j
+   | owebsite: http://jakarta.apache.org/log4j
+ -->
+
+<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
+
+   <!-- ============================== -->
+   <!-- Append messages to the console -->
+   <!-- ============================== -->
+
+   <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
+      <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+      <param name="Target" value="System.out"/>
+      <param name="Threshold" value="INFO"/>
+
+      <layout class="org.apache.log4j.PatternLayout">
+         <!-- The default pattern: Date Priority [Category] Message\n -->
+         <param name="ConversionPattern" value="%d{ABSOLUTE} %-5p [%t][%c{1}] %m%n"/>
+      </layout>
+   </appender>
+
+   <!-- ================================= -->
+   <!-- Preserve messages in a local file -->
+   <!-- ================================= -->
+
+   <!-- A size based file rolling appender -->
+   <appender name="FILE" class="org.jboss.logging.appender.RollingFileAppender">
+     <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+     <param name="File" value="./epr-validation-tests.log"/>
+     <param name="Append" value="false"/>
+     <param name="MaxFileSize" value="500KB"/>
+     <param name="MaxBackupIndex" value="1"/>
+
+     <layout class="org.apache.log4j.PatternLayout">
+       <param name="ConversionPattern" value="%d %-5p [%t][%c] %m%n"/>
+     </layout>
+   </appender>
+
+   <!-- ====================== -->
+   <!-- More Appender examples -->
+   <!-- ====================== -->
+
+   <!-- Buffer events and log them asynchronously
+   <appender name="ASYNC" class="org.apache.log4j.AsyncAppender">
+     <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+     <appender-ref ref="FILE"/>
+     <appender-ref ref="CONSOLE"/>
+     <appender-ref ref="SMTP"/>
+   </appender>
+   -->
+
+   <!-- EMail events to an administrator
+   <appender name="SMTP" class="org.apache.log4j.net.SMTPAppender">
+     <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+     <param name="Threshold" value="ERROR"/>
+     <param name="To" value="admin at myhost.domain.com"/>
+     <param name="From" value="nobody at myhost.domain.com"/>
+     <param name="Subject" value="JBoss Sever Errors"/>
+     <param name="SMTPHost" value="localhost"/>
+     <param name="BufferSize" value="10"/>
+     <layout class="org.apache.log4j.PatternLayout">
+       <param name="ConversionPattern" value="[%d{ABSOLUTE},%c{1}] %m%n"/>
+     </layout>
+   </appender>
+   -->
+
+   <!-- Syslog events
+   <appender name="SYSLOG" class="org.apache.log4j.net.SyslogAppender">
+     <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+     <param name="Facility" value="LOCAL7"/>
+     <param name="FacilityPrinting" value="true"/>
+     <param name="SyslogHost" value="localhost"/>
+     <layout class="org.apache.log4j.PatternLayout">
+       <param name="ConversionPattern" value="[%d{ABSOLUTE},%c{1}] %m%n"/>
+     </layout>
+   </appender>
+   -->
+
+   <!-- Log events to JMS (requires a topic to be created)
+   <appender name="JMS" class="org.apache.log4j.net.JMSAppender">
+     <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+     <param name="Threshold" value="ERROR"/>
+     <param name="TopicConnectionFactoryBindingName" value="java:/ConnectionFactory"/>
+     <param name="TopicBindingName" value="topic/MyErrorsTopic"/>
+   </appender>
+   -->
+
+   <!-- Log events through SNMP
+   <appender name="TRAP_LOG" class="org.apache.log4j.ext.SNMPTrapAppender">
+     <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+     <param name="ImplementationClassName" value="org.apache.log4j.ext.JoeSNMPTrapSender"/>
+     <param name="ManagementHost" value="127.0.0.1"/>
+     <param name="ManagementHostTrapListenPort" value="162"/>
+     <param name="EnterpriseOID" value="1.3.6.1.4.1.24.0"/>
+     <param name="LocalIPAddress" value="127.0.0.1"/>
+     <param name="LocalTrapSendPort" value="161"/>
+     <param name="GenericTrapType" value="6"/>
+     <param name="SpecificTrapType" value="12345678"/>
+     <param name="CommunityString" value="public"/>
+     <param name="ForwardStackTraceWithTrap" value="true"/>
+     <param name="Threshold" value="DEBUG"/>
+     <param name="ApplicationTrapOID" value="1.3.6.1.4.1.24.12.10.22.64"/>
+     <layout class="org.apache.log4j.PatternLayout">
+            <param name="ConversionPattern" value="%d,%p,[%t],[%c],%m%n"/>
+     </layout>
+   </appender>
+   -->
+
+   <!--  Emit events as JMX notifications
+   <appender name="JMX" class="org.jboss.monitor.services.JMXNotificationAppender">
+      <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+
+      <param name="Threshold" value="WARN"/>
+      <param name="ObjectName" value="jboss.system:service=Logging,type=JMXNotificationAppender"/>
+
+      <layout class="org.apache.log4j.PatternLayout">
+         <param name="ConversionPattern" value="%d %-5p [%c] %m"/>
+      </layout>
+   </appender>
+   -->
+
+   <!-- ================ -->
+   <!-- Limit categories -->
+   <!-- ================ -->
+
+   <!-- Limit the org.apache category to INFO as its DEBUG is verbose -->
+   <category name="org.apache">
+      <priority value="INFO"/>
+   </category>
+
+   <!-- Limit the org.jgroups category to WARN as its INFO is verbose -->
+   <category name="org.jgroups">
+      <priority value="WARN"/>
+   </category>
+
+   <!-- Limit jboss axis to INFO as its DEBUG is even more verbose -->
+   <category name="org.jboss.axis">
+      <priority value="INFO"/>
+   </category>
+
+   <!-- Limit JBoss categories
+   <category name="org.jboss">
+      <priority value="INFO"/>
+   </category>
+   -->
+
+   <!-- Limit the JSR77 categories -->
+   <category name="org.jboss.management">
+      <priority value="INFO"/>
+   </category>
+
+   <!-- Limit JBoss webservice category
+   <category name="org.jboss.webservice">
+      <priority value="DEBUG"/>
+   </category>
+   -->
+
+   <!-- Decrease the priority threshold for the org.jboss.varia category
+   <category name="org.jboss.varia">
+     <priority value="DEBUG"/>
+   </category>
+   -->
+
+   <!-- Show the evolution of the DataSource pool in the logs [inUse/Available/Max]
+   <category name="org.jboss.resource.connectionmanager.JBossManagedConnectionPool">
+     <priority value="TRACE" class="org.jboss.logging.XLevel"/>
+   </category>
+   -->
+
+   <!--
+      | An example of enabling the custom TRACE level priority that is used
+      | by the JBoss internals to diagnose low level details. This example
+      | turns on TRACE level msgs for the org.jboss.ejb.plugins package and its
+      | subpackages. This will produce A LOT of logging output.
+   <category name="org.jboss.system">
+     <priority value="TRACE" class="org.jboss.logging.XLevel"/>
+   </category>
+   <category name="org.jboss.ejb.plugins">
+     <priority value="TRACE" class="org.jboss.logging.XLevel"/>
+   </category>
+   -->
+
+   <!--
+       | Logs these events to SNMP:
+           - server starts/stops
+           - cluster evolution (node death/startup)
+           - When an EJB archive is deployed (and associated verified messages)
+           - When an EAR archive is deployed
+
+   <category name="org.jboss.system.server.Server">
+     <priority value="INFO" />
+     <appender-ref ref="TRAP_LOG"/>
+   </category>
+
+   <category name="org.jboss.ha.framework.interfaces.HAPartition.lifecycle">
+     <priority value="INFO" />
+     <appender-ref ref="TRAP_LOG"/>
+   </category>
+
+   <category name="org.jboss.deployment.MainDeployer">
+     <priority value="ERROR" />
+     <appender-ref ref="TRAP_LOG"/>
+   </category>
+
+   <category name="org.jboss.ejb.EJBDeployer">
+     <priority value="INFO" />
+     <appender-ref ref="TRAP_LOG"/>
+   </category>
+
+   <category name="org.jboss.deployment.EARDeployer">
+     <priority value="INFO" />
+     <appender-ref ref="TRAP_LOG"/>
+   </category>
+
+   -->
+
+   <!-- ======================= -->
+   <!-- Setup the Root category -->
+   <!-- ======================= -->
+
+   <root>
+      <appender-ref ref="CONSOLE"/>
+      <appender-ref ref="FILE"/>
+   </root>
+
+   <!-- Clustering logging -->
+   <!-- Uncomment the following to redirect the org.jgroups and
+      org.jboss.ha categories to a cluster.log file.
+
+   <appender name="CLUSTER" class="org.jboss.logging.appender.RollingFileAppender">
+     <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
+     <param name="File" value="${jboss.server.home.dir}/log/cluster.log"/>
+     <param name="Append" value="false"/>
+     <param name="MaxFileSize" value="500KB"/>
+     <param name="MaxBackupIndex" value="1"/>
+
+     <layout class="org.apache.log4j.PatternLayout">
+       <param name="ConversionPattern" value="%d %-5p [%c] %m%n"/>
+     </layout>
+   </appender>
+   <category name="org.jgroups">
+     <priority value="DEBUG" />
+     <appender-ref ref="CLUSTER"/>
+   </category>
+   <category name="org.jboss.ha">
+     <priority value="DEBUG" />
+     <appender-ref ref="CLUSTER"/>
+   </category>
+   -->
+
+</log4j:configuration>

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-email-epr-example.xml
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-email-epr-example.xml	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-email-epr-example.xml	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<e:email-epr
+        xmlns:e="http://www.jboss.org/soa/endpoint/email-epr"
+        xmlns:email="http://www.jboss.org/soa/endpoint/protocol/email"
+        xmlns:wsa="http://www.w3.org/2005/08/addressing"
+        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:schemaLocation="http://www.jboss.org/soa/endpoint/email-epr email-epr.xsd" version="String">
+	<wsa:EndpointReference>
+		<wsa:Address>http://www.altova.com</wsa:Address>
+		<wsa:ReferenceParameters/>
+		<wsa:Metadata/>
+	</wsa:EndpointReference>
+	<email:email>
+		<service-name>basic-email-epr-example</service-name>
+		<service-type>email</service-type>
+		<gateway-type>consumer</gateway-type>
+		<protocol>smtp</protocol>
+		<host>String</host>
+		<port>25</port>
+		<username>String</username>
+		<password>String</password>
+	</email:email>
+</e:email-epr>

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-ftp-epr-example.xml
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-ftp-epr-example.xml	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-ftp-epr-example.xml	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<f:ftp-epr
+        xmlns:f="http://www.jboss.org/soa/endpoint/ftp-epr"
+        xmlns:ftp="http://www.jboss.org/soa/endpoint/protocol/ftp"
+        xmlns:wsa="http://www.w3.org/2005/08/addressing"
+        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:schemaLocation="http://www.jboss.org/soa/endpoint/ftp-epr ftp-epr.xsd" version="String">
+	<wsa:EndpointReference>
+		<wsa:Address>http://www.altova.com</wsa:Address>
+		<wsa:ReferenceParameters/>
+		<wsa:Metadata/>
+	</wsa:EndpointReference>
+	<ftp:ftp>
+		<service-name>String</service-name>
+		<service-type>ftp</service-type>
+		<gateway-type>consumer</gateway-type>
+		<host>String</host>
+		<port>23</port>
+		<username>String</username>
+		<password>String</password>
+		<directory>String</directory>
+	</ftp:ftp>
+</f:ftp-epr>

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-jdbc-epr-example.xml
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-jdbc-epr-example.xml	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-jdbc-epr-example.xml	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<j:jdbc-epr
+        xmlns:j="http://www.jboss.org/soa/endpoint/jdbc-epr"
+        xmlns:jdbc="http://www.jboss.org/soa/endpoint/protocol/jdbc"
+        xmlns:wsa="http://www.w3.org/2005/08/addressing"
+        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:schemaLocation="http://www.jboss.org/soa/endpoint/jdbc-epr jdbc-epr.xsd" version="String">
+	<wsa:EndpointReference>
+		<wsa:Address>http://www.altova.com</wsa:Address>
+		<wsa:ReferenceParameters/>
+		<wsa:Metadata/>
+	</wsa:EndpointReference>
+	<jdbc:jdbc>
+		<service-name>String</service-name>
+		<service-type>http</service-type>
+		<gateway-type>consumer</gateway-type>
+		<url>String</url>
+		<driver>String</driver>
+		<username>String</username>
+		<password>String</password>
+		<sql>String</sql>
+	</jdbc:jdbc>
+</j:jdbc-epr>
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-jms-epr-example.xml
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-jms-epr-example.xml	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/resources/basic-jms-epr-example.xml	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<j:jms-epr
+        xmlns:j="http://www.jboss.org/soa/endpoint/jms-epr"
+        xmlns:jms="http://www.jboss.org/soa/endpoint/protocol/jms"
+        xmlns:wsa="http://www.w3.org/2005/08/addressing"
+        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:schemaLocation="http://www.jboss.org/soa/endpoint/jms-epr jms-epr.xsd" version="String">
+	<wsa:EndpointReference>
+		<wsa:Address>http://www.altova.com</wsa:Address>
+		<wsa:ReferenceParameters/>
+		<wsa:Metadata/>
+	</wsa:EndpointReference>
+	<jms:jms>
+		<service-name>basic-jms-epr-example</service-name>
+		<service-type>jms</service-type>
+		<gateway-type>consumer</gateway-type>
+		<spec-version>1.1</spec-version>
+		<destination-type>queue</destination-type>
+		<destination-name>String</destination-name>
+		<connection-factory>String</connection-factory>
+	</jms:jms>
+</j:jms-epr>
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/src/org/jboss/soa/esb/services/xml/XmlValidation.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/src/org/jboss/soa/esb/services/xml/XmlValidation.java	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/src/org/jboss/soa/esb/services/xml/XmlValidation.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,143 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY 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 along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.soa.esb.services.xml;
+
+import org.xml.sax.SAXException;
+import org.w3c.dom.Document;
+import org.jboss.logging.Logger;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.validation.Validator;
+import javax.xml.validation.SchemaFactory;
+import javax.xml.validation.Schema;
+import javax.xml.transform.Source;
+import javax.xml.transform.stream.StreamSource;
+import javax.xml.transform.dom.DOMSource;
+import javax.xml.XMLConstants;
+import java.io.File;
+
+/**
+ * A Helper classes used to validate xml files against supplied schemas.
+ * 
+ * @author $Revision$ $Id$
+ */
+public class XmlValidation
+{
+
+	/**
+	 * Our Logger
+	 */
+	private Logger log = Logger.getLogger(XmlValidation.class);
+
+	/**
+	 * The xml base directory.
+	 */
+	private String xmlBaseDirectory = null;
+
+	/**
+	 * The xml base directory key.
+	 */
+	private String xmlBaseDirectoryKey = "xml.base.dir";
+
+	/**
+	 * The xsd base directory.
+	 */
+	private String xsdBaseDirectory = null;
+
+	/**
+	 * The xsd base directory key.
+	 */
+	private String xsdBaseDirectoryKey = "xsd.base.dir";
+
+	/**
+	 * The path separator
+	 */
+	private static String SEP = System.getProperty("file.separator");
+
+	/**
+	 * Default class constructor
+	 */
+	public XmlValidation ()
+	{
+		if (System.getProperty(xmlBaseDirectoryKey) != null)
+		{
+			xmlBaseDirectory = System.getProperty(xmlBaseDirectoryKey);
+			log.info("Using xml base directory " + xmlBaseDirectory);
+		}
+		if (System.getProperty(xsdBaseDirectoryKey) != null)
+		{
+			xsdBaseDirectory = System.getProperty(xsdBaseDirectoryKey);
+			log.info("Using xsd base directory " + xsdBaseDirectory);
+		}
+	}
+
+	/**
+	 * Validation method used to validate an xml file against an xsd.
+	 * 
+	 * @param xml
+	 *            The xml file to be validated.
+	 * @param xsd
+	 *            The schema to validate against.
+	 * @return Boolean true/false indicating successful validation.
+	 * @throws SAXException
+	 *             Failure during validation.
+	 */
+	public boolean validate (String xml, String xsd) throws SAXException
+	{
+		if (log.isInfoEnabled())
+		{
+			log.info("Validating " + xml + " Against " + xsd);
+		}
+		boolean isValid = false;
+		File xmlFile = new File(xmlBaseDirectory + SEP + xml);
+		File xsdFile = new File(xsdBaseDirectory + SEP + xsd);
+		log.info("Xml File=" + xmlFile.getAbsolutePath());
+		log.info("Xsd File=" + xsdFile.getAbsolutePath());
+		DocumentBuilder parser = DocumentBuilderFactory.newInstance()
+				.newDocumentBuilder();
+		Document document = parser.parse(xmlFile);
+		// log.info("Xml=" + document.toString());
+		SchemaFactory factory = SchemaFactory
+				.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
+		Source schemaFile = new StreamSource(xsdFile);
+		// log.info("Xsd=" + schemaFile.toString());
+		Schema schema = factory.newSchema(schemaFile);
+		Validator validator = schema.newValidator();
+		try
+		{
+			validator.validate(new DOMSource(document));
+			isValid = true;
+		}
+		catch (SAXException e)
+		{
+			log.error("Failed to validate xml", e);
+			throw e;
+		}
+		if (log.isInfoEnabled())
+		{
+			log.info("IsValid = " + isValid);
+		}
+		return isValid;
+	}
+
+}

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/src/org/jboss/soa/esb/services/xml/XmlValidationTest.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/src/org/jboss/soa/esb/services/xml/XmlValidationTest.java	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/validation/src/org/jboss/soa/esb/services/xml/XmlValidationTest.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,59 @@
+package org.jboss.soa.esb.services.xml;
+
+import junit.framework.TestCase;
+import org.jboss.logging.Logger;
+
+
+public class XmlValidationTest extends TestCase  {
+
+    /**
+     * Our Logger
+     */
+    private Logger log = Logger.getLogger(XmlValidationTest.class);
+
+    /**
+     * Validate the Email EPR
+     * @throws Exception
+     */
+    public void testBasicEmailEPR() throws Exception {
+        log.info("Running Basic Email EPR Test");
+        XmlValidation xmlValidator = new XmlValidation();
+        boolean isValid = xmlValidator.validate("basic-email-epr-example.xml","email-epr.xsd");
+        assertTrue("Expecting basic-email-epr-example.xml to be valid.", isValid);
+    }
+
+    /**
+     * Validate the JMS EPR
+     * @throws Exception
+     */
+    public void testBasicJMSEPR() throws Exception {
+        log.info("Running Basic JMS EPR Test");
+        XmlValidation xmlValidator = new XmlValidation();
+        boolean isValid = xmlValidator.validate("basic-jms-epr-example.xml","jms-epr.xsd");
+        assertTrue("Expecting basic-jms-epr-example.xml to be valid.", isValid);
+    }
+
+    /**
+     * Validate the JDBC EPR
+     * @throws Exception
+     */
+    public void testBasicJDBCEPR() throws Exception {
+        log.info("Running Basic JDBC EPR Test");
+        XmlValidation xmlValidator = new XmlValidation();
+        boolean isValid = xmlValidator.validate("basic-jdbc-epr-example.xml","jdbc-epr.xsd");
+        assertTrue("Expecting basic-jdbc-epr-example.xml to be valid.", isValid);
+    }
+
+    /**
+     * Validate the FTP EPR
+     * @throws Exception
+     */
+    public void testBasicFTPEPR() throws Exception {
+        log.info("Running Basic FTP EPR Test");
+        XmlValidation xmlValidator = new XmlValidation();
+        boolean isValid = xmlValidator.validate("basic-ftp-epr-example.xml","ftp-epr.xsd");
+        assertTrue("Expecting basic-ftp-epr-example.xml to be valid.", isValid);
+    }
+
+
+}

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/README.txt
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/README.txt	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/README.txt	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,6 @@
+This directory contains the start of xml/schema/epr
+definitions. In most cases they are simply ideas
+comming together and therefore are subject to change.
+
+NOTE: These current set of XSD's are not valid yet.
+They are in the process of being built then validated.
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/common.xsd
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/common.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/common.xsd	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+This schema contains common definitions required by all
+eprs.
+-->
+<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.jboss.org/soa/endpoint/common" elementFormDefault="unqualified" attributeFormDefault="unqualified">
+	<annotation>
+		<documentation>
+			   JBoss Inc JMS SOA Schema Definition Copyright 2006
+		  </documentation>
+	</annotation>
+	<simpleType name="service-name">
+		<restriction base="string"/>			
+	</simpleType>
+	<simpleType name="service-type">
+		<restriction base="string">
+			<enumeration value="http"/>
+			<enumeration value="jms"/>
+			<enumeration value="file"/>
+			<enumeration value="jdbc"/>
+			<enumeration value="jxta"/>
+			<enumeration value="javaspace"/>
+			<enumeration value="ftp"/>
+			<enumeration value="email"/>
+			<enumeration value="xmpp"/>
+        </restriction>
+	</simpleType>
+	<simpleType name="gateway-type">
+		<restriction base="string">
+			<enumeration value="consumer"/>
+			<enumeration value="provider"/>
+		</restriction>
+	</simpleType>
+</schema>

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/contract.xsd
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/contract.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/contract.xsd	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.example.org/esb/contract" xmlns:tns="http://www.example.org/esb/contract" xmlns:wsa="http://www.w3.org/2005/08/addressing">
+	<xs:import namespace="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"/>
+	<xs:complexType name="ContractDefinition">
+        <xs:sequence>
+            <xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
+            <xs:element name="serviceType" type="xs:anyURI"/>
+            <xs:element minOccurs="0" name="serviceSubType" type="xs:anyURI"/>
+            <xs:element minOccurs="0" name="version" type="xs:anyURI"/>
+		   <xs:element minOccurs="0" name="protocols" type="ProtocolData"/>
+		   <!--
+		   <xs:element minOccurs="0" name="policies" type="wsp:Policy"/>
+		   -->
+        </xs:sequence>
+        <xs:attribute ref="wsu:Id" use="optional"/>
+    </xs:complexType>
+    
+    <xs:complexType name="ProtocolData">
+    		<xs:sequence>
+    			<xs:element name="epr" type="wsa:EndpointReferenceType"/>
+    			<xs:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="lax"/>
+    		</xs:sequence>
+    	</xs:complexType>
+</schema>
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/dispatcher.xsd
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/dispatcher.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/dispatcher.xsd	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://labs.jboss.org/jbossesb/2007/5/dispatcher" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+	<xs:complexType name="identifier">
+		<xs:sequence>
+			<xs:element maxOccurs="1" name="uid" type="xs:anyURI"/>
+			<xs:element minOccurs="0" name="version" type="xs:long"/>
+		</xs:sequence>
+	</xs:complexType>
+	
+	<xs:complexType name="instance">
+		<xs:sequence>
+			<xs:element maxOccurs="1" name="dispatcher" type="identifier"/>
+			<xs:element minOccurs="0" name="data" type="xs:anySimpleType"/>
+			<xs:element minOccurs="0" name="dependency" type="identifier"/>
+		</xs:sequence>
+	</xs:complexType>
+	
+	<xs:complexType name="type">
+		<xs:choice>
+			<xs:element minOccurs="0" maxOccurs="1" name="dispatcher-template" type="xs:anyURI"/>
+			<xs:element name="dispatcher-identifier" type="instance"/>
+		</xs:choice>
+	</xs:complexType>
+</xs:schema>
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/email.xsd
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/email.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/email.xsd	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+        xmlns:common="http://www.jboss.org/soa/endpoint/common"
+        xmlns:email="http://www.jboss.org/soa/endpoint/protocol/email"
+        targetNamespace="http://www.jboss.org/soa/endpoint/protocol/email" elementFormDefault="unqualified"
+        attributeFormDefault="unqualified">
+    <annotation>
+        <documentation>
+            JBoss Inc JMS SOA Schema Definition Copyright 2006
+        </documentation>
+    </annotation>
+
+    <!-- import common -->
+    <import namespace="http://www.jboss.org/soa/endpoint/common" schemaLocation="common.xsd"/>
+    <element name="email">
+        <complexType>
+            <sequence>
+                <!-- Core -->
+                <element name="service-name" type="common:service-name"/>
+                <element name="service-type" type="common:service-type"/>
+                <element name="gateway-type" type="common:gateway-type"/>
+                <!-- email related -->
+                <element name="protocol" type="email:protocol"/>
+                <element name="host" type="email:host"/>
+                <element name="port" type="email:port"/>
+                <element name="username" type="email:username"/>
+                <element name="password" type="email:password"/>
+            </sequence>
+        </complexType>
+    </element>
+
+    <!-- Email Specific Definitions -->
+    <simpleType name="protocol">
+        <restriction base="string">
+            <enumeration value="smtp"/>
+            <enumeration value="pop"/>
+        </restriction>
+    </simpleType>
+
+
+    <simpleType name="host">
+        <restriction base="string">
+            <minLength value="1"/>
+            <maxLength value="20"/>
+        </restriction>
+    </simpleType>
+
+
+    <simpleType name="port">
+        <restriction base="string">
+            <minLength value="1"/>
+            <maxLength value="5"/>
+        </restriction>
+    </simpleType>
+
+
+    <simpleType name="username">
+        <restriction base="string">
+            <minLength value="1"/>
+            <maxLength value="20"/>
+        </restriction>
+    </simpleType>
+
+
+    <simpleType name="password">
+        <restriction base="string">
+            <minLength value="1"/>
+            <maxLength value="20"/>
+        </restriction>
+    </simpleType>
+
+
+</schema>
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/ftp.xsd
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/ftp.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/ftp.xsd	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+        xmlns:common="http://www.jboss.org/soa/endpoint/common"
+        xmlns:ftp="http://www.jboss.org/soa/endpoint/protocol/ftp"
+        targetNamespace="http://www.jboss.org/soa/endpoint/protocol/ftp" elementFormDefault="unqualified"
+        attributeFormDefault="unqualified">
+    <annotation>
+        <documentation>
+            JBoss Inc JMS SOA Schema Definition Copyright 2006
+        </documentation>
+    </annotation>
+
+    <!-- import common -->
+    <import namespace="http://www.jboss.org/soa/endpoint/common" schemaLocation="common.xsd"/>
+    <element name="ftp">
+        <complexType>
+            <sequence>
+                <!-- Core -->
+                <element name="service-name" type="common:service-name"/>
+                <element name="service-type" type="common:service-type"/>
+                <element name="gateway-type" type="common:gateway-type"/>
+                <!-- ftp related -->
+                <element name="host" type="ftp:host"/>
+                <element name="port" type="ftp:port"/>
+                <element name="username" type="ftp:username"/>
+                <element name="password" type="ftp:password"/>
+                <element name="directory" type="ftp:directory"/>
+
+            </sequence>
+        </complexType>
+    </element>
+
+    <!-- FTP Specific Definitions -->
+    <simpleType name="host">
+        <restriction base="string">
+            <minLength value="1"/>
+            <maxLength value="20"/>
+        </restriction>
+    </simpleType>
+
+
+    <simpleType name="port">
+        <restriction base="string">
+            <minLength value="1"/>
+            <maxLength value="5"/>
+        </restriction>
+    </simpleType>
+
+
+    <simpleType name="username">
+        <restriction base="string">
+            <minLength value="1"/>
+            <maxLength value="20"/>
+        </restriction>
+    </simpleType>
+
+
+    <simpleType name="password">
+        <restriction base="string">
+            <minLength value="1"/>
+            <maxLength value="20"/>
+        </restriction>
+    </simpleType>
+
+    <simpleType name="directory">
+        <restriction base="string">
+            <minLength value="1"/>
+            <maxLength value="20"/>
+        </restriction>
+    </simpleType>
+
+
+</schema>
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/jdbc.xsd
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/jdbc.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/jdbc.xsd	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema"
+        xmlns:common="http://www.jboss.org/soa/endpoint/common"
+        xmlns:jdbc="http://www.jboss.org/soa/endpoint/protocol/jdbc"
+        targetNamespace="http://www.jboss.org/soa/endpoint/protocol/jdbc" elementFormDefault="unqualified"
+        attributeFormDefault="unqualified">
+    <annotation>
+        <documentation>
+            JBoss Inc JMS SOA Schema Definition Copyright 2006
+        </documentation>
+    </annotation>
+
+    <!-- import common -->
+    <import namespace="http://www.jboss.org/soa/endpoint/common" schemaLocation="common.xsd"/>
+    <element name="jdbc">
+        <complexType>
+            <sequence>
+                <!-- Core -->
+                <element name="service-name" type="common:service-name"/>
+                <element name="service-type" type="common:service-type"/>
+                <element name="gateway-type" type="common:gateway-type"/>
+                <!-- jdbc related -->
+                <element name="url" type="jdbc:url"/>
+                <element name="driver" type="jdbc:driver"/>
+                <element name="username" type="jdbc:username"/>
+                <element name="password" type="jdbc:password"/>
+                <element name="sql" type="jdbc:sql"/>
+            </sequence>
+        </complexType>
+    </element>
+
+    <!-- JDBC Specific Definitions -->
+    <simpleType name="url">
+        <restriction base="string">
+             <minLength value="1"/>
+            <maxLength value="20"/>
+        </restriction>
+    </simpleType>
+
+
+    <simpleType name="driver">
+        <restriction base="string">
+            <minLength value="1"/>
+            <maxLength value="20"/>
+        </restriction>
+    </simpleType>
+
+    <simpleType name="username">
+        <restriction base="string">
+            <minLength value="1"/>
+            <maxLength value="20"/>
+        </restriction>
+    </simpleType>
+
+
+    <simpleType name="password">
+        <restriction base="string">
+            <minLength value="1"/>
+            <maxLength value="20"/>
+        </restriction>
+    </simpleType>
+
+    <simpleType name="sql">
+        <restriction base="string">
+            <minLength value="1"/>
+            <maxLength value="100"/>
+        </restriction>
+    </simpleType>
+
+</schema>
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/jms.xsd
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/jms.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/jms.xsd	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema" 
+xmlns:common="http://www.jboss.org/soa/endpoint/common"
+xmlns:jms="http://www.jboss.org/soa/endpoint/protocol/jms"  
+targetNamespace="http://www.jboss.org/soa/endpoint/protocol/jms" elementFormDefault="unqualified" attributeFormDefault="unqualified">
+	<annotation>
+		<documentation>
+			   JBoss Inc JMS SOA Schema Definition Copyright 2006
+		  </documentation>
+	</annotation>
+		
+	<!-- import common -->
+	<import namespace="http://www.jboss.org/soa/endpoint/common" schemaLocation="common.xsd" />
+	<element name="jms">
+	<complexType>
+		<sequence>
+            <!-- Core -->
+            <element name="service-name" type="common:service-name"/>
+			<element name="service-type" type="common:service-type"/>
+			<element name="gateway-type" type="common:gateway-type" />
+            <!-- jms related -->
+            <element name="spec-version" type="jms:specification-version" />
+            <element name="destination-type" type="jms:destination-type" />
+            <element name="destination-name" type="string"/>
+            <element name="connection-factory" type="string"/>
+        </sequence>
+	</complexType>
+    </element>
+
+    <!-- JMS Specific Definitions -->
+    <simpleType name="specification-version">
+		<restriction base="string">
+			<enumeration value="1.1"/>
+			<enumeration value="1.0.2b"/>					
+		 </restriction>
+	</simpleType>		
+	
+	<simpleType name="destination-type">
+		<restriction base="string">
+			<enumeration value="queue"/>
+			<enumeration value="topic"/>					
+		</restriction>
+	</simpleType>	
+
+
+
+</schema>
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/plugin.xsd
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/plugin.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/plugin.xsd	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+<plugins>
+   <plugin-set>
+      <set-name></set-name>
+      <plugin-name></plugin-name>
+   </plugin-set>
+
+   <plugin>
+      <name></name>
+      <class></class>
+      <parameters>
+         <name></name>
+         <value></value>
+         ...
+         ...
+      </parameters>
+   </plugin>
+</plugins>
+-->
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/routing.xsd
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/routing.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/routing.xsd	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+<routing>
+        <route>
+            <source></source>
+            <destination>
+               <type></type>
+               <name></name>
+            </destination>
+        </route>
+</routing>        
+-->
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/ws-addr.xsd
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/ws-addr.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/common/ws-addr.xsd	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE xs:schema PUBLIC "-//W3C//DTD XMLSCHEMA 200102//EN" "http://www.w3.org/2001/XMLSchema.dtd">
+<!--
+    W3C XML Schema defined in the Web Services Addressing 1.0 specification
+    http://www.w3.org/TR/ws-addr-core
+
+   Copyright © 2005 World Wide Web Consortium,
+
+   (Massachusetts Institute of Technology, European Research Consortium for
+   Informatics and Mathematics, Keio University). All Rights Reserved. This
+   work is distributed under the W3C® Software License [1] in the hope that
+   it will be useful, but WITHOUT ANY WARRANTY; without even the implied
+   warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+   [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231   
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.w3.org/2005/08/addressing" targetNamespace="http://www.w3.org/2005/08/addressing" elementFormDefault="qualified" attributeFormDefault="unqualified" blockDefault="#all">
+	<!-- Constructs from the WS-Addressing Core -->
+	<xs:element name="EndpointReference" type="tns:EndpointReferenceType"/>
+	<xs:complexType name="EndpointReferenceType" mixed="false">
+		<xs:sequence>
+			<xs:element name="Address" type="tns:AttributedURIType"/>
+			<xs:element ref="tns:ReferenceParameters" minOccurs="0"/>
+			<xs:element ref="tns:Metadata" minOccurs="0"/>
+			<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+		</xs:sequence>
+		<xs:anyAttribute namespace="##other" processContents="lax"/>
+	</xs:complexType>
+	<xs:element name="ReferenceParameters" type="tns:ReferenceParametersType"/>
+	<xs:complexType name="ReferenceParametersType" mixed="false">
+		<xs:sequence>
+			<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+		</xs:sequence>
+		<xs:anyAttribute namespace="##other" processContents="lax"/>
+	</xs:complexType>
+	<xs:element name="Metadata" type="tns:MetadataType"/>
+	<xs:complexType name="MetadataType" mixed="false">
+		<xs:sequence>
+			<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+		</xs:sequence>
+		<xs:anyAttribute namespace="##other" processContents="lax"/>
+	</xs:complexType>
+	<xs:element name="MessageID" type="tns:AttributedURIType"/>
+	<xs:element name="RelatesTo" type="tns:RelatesToType"/>
+	<xs:complexType name="RelatesToType" mixed="false">
+		<xs:simpleContent>
+			<xs:extension base="xs:anyURI">
+				<xs:attribute name="RelationshipType" type="tns:RelationshipTypeOpenEnum" use="optional" default="http://www.w3.org/2005/08/addressing/reply"/>
+				<xs:anyAttribute namespace="##other" processContents="lax"/>
+			</xs:extension>
+		</xs:simpleContent>
+	</xs:complexType>
+	<xs:simpleType name="RelationshipTypeOpenEnum">
+		<xs:union memberTypes="tns:RelationshipType xs:anyURI"/>
+	</xs:simpleType>
+	<xs:simpleType name="RelationshipType">
+		<xs:restriction base="xs:anyURI">
+			<xs:enumeration value="http://www.w3.org/2005/08/addressing/reply"/>
+		</xs:restriction>
+	</xs:simpleType>
+	<xs:element name="ReplyTo" type="tns:EndpointReferenceType"/>
+	<xs:element name="From" type="tns:EndpointReferenceType"/>
+	<xs:element name="FaultTo" type="tns:EndpointReferenceType"/>
+	<xs:element name="To" type="tns:AttributedURIType"/>
+	<xs:element name="Action" type="tns:AttributedURIType"/>
+	<xs:complexType name="AttributedURIType" mixed="false">
+		<xs:simpleContent>
+			<xs:extension base="xs:anyURI">
+				<xs:anyAttribute namespace="##other" processContents="lax"/>
+			</xs:extension>
+		</xs:simpleContent>
+	</xs:complexType>
+	<!-- Constructs from the WS-Addressing SOAP binding -->
+	<xs:attribute name="IsReferenceParameter" type="xs:boolean"/>
+	<xs:simpleType name="FaultCodesOpenEnumType">
+		<xs:union memberTypes="tns:FaultCodesType xs:QName"/>
+	</xs:simpleType>
+	<xs:simpleType name="FaultCodesType">
+		<xs:restriction base="xs:QName">
+			<xs:enumeration value="tns:InvalidAddressingHeader"/>
+			<xs:enumeration value="tns:InvalidAddress"/>
+			<xs:enumeration value="tns:InvalidEPR"/>
+			<xs:enumeration value="tns:InvalidCardinality"/>
+			<xs:enumeration value="tns:MissingAddressInEPR"/>
+			<xs:enumeration value="tns:DuplicateMessageID"/>
+			<xs:enumeration value="tns:ActionMismatch"/>
+			<xs:enumeration value="tns:MessageAddressingHeaderRequired"/>
+			<xs:enumeration value="tns:DestinationUnreachable"/>
+			<xs:enumeration value="tns:ActionNotSupported"/>
+			<xs:enumeration value="tns:EndpointUnavailable"/>
+		</xs:restriction>
+	</xs:simpleType>
+	<xs:element name="RetryAfter" type="tns:AttributedUnsignedLongType"/>
+	<xs:complexType name="AttributedUnsignedLongType" mixed="false">
+		<xs:simpleContent>
+			<xs:extension base="xs:unsignedLong">
+				<xs:anyAttribute namespace="##other" processContents="lax"/>
+			</xs:extension>
+		</xs:simpleContent>
+	</xs:complexType>
+	<xs:element name="ProblemHeaderQName" type="tns:AttributedQNameType"/>
+	<xs:complexType name="AttributedQNameType" mixed="false">
+		<xs:simpleContent>
+			<xs:extension base="xs:QName">
+				<xs:anyAttribute namespace="##other" processContents="lax"/>
+			</xs:extension>
+		</xs:simpleContent>
+	</xs:complexType>
+	<xs:element name="ProblemIRI" type="tns:AttributedURIType"/>
+	<xs:element name="ProblemAction" type="tns:ProblemActionType"/>
+	<xs:complexType name="ProblemActionType" mixed="false">
+		<xs:sequence>
+			<xs:element ref="tns:Action" minOccurs="0"/>
+			<xs:element name="SoapAction" type="xs:anyURI" minOccurs="0"/>
+		</xs:sequence>
+		<xs:anyAttribute namespace="##other" processContents="lax"/>
+	</xs:complexType>
+</xs:schema>

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/email-epr.xsd
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/email-epr.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/email-epr.xsd	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:email="http://www.jboss.org/soa/endpoint/protocol/email"  targetNamespace="http://www.jboss.org/soa/endpoint/email-epr" elementFormDefault="qualified" attributeFormDefault="unqualified">
+    <import namespace="http://www.w3.org/2005/08/addressing" schemaLocation="common/ws-addr.xsd"/>
+	<import namespace="http://www.jboss.org/soa/endpoint/protocol/email" schemaLocation="common/email.xsd"/>
+	<element name="email-epr">
+      <complexType>
+       <sequence>
+        <element ref="wsa:EndpointReference"/>
+        <element ref="email:email"/>
+        </sequence>
+       <attribute name="version" type="string" use="required"/>
+      </complexType>
+  </element>
+</schema>
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/ftp-epr.xsd
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/ftp-epr.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/ftp-epr.xsd	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:ftp="http://www.jboss.org/soa/endpoint/protocol/ftp"  targetNamespace="http://www.jboss.org/soa/endpoint/ftp-epr" elementFormDefault="qualified" attributeFormDefault="unqualified">
+    <import namespace="http://www.w3.org/2005/08/addressing" schemaLocation="common/ws-addr.xsd"/>
+	<import namespace="http://www.jboss.org/soa/endpoint/protocol/ftp" schemaLocation="common/ftp.xsd"/>
+	<element name="ftp-epr">
+      <complexType>
+       <sequence>
+        <element ref="wsa:EndpointReference"/>
+        <element ref="ftp:ftp"/>
+        </sequence>
+       <attribute name="version" type="string" use="required"/>
+      </complexType>
+  </element>
+</schema>
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/jdbc-epr.xsd
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/jdbc-epr.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/jdbc-epr.xsd	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:jdbc="http://www.jboss.org/soa/endpoint/protocol/jdbc"  targetNamespace="http://www.jboss.org/soa/endpoint/jdbc-epr" elementFormDefault="qualified" attributeFormDefault="unqualified">
+    <import namespace="http://www.w3.org/2005/08/addressing" schemaLocation="common/ws-addr.xsd"/>
+	<import namespace="http://www.jboss.org/soa/endpoint/protocol/jdbc" schemaLocation="common/jdbc.xsd"/>
+	<element name="jdbc-epr">
+      <complexType>
+       <sequence>
+        <element ref="wsa:EndpointReference"/>
+        <element ref="jdbc:jdbc"/>
+        </sequence>
+       <attribute name="version" type="string" use="required"/>
+      </complexType>
+  </element>
+</schema>
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/jms-epr.xsd
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/jms-epr.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/jms-epr.xsd	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:jms="http://www.jboss.org/soa/endpoint/protocol/jms"  targetNamespace="http://www.jboss.org/soa/endpoint/jms-epr" elementFormDefault="qualified" attributeFormDefault="unqualified">
+    <import namespace="http://www.w3.org/2005/08/addressing" schemaLocation="common/ws-addr.xsd"/>
+	<import namespace="http://www.jboss.org/soa/endpoint/protocol/jms" schemaLocation="common/jms.xsd"/>
+	<element name="jms-epr">
+      <complexType>
+       <sequence>
+        <element ref="wsa:EndpointReference"/>
+        <element ref="jms:jms"/>
+        </sequence>
+       <attribute name="version" type="string" use="required"/>
+      </complexType>
+  </element>
+</schema>
+

Added: labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/message.xsd
===================================================================
--- labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/message.xsd	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/etc/schemas/xml/message.xsd	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Work in progress. Treat it as such. -->
+<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:wsa="common/ws-addr.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema">
+	<xs:complexType name="Header">
+		<xs:sequence>
+			<xs:element ref="wsa:To" maxOccurs="1"/>
+			<xs:element ref="wsa:From" maxOccurs="1"/>
+			<xs:element ref="wsa:ReplyTo" maxOccurs="1"/>
+			<xs:element ref="wsa:Action" minOccurs="1" maxOccurs="1"/>
+			<xs:element ref="wsa:MessageID" maxOccurs="1"/>
+			<xs:element ref="wsa:RelatesTo" maxOccurs="1"/>
+			<xs:element ref="wsa:ReferenceParameters"/>
+		</xs:sequence>
+	</xs:complexType>
+	
+	<xs:complexType name="Context"/>
+	
+	<xs:complexType name="Body">
+		<xs:sequence>
+			<xs:element name="Bytes" type="xs:base64Binary" maxOccurs="1"/>
+			<xs:element type="xs:base64binary"/>
+		</xs:sequence>
+	</xs:complexType>
+	
+	<xs:complexType name="Attachment">
+		<xs:sequence>
+			<xs:element name="Named" type="xs:base64Binary"/>
+			<xs:element name="UnNamed" type="xs:base64Binary"/>
+		</xs:sequence>
+	</xs:complexType>
+
+	<xs:complexType name="Fault">
+		<xs:sequence>
+			<xs:element name="Code" type="xs:anyURI" minOccurs="1" maxOccurs="1"/>
+			<xs:element name="Reason" type="xs:string" maxOccurs="1"/>
+		</xs:sequence>
+	</xs:complexType>
+
+	<xs:complexType name="Properties">
+		<xs:sequence>
+			<xs:element type="xs:base64Binary"/>
+		</xs:sequence>
+	</xs:complexType>
+
+	<xs:complexType name="Envelope">
+		<xs:attribute ref="Header" use="required"/>
+		<xs:attribute ref="Context" use="required"/>
+		<xs:attribute ref="Body" use="required"/>
+		<xs:attribute ref="Attachment" use="optional"/>
+		<xs:attribute ref="Properties" use="optional"/>
+		<xs:attribute ref="Fault" use="optional"/>
+	</xs:complexType>	
+</xs:schema>
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/log4j.properties
===================================================================
--- labs/jbossesb/workspace/rearch2/core/log4j.properties	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/log4j.properties	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,37 @@
+#
+# JBoss, Home of Professional Open Source
+# Copyright 2006, Red Hat Middleware LLC, and individual contributors 
+# as indicated by the @author tags. 
+# 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,
+# @author JBoss Inc.
+#
+# Default LOG4J Configuration
+# Arjuna Technologies Ltd.
+# $Id: log4j.properties 2342 2006-03-30 13:06:17Z  $
+
+log4j.category.com.arjuna=INFO, default, stdout
+
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
+log4j.appender.stdout.Threshold=INFO
+
+log4j.appender.default=org.apache.log4j.RollingFileAppender
+log4j.appender.default.File=transaction.log
+log4j.appender.default.MaxFileSize=500KB
+log4j.appender.default.MaxBackupIndex=2
+log4j.appender.default.layout=org.apache.log4j.PatternLayout
+log4j.appender.default.layout.ConversionPattern=%d [%t] %-5p %c - %m%n


Property changes on: labs/jbossesb/workspace/rearch2/core/log4j.properties
___________________________________________________________________
Name: svn:executable
   + *

Added: labs/jbossesb/workspace/rearch2/core/setup.sh
===================================================================
--- labs/jbossesb/workspace/rearch2/core/setup.sh	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/setup.sh	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1 @@
+../../foo/product/lib/ext/jbossts-common.jar:../../foo/product/lib/ext/jbossall-client.jar:../../foo/product/lib/ext/jboss-system.jar:../../foo/product/lib/ext/commons-logging.jar:../../foo/product/lib/ext/log4j.jar:/users/marklittle/Desktop/JBossRemoting-2_0_0_GA/lib/jboss-remoting-core.jar:target/test-classes/:.:target/classes:
\ No newline at end of file

Modified: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/api/remoting/SenderPluginImpl.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/api/remoting/SenderPluginImpl.java	2007-05-12 08:12:41 UTC (rev 11838)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/api/remoting/SenderPluginImpl.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -1,7 +1,7 @@
 package org.jboss.internal.soa.esb.api.remoting;
 
 import org.jboss.soa.esb.api.Sender;
-import org.jboss.soa.esb.api.conf.SenderPlugin;
+import org.jboss.soa.esb.api.plugin.SenderPlugin;
 
 /*
  * JBoss, Home of Professional Open Source

Modified: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/api/remoting/TwoWaySenderPluginImpl.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/api/remoting/TwoWaySenderPluginImpl.java	2007-05-12 08:12:41 UTC (rev 11838)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/api/remoting/TwoWaySenderPluginImpl.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -1,7 +1,7 @@
 package org.jboss.internal.soa.esb.api.remoting;
 
 import org.jboss.soa.esb.api.Sender;
-import org.jboss.soa.esb.api.conf.SenderPlugin;
+import org.jboss.soa.esb.api.plugin.SenderPlugin;
 
 /*
  * JBoss, Home of Professional Open Source

Added: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/infrastructure/DispatcherManager.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/infrastructure/DispatcherManager.java	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/infrastructure/DispatcherManager.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,61 @@
+package org.jboss.internal.soa.esb.infrastructure;
+
+import java.net.URI;
+
+import org.jboss.soa.esb.infrastructure.Contract;
+
+/*
+ * 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,
+ * @author mark.little at jboss.com
+ */
+
+/**
+ * Associate Contract instances with Dispatchers. The Contract
+ * is an interface with no operations so that implementations
+ * have complete control. Typically a Contract instance will be
+ * closely tied to the Dispatcher implementation that it controls.
+ * It should contain information about how to configure the Dispatcher
+ * and which Dispatcher to create next in the hierarchy.
+ */
+
+/*
+ * The information about dispatcher-to-contract should be pulled from
+ * an appropriate bus-configuration file (xml).
+ */
+
+/*
+ * Creating a hierarchy involves specifying the following information in
+ * the contract for a Service:
+ * 
+ * Application service logic: 1..1
+ * Dispatcher URI + configuration information (Contract): 0..*
+ * Receiver transport: 1..1
+ * 
+ * 
+ */
+
+public class DispatcherManager
+{
+	public void addContract (Contract ct, URI identifier)
+	{
+		
+	}
+	
+	
+}

Modified: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/spi/remoting/ReceiverPluginImpl.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/spi/remoting/ReceiverPluginImpl.java	2007-05-12 08:12:41 UTC (rev 11838)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/spi/remoting/ReceiverPluginImpl.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -5,7 +5,7 @@
 import org.jboss.soa.esb.addressing.EPR;
 import org.jboss.soa.esb.spi.Receiver;
 import org.jboss.soa.esb.spi.Service;
-import org.jboss.soa.esb.spi.conf.ReceiverPlugin;
+import org.jboss.soa.esb.spi.plugin.ReceiverPlugin;
 
 /*
  * JBoss, Home of Professional Open Source

Modified: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/spi/remoting/TwoWayReceiverPluginImpl.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/spi/remoting/TwoWayReceiverPluginImpl.java	2007-05-12 08:12:41 UTC (rev 11838)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/internal/soa/esb/spi/remoting/TwoWayReceiverPluginImpl.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -3,7 +3,7 @@
 import org.jboss.soa.esb.addressing.EPR;
 import org.jboss.soa.esb.spi.Receiver;
 import org.jboss.soa.esb.spi.Service;
-import org.jboss.soa.esb.spi.conf.ReceiverPlugin;
+import org.jboss.soa.esb.spi.plugin.ReceiverPlugin;
 
 /*
  * JBoss, Home of Professional Open Source

Modified: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/FTPEpr.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/FTPEpr.java	2007-05-12 08:12:41 UTC (rev 11838)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/FTPEpr.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -26,10 +26,8 @@
  * This class represents the endpoint reference for services.
  */
 
-import java.net.MalformedURLException;
 import java.net.URI;
 import java.net.URISyntaxException;
-import java.net.URL;
 
 import org.jboss.soa.esb.addressing.EPR;
 import org.jboss.soa.esb.addressing.PortReference;
@@ -99,9 +97,9 @@
 		}
 	}
 			
-	public FTPEpr (URL url) throws URISyntaxException
+	public FTPEpr (URI url) throws URISyntaxException
 	{
-		super(new URI(url.toString()));
+		super(url);
 	}
 	
 	public FTPEpr (String url) throws URISyntaxException
@@ -115,7 +113,7 @@
 	 * @param url the address.
 	 */
 	
-	public final void setURL (URL url)
+	public final void setURL (URI url)
 	{
 		super.setAddr(new PortReference(url.toString()));
 	}
@@ -127,9 +125,9 @@
 	 * @throws URISyntaxException thrown if the address is invalid.
 	 */
 	
-	public final URL getURL () throws MalformedURLException, URISyntaxException
+	public final URI getURI () throws URISyntaxException
 	{
-		return new URL(super.getAddr().getAddress());
+		return new URI(super.getAddr().getAddress());
 	}
 
 	/**

Modified: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/FileEpr.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/FileEpr.java	2007-05-12 08:12:41 UTC (rev 11838)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/FileEpr.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -26,10 +26,8 @@
  * This class represents the endpoint reference for services.
  */
 
-import java.net.MalformedURLException;
 import java.net.URI;
 import java.net.URISyntaxException;
-import java.net.URL;
 
 import org.jboss.soa.esb.addressing.EPR;
 import org.jboss.soa.esb.addressing.PortReference;
@@ -125,9 +123,9 @@
 		}
 	}
 
-	public FileEpr (URL url) throws URISyntaxException
+	public FileEpr (URI url) throws URISyntaxException
 	{
-		super(new URI(url.toString()));
+		super(url);
 	}
 	
 	public FileEpr (String url) throws URISyntaxException
@@ -141,7 +139,7 @@
 	 * @param url the address.
 	 */
 	
-	public void setURL (URL url)
+	public void setURI (URI url)
 	{
 		super.setAddr(new PortReference(url.toString()));
 	}
@@ -153,9 +151,9 @@
 	 * @throws URISyntaxException thrown if the address is invalid.
 	 */
 	
-	public URL getURL () throws MalformedURLException, URISyntaxException
+	public URI getURI () throws URISyntaxException
 	{
-		return new URL(super.getAddr().getAddress());
+		return new URI(super.getAddr().getAddress());
 	}
 
 	/**
@@ -397,11 +395,6 @@
 	{
 	    return _type;
 	}
-	
-	protected FileEpr (URI uri)
-	{
-		super(uri);
-	}
 
 	private boolean inputSet = false;
 	private boolean workSet = false;

Modified: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/HTTPEpr.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/HTTPEpr.java	2007-05-12 08:12:41 UTC (rev 11838)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/HTTPEpr.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -26,10 +26,8 @@
  * This class represents the endpoint reference for services.
  */
 
-import java.net.MalformedURLException;
 import java.net.URI;
 import java.net.URISyntaxException;
-import java.net.URL;
 
 import org.jboss.soa.esb.addressing.EPR;
 import org.jboss.soa.esb.addressing.PortReference;
@@ -55,9 +53,9 @@
 		copy(epr);
 	}
 	
-	public HTTPEpr (URL url) throws URISyntaxException
+	public HTTPEpr (URI url) throws URISyntaxException
 	{
-		super(new URI(url.toString()));
+		super(nurl);
 	}
 	
 	public HTTPEpr (String url) throws URISyntaxException
@@ -71,7 +69,7 @@
 	 * @param url the address.
 	 */
 	
-	public final void setURL (URL url)
+	public final void setURI (URI url)
 	{
 		super.setAddr(new PortReference(url.toString()));
 	}
@@ -83,9 +81,9 @@
 	 * @throws URISyntaxException thrown if the address is invalid.
 	 */
 	
-	public final URL getURL () throws MalformedURLException, URISyntaxException
+	public final URI getURI () throws URISyntaxException
 	{
-		return new URL(super.getAddr().getAddress());
+		return new URI(super.getAddr().getAddress());
 	}
 	
 	public static final URI type ()

Modified: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/SFTPEpr.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/SFTPEpr.java	2007-05-12 08:12:41 UTC (rev 11838)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/addressing/eprs/SFTPEpr.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -82,23 +82,23 @@
 		}
 	}
 
-	public SFTPEpr(URL url) throws URISyntaxException
+	public SFTPEpr(URI url) throws URISyntaxException
 	{
 		super(url);
 	}
 
-	public SFTPEpr(URL url, URL cert) throws URISyntaxException
+	public SFTPEpr(URI url, URI cert) throws URISyntaxException
 	{
 		super(url);
 		
-		setCertificateURL(cert);
+		setCertificateURI(cert);
 	}
 
-	public SFTPEpr(String url, String cert) throws URISyntaxException, MalformedURLException
+	public SFTPEpr(String url, String cert) throws URISyntaxException
 	{
 		super(url);	
 
-		setCertificateURL(new URL(cert));
+		setCertificateURI(new URI(cert));
 	}
 
 	/**
@@ -110,7 +110,7 @@
 	 *             thrown if this EPR is malformed.
 	 */
 
-	public final void setCertificateURL(URL cert) throws URISyntaxException
+	public final void setCertificateURI (URI cert) throws URISyntaxException
 	{
 		if (cert == null)
 			throw new IllegalArgumentException();
@@ -128,13 +128,12 @@
 	 *             thrown if this EPR is malformed.
 	 */
 
-	public final URL getCertificateURL () throws URISyntaxException,
-			MalformedURLException
+	public final URI getCertificateURI () throws URISyntaxException
 	{
 		String cert = getAddr().getExtensionValue(CERTIFICATE_TAG);
 
 		if (cert != null)
-			return new URL(cert);
+			return new URI(cert);
 		else
 			return null;
 	}

Modified: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/SenderFactory.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/SenderFactory.java	2007-05-12 08:12:41 UTC (rev 11838)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/SenderFactory.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -9,7 +9,7 @@
 import org.jboss.internal.soa.esb.api.remoting.TwoWaySenderPluginImpl;
 import org.jboss.soa.esb.ProtocolNotSupportedException;
 import org.jboss.soa.esb.addressing.EPR;
-import org.jboss.soa.esb.api.conf.SenderPlugin;
+import org.jboss.soa.esb.api.plugin.SenderPlugin;
 import org.jboss.soa.esb.common.ModulePropertyManager;
 import org.jboss.soa.esb.common.Protocols;
 

Copied: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/plugin (from rev 10135, labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/conf)

Deleted: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/plugin/SenderPlugin.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/conf/SenderPlugin.java	2007-03-12 21:34:43 UTC (rev 10135)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/plugin/SenderPlugin.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -1,30 +0,0 @@
-package org.jboss.soa.esb.api.conf;
-
-import org.jboss.soa.esb.api.Sender;
-
-/*
- * 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,
- * @author mark.little at jboss.com
- */
-
-
-public interface SenderPlugin
-{
-	public Sender create ();
-}

Copied: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/plugin/SenderPlugin.java (from rev 11838, labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/conf/SenderPlugin.java)
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/plugin/SenderPlugin.java	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/api/plugin/SenderPlugin.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,31 @@
+package org.jboss.soa.esb.api.plugin;
+
+import org.jboss.soa.esb.api.Sender;
+
+/*
+ * 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,
+ * @author mark.little at jboss.com
+ */
+
+
+public interface SenderPlugin
+{
+	public Sender create ();
+	public boolean isTwoWay ();
+}

Modified: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/common/ModulePropertyManager.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/common/ModulePropertyManager.java	2007-05-12 08:12:41 UTC (rev 11838)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/common/ModulePropertyManager.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -99,6 +99,8 @@
 	
 	public static final String SERVICE_PLUGIN_MODULE = "serviceplugin";
 
+	public static final String DISPATCHER_PLUGIN_MODULE = "dispatcherplugin";
+	
 	/**
 	 * Get the property manager responsible for the module component in the
 	 * file.

Modified: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/common/Protocols.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/common/Protocols.java	2007-05-12 08:12:41 UTC (rev 11838)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/common/Protocols.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -30,4 +30,5 @@
 	public static final String EMAIL = "email";
 	public static final String FTP = "ftp";
 	public static final String DB = "db";
+	public static final String DISPATCHER = "dispatcher";
 }
\ No newline at end of file

Added: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/Contract.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/Contract.java	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/Contract.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,33 @@
+package org.jboss.soa.esb.infrastructure;
+
+import java.net.URI;
+
+import org.jboss.soa.esb.message.Message;
+
+/*
+ * 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,
+ * @author mark.little at jboss.com
+ */
+
+public interface Contract
+{
+	public URI getIdentifier ();
+	
+    public Message dispatch (Message msg);
+}

Added: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/Dispatcher.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/Dispatcher.java	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/Dispatcher.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,47 @@
+package org.jboss.soa.esb.infrastructure;
+
+import java.net.URI;
+
+import org.jboss.soa.esb.message.Message;
+
+/*
+ * 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,
+ * @author mark.little at jboss.com
+ */
+
+/**
+ * Dispatchers form the input and output handlers for the various protocol
+ * stacks. However, they are also individually addressable entities. As such,
+ * it is possible to send a message to a dispatcher and for it to process the
+ * message: dispatchers are services.
+ */
+
+public interface Dispatcher
+{
+	public URI getIdentifier ();
+	
+    public Message dispatch (Message msg);
+    
+    /*
+     * TODO add methods for ordering dispatchers in list.
+     * insertBefore, insertAfter, replace etc.
+     */
+    
+    bar
+}

Added: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/DispatcherFactory.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/DispatcherFactory.java	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/DispatcherFactory.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,150 @@
+package org.jboss.soa.esb.infrastructure;
+
+/*
+ * 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,
+ * @author mark.little at jboss.com
+ */
+
+import java.net.URI;
+import java.util.Enumeration;
+import java.util.Hashtable;
+import java.util.Properties;
+
+import org.jboss.soa.esb.common.ModulePropertyManager;
+import org.jboss.soa.esb.infrastructure.plugin.DispatcherPlugin;
+
+import com.arjuna.common.util.propertyservice.PropertyManager;
+
+/**
+ * Given an instance of a contract definition, this factory will scan the list
+ * of registered dispatchers and return an instance which corresponds. That instance
+ * may be the root of a hierarchy, or a hierarchy may be built up dynamically as
+ * the message progresses through it.
+ * 
+ * @author Mark Little
+ *
+ */
+
+public class DispatcherFactory
+{
+	public static final String DISPATCHER_PLUGIN_NAME = "org.jboss.soa.esb.infrastructure.dispatcherPlugin";
+	
+	public static DispatcherFactory getFactory ()
+	{
+		return _theFactory;
+	}
+	
+	/**
+	 * Obtain a Dispatcher (hierarchy) given a contract definition, which specifies the
+	 * ultimate requirements for the service.
+	 * 
+	 * @param contract the contract definition.
+	 * @return a dispatcher instance (which may the root of a hierarchy).This may be a shared instance or a new instance
+	 * depending upon the requirements defined when the dispatcher name was registered with the
+	 * factory.
+	 */
+	
+	public Dispatcher getDispatcher (URI name)
+	{
+		if (name == null)
+			throw new IllegalArgumentException();
+		
+		DispatcherPlugin plugin = _registeredDispatchers.get(name);
+		
+		if (plugin == null)
+			throw new IllegalArgumentException("No registerd dispatcher for that identifier");
+		else
+			return plugin.create();
+	}
+	
+	/**
+	 * Obtain a Dispatcher (hierarchy) given a class name. The contract definition is implied
+	 * by the specific dispatcher requested.
+	 * 
+	 * @param className the name of the class to instantiate.
+	 * @return an instance of the requested dispatcher. This may be a shared instance or a new instance
+	 * depending upon the requirements defined when the dispatcher name was registered with the
+	 * factory.
+	 */
+	
+	/*
+	 * TODO should the classname not be part of the ContractDefinition?
+	 * TODO is this is a different type of contract? ContractDefinition was originally intended
+	 * to be the way in which to define the ultimate service to be used. However, this is
+	 * part of the service in a way!
+	 */
+	
+	public void addDispatcherPlugin (DispatcherPlugin plugin)
+	{
+		if (plugin == null)
+			throw new IllegalArgumentException();
+		
+		_registeredDispatchers.put(plugin.getIdentifier(), plugin);
+	}
+	
+    private static DispatcherFactory _theFactory = new DispatcherFactory();
+    private static Hashtable<URI, DispatcherPlugin> _registeredDispatchers;
+    
+    static
+	{
+		DispatcherFactory._registeredDispatchers = new Hashtable<URI, DispatcherPlugin>();
+		
+		try
+		{	
+			PropertyManager pm = ModulePropertyManager.getPropertyManager(ModulePropertyManager.DISPATCHER_PLUGIN_MODULE);
+			Properties props = pm.getProperties();
+			
+			if (!props.isEmpty())
+			{
+				Enumeration keys = props.elements();
+				
+				while (keys.hasMoreElements())
+				{
+					String key = (String) keys.nextElement();
+					
+					/*
+					 * Find properties with the right attribute name.
+					 */
+					
+					if (key.startsWith(DispatcherFactory.DISPATCHER_PLUGIN_NAME))
+					{
+						/*
+						 * Strip off the attribute name to get the protocol.
+						 */
+						
+						URI protocol = new URI(key.substring(DISPATCHER_PLUGIN_NAME.length()));
+						String pluginClassName = (String) props.get(key);
+						Class pluginClass = Thread.currentThread().getContextClassLoader().loadClass(pluginClassName);
+						DispatcherPlugin plugin = (DispatcherPlugin) pluginClass.newInstance();
+						
+						DispatcherFactory._registeredDispatchers.put(protocol, plugin);
+					}
+				}
+				
+				/*
+				 * Add the default implementations.
+				 */
+			}
+		}
+		catch (Throwable ex)
+		{
+			throw new ExceptionInInitializerError(ex.toString());
+		}
+	}
+}

Added: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/plugin/DispatcherPlugin.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/plugin/DispatcherPlugin.java	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/infrastructure/plugin/DispatcherPlugin.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,34 @@
+package org.jboss.soa.esb.infrastructure.plugin;
+
+import java.net.URI;
+
+import org.jboss.soa.esb.infrastructure.Contract;
+import org.jboss.soa.esb.infrastructure.Dispatcher;
+
+/*
+ * 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,
+ * @author mark.little at jboss.com
+ */
+
+public interface DispatcherPlugin
+{
+	public Dispatcher create (Contract ct);
+	
+	public URI getIdentifier ();
+}

Modified: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/ReceiverFactory.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/ReceiverFactory.java	2007-05-12 08:12:41 UTC (rev 11838)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/ReceiverFactory.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -11,7 +11,7 @@
 import org.jboss.soa.esb.addressing.EPR;
 import org.jboss.soa.esb.common.ModulePropertyManager;
 import org.jboss.soa.esb.common.Protocols;
-import org.jboss.soa.esb.spi.conf.ReceiverPlugin;
+import org.jboss.soa.esb.spi.plugin.ReceiverPlugin;
 
 import com.arjuna.common.util.propertyservice.PropertyManager;
 

Copied: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/plugin (from rev 10135, labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/conf)

Deleted: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/plugin/ReceiverPlugin.java
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/conf/ReceiverPlugin.java	2007-03-12 21:34:43 UTC (rev 10135)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/plugin/ReceiverPlugin.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -1,32 +0,0 @@
-package org.jboss.soa.esb.spi.conf;
-
-import org.jboss.soa.esb.addressing.EPR;
-import org.jboss.soa.esb.spi.Receiver;
-import org.jboss.soa.esb.spi.Service;
-
-/*
- * 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,
- * @author mark.little at jboss.com
- */
-
-
-public interface ReceiverPlugin
-{
-	public Receiver create (EPR epr, Service svc);
-}

Copied: labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/plugin/ReceiverPlugin.java (from rev 11838, labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/conf/ReceiverPlugin.java)
===================================================================
--- labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/plugin/ReceiverPlugin.java	                        (rev 0)
+++ labs/jbossesb/workspace/rearch2/core/src/main/java/org/jboss/soa/esb/spi/plugin/ReceiverPlugin.java	2007-05-13 04:49:13 UTC (rev 11839)
@@ -0,0 +1,34 @@
+package org.jboss.soa.esb.spi.plugin;
+
+import org.jboss.soa.esb.addressing.EPR;
+import org.jboss.soa.esb.spi.Receiver;
+import org.jboss.soa.esb.spi.Service;
+
+/*
+ * 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,
+ * @author mark.little at jboss.com
+ */
+
+
+public interface ReceiverPlugin
+{
+	public Receiver create (EPR epr, Service svc);
+	
+	public boolean isTwoWay ();
+}




More information about the jboss-svn-commits mailing list