[jboss-svn-commits] JBL Code SVN: r19810 - in labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2: product/docs and 136 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu May 1 11:07:12 EDT 2008


Author: kevin.conner at jboss.com
Date: 2008-05-01 11:07:10 -0400 (Thu, 01 May 2008)
New Revision: 19810

Added:
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/lib/ext/commons-net-2.0.0-652071.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/lib/ext/jsch-0.1.38.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFtpsReplyToEpr.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultInVMReplyToEpr.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/InVMCourier.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/notification/PropertySubstituter.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/InVMRegistry.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/RegsitryEntry.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/FtpImpl.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/FtpsImpl.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/GETHttpMethodFactory.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpHeader.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpMethodFactory.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpResponse.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/POSTHttpMethodFactory.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/ResponseType.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FTPSEpr.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/InVMEpr.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/AbstractProtocolSocketFactoryBuilder.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/AuthSSLProtocolSocketFactoryBuilder.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/ProtocolSocketFactoryBuilder.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/SelfSignedSSLProtocolSocketFactoryBuilder.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl/SSLUtil.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl/SelfSignedTrustManager.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/couriers/tests/InVMCourierUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/services/registry/InVMRegistryUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/services/registry/JAXRRegistryUnitTest.java.bak
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/util/FtpImplUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/FTPSUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/InVMUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/SFTPUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/InVMListenerUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/SetPayloadAction.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-01.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-02.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-03.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-04.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/jbossesb-properties-01.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/notification/PropertySubstituterUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/schedule/config-02.1.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/juddi-unittest.properties
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/HttpRouter-localhost-https-9433.properties
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/build.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/deployment.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbm-queue-service.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbmq-queue-service.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jboss-esb-template.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbossesb-service.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jndi.properties
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/readme.txt
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/client/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/client/HttpResponsePrinter.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/server/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/server/HttpRequestPrinter.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/test/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/test/SendJMSMessage.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/build.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/deployment.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jbm-queue-service.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jbmq-queue-service.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jboss-esb.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jndi.properties
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/juddi.properties
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/listener.log
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/log4j.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/readme.txt
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm/test/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm/test/SendJMSMessage.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/antlr-2.7.2.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/freemarker-2.3.9.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/groovy-all-1.0.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-commons-1.0.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-edisax-0.3.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-edisax-model-0.3.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-magger-0.1.3.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-core-1.0.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-css-1.0.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-csv-1.0.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-edi-1.0.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-javabean-1.0.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-misc-1.0.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-routing-1.0.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-scripting-1.0.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-servlet-1.0.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-templating-1.0.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-tinak-0.8.1.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/mvel-1.2.24-java1.5.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/nekohtml-0.9.5.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/ognl-2.6.9.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/opencsv-1.8.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/stringtemplate-2.2.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/xalan-2.7.0.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/xbean-2.2.0.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/xml-apis-1.0.b2.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/xmlbeans-jsr173-api-2.0-dev.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/xpp3_min-1.1.3.4.O.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks/SmooksAction.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SmooksActionUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SourceResultUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person1.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person2.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/person.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/smooks-config.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-esb.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-01.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-02.xml
Removed:
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/lib/ext/edtftpj-1.5.4.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/lib/ext/jsch-0.1.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/EdtFtpImpl.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/GETHttpMethodFactory.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpHeader.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpMethodFactory.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpResponse.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/POSTHttpMethodFactory.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/ResponseType.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/AbstractProtocolSocketFactoryBuilder.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/AuthSSLProtocolSocketFactoryBuilder.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/ProtocolSocketFactoryBuilder.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/SelfSignedSSLProtocolSocketFactoryBuilder.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl/SSLUtil.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl/SelfSignedTrustManager.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/util/EdtFtpImplUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/HttpRouter-localhost-https-9433.properties
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/build.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/deployment.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbm-queue-service.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbmq-queue-service.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jboss-esb-template.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbossesb-service.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jndi.properties
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/readme.txt
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/client/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/client/HttpResponsePrinter.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/server/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/server/HttpRequestPrinter.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/test/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/test/SendJMSMessage.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/build.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/deployment.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jbm-queue-service.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jbmq-queue-service.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jboss-esb.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jndi.properties
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/juddi.properties
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/listener.log
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/log4j.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/readme.txt
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm/test/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm/test/SendJMSMessage.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/freemarker-2.3.1.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-commons-0.9.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-edisax-0.2.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-core-0.9.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-csv-0.2.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-edi-0.2.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-javabean-0.3.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-misc-0.2.1.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-scripting-0.1.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-templating-0.3.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks/SmooksAction.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SmooksActionUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SourceResultUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person1.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person2.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/person.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/smooks-config.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-esb.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-01.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-02.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/qa/lib/ext/edtftpj-pro.jar
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/qa/lib/ext/license.jar
Modified:
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/build-distr.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/docs/MessageActionGuide.odt
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/docs/MessageActionGuide.pdf
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/docs/ProgrammersGuide.odt
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/etc/schemas/validation/build.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/etc/schemas/xml/jbossesb-1.0.1.xsd
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/etc/test/resources/jbossesb-unittest-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/install/Deployment.txt
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/install/conf/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/install/tomcat/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/lib/Licenses.txt
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/build.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFileReplyToEpr.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFtpReplyToEpr.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultSftpReplyToEpr.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/helpers/EPRHelper.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/FileCourier.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/TwoWayCourierImpl.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/FtpFileHandler.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/LocalFileHandler.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/message/filter/MetaDataFilter.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/JAXRConnectionFactory.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/JAXRRegistryImpl.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/SecureFtpImpl.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/AbstractRouter.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/HttpRouter.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/EPR.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FTPEpr.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FileEpr.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/HTTPEpr.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/SFTPEpr.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/util/DefaultReplyTo.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/common/Environment.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/common/ModulePropertyManager.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/couriers/CourierFactory.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/dom/YADOMUtil.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/configurators/HttpProtocol.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerUtil.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/ESBAwareGenerator.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/Generator.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/ScheduleProviderFactory.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/FtpListenerMapper.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/JbrListenerMapper.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/MapperUtil.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/AbstractFileGateway.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/JBossRemotingGatewayListener.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/notification/NotifyFTP.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/notification/NotifyFiles.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/notification/NotifySqlTable.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/schedule/ScheduleProvider.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/services/registry/RegistryFactory.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/FtpClientUtil.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/RemoteFileSystem.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/RemoteFileSystemFactory.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/build.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/couriers/tests/CourierIntegrationTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/couriers/tests/FileCourierUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/services/registry/JAXRRegistryUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/actions/aggregation/JBESB_1201_UnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/actions/aggregation/JBESB_1204_1331_UnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/actions/aggregation/Nested_Splits_UnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/eprs/tests/DefaultFileReplyToEprUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/eprs/tests/DefaultFtpReplyToEprIntegrationTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/FTPUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/HTTPUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerBaseTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerFileUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerJDBCUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerJMSXntegrationTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/RegistryUtilUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ScheduledListenerUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/message/tests/SerializedMessageUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/message/tests/XMLMessageUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/notification/NotifyFilesUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/notification/NotifySqlTableUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/schedule/SchedulingUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/ESBConfigUtil.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/TestEnvironmentUtil.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/test/ESBConfigUtilUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/aggregator/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/bpm_orchestration1/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/bpm_orchestration2/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/bpm_orchestration3/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/business_rules_service/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/business_service/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/custom_action/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/deadletter/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/dynamic_router/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/exceptions_faults/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/fun_cbr/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/groovy_gateway/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_action/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_db_registration/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_file_action/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_file_notifier/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_ftp_action/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_hibernate_action/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_sql_action/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_topic_notifier/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_tx_sql_action/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/jms_secured/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/jms_transacted/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/load_generator/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/messagefilter/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/messagestore/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/native_client/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/recipient_list/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/scheduled_services/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/scripting_groovy/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/simple_cbr/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/spring_aop/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/spring_helloworld/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/spring_jpetstore/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/static_router/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_CSV2XML/jboss-esb.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_CSV2XML/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_EDI2XML_Groovy_XSLT/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2POJO/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2POJO2/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2XML_date_manipulation/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2XML_date_manipulation/smooks-res.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2XML_simple/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/two_servers/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/webservice_consumer1/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/webservice_consumer2/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/wiretap/jbossesb-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/base-project-build.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/jbossesb/src/test/java/org/jboss/soa/esb/persistence/tests/ScheduledRedeliveryUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/jbossesb/src/test/resources/jbossesb-unittest-properties.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/converters/SmooksTransformer.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soap/base-project-build.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/WebserviceContractPublisher.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/SOAPClientUnitTest.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soapui-client/build.xml
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/tools/console/src/org/jboss/soa/esb/admin/console/transform/SmooksUtils.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/tools/console/src/org/jboss/soa/esb/admin/console/transform/importexport/ResourceImportExport.java
   labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/tools/console/test/org/jboss/soa/esb/admin/console/transform/SmooksUtilsTest.java
Log:
Merged FP1 code

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/build-distr.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/build-distr.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/build-distr.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -105,7 +105,7 @@
             <fileset dir="${lib.ext.dir}"
                      includes="opencsv-*.jar,ognl-*.jar,groovy-*.jar,commons-lang-2.1.jar,stringtemplate-3.0.jar,antlr-2.7.6.jar"/>
             <!-- ftp -->
-            <fileset dir="${lib.ext.dir}" includes="edtftpj-*.jar,commons-io*.jar"/>
+            <fileset dir="${lib.ext.dir}" includes="commons-net-*.jar,commons-io*.jar jsch-0.1.38.jar"/>
             <!-- XStream jars - including woodstox for the StaxDriver -->
             <fileset dir="${lib.ext.dir}" includes="xstream-*.jar,wstx-lgpl-*.jar"/>
             <!-- JBossCache jars - including jgroups -->
@@ -114,6 +114,8 @@
         	<fileset dir="${lib.ext.dir}" includes="mvel*.jar"/>
             <!-- Quartz -->
             <fileset dir="${lib.ext.dir}" includes="quartz*.jar"/>
+            <!-- Commons SSL -->
+            <fileset dir="${lib.ext.dir}" includes="commons-ssl-*.jar"/>
         </copy>
     	<copy todir="${build.dir}/jbossesb.sar">
     		<fileset dir="${installation.files.dir}/jUDDI-registry" includes="juddi.war"/>

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/docs/MessageActionGuide.odt
===================================================================
(Binary files differ)

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/docs/MessageActionGuide.pdf
===================================================================
(Binary files differ)

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

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/etc/schemas/validation/build.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/etc/schemas/validation/build.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/etc/schemas/validation/build.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -113,6 +113,7 @@
         	<sysproperty key="log4j.configuration" value="log4j.xml"/>
             <sysproperty key="xml.base.dir" value="${basedir}/resources"/>
             <sysproperty key="xsd.base.dir" value="${basedir}/../schemas/xml"/>
+            <sysproperty key="jboss.esb.invm.scope.default" value="NONE"/>
         </junit>
         <junitreport>
             <fileset dir="${org.jboss.esb.etc.validation.junit.dir}">

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/etc/schemas/xml/jbossesb-1.0.1.xsd
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/etc/schemas/xml/jbossesb-1.0.1.xsd	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/etc/schemas/xml/jbossesb-1.0.1.xsd	2008-05-01 15:07:10 UTC (rev 19810)
@@ -188,29 +188,36 @@
 		<xsd:complexType>
 			<xsd:complexContent>
 				<xsd:extension base="jesb:schedule">
-					<xsd:attribute default="10" name="frequency"
-						type="xsd:long" use="optional">
+                    <xsd:attribute name="frequency" use="optional" type="xsd:long" default="10">
+                        <xsd:annotation>
+                            <xsd:documentation xml:lang="en">Schedule frequency.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+                    <xsd:attribute name="frequencyUnits" use="optional" type="jesb:frequency-unit" default="seconds">
+                        <xsd:annotation>
+                            <xsd:documentation xml:lang="en">Schedule frequency time units.</xsd:documentation>
+                        </xsd:annotation>
+                    </xsd:attribute>
+					<xsd:attribute default="-1" name="execCount" type="xsd:int" use="optional">
 						<xsd:annotation>
 							<xsd:documentation xml:lang="en">
-								Schedule frequency, in seconds.
+								Schedule execution count. -1 to execute indefinitely.
 							</xsd:documentation>
 						</xsd:annotation>
 					</xsd:attribute>
-					<xsd:attribute default="-1" name="execCount"
-						type="xsd:int" use="optional">
-						<xsd:annotation>
-							<xsd:documentation xml:lang="en">
-								Schedule execution count. -1 to execute
-								indefinitely.
-							</xsd:documentation>
-						</xsd:annotation>
-					</xsd:attribute>
 				</xsd:extension>
 			</xsd:complexContent>
 		</xsd:complexType>
 	</xsd:element>
 
-	<xsd:element name="cron-schedule"
+    <xsd:simpleType name="frequency-unit">
+        <xsd:restriction base="xsd:NMTOKEN">
+            <xsd:enumeration value="seconds"/>
+            <xsd:enumeration value="milliseconds"/>
+        </xsd:restriction>
+    </xsd:simpleType>
+    
+    <xsd:element name="cron-schedule"
 		substitutionGroup="jesb:schedule">
 		<xsd:complexType>
 			<xsd:complexContent>
@@ -254,7 +261,9 @@
 		</xsd:annotation>
 		<xsd:complexType>
 			<xsd:sequence>
-				<xsd:element maxOccurs="1" minOccurs="1"
+                <xsd:element maxOccurs="unbounded" minOccurs="0"
+                    ref="jesb:property" />
+				<xsd:element maxOccurs="1" minOccurs="0"
 					ref="jesb:listeners" />
 				<xsd:element maxOccurs="1" minOccurs="0"
 					ref="jesb:actions" />
@@ -287,10 +296,33 @@
 					</xsd:documentation>
 				</xsd:annotation>
 			</xsd:attribute>
+            <xsd:attribute name="invmScope" type="jesb:invmScope" use="optional">
+                <xsd:annotation>
+                    <xsd:documentation xml:lang="en">
+                        All services are locally invokable over an "in VM" transport.  Invokability
+                        can be scoped using this attribute.  An "invmScope" value of "NONE" means that
+                        the Service should not be locally invokable over the "in VM" transport.
+                        More fine grained scoping will be added in the future.
+                    </xsd:documentation>
+                </xsd:annotation>
+            </xsd:attribute>
 		</xsd:complexType>
 	</xsd:element>
 
-	<xsd:simpleType name="mepType">
+    <xsd:simpleType name="invmScope">
+        <xsd:restriction base="xsd:NMTOKEN">
+            <!-- Not invokable over InVM -->
+            <xsd:enumeration value="NONE" />
+
+            <!-- Invokable over InVM only from within the same/local deployment. -->
+            <!-- xsd:enumeration value="LOCAL" / -->
+
+            <!-- (DEFAULT) Invokable over InVM from within the same classloader scope. -->
+            <xsd:enumeration value="GLOBAL" />
+        </xsd:restriction>
+    </xsd:simpleType>
+
+    <xsd:simpleType name="mepType">
 		<xsd:restriction base="xsd:string">
 			<xsd:enumeration value="RequestResponse" />
 			<xsd:enumeration value="OneWay" />
@@ -1077,6 +1109,15 @@
 					</xsd:documentation>
 				</xsd:annotation>
 			</xsd:attribute>
+			<xsd:attribute name="certificate-name" type="xsd:string"
+				use="optional">
+				<xsd:annotation>
+					<xsd:documentation xml:lang="en">
+						The common name of a certificate, which can be needed
+						for secure protocols (sftp and ftps).
+					</xsd:documentation>
+				</xsd:annotation>
+			</xsd:attribute>
 			<xsd:attribute default="false" name="read-only"
 				type="xsd:boolean" use="optional">
 				<xsd:annotation>
@@ -1500,7 +1541,9 @@
 						<xsd:simpleType>
 							<xsd:restriction base="xsd:NMTOKEN">
 								<xsd:enumeration value="http" />
+                                <xsd:enumeration value="https" />
 								<xsd:enumeration value="socket" />
+                                <xsd:enumeration value="sslsocket" />
 							</xsd:restriction>
 						</xsd:simpleType>
 					</xsd:attribute>

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/etc/test/resources/jbossesb-unittest-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/etc/test/resources/jbossesb-unittest-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/etc/test/resources/jbossesb-unittest-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -35,6 +35,7 @@
 		<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"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">
     	<property name="org.jboss.soa.esb.registry.queryManagerURI" value="org.apache.juddi.registry.local.InquiryService#inquire"/>

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/install/Deployment.txt
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/install/Deployment.txt	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/install/Deployment.txt	2008-05-01 15:07:10 UTC (rev 19810)
@@ -23,7 +23,6 @@
 |                                  	|                              |
 | cglib                            	| 2.0-RC2 (full)               | http://cglib.sourceforge.net/
 | XStream                          	| 1.1.3                        | http://xstream.codehaus.org/
-| edtftpj                          	| 1.5.2                        | http://www.enterprisedt.com/products/edtftpj/download.html
 |                                  	|                              |
 | milyn-commons                    	| 0.9                          | http://milyn.codehaus.org/downloads
 | milyn-smooks-core                	| 0.9                          | http://milyn.codehaus.org/downloads

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/install/conf/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/install/conf/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/install/conf/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -35,6 +35,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.url" value="${jboss.bind.address}:1099"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
         <property name="org.jboss.soa.esb.loadbalancer.policy" value="org.jboss.soa.esb.listeners.ha.RoundRobin"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">
     	<property name="org.jboss.soa.esb.registry.queryManagerURI" value="org.apache.juddi.registry.local.InquiryService#inquire"/>

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/install/tomcat/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/install/tomcat/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/install/tomcat/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -35,6 +35,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.jndi.server.pkg.prefix" value="org.apache.naming"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">
     	<property name="org.jboss.soa.esb.registry.queryManagerURI" value="org.apache.juddi.registry.local.InquiryService#inquire"/>

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/lib/Licenses.txt
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/lib/Licenses.txt	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/lib/Licenses.txt	2008-05-01 15:07:10 UTC (rev 19810)
@@ -24,7 +24,7 @@
  * (C) 2005-2006,
  */
  
-Apache Jakarta Commons Collections, Commons Logging, jUDDI, Scout, JAXR-API, DBCP, Pooling:
+Apache Jakarta Commons Collections, Commons Logging, Commons Net, jUDDI, Scout, JAXR-API, DBCP, Pooling:
 
 Apache License
                            Version 2.0, January 2004
@@ -231,11 +231,6 @@
    
    
    
-   Enterprise Distributed Technologies edtftpj.jar
-   
-   edtFTPj is Open Source, licensed under the LGPL, the GNU Lesser General 
-   Public License.   http://www.gnu.org/licenses/lgpl.html
-   
 --- jsch-0.1.jar
 JSch 0.0.* was released under the GNU LGPL license.  Later, we have switched 
 over to a BSD-style license. 

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/lib/ext/commons-net-2.0.0-652071.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/lib/ext/commons-net-2.0.0-652071.jar)
===================================================================
(Binary files differ)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/lib/ext/edtftpj-1.5.4.jar
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/lib/ext/jsch-0.1.38.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/lib/ext/jsch-0.1.38.jar)
===================================================================
(Binary files differ)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/lib/ext/jsch-0.1.jar
===================================================================
(Binary files differ)

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/build.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/build.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/build.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -84,14 +84,15 @@
         	<fileset dir="${org.jboss.esb.rosetta.src.dir}" includes="**/*.groovy"/>
             <fileset dir="${org.jboss.esb.rosetta.src.dir}" includes="**/*.properties"/>
        	</jar>
-    	<jar    destfile="${org.jboss.esb.rosetta.distrib.dir}/lib/test-util.jar">
-		<fileset dir="${org.jboss.esb.internal.dest}/tests/"
-			includes="org/jboss/soa/esb/testutils/**/*.class"/>
-		<fileset dir="${org.jboss.esb.internal.dest}/tests/"
-			includes="org/jboss/soa/esb/common/tests/*.class"/>
-                <fileset dir="${org.jboss.esb.internal.dest}/tests/"
-                        includes="org/jboss/**/Mock*.class" />
-	</jar>
+        <jar destfile="${org.jboss.esb.rosetta.distrib.dir}/lib/test-util.jar">
+            <fileset dir="${org.jboss.esb.internal.dest}/tests/"
+                     includes="org/jboss/soa/esb/testutils/**/*.class"/>
+            <fileset dir="tests/src" includes="org/jboss/soa/esb/testutils/*.properties"/>
+            <fileset dir="${org.jboss.esb.internal.dest}/tests/"
+                     includes="org/jboss/soa/esb/common/tests/*.class"/>
+            <fileset dir="${org.jboss.esb.internal.dest}/tests/"
+                     includes="org/jboss/**/Mock*.class"/>
+        </jar>
     </target>
 
     <target name="org.jboss.esb.rosetta.test" depends="org.jboss.esb.rosetta.compile" description="Run tests for this module">

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFileReplyToEpr.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFileReplyToEpr.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFileReplyToEpr.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -32,7 +32,7 @@
 	public DefaultFileReplyToEpr (FileEpr epr)
 		throws URISyntaxException, MalformedURLException
 	{
-		super(epr.getURL());
+		super(epr.getURI());
 		String suffix = uniqueFileSuffix(epr);
 		setInputSuffix(suffix);
 		setPostSuffix(suffix);

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFtpReplyToEpr.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFtpReplyToEpr.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFtpReplyToEpr.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -31,7 +31,7 @@
 	public DefaultFtpReplyToEpr(FTPEpr epr)
 		throws URISyntaxException, MalformedURLException
 	{
-		super(epr.getURL());
+		super(epr.getURI());
 		String suffix = DefaultFileReplyToEpr.uniqueFileSuffix(epr);
 		setInputSuffix(suffix);
 		setPostSuffix(suffix);

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFtpsReplyToEpr.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFtpsReplyToEpr.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFtpsReplyToEpr.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFtpsReplyToEpr.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,44 @@
+/*
+ * 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,
+ */
+
+package org.jboss.internal.soa.esb.addressing.eprs;
+
+import java.net.MalformedURLException;
+import java.net.URISyntaxException;
+
+import org.jboss.soa.esb.addressing.eprs.FTPSEpr;
+
+public class DefaultFtpsReplyToEpr extends FTPSEpr 
+{
+	
+	public DefaultFtpsReplyToEpr(FTPSEpr epr)
+		throws URISyntaxException, MalformedURLException
+	{
+		super(epr.getURI());
+		String suffix = DefaultFileReplyToEpr.uniqueFileSuffix(epr);
+		setInputSuffix(suffix);
+		setPostSuffix(suffix);
+		setPostDelete(true);
+		
+		setPassive(epr.getPassive());
+		setCertificateURI(epr.getCertificateURI());
+	}
+
+}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultInVMReplyToEpr.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultInVMReplyToEpr.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultInVMReplyToEpr.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultInVMReplyToEpr.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,59 @@
+/* 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,
+ */
+
+package org.jboss.internal.soa.esb.addressing.eprs;
+
+import org.jboss.internal.soa.esb.couriers.InVMCourier;
+import org.jboss.soa.esb.addressing.EPR;
+import org.jboss.soa.esb.addressing.eprs.InVMEpr;
+import org.jboss.soa.esb.couriers.CourierFactory;
+
+import java.net.URI;
+import java.net.URISyntaxException;
+
+public class DefaultInVMReplyToEpr extends InVMEpr {
+
+    private static ThreadLocal<InVMEpr> invmReplyToEPRTL = new ThreadLocal<InVMEpr>();
+
+    public DefaultInVMReplyToEpr(InVMEpr epr) {
+        super(getThreadEPR());
+    }
+
+    private static EPR getThreadEPR() {
+        // We assign an InVMEpr/Courier to each thread
+
+        InVMEpr threadEPR = invmReplyToEPRTL.get();
+
+        if(threadEPR == null) {
+            try {
+                threadEPR = new InVMEpr(URI.create("invm://thread-" + Thread.currentThread().getId()));
+                invmReplyToEPRTL.set(threadEPR);
+            } catch (URISyntaxException e) {
+                throw new RuntimeException("Unexpected Exception creating replyTo InVMEpr.", e);
+            }
+        }
+
+        // Rest the courier in case there are stale messages there
+        // waiting to be picked up...
+        InVMCourier threadCourier = CourierFactory.getInstance().getInVMCourier(threadEPR);
+        threadCourier.reset();
+
+        return threadEPR;
+    }
+}
\ No newline at end of file

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultSftpReplyToEpr.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultSftpReplyToEpr.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultSftpReplyToEpr.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -31,14 +31,14 @@
 	public DefaultSftpReplyToEpr(SFTPEpr epr)
 		throws URISyntaxException, MalformedURLException
 	{
-		super(epr.getURL());
+		super(epr.getURI());
 		String suffix = DefaultFileReplyToEpr.uniqueFileSuffix(epr);
 		setInputSuffix(suffix);
 		setPostSuffix(suffix);
 		setPostDelete(true);
 		
 		setPassive(epr.getPassive());
-		setCertificateURL(epr.getCertificateURL());
+		setCertificateURI(epr.getCertificateURI());
 	}
 
 }

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/helpers/EPRHelper.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/helpers/EPRHelper.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/addressing/helpers/EPRHelper.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -157,8 +157,12 @@
 		 * Do not re-order.
 		 */
 
-		if (epr instanceof EmailEpr)
+		if (epr instanceof InVMEpr)
+			eprType = InVMEpr.type().toString();
+		else if (epr instanceof EmailEpr)
 			eprType = EmailEpr.type().toString();
+		else if (epr instanceof FTPSEpr)
+			eprType = FTPSEpr.type().toString();
 		else if (epr instanceof SFTPEpr)
 			eprType = SFTPEpr.type().toString();
 		else if (epr instanceof HTTPEpr)
@@ -195,8 +199,12 @@
 			 * Do not re-order.
 			 */
 
-			if (eprType.equals(EmailEpr.type().toString()))
+			if (eprType.equals(InVMEpr.type().toString()))
+				return new InVMEpr(epr);
+			else if (eprType.equals(EmailEpr.type().toString()))
 				return new EmailEpr(epr);
+			else if (eprType.equals(FTPSEpr.type().toString()))
+				return new FTPSEpr(epr);
 			else if (eprType.equals(SFTPEpr.type().toString()))
 				return new SFTPEpr(epr);
 			else if (eprType.equals(HTTPEpr.type().toString()))

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/FileCourier.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/FileCourier.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/FileCourier.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -26,10 +26,8 @@
 import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.lang.reflect.Method;
-import java.net.MalformedURLException;
 import java.net.URI;
 import java.net.URISyntaxException;
-import java.net.URL;
 import java.util.UUID;
 
 import javax.xml.parsers.ParserConfigurationException;
@@ -121,13 +119,13 @@
 		// Certain things can only be checked in local filesystem
 		try
 		{
-			_url = _epr.getURL();
+			_uri = _epr.getURI();
 			FileHandler handler = FileHandlerFactory.getInstance()
 					.getFileHandler(_epr);
 			if (handler instanceof LocalFileHandler)
 			{
 				_localFhandler = (LocalFileHandler) handler;
-				File file = new File(_url.getFile());
+				File file = new File(_uri);
 				if ((!_receiverOnly) && (!file.isDirectory()))
 					throw new CourierException(
 							"File for deliverAsync EPR must be a directory (file name will be MessageID)");
@@ -148,10 +146,6 @@
 				return;
 			}
 		}
-		catch (MalformedURLException e)
-		{
-			throw new MalformedEPRException(e);
-		}
 		catch (URISyntaxException e)
 		{
 			throw new MalformedEPRException(e);
@@ -182,7 +176,7 @@
 		if (null == handler)
 			throw new CourierServiceBindException(
 					"Can't find appropriate file handler for "
-							+ _url.toString());
+							+ _uri.toASCIIString());
 
 		Call call = message.getHeader().getCall();
 		if (null==call)
@@ -203,7 +197,7 @@
 		{
 			try
 			{
-				File dir = new File(_url.getFile());
+				File dir = new File(_uri);
 				String name = message.getHeader().getCall().getMessageID()
 						.toString();
 				name += _inputSuffix;
@@ -544,7 +538,7 @@
 
 	protected String _inputSuffix;
 
-	protected URL _url;
+	protected URI _uri;
 
 	protected boolean _receiverOnly;
 

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/InVMCourier.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/internal/soa/esb/couriers/InVMCourier.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/InVMCourier.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/InVMCourier.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,171 @@
+/*
+ * 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.internal.soa.esb.couriers;
+
+import org.apache.log4j.Logger;
+import org.jboss.soa.esb.addressing.eprs.InVMEpr;
+import org.jboss.soa.esb.couriers.CourierException;
+import org.jboss.soa.esb.message.Message;
+
+import java.util.Queue;
+import java.util.concurrent.ConcurrentLinkedQueue;
+
+/*
+ * These need to be treated differently to other couriers or we'll end up with
+ * garbage collection issues. We need to enforce a rule that a sender cannot
+ * send (gets an error) if the server isn't listening. That's straightforward to
+ * do here, but we need to check the impact on the rest of the codebase, since the
+ * other couriers can be used asynchronously of the service lifecycle. The courier
+ * instance should be purges when the service is finished with it.
+ * 
+ * An alternative would be to use a WeakHashMap for maintaining the InVMCouriers in
+ * the InternalCourierFactory. But I'd prefer to have explicit control over the courier
+ * lifecycle rather than leaving to the vagueries of the gc. Plus, it could introduce
+ * some interesting race conditions.
+ */
+
+public class InVMCourier implements PickUpOnlyCourier, DeliverOnlyCourier {
+
+    protected InVMEpr epr;
+
+    protected static Logger logger = Logger.getLogger(InVMCourier.class);
+
+    private Queue<Message> messageQueue = new ConcurrentLinkedQueue<Message>();
+
+    private long deliveryTimeout = 0;
+
+    private boolean isActive = true;
+
+    /**
+     * Objects of this class should only be instantiated by internal
+     * implementations
+     *
+     * @param epr
+     */
+
+    public InVMCourier(InVMEpr epr) {
+        this.epr = epr;
+
+        /*
+           * Normally we keep the link between sender and receiver threads. This
+           * makes the model simpler and allows services to be transplanted
+           * between transports. Plus, this is based on the experiences from CORBA
+           * 2.0 to 2.3, where POA was introduced: by default all local
+           * invocations then looked like remote invocations and weren't
+           * necessarily handled by the same thread. But all good ORBs had a
+           * workaround to go back to the old style, where the same thread did all
+           * of the work in "lock step" (it was the same thread).
+           */
+
+        if (epr.getLockstep()) {
+            deliveryTimeout = epr.getLockstepWaitTime();
+        } else {
+            deliveryTimeout = 0;
+        }
+    }
+
+    /**
+     * package the ESB message into the queue
+     *
+     * @param message Message - the message to deliverAsync
+     * @return boolean - the result of the delivery
+     * @throws CourierException -
+     *                          if problems were encountered
+     */
+    public boolean deliver(Message message) {
+        if (!isCourierActive()) {
+            return false;
+        }
+
+        if (message == null) {
+            return false;
+        }
+
+        synchronized (messageQueue) {
+            messageQueue.add(message);
+
+            // Notify 1 waiting pickup thread of the delivery...
+            messageQueue.notify();
+
+            if (deliveryTimeout > 0) {
+                try {
+                    // Wait on notification from the pickup thread...
+                    messageQueue.wait(deliveryTimeout);
+                } catch (InterruptedException e) {
+                    logger.warn("Timeout expired while waiting on message pickup on InVM queue '" + epr.getAddr().getAddress() + "'.", e);
+                }
+            }
+        }
+
+        return true;
+    }
+
+    public Message pickup(long millis) {
+        if (!isCourierActive()) {
+            return null;
+        }
+
+        Message message = null;
+
+        millis = Math.max(millis, 100);
+        synchronized (messageQueue) {
+            if (messageQueue.isEmpty()) {
+                try {
+                    messageQueue.wait(millis);
+                } catch (InterruptedException e) {
+                    logger.debug("Pickup thread '" + Thread.currentThread().getName() + "' interrupted while waiting on delivery notification or timeout.", e);
+                }
+            }
+            if (!messageQueue.isEmpty()) {
+                message = messageQueue.remove();
+            }
+
+            // Notify 1 waiting delivery thread of the pickup...
+            messageQueue.notify();
+        }
+
+        return message;
+    }
+
+    public void cleanup() {
+    }
+
+    private boolean isCourierActive() {
+        if (!isActive) {
+            logger.debug("InVMCourier for EPR '" + epr.getAddr().getAddress() + "' is not active.  Cannot pickup/deliver on this courier.", new Exception());
+            return false;
+        }
+        return true;
+    }
+
+    public void setActive(boolean active) {
+        isActive = active;
+    }
+
+    public void clean() {
+    }
+
+    public void reset() {
+        messageQueue.clear();
+    }
+}

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/TwoWayCourierImpl.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/TwoWayCourierImpl.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/TwoWayCourierImpl.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -22,24 +22,21 @@
 
 package org.jboss.internal.soa.esb.couriers;
 
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.UUID;
-
 import org.jboss.soa.esb.addressing.Call;
 import org.jboss.soa.esb.addressing.EPR;
 import org.jboss.soa.esb.addressing.MalformedEPRException;
 import org.jboss.soa.esb.addressing.eprs.FileEpr;
+import org.jboss.soa.esb.addressing.eprs.InVMEpr;
 import org.jboss.soa.esb.addressing.eprs.JDBCEpr;
 import org.jboss.soa.esb.addressing.eprs.JMSEpr;
-import org.jboss.soa.esb.couriers.CourierException;
-import org.jboss.soa.esb.couriers.CourierFactory;
-import org.jboss.soa.esb.couriers.CourierTimeoutException;
-import org.jboss.soa.esb.couriers.CourierUtil;
-import org.jboss.soa.esb.couriers.TwoWayCourier;
+import org.jboss.soa.esb.couriers.*;
 import org.jboss.soa.esb.filter.FilterManager;
 import org.jboss.soa.esb.message.Message;
 
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.util.UUID;
+
 /**
  * A two-way-courier can perform message deliveries and pickups.
  * 
@@ -54,7 +51,12 @@
 
 	private PickUpOnlyCourier _pickupCourier;
 
-	/**
+    public TwoWayCourierImpl(DeliverOnlyCourier deliverCourier, PickUpOnlyCourier pickupCourier) {
+        _deliverCourier = deliverCourier;
+        _pickupCourier = pickupCourier;
+    }
+
+    /**
 	 * Constructor.
 	 * 
 	 * @param toEpr -
@@ -105,7 +107,15 @@
                 }
 	}
 
-	private DeliverOnlyCourier getDeliverCourier(EPR toEPR)
+    public PickUpOnlyCourier getPickupCourier() {
+        return _pickupCourier;
+    }
+
+    public DeliverOnlyCourier getDeliverCourier() {
+        return _deliverCourier;
+    }
+
+    private DeliverOnlyCourier getDeliverCourier(EPR toEPR)
 			throws CourierException, MalformedEPRException
 	{
 		return (null == toEPR) ? null : (DeliverOnlyCourier) courierFromEpr(
@@ -124,6 +134,8 @@
 	{
 		if (null == epr)
 			return null;
+        if (epr instanceof InVMEpr)
+            return CourierFactory.getInstance().getInVMCourier((InVMEpr) epr);
 		if (epr instanceof JMSEpr)
 			return new JmsCourier((JMSEpr) epr, pickUpOnly);
 		if (epr instanceof FileEpr)
@@ -143,6 +155,8 @@
 		String addr = null;
 
 		addr = epr.getAddr().getAddress();
+        if (addr.startsWith(InVMEpr.INVM_PROTOCOL))
+            return CourierFactory.getInstance().getInVMCourier(new InVMEpr(epr));
 		if (addr.startsWith(JMSEpr.JMS_PROTOCOL))
 			return new JmsCourier(new JMSEpr(epr), pickUpOnly);
 		if (addr.startsWith(JDBCEpr.JDBC_PROTOCOL))
@@ -162,40 +176,35 @@
 	public boolean deliver(Message message) throws CourierException,
 			MalformedEPRException
 	{
-		if (null == _deliverCourier)
-			throw new CourierException("No deliverAsync courier");
-                final Call call = message.getHeader().getCall() ;
-                call.setTo(_toEPR) ;
-                
-                final boolean setMessageID = call.getMessageID() == null;
-                if (setMessageID)
-                {
-                    final String messageID = UUID.randomUUID().toString() ;
-                    try
-                    {
-                        call.setMessageID(new URI(messageID)) ;
-                    }
-                    catch (final URISyntaxException urise)
-                    {
-                        throw new MalformedEPRException("Failed to set message ID to " + messageID) ;
-                    }
-                }
+        if (null == _deliverCourier)
+            throw new CourierException("No deliverAsync courier");
+        
+        final Call call = message.getHeader().getCall();
+        call.setTo(_toEPR);
 
-                try
-                {
-                    message = FilterManager.getInstance().doOutputWork(message, null);
-                    
-                    return _deliverCourier.deliver(message);
-                }
-                finally
-                {
-                    if (setMessageID)
-                    {
-                        call.setMessageID(null) ;
-                    }
-                }
-	}
+        final boolean setMessageID = call.getMessageID() == null;
+        if (setMessageID) {
+            final String messageID = UUID.randomUUID().toString();
+            try {
+                call.setMessageID(new URI(messageID));
+            }
+            catch (final URISyntaxException urise) {
+                throw new MalformedEPRException("Failed to set message ID to " + messageID);
+            }
+        }
 
+        try {
+            message = FilterManager.getInstance().doOutputWork(message, null);
+
+            return _deliverCourier.deliver(message);
+        }
+        finally {
+            if (setMessageID) {
+                call.setMessageID(null);
+            }
+        }
+    }
+
 	/**
 	 * @see org.jboss.soa.esb.couriers.TwoWayCourier#pickup(long waitTime).
 	 */

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/FtpFileHandler.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/FtpFileHandler.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/FtpFileHandler.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -24,9 +24,8 @@
 
 import java.io.File;
 import java.io.IOException;
-import java.net.MalformedURLException;
+import java.net.URI;
 import java.net.URISyntaxException;
-import java.net.URL;
 
 import org.apache.log4j.Logger;
 import org.jboss.soa.esb.addressing.eprs.FTPEpr;
@@ -41,34 +40,26 @@
 
 public class FtpFileHandler implements FileHandler
 {
-	private FtpFileHandler()
-	{
-	}
-
 	FtpFileHandler(FTPEpr epr) throws CourierException
 	{
 		_epr = epr;
 
-		URL url = null;
+		final URI uri ;
 		try
 		{
-			url = _epr.getURL();
+			uri = _epr.getURI();
 		}
-		catch (MalformedURLException e)
-		{
-			throw new CourierException(e);
-		}
 		catch (URISyntaxException e)
 		{
 			throw new CourierException(e);
 		}
 
-		_server = url.getHost();
+		_server = uri.getHost();
 
 		String[] sa = null;
 		
-		if (url.getUserInfo() != null)
-			sa = url.getUserInfo().split(":");
+		if (uri.getUserInfo() != null)
+			sa = uri.getUserInfo().split(":");
 		
 		if (sa == null)
 			sa = new String[]
@@ -76,15 +67,13 @@
 		_user = (sa.length < 1) ? "" : sa[0];
 		_passwd = (sa.length < 2) ? "" : sa[1];
 
-		_remoteDir = url.getFile();
+		_remoteDir = uri.getPath();
 		
 		final String tmpdir = System.getProperty("java.io.tmpdir") ;
 		if ((_remoteDir == null) || (_remoteDir.equals("")))
 			_remoteDir = ModulePropertyManager.getPropertyManager(ModulePropertyManager.TRANSPORTS_MODULE).getProperty(Environment.FTP_REMOTEDIR, tmpdir);
 
-		_port = url.getPort();
-		if (_port < 0)
-			_port = url.getDefaultPort();
+		_port = uri.getPort();
 
 		_localDir = ModulePropertyManager.getPropertyManager(ModulePropertyManager.TRANSPORTS_MODULE).getProperty(Environment.FTP_LOCALDIR, tmpdir);
 

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/LocalFileHandler.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/LocalFileHandler.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/LocalFileHandler.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -27,7 +27,6 @@
 import java.io.FileInputStream;
 import java.io.FileNotFoundException;
 import java.io.IOException;
-import java.net.MalformedURLException;
 import java.net.URISyntaxException;
 
 import org.apache.log4j.Logger;
@@ -86,7 +85,7 @@
 	{
 		try
 		{
-			File dir = new File(_epr.getURL().getFile());
+			File dir = new File(_epr.getURI());
 			if (!dir.isDirectory())
 				throw new CourierException(
 						"Can't get file list if URL is not a directory");
@@ -98,10 +97,6 @@
 		{
 			throw new CourierException(e);
 		}
-		catch (MalformedURLException e)
-		{
-			throw new CourierException(e);
-		}
 		catch (Exception e)
 		{
 			throw new CourierException(e);

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/message/filter/MetaDataFilter.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/message/filter/MetaDataFilter.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/message/filter/MetaDataFilter.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -23,7 +23,6 @@
 package org.jboss.internal.soa.esb.message.filter;
 
 import java.io.File;
-import java.net.MalformedURLException;
 import java.net.URISyntaxException;
 import java.util.Calendar;
 import java.util.Map;
@@ -90,16 +89,12 @@
 		{
 		    type = Environment.Transports.File;
 
-		    name = ((FileEpr) destination).getURL()
+		    name = destination.getURI()
 			    + File.separator
 			    + msg.getHeader().getCall().getMessageID()
 				    .toString()
 			    + ((FileEpr) destination).getInputSuffix();
 		}
-		catch (MalformedURLException ex)
-		{
-		    throw new CourierException(ex);
-		}
 		catch (URISyntaxException ex)
 		{
 		    throw new CourierException(ex);

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/notification/PropertySubstituter.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/internal/soa/esb/notification/PropertySubstituter.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/notification/PropertySubstituter.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/notification/PropertySubstituter.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,98 @@
+/*
+ * 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.internal.soa.esb.notification;
+
+import java.net.URI;
+
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.mapping.ObjectMapper;
+import org.jboss.soa.esb.message.mapping.ObjectMappingException;
+
+/**
+ * The property substituter applies two types of substitutions on a String - the first
+ * is that it substitutes a message property contained in {property} for its value, 
+ * the second being that it will use the ObjectMapper to substitute the value for a 
+ * location within the message (example : body.order) if it is a String or a URI.
+ * 
+ * @author <a href="mailto:tcunning at redhat.com">tcunning at redhat.com</a>
+ */
+public class PropertySubstituter {
+	public static String replaceArguments (String field, Message message) {
+		String current = field;
+		boolean foundReplacement = false;
+		if (field == null) {
+			return null;
+		}
+		
+		String replaced = replaceArgument(field, message);
+		
+		while (!current.equals(replaced)) {
+			current = replaced;
+			foundReplacement = true;
+			replaced = replaceArgument(current, message);
+		}
+		
+		// See if the filename is an object in the message - if it is a 
+		// String in the message, then we can use that value
+		ObjectMapper om = new ObjectMapper();
+		if (!foundReplacement) {
+			try {
+				Object obj = om.getObjectFromMessage(message, field);
+				if (obj != null) {
+					if (obj instanceof String) {
+						replaced = (String) obj;
+					} else if (obj instanceof URI) {
+						replaced = obj.toString();
+					}
+				}
+			} catch (ObjectMappingException e) {
+			} catch (Exception e) {
+			}
+		}
+		return replaced;
+	}
+	
+	/**
+	 * Look for arguments in the form '{prop.name}' and replace them with
+	 * corresponding message properties.
+	 * 
+	 * @param value
+	 * @param message
+	 * @return String
+	 */
+	protected static String replaceArgument(String value, Message message) {
+		int startIndex = value.indexOf('{');
+		if (startIndex == -1) {
+			return value;
+		}
+		int endIndex = value.indexOf('}');
+		if (endIndex == -1) {
+			return value;
+		}
+		String propName = value.substring(startIndex + 1, endIndex);
+		Object propValue = message.getProperties().getProperty(propName);
+		if (propValue == null) {
+			return value;
+		}
+		return value.substring(0, startIndex) + propValue + value.substring(endIndex + 1);
+	}
+}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/InVMRegistry.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/InVMRegistry.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/InVMRegistry.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/InVMRegistry.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,158 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.internal.soa.esb.services.registry;
+
+import org.jboss.internal.soa.esb.couriers.InVMCourier;
+import org.jboss.soa.esb.Service;
+import org.jboss.soa.esb.addressing.EPR;
+import org.jboss.soa.esb.addressing.eprs.InVMEpr;
+import org.jboss.soa.esb.couriers.CourierFactory;
+import org.jboss.soa.esb.services.registry.Registry;
+import org.jboss.soa.esb.services.registry.RegistryException;
+import org.jboss.soa.esb.services.registry.ServiceNotFoundException;
+
+import java.util.*;
+import java.util.concurrent.ConcurrentHashMap;
+
+/**
+ * In VM registry.
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class InVMRegistry implements Registry {
+
+    private Map<Service, List<RegsitryEntry>> regEntries = new ConcurrentHashMap<Service, List<RegsitryEntry>>();
+
+    public void registerEPR(String serviceCategoryName, String serviceName, String serviceDescription, EPR epr, String eprDescription) throws RegistryException {
+        if(serviceCategoryName == null) {
+            serviceCategoryName = "";
+        }
+        Service service = new Service(serviceCategoryName, serviceName);
+        RegsitryEntry regEntry = new RegsitryEntry(service, serviceDescription, epr, eprDescription);
+        List<RegsitryEntry> serviceEntries = getServiceEntries(service);
+
+        serviceEntries.add(regEntry);
+    }
+
+    public void unRegisterService(String category, String serviceName) throws RegistryException, ServiceNotFoundException {
+        unRegisterInVMService(category, serviceName);
+    }
+
+    protected boolean unRegisterInVMService(String category, String serviceName) throws RegistryException, ServiceNotFoundException {
+        if(category == null) {
+            category = "";
+        }
+        _unRegisterEPR(category, serviceName, null);
+        return (regEntries.remove(new Service(category, serviceName)) != null);
+    }
+
+    public void unRegisterEPR(String serviceCategoryName, String serviceName, EPR epr) throws RegistryException, ServiceNotFoundException {
+        _unRegisterEPR(serviceCategoryName, serviceName, epr);
+    }
+
+    private void _unRegisterEPR(String serviceCategoryName, String serviceName, EPR epr) {
+        if(serviceCategoryName == null) {
+            serviceCategoryName = "";
+        }
+        Service service = new Service(serviceCategoryName, serviceName);
+        List<RegsitryEntry> serviceEntries = getServiceEntries(service);
+        Iterator<RegsitryEntry> iterator = serviceEntries.iterator();
+
+        while (iterator.hasNext()) {
+            RegsitryEntry regsitryEntry =  iterator.next();
+
+            if(epr == null || regsitryEntry.getEpr().getAddr().getAddress().equals(epr.getAddr().getAddress())) {
+                if(regsitryEntry.getEpr() instanceof InVMEpr) {
+                    InVMCourier courier = CourierFactory.getInstance().getInVMCourier((InVMEpr)regsitryEntry.getEpr());
+                    if(courier != null) {
+                        courier.setActive(false);
+                    }
+                }
+
+                iterator.remove();
+            }
+        }
+    }
+
+    public List<String> findAllServices() throws RegistryException {
+        return findServices(null);
+    }
+
+    public List<String> findServices(String serviceCategoryName) throws RegistryException {
+        Iterator<Service> iterator = regEntries.keySet().iterator();
+        List<String> services = new ArrayList<String>();
+
+        while (iterator.hasNext()) {
+            Service service =  iterator.next();
+            if(serviceCategoryName == null || service.getCategory().equals(serviceCategoryName)) {
+                services.add(service.getName());
+            }
+        }
+
+        return services;
+    }
+
+    public List<EPR> findEPRs(String serviceCategoryName, String serviceName) throws RegistryException, ServiceNotFoundException {
+        if(serviceCategoryName == null) {
+            serviceCategoryName = "";
+        }
+        List<EPR> eprs = new ArrayList<EPR>();
+        Service service = new Service(serviceCategoryName, serviceName);
+        List<RegsitryEntry> serviceEntries = getServiceEntries(service);
+
+        for (RegsitryEntry serviceEntry : serviceEntries) {
+            eprs.add(serviceEntry.getEpr());
+        }
+
+        return eprs;
+    }
+
+    public EPR findEPR(String serviceCategoryName, String serviceName) throws RegistryException, ServiceNotFoundException {
+        if(serviceCategoryName == null) {
+            serviceCategoryName = "";
+        }
+        List<EPR> eprs = findEPRs(serviceCategoryName, serviceName);
+
+        if(!eprs.isEmpty()) {
+            return eprs.get(0);
+        } else {
+            return null;
+        }
+    }
+
+    private synchronized List<RegsitryEntry> getServiceEntries(Service service) {
+        List<RegsitryEntry> serviceEntries = null; // = regEntries.get(service);
+        Set<Map.Entry<Service, List<RegsitryEntry>>> entries = regEntries.entrySet();
+
+        for (Map.Entry<Service, List<RegsitryEntry>> entry : entries) {
+            if(entry.getKey().equals(service)) {
+                serviceEntries = entry.getValue();
+                break;
+            }
+        }
+
+        if(serviceEntries == null) {
+            serviceEntries = new ArrayList<RegsitryEntry>();
+            regEntries.put(service, serviceEntries);
+        }
+
+        return serviceEntries;
+    }
+}

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/JAXRConnectionFactory.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/JAXRConnectionFactory.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/JAXRConnectionFactory.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -22,6 +22,8 @@
 import org.apache.log4j.Level;
 import org.apache.log4j.Logger;
 import org.jboss.soa.esb.common.Configuration;
+import org.jboss.soa.esb.common.Environment;
+import org.jboss.soa.esb.ConfigurationException;
 
 import javax.xml.registry.Connection;
 import javax.xml.registry.ConnectionFactory;
@@ -45,11 +47,21 @@
     private Set<PasswordAuthentication> creds = new HashSet<PasswordAuthentication>();
     private Properties props = new Properties();
 
-    public JAXRConnectionFactory() {
+    public JAXRConnectionFactory() throws ConfigurationException {
         props = new Properties();
+        if (Configuration.getRegistryQueryManageURI() == null) {
+            throw new ConfigurationException("ESB property '" + Environment.REGISTRY_QUERY_MANAGER_URI + "' not set.  ESB properties load may have failed.");
+        }
+        if (Configuration.getRegistryLifecycleManagerURI() == null) {
+            throw new ConfigurationException("ESB property '" + Environment.REGISTRY_LIFECYCLE_MANAGER_URI + "' not set.  ESB properties load may have failed.");
+        }
+        if (Configuration.getRegistryFactoryClass() == null) {
+            throw new ConfigurationException("ESB property '" + Environment.REGISTRY_FACTORY_CLASS + "' not set.  ESB properties load may have failed.");
+        }
         props.setProperty("javax.xml.registry.queryManagerURL", Configuration.getRegistryQueryManageURI());
         props.setProperty("javax.xml.registry.lifeCycleManagerURL", Configuration.getRegistryLifecycleManagerURI());
         props.setProperty("javax.xml.registry.factoryClass", Configuration.getRegistryFactoryClass());
+
         if (Configuration.getRegistrySemanticEquivalences()!=null) {
             props.setProperty("javax.xml.registry.semanticEquivalences", Configuration.getRegistrySemanticEquivalences());
         }
@@ -67,8 +79,13 @@
         }
         String user = Configuration.getRegistryUser();
         String password = Configuration.getRegistryPassword();
-        PasswordAuthentication passwdAuth = new PasswordAuthentication(user, password.toCharArray());
-        creds.add(passwdAuth);
+
+        if(user != null && password != null) {
+            PasswordAuthentication passwdAuth = new PasswordAuthentication(user, password.toCharArray());
+            creds.add(passwdAuth);
+        } else {
+            throw new ConfigurationException("ESB property '" + Environment.REGISTRY_USER + "' or '" + Environment.REGISTRY_PASSWORD + "' not set.  ESB properties load may have failed.");
+        }
     }
 
 

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/JAXRRegistryImpl.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/JAXRRegistryImpl.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/JAXRRegistryImpl.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -54,8 +54,9 @@
 import org.jboss.internal.soa.esb.addressing.helpers.EPRHelper;
 import org.jboss.soa.esb.MarshalException;
 import org.jboss.soa.esb.UnmarshalException;
+import org.jboss.soa.esb.ConfigurationException;
 import org.jboss.soa.esb.addressing.EPR;
-import org.jboss.soa.esb.services.registry.Registry;
+import org.jboss.soa.esb.addressing.eprs.InVMEpr;
 import org.jboss.soa.esb.services.registry.RegistryException;
 import org.jboss.soa.esb.services.registry.ServiceNotFoundException;
 /**
@@ -65,13 +66,17 @@
  *
  * @author Kurt Stam
  */
-public class JAXRRegistryImpl implements Registry
+public class JAXRRegistryImpl extends InVMRegistry 
 {
 	private static Logger logger = Logger.getLogger(JAXRRegistryImpl.class);
-    private JAXRConnectionFactory jaxrConnectionFactory = new JAXRConnectionFactory();
+    private JAXRConnectionFactory jaxrConnectionFactory;
 	private static Organization jbossESBOrganization;
 
-	/** 
+    public JAXRRegistryImpl() throws ConfigurationException {
+        jaxrConnectionFactory = new JAXRConnectionFactory();
+    }
+
+    /**
 	 * Publish an EPR to the Registry
 	 */
 	protected Service registerService(String category, String serviceName, String serviceDescription) throws JAXRException 
@@ -104,14 +109,25 @@
 	 */
 	@SuppressWarnings("unchecked")
     public void unRegisterService(String category, String serviceName) throws RegistryException, ServiceNotFoundException{
-//    first find the ServiceBindings for this service
+        // Make sure it's unregistered from the InVMRegistry...
+        boolean unregisteredFromInVMReg = false;
+
+        if(!isEmptyServiceName(category, serviceName)) {
+            unregisteredFromInVMReg = unRegisterInVMService(category, serviceName);
+        }
+
+        //    first find the ServiceBindings for this service
         Connection connection = jaxrConnectionFactory.getConnection();
         Service service = null;
         try {
             service = findService(category, serviceName);
             if (service==null) {
-                throw new ServiceNotFoundException("No such EPR found for service with name = " 
-                        + serviceName);
+                if(unregisteredFromInVMReg) {
+                    // It's OK... it was unregistered from the InVMRegistry
+                    return;
+                } else {
+                    throw new ServiceNotFoundException("No such EPR found for service with name = " + serviceName);
+                }
             }
             RegistryService rs = connection.getRegistryService();
             BusinessLifeCycleManager blm = rs.getBusinessLifeCycleManager();
@@ -130,92 +146,101 @@
 	public void registerEPR(String category, String serviceName, String serviceDescription, EPR epr, String eprDescription) 
 		throws RegistryException
 	{
-		Connection connection = jaxrConnectionFactory.getConnection();
-		try {
-			//Find the service
-			Service service = findService(category,serviceName);
-			if (service==null) {
-				logger.log(Level.DEBUG, "Service " + serviceName + " does not yet exist, creating now..");
-				service = registerService(category, serviceName, serviceDescription);
-			}
+        if(epr instanceof InVMEpr) {
+            // Only register these EPRs in memory...
+            super.registerEPR(category, serviceName, serviceDescription, epr, eprDescription);
+        } else {
+            Connection connection = jaxrConnectionFactory.getConnection();
+            try {
+                //Find the service
+                Service service = findService(category,serviceName);
+                if (service==null) {
+                    logger.log(Level.DEBUG, "Service " + serviceName + " does not yet exist, creating now..");
+                    service = registerService(category, serviceName, serviceDescription);
+                }
 
-			RegistryService rs = connection.getRegistryService();
-			BusinessLifeCycleManager blm = rs.getBusinessLifeCycleManager();
-            BusinessQueryManager bqm = rs.getBusinessQueryManager();
-			ServiceBinding serviceBinding = blm.createServiceBinding();
-			serviceBinding.setDescription(blm.createInternationalString(eprDescription));
-			String xml = EPRHelper.toXMLString(epr);
-			serviceBinding.setAccessURI(xml);
-		
-		    ArrayList<ServiceBinding> serviceBindings = new ArrayList<ServiceBinding>();
-		    serviceBindings.add(serviceBinding);
-		    service.addServiceBindings(serviceBindings);
-            Collection<String> findQualifiers = new ArrayList<String>();
-            findQualifiers.add(FindQualifier.AND_ALL_KEYS);
-            findQualifiers.add(FindQualifier.SORT_BY_NAME_DESC);
-            ClassificationScheme cScheme = bqm.findClassificationSchemeByName(findQualifiers, "org.jboss.soa.esb.:category");
-            Classification classification = blm.createClassification(cScheme, "category", category);
-            service.addClassification(classification);
-           
-			saveRegistryObject(serviceBinding, jaxrConnectionFactory);
-		} catch (JAXRException je) {
-			throw new RegistryException(je.getLocalizedMessage(), je);
-        } catch (MarshalException me) {
-            throw new RegistryException(me.getLocalizedMessage(), me);
-		} finally {
-			jaxrConnectionFactory.closeConnection(connection);
-		}
-	}
+                RegistryService rs = connection.getRegistryService();
+                BusinessLifeCycleManager blm = rs.getBusinessLifeCycleManager();
+                BusinessQueryManager bqm = rs.getBusinessQueryManager();
+                ServiceBinding serviceBinding = blm.createServiceBinding();
+                serviceBinding.setDescription(blm.createInternationalString(eprDescription));
+                String xml = EPRHelper.toXMLString(epr);
+                serviceBinding.setAccessURI(xml);
+
+                ArrayList<ServiceBinding> serviceBindings = new ArrayList<ServiceBinding>();
+                serviceBindings.add(serviceBinding);
+                service.addServiceBindings(serviceBindings);
+                Collection<String> findQualifiers = new ArrayList<String>();
+                findQualifiers.add(FindQualifier.AND_ALL_KEYS);
+                findQualifiers.add(FindQualifier.SORT_BY_NAME_DESC);
+                ClassificationScheme cScheme = bqm.findClassificationSchemeByName(findQualifiers, "org.jboss.soa.esb.:category");
+                Classification classification = blm.createClassification(cScheme, "category", category);
+                service.addClassification(classification);
+
+                saveRegistryObject(serviceBinding, jaxrConnectionFactory);
+            } catch (JAXRException je) {
+                throw new RegistryException(je.getLocalizedMessage(), je);
+            } catch (MarshalException me) {
+                throw new RegistryException(me.getLocalizedMessage(), me);
+            } finally {
+                jaxrConnectionFactory.closeConnection(connection);
+            }
+        }
+    }
 	/** 
 	 * Remove an EPR from the Registry
 	 */
 	public void unRegisterEPR(String category, String serviceName, EPR toBeDeletedEPR) throws RegistryException, ServiceNotFoundException{
-		//first find the ServiceBindings for this service
-        Connection connection = jaxrConnectionFactory.getConnection();
-        Service service = null;
-		try {
-            service = findService(category, serviceName);
-            if (service==null) {
-                throw new ServiceNotFoundException("No such Service found for service with category= "
-                        + category + " and name = " + serviceName);
-            }
-			Collection serviceBindings = findServiceBindings(service);
-			service.addServiceBindings(serviceBindings);
-			for (Iterator i=serviceBindings.iterator();i.hasNext();){
-				ServiceBinding serviceBinding = (ServiceBinding) i.next();
-				String eprXML = serviceBinding.getAccessURI().trim();
-                // for backwards compatibility still have the decoder if
-                // unmarchalling fails
-                try {
-                    EPR epr = EPRHelper.fromXMLString(eprXML);
-                } catch (UnmarshalException unme) {
+        if(toBeDeletedEPR instanceof InVMEpr) {
+            super.unRegisterEPR(category, serviceName, toBeDeletedEPR);
+        } else {
+            //first find the ServiceBindings for this service
+            Connection connection = jaxrConnectionFactory.getConnection();
+            Service service = null;
+            try {
+                service = findService(category, serviceName);
+                if (service==null) {
+                    throw new ServiceNotFoundException("No such Service found for service with category= "
+                            + category + " and name = " + serviceName);
+                }
+                Collection serviceBindings = findServiceBindings(service);
+                service.addServiceBindings(serviceBindings);
+                for (Iterator i=serviceBindings.iterator();i.hasNext();){
+                    ServiceBinding serviceBinding = (ServiceBinding) i.next();
+                    String eprXML = serviceBinding.getAccessURI().trim();
+                    // for backwards compatibility still have the decoder if
+                    // unmarchalling fails
                     try {
-                        eprXML = URLDecoder.decode(eprXML, "UTF-8").trim();
-                    } catch (UnsupportedEncodingException ue) {
-                        logger.error(unme.getMessage(), unme);
-                        logger.error(ue.getMessage(), ue);
+                        EPR epr = EPRHelper.fromXMLString(eprXML);
+                    } catch (UnmarshalException unme) {
+                        try {
+                            eprXML = URLDecoder.decode(eprXML, "UTF-8").trim();
+                        } catch (UnsupportedEncodingException ue) {
+                            logger.error(unme.getMessage(), unme);
+                            logger.error(ue.getMessage(), ue);
+                        }
                     }
+                    String toBeDeletedEPRXml = EPRHelper.toXMLString(toBeDeletedEPR).trim();
+                    if (eprXML.equals(toBeDeletedEPRXml)) {
+                        RegistryService rs = connection.getRegistryService();
+                        BusinessLifeCycleManager blm = rs.getBusinessLifeCycleManager();
+                        Collection<Key> serviceBindingKeys = new ArrayList<Key>();
+                        serviceBindingKeys.add(serviceBinding.getKey());
+                        blm.deleteServiceBindings(serviceBindingKeys);
+                        return;
+                    }
                 }
-                String toBeDeletedEPRXml = EPRHelper.toXMLString(toBeDeletedEPR).trim();
-				if (eprXML.equals(toBeDeletedEPRXml)) {
-                    RegistryService rs = connection.getRegistryService();
-                    BusinessLifeCycleManager blm = rs.getBusinessLifeCycleManager();
-                    Collection<Key> serviceBindingKeys = new ArrayList<Key>();
-                    serviceBindingKeys.add(serviceBinding.getKey());
-                    blm.deleteServiceBindings(serviceBindingKeys);
-					return;
-				}
-			}
-            throw new RegistryException("No such EPR found for service with name = " 
-                    + serviceName + " and EPR=" + toBeDeletedEPR);
-		} catch (JAXRException je) {
-			throw new RegistryException(je.getLocalizedMessage(), je);
-        } catch (MarshalException me) {
-            throw new RegistryException(me.getLocalizedMessage(), me);
-		} finally {
-		    jaxrConnectionFactory.closeConnection(connection);
+                throw new RegistryException("No such EPR found for service with name = "
+                        + serviceName + " and EPR=" + toBeDeletedEPR);
+            } catch (JAXRException je) {
+                throw new RegistryException(je.getLocalizedMessage(), je);
+            } catch (MarshalException me) {
+                throw new RegistryException(me.getLocalizedMessage(), me);
+            } finally {
+                jaxrConnectionFactory.closeConnection(connection);
+            }
         }
-	}
+    }
 	
 	/** 
 	 * {@inheritDoc}
@@ -224,6 +249,10 @@
 	public List<String> findAllServices() throws RegistryException
 	{
 		List<String> serviceNames = new ArrayList<String>();
+
+        // Add the invm Services at the front of the list...
+        serviceNames.addAll(super.findAllServices());
+
 		try {
 			Collection services = getJBossESBOrganization().getServices();
 			for (Iterator i=services.iterator();i.hasNext();) {
@@ -243,7 +272,13 @@
 	public List<String> findServices(String category) throws RegistryException
 	{
 		List<String>serviceNames = new ArrayList<String>();
-		try {
+
+        if(category != null && !category.trim().equals("")) {
+            // Add the invm Services at the front of the list...
+            serviceNames.addAll(super.findServices(category));
+        }
+
+        try {
 			Collection<Service>services = findServicesForCategory(category);
 			for (Iterator<Service> i=services.iterator();i.hasNext();) {
 				String serviceName = i.next().getName().getValue();
@@ -261,11 +296,21 @@
 	public List<EPR> findEPRs(String category, String serviceName) throws RegistryException, ServiceNotFoundException
 	{
 		List<EPR> eprs = new ArrayList<EPR>();
-		Connection connection = jaxrConnectionFactory.getConnection();
+
+        if(!isEmptyServiceName(category, serviceName)) {
+            // Add the invm EPRs at the front of the list...
+            eprs.addAll(super.findEPRs(category, serviceName));
+        }
+
+        Connection connection = jaxrConnectionFactory.getConnection();
 		try {
 			Service service = findService(category, serviceName);
 			if (service==null){
-				throw new ServiceNotFoundException("Could not find service with category=" + category + " and serviceName=" + serviceName);
+                if(eprs.isEmpty()) {
+                    throw new ServiceNotFoundException("Could not find service with category=" + category + " and serviceName=" + serviceName);
+                } else {
+                    return eprs;
+                }
 			}
 			// Get registry service and business query manager
 			Collection<ServiceBinding> serviceBindings = findServiceBindings(service);
@@ -306,40 +351,48 @@
 	 */
 	public EPR findEPR(String category, String serviceName) throws RegistryException, ServiceNotFoundException
 	{
-		EPR epr = null;
-		Connection connection = jaxrConnectionFactory.getConnection();
-		try {
-			Service service = findService(category, serviceName);
-			if (service==null){
-				throw new ServiceNotFoundException("Could not find service with category=" + category + " and serviceName=" + serviceName);
-			}
-			// Get registry service and business query manager
-			Collection<ServiceBinding> serviceBindings = findServiceBindings(service);
-			if (serviceBindings.iterator().hasNext()) {
-				ServiceBinding serviceBinding = (ServiceBinding) serviceBindings.iterator().next();
-				String eprXML = serviceBinding.getAccessURI();
-				// for backwards compatibility still have the decoder if
-                // unmarchalling fails
-                try {
-                    epr = EPRHelper.fromXMLString(eprXML);
-                } catch (UnmarshalException unme) {
+        EPR epr = null;
+
+        if(!isEmptyServiceName(category, serviceName)) {
+            epr = super.findEPR(category, serviceName);
+        }
+
+        if(epr == null) {
+            Connection connection = jaxrConnectionFactory.getConnection();
+            try {
+                Service service = findService(category, serviceName);
+                if (service==null){
+                    throw new ServiceNotFoundException("Could not find service with category=" + category + " and serviceName=" + serviceName);
+                }
+                // Get registry service and business query manager
+                Collection<ServiceBinding> serviceBindings = findServiceBindings(service);
+                if (serviceBindings.iterator().hasNext()) {
+                    ServiceBinding serviceBinding = (ServiceBinding) serviceBindings.iterator().next();
+                    String eprXML = serviceBinding.getAccessURI();
+                    // for backwards compatibility still have the decoder if
+                    // unmarchalling fails
                     try {
-                        eprXML = URLDecoder.decode(eprXML, "UTF-8");
                         epr = EPRHelper.fromXMLString(eprXML);
-                    } catch (UnsupportedEncodingException ue) {
-                        logger.error(ue.getMessage(), ue);
-                        throw new UnmarshalException(ue.getMessage(), ue);
+                    } catch (UnmarshalException unme) {
+                        try {
+                            eprXML = URLDecoder.decode(eprXML, "UTF-8");
+                            epr = EPRHelper.fromXMLString(eprXML);
+                        } catch (UnsupportedEncodingException ue) {
+                            logger.error(ue.getMessage(), ue);
+                            throw new UnmarshalException(ue.getMessage(), ue);
+                        }
                     }
                 }
-			}
-		} catch (JAXRException je) {
-			throw new RegistryException(je.getLocalizedMessage(), je);
-        } catch (UnmarshalException me) {
-            throw new RegistryException(me.getLocalizedMessage(), me);
-		} finally {
-			jaxrConnectionFactory.closeConnection(connection);
-		}
-		return epr;
+            } catch (JAXRException je) {
+                throw new RegistryException(je.getLocalizedMessage(), je);
+            } catch (UnmarshalException me) {
+                throw new RegistryException(me.getLocalizedMessage(), me);
+            } finally {
+                jaxrConnectionFactory.closeConnection(connection);
+            }
+        }
+        
+        return epr;
 	}
 
     /**
@@ -667,6 +720,11 @@
 			jaxrConnectionFactory.closeConnection(connection);
 		}
 	}
+
+    private boolean isEmptyServiceName(String category, String serviceName) {
+        // This registry impl allows Service names (name and/or category) to be empty (which seems a bit risky!!)
+        return (category == null || serviceName == null || category.trim().equals("") || serviceName.trim().equals(""));
+    }
 }
 
 	

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/RegsitryEntry.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/RegsitryEntry.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/RegsitryEntry.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/services/registry/RegsitryEntry.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,59 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.internal.soa.esb.services.registry;
+
+import org.jboss.soa.esb.Service;
+import org.jboss.soa.esb.addressing.EPR;
+
+/**
+ * Registry Entry.
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class RegsitryEntry {
+
+    private Service service;
+    private String serviceDescription;
+    private EPR epr;
+    private String eprDescription;
+
+    public RegsitryEntry(Service service, String serviceDescription, EPR epr, String eprDescription) {
+        this.service = service;
+        this.serviceDescription = serviceDescription;
+        this.epr = epr;
+        this.eprDescription = eprDescription;
+    }
+
+    public Service getService() {
+        return service;
+    }
+
+    public String getServiceDescription() {
+        return serviceDescription;
+    }
+
+    public EPR getEpr() {
+        return epr;
+    }
+
+    public String getEprDescription() {
+        return eprDescription;
+    }
+}

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/EdtFtpImpl.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/EdtFtpImpl.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/EdtFtpImpl.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,642 +0,0 @@
-/*
- * 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.internal.soa.esb.util;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.MalformedURLException;
-import java.net.URISyntaxException;
-import java.net.URL;
-import java.net.UnknownHostException;
-import java.util.List;
-
-import org.apache.log4j.Logger;
-import org.jboss.soa.esb.ConfigurationException;
-import org.jboss.soa.esb.addressing.eprs.FTPEpr;
-import org.jboss.soa.esb.addressing.eprs.FileEpr;
-import org.jboss.soa.esb.common.Environment;
-import org.jboss.soa.esb.common.ModulePropertyManager;
-import org.jboss.soa.esb.helpers.ConfigTree;
-import org.jboss.soa.esb.helpers.KeyValuePair;
-import org.jboss.soa.esb.util.FileUtil;
-import org.jboss.soa.esb.util.FtpClientUtil;
-import org.jboss.soa.esb.util.RemoteFileSystem;
-import org.jboss.soa.esb.util.RemoteFileSystemException;
-
-import com.enterprisedt.net.ftp.FTPClient;
-import com.enterprisedt.net.ftp.FTPConnectMode;
-import com.enterprisedt.net.ftp.FTPException;
-import com.enterprisedt.net.ftp.FTPTransferType;
-
-/**
- * Simplified FTP transfers
- * <p>
- * Description: Implements a simple set of FTP functionality Parameters to
- * establish the FTP connection are provided at construction time and cannot
- * change during the lifetime of the object <br/>Hides low level details.
- * Current implementation is based on the "Entreprise Distributed Technology
- * edtFTPj" library but this can be changed with no impact to existing code,
- * just by changing this class without modifying the signature of it's public
- * methods
- * </p>
- */
-
-public class EdtFtpImpl implements RemoteFileSystem
-{
-
-	private static final Logger _logger = Logger.getLogger(EdtFtpImpl.class);
-
-	private static final String TMP_SUFFIX = ".rosettaPart";
-
-	private boolean m_bPassive;
-
-	private int m_iPort;
-	private int _timeout = 0;
-
-	private FTPClient m_oConn = new FTPClient();
-
-	private FTPEpr m_oEpr;
-
-	private ConfigTree m_oParms;
-
-	private FTPTransferType m_oXferType;
-
-	private String m_sFtpServer, m_sUser, m_sPasswd;
-
-	private String m_sRemoteDir, m_sLocalDir;
-
-	/**
-	 * Checks validity and completeness of parameters, and keeps the info
-	 * internally for subsequent FTP requests
-	 * 
-	 * @param p_oP
-	 *            ConfigTree
-	 * @throws ConfigurationException :
-	 *             if parameters are invalid or incomplete
-	 *             <li>Parameters: (XML attributes at the root level) </li>
-	 *             <li> ftpServer = name or IP of FTP server </li>
-	 *             <li> ftpUser = login ID for server </li>
-	 *             <li> ftpPassword </li>
-	 *             <li> localDirURI = absolute path in the local filesystem
-	 *             </li>
-	 *             <li> remoteDirURI = remote path is relative to ftp user home
-	 *             in remote computer </li>
-	 */
-
-	public EdtFtpImpl (ConfigTree p_oP, boolean p_bConnect)
-			throws ConfigurationException, RemoteFileSystemException
-	{
-		m_oParms = p_oP;
-		initialize(p_bConnect);
-	}
-
-	public EdtFtpImpl (FTPEpr p_oP, boolean p_bConnect)
-			throws ConfigurationException, RemoteFileSystemException
-	{
-		m_oEpr = p_oP;
-
-		URL url = null;
-		try
-		{
-			url = m_oEpr.getURL();
-		}
-		catch (MalformedURLException e)
-		{
-			throw new ConfigurationException(e);
-		}
-		catch (URISyntaxException e)
-		{
-			throw new ConfigurationException(e);
-		}
-
-		m_sFtpServer = url.getHost();
-
-		String[] sa = null;
-
-		if (url.getUserInfo() != null) sa = url.getUserInfo().split(":");
-
-		if (sa == null) sa = new String[] { "", "" };
-
-		m_sUser = (sa.length < 1) ? "" : sa[0];
-		m_sPasswd = (sa.length < 2) ? "" : sa[1];
-
-		m_sRemoteDir = url.getFile();
-
-		final String tmpdir = System.getProperty("java.io.tmpdir");
-		if ((m_sRemoteDir == null) || (m_sRemoteDir.equals("")))
-			m_sRemoteDir = ModulePropertyManager.getPropertyManager(
-					ModulePropertyManager.TRANSPORTS_MODULE).getProperty(
-					Environment.FTP_REMOTEDIR, tmpdir);
-
-		m_iPort = url.getPort();
-		if (m_iPort < 0) m_iPort = url.getDefaultPort();
-
-		m_sLocalDir = ModulePropertyManager.getPropertyManager(
-				ModulePropertyManager.TRANSPORTS_MODULE).getProperty(
-				Environment.FTP_LOCALDIR, tmpdir);
-
-        File oLocalDir = new File(m_sLocalDir);
-        if(!oLocalDir.exists()) {
-            throw new ConfigurationException("Local FTP directory '" + oLocalDir.getAbsolutePath()
-                    + "' doesn't exist.  Check your JBossESB config '"
-                    + ModulePropertyManager.TRANSPORTS_MODULE + ":" + Environment.FTP_LOCALDIR + "'");
-        }
-
-        m_bPassive = false;
-
-		try
-		{
-			m_bPassive = m_oEpr.getPassive();
-		}
-		catch (URISyntaxException e)
-		{
-			_logger.warn(e);
-		}
-
-		String timeout = ModulePropertyManager.getPropertyManager(ModulePropertyManager.TRANSPORTS_MODULE).getProperty(Environment.FTP_SOCKET_TIMEOUT, null);
-		
-		if (timeout != null)
-		{
-			try
-			{
-				_timeout = Integer.parseInt(timeout);
-			}
-			catch (NumberFormatException ex)
-			{
-				throw new ConfigurationException("Invalid timeout specified.", ex);
-			}
-		}
-		else
-			_timeout = 0;
-
-		// TODO there is still a bit of space for improvements here.
-		configTreeFromEpr();
-
-		initialize(p_bConnect);
-	}
-
-	public EdtFtpImpl (List<KeyValuePair> p_oAttribs, boolean p_bConnect)
-			throws ConfigurationException, RemoteFileSystemException
-	{
-		m_oParms = new ConfigTree("fromProps");
-		for (KeyValuePair oCurr : p_oAttribs)
-			m_oParms.setAttribute(oCurr.getKey(), oCurr.getValue());
-		initialize(p_bConnect);
-	}
-
-	private void checkParms () throws ConfigurationException
-	{
-		String att = m_oParms.getAttribute(FileEpr.URL_TAG);
-		URL url = null;
-		
-		try
-		{
-			if (att != null)
-				url = new URL(att);
-		}
-		catch (MalformedURLException ex)
-		{
-			throw new ConfigurationException(ex);
-		}
-		
-		m_sFtpServer = (null != url) ? url.getHost() : m_oParms
-				.getAttribute(PARMS_FTP_SERVER);
-		if (null == m_sFtpServer)
-			throw new ConfigurationException("No FTP server specified");
-
-		String[] sa = (null == url) ? null : url.getUserInfo().split(":");
-		m_sUser = (null != sa) ? sa[0] : m_oParms.getAttribute(PARMS_USER);
-		if (null == m_sUser)
-			throw new ConfigurationException("No username specified for FTP");
-
-		m_sPasswd = (null != sa) ? sa[1] : m_oParms.getAttribute(PARMS_PASSWD);
-		if (null == m_sPasswd)
-			throw new ConfigurationException("No password specified for FTP");
-
-		m_sRemoteDir = (null != url) ? url.getFile() : m_oParms
-				.getAttribute(PARMS_REMOTE_DIR);
-		if (null == m_sRemoteDir) m_sRemoteDir = "";
-
-		m_sLocalDir = m_oParms.getAttribute(PARMS_LOCAL_DIR);
-		if (null == m_sLocalDir) m_sLocalDir = ".";
-
-		String sAux = m_oParms.getAttribute(PARMS_PORT);
-		m_iPort = (null != url) ? url.getPort() : (null == sAux) ? 21 : Integer
-				.parseInt(sAux);
-		
-		try
-		{
-			if (m_iPort < 0)
-				m_iPort = new URL("ftp://").getDefaultPort();
-		}
-		catch (MalformedURLException ex)
-		{
-			throw new ConfigurationException(ex);
-		}
-
-		// Dec-2006 (b_georges): it has been decided to set the Type to binary.
-		m_oXferType = FTPTransferType.BINARY;
-
-		m_bPassive = false;
-		sAux = m_oParms.getAttribute(PARMS_PASSIVE);
-		m_bPassive = (null != sAux) && Boolean.parseBoolean(sAux);
-
-		return;
-	}
-
-	private void configTreeFromEpr () throws RemoteFileSystemException
-	{
-		m_oParms = new ConfigTree("fromEpr");
-		try
-		{
-			m_oParms.setAttribute(RemoteFileSystem.PARMS_FTP_SERVER,
-					m_sFtpServer);
-			m_oParms.setAttribute(RemoteFileSystem.PARMS_USER, m_sUser);
-			m_oParms.setAttribute(RemoteFileSystem.PARMS_PASSWD, m_sPasswd);
-			m_oParms.setAttribute(RemoteFileSystem.PARMS_REMOTE_DIR,
-					m_sRemoteDir);
-			m_oParms.setAttribute(RemoteFileSystem.PARMS_PORT, Integer
-					.toString(m_iPort));
-			m_oParms
-					.setAttribute(RemoteFileSystem.PARMS_LOCAL_DIR, m_sLocalDir);
-			m_oParms.setAttribute(RemoteFileSystem.PARMS_ASCII, Boolean
-					.toString(false));
-			m_oParms.setAttribute(RemoteFileSystem.PARMS_PASSIVE, Boolean
-					.toString(m_bPassive));
-		}
-		catch (Exception e)
-		{
-			throw new RemoteFileSystemException(e);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.jboss.soa.esb.util.RemoteFileSystem#deleteRemoteFile(java.lang.String)
-	 */
-	public void deleteRemoteFile (String p_sFile) throws RemoteFileSystemException
-	{
-		try
-		{
-			m_oConn.delete(getRemoteDir() + "/" + new File(p_sFile).getName());
-		}
-		catch (Exception ex)
-		{
-			/*
-			 * It seems as though we have a race condition whereby one thread
-			 * tries to remove a file when another renames it!
-			 */
-			
-			throw new RemoteFileSystemException(ex);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.jboss.soa.esb.util.RemoteFileSystem#downloadFile(java.lang.String,
-	 *      java.lang.String)
-	 */
-	public void downloadFile (String p_sFile, String p_sFinalName)
-			throws IOException, RemoteFileSystemException
-	{
-		File oLocalDir = new File(m_sLocalDir);
-
-        File oLclFile = File.createTempFile("Rosetta_", TMP_SUFFIX, oLocalDir);
-
-		try
-		{
-			oLclFile.delete();
-		}
-		catch (Exception e)
-		{
-		}
-
-		try
-		{
-			m_oConn.get(FtpUtils.fileToFtpString(oLclFile), p_sFile);
-		}
-		catch (FTPException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
-
-                final File to = new File(p_sFinalName) ;
-		final File oNew = (to.isAbsolute() ? to : new File(oLocalDir, p_sFinalName)) ;
-		
-		if (oNew.exists()) 
-			oNew.delete();
-		
-		FileUtil.renameTo(oLclFile, oNew);
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.jboss.soa.esb.util.RemoteFileSystem#getFileListFromRemoteDir(java.lang.String)
-	 */
-	public String[] getFileListFromRemoteDir (String p_sSuffix)
-			throws RemoteFileSystemException, IOException
-	{
-		String sSuffix = (null == p_sSuffix) ? "*" : "*" + p_sSuffix;
-
-		try
-		{
-			return m_oConn.dir(sSuffix);
-		}
-		catch (FTPException ex)
-		{
-			String msg = ex.getMessage();
-			int rc = ex.getReplyCode();
-			if (rc == 550) // means File Not Found - see JBESB-303
-			{
-				_logger
-						.debug("No matching file or directory. Server returns: [" + rc + "] " + msg);
-				return null;
-			}
-			else
-			{
-				// TODO Test with different FTP Servers
-				String sMess = this.getClass().getSimpleName() + " can't list " + sSuffix + " due to: [" + rc + "] " + msg;
-				throw new RemoteFileSystemException(sMess);
-			}
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.jboss.soa.esb.util.RemoteFileSystem#getRemoteDir()
-	 */
-	public String getRemoteDir ()
-	{
-		return m_sRemoteDir;
-	}
-
-	private void initialize (boolean bConnect) throws ConfigurationException,
-			RemoteFileSystemException
-	{
-		checkParms();
-		if (bConnect)
-		{
-			try
-			{
-				m_oConn.setRemoteHost(m_sFtpServer);
-			}
-			catch (UnknownHostException ex)
-			{
-				_logger.error("Unknown host for FTP.", ex);
-
-				throw new ConfigurationException(ex);
-			}
-			catch (IOException ex)
-			{
-				_logger.error("Caught IOException", ex);
-				
-				throw new RemoteFileSystemException(ex);
-			}
-			catch (FTPException ex)
-			{
-				_logger.error("Caught FTPException.", ex);
-
-				throw new RemoteFileSystemException(ex);
-			}
-
-			try
-			{
-				m_oConn.setRemotePort(m_iPort);
-
-				m_oConn.connect();
-				for (int i1 = 0; i1 < 10 && !m_oConn.connected(); i1++)
-				{
-					try
-					{
-						Thread.sleep(200); // TODO arbitrary MAGIC number!
-					}
-					catch (InterruptedException ex)
-					{
-					}
-				}
-
-				// Configurable?
-				if (!m_oConn.connected())
-					throw new RemoteFileSystemException(
-							"Can't connect to FTP server");
-				m_oConn.user(m_sUser);
-				m_oConn.password(m_sPasswd);
-				
-				/*
-				 * It's ok to set the passive/active mode here as this is for
-				 * the data connection. The previous call to connect() was for
-				 * the command connection and is not affected by this setting.
-				 * 
-				 * http://www.slacksite.com/other/ftp.html
-				 */
-				
-				m_oConn.setConnectMode((m_bPassive) ? FTPConnectMode.PASV : FTPConnectMode.ACTIVE);
-				
-				m_oConn.setType(m_oXferType);
-				
-				if (_timeout > 0)
-				{
-					try
-					{ 
-						m_oConn.setTimeout(_timeout); 
-					}
-					catch (IOException e)
-					{ 
-						throw new RemoteFileSystemException("Failed while setting timeout=" + _timeout, e); 
-					}
-				}
-			}
-			catch (IOException ex)
-			{
-				throw new RemoteFileSystemException(ex);
-			}
-			catch (FTPException ex)
-			{
-				_logger.error("Caught FTPException.", ex);
-
-				throw new RemoteFileSystemException(ex);
-			}
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.jboss.soa.esb.util.RemoteFileSystem#quit()
-	 */
-	public void quit ()
-	{
-		if (null != m_oConn)
-		{
-			try
-			{
-				m_oConn.quit();
-			}
-			catch (Exception e)
-			{
-			}
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.jboss.soa.esb.util.RemoteFileSystem#remoteDelete(java.io.File)
-	 */
-	public void remoteDelete (File p_oFile) throws RemoteFileSystemException
-	{
-		try
-		{
-			m_oConn.delete(getRemoteDir() + "/" + p_oFile.getName());
-		}
-		catch (IOException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
-		catch (FTPException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.jboss.soa.esb.util.RemoteFileSystem#remoteRename(java.io.File,
-	 *      java.io.File)
-	 */
-	public void remoteRename (File p_oFrom, File p_oTo) throws RemoteFileSystemException
-	{
-		try
-		{
-			m_oConn.rename(FtpClientUtil.fileToFtpString(p_oFrom), FtpUtils
-					.fileToFtpString(p_oTo));
-		}
-		catch (FTPException ex)
-		{
-			if (ex.getReplyCode() == 550) // EdtFtp error code meaning File
-			// Not Found
-			{
-				_logger
-						.debug("EdtFtpImpl tried to rename file that had moved.");
-
-				throw new RemoteFileSystemException("File not found.");
-			}
-			else
-			{
-				_logger.error("Caught FTPException.", ex);
-
-				throw new RemoteFileSystemException(ex);
-			}
-		}
-		catch (Exception e)
-		{
-			e.printStackTrace();
-
-			String sMess = this.getClass().getSimpleName() + " can't rename in remote directory <" + e
-					.getMessage() + ">";
-			throw new RemoteFileSystemException(sMess);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.jboss.soa.esb.util.RemoteFileSystem#renameInRemoteDir(java.lang.String,
-	 *      java.lang.String)
-	 */
-	public void renameInRemoteDir (String p_sFrom, String p_sTo)
-			throws RemoteFileSystemException
-	{
-		String sRmtFrom = new File(p_sFrom).getName();
-		String sRmtTo = new File(p_sTo).getName();
-
-		try
-		{
-			m_oConn.rename(getRemoteDir() + "/" + sRmtFrom,
-					getRemoteDir() + "/" + sRmtTo);
-		}
-		catch (Exception e)
-		{
-			String sMess = this.getClass().getSimpleName() + " can't rename in remote directory <" + e
-					.getMessage() + ">";
-			throw new RemoteFileSystemException(sMess);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.jboss.soa.esb.util.RemoteFileSystem#setRemoteDir(java.lang.String)
-	 */
-	public void setRemoteDir (String p_sDir) throws RemoteFileSystemException
-	{
-		if (p_sDir == null)
-			throw new IllegalArgumentException();
-		
-		try
-		{
-			m_oConn.chdir(p_sDir);
-			m_sRemoteDir = p_sDir;
-		}
-		catch (IOException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
-		catch (FTPException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
-	}
-
-	/*
-	 * (non-Javadoc)
-	 * 
-	 * @see org.jboss.soa.esb.util.RemoteFileSystem#uploadFile(java.io.File,
-	 *      java.lang.String)
-	 */
-	public void uploadFile (File p_oFile, String p_sRemoteName)
-			throws RemoteFileSystemException
-	{
-		String sRemoteOK = getRemoteDir() + "/" + p_sRemoteName;
-		String sRemoteTmp = sRemoteOK + TMP_SUFFIX;
-
-		try
-		{
-			m_oConn.put(FtpUtils.fileToFtpString(p_oFile), sRemoteTmp);
-			m_oConn.rename(sRemoteTmp, sRemoteOK);
-		}
-		catch (IOException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
-		catch (FTPException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
-	}
-
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/FtpImpl.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/internal/soa/esb/util/FtpImpl.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/FtpImpl.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/FtpImpl.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,635 @@
+/*
+ * 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.internal.soa.esb.util;
+
+import java.io.BufferedInputStream;
+import java.io.BufferedOutputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.util.List;
+
+import org.apache.commons.net.ftp.FTP;
+import org.apache.commons.net.ftp.FTPClient;
+import org.apache.log4j.Logger;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.addressing.eprs.FTPEpr;
+import org.jboss.soa.esb.addressing.eprs.FileEpr;
+import org.jboss.soa.esb.common.Environment;
+import org.jboss.soa.esb.common.ModulePropertyManager;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.helpers.KeyValuePair;
+import org.jboss.soa.esb.util.FileUtil;
+import org.jboss.soa.esb.util.FtpClientUtil;
+import org.jboss.soa.esb.util.RemoteFileSystem;
+import org.jboss.soa.esb.util.RemoteFileSystemException;
+
+
+/**
+ * Simplified FTP transfers
+ * <p>
+ * Description: Implements a simple set of FTP functionality Parameters to
+ * establish the FTP connection are provided at construction time and cannot
+ * change during the lifetime of the object <br/>Hides low level details.
+ * </p>
+ */
+
+public class FtpImpl implements RemoteFileSystem
+{
+	private static final Logger _logger = Logger.getLogger(FtpImpl.class);
+
+	private static final String TMP_SUFFIX = ".rosettaPart";
+
+	private boolean m_bPassive;
+
+	private int m_iPort;
+	private int _timeout = 0;
+
+	protected FTPClient m_oConn ;
+
+	private FTPEpr m_oEpr;
+
+	protected ConfigTree m_oParms;
+
+	private String m_sFtpServer, m_sUser, m_sPasswd;
+
+	private String m_sRemoteDir, m_sLocalDir;
+
+	/**
+	 * Checks validity and completeness of parameters, and keeps the info
+	 * internally for subsequent FTP requests
+	 * 
+	 * @param p_oP
+	 *            ConfigTree
+	 * @throws ConfigurationException :
+	 *             if parameters are invalid or incomplete
+	 *             <li>Parameters: (XML attributes at the root level) </li>
+	 *             <li> ftpServer = name or IP of FTP server </li>
+	 *             <li> ftpUser = login ID for server </li>
+	 *             <li> ftpPassword </li>
+	 *             <li> localDirURI = absolute path in the local filesystem
+	 *             </li>
+	 *             <li> remoteDirURI = remote path is relative to ftp user home
+	 *             in remote computer </li>
+	 */
+
+	public FtpImpl (ConfigTree p_oP, boolean p_bConnect)
+			throws ConfigurationException, RemoteFileSystemException
+	{
+		m_oParms = p_oP;
+		initialize(p_bConnect);
+	}
+
+	public FtpImpl (FTPEpr p_oP, boolean p_bConnect)
+			throws ConfigurationException, RemoteFileSystemException
+	{
+		this(p_oP) ;
+		// TODO there is still a bit of space for improvements here.
+		configTreeFromEpr() ;
+		
+		initialize(p_bConnect) ;
+	}
+
+	public FtpImpl (FTPEpr p_oP)
+			throws ConfigurationException
+	{
+		m_oEpr = p_oP;
+
+		final URI uri;
+		try
+		{
+			uri = m_oEpr.getURI();
+		}
+		catch (URISyntaxException e)
+		{
+			throw new ConfigurationException(e);
+		}
+
+		m_sFtpServer = uri.getHost();
+
+                String[] sa = null;
+
+                if (uri.getUserInfo() != null)
+                        sa = uri.getUserInfo().split(":");
+
+                final int saLen = (sa == null ? 0 : sa.length) ;
+                switch(saLen)
+                {
+                case 2:
+                    m_sPasswd = sa[1] ;
+                case 1:
+                    m_sUser = sa[0] ;
+                }
+
+		m_sRemoteDir = uri.getPath();
+
+		final String tmpdir = System.getProperty("java.io.tmpdir");
+		if ((m_sRemoteDir == null) || (m_sRemoteDir.equals("")))
+			m_sRemoteDir = ModulePropertyManager.getPropertyManager(
+					ModulePropertyManager.TRANSPORTS_MODULE).getProperty(
+					Environment.FTP_REMOTEDIR, tmpdir);
+
+		m_iPort = uri.getPort();
+
+		m_sLocalDir = ModulePropertyManager.getPropertyManager(
+				ModulePropertyManager.TRANSPORTS_MODULE).getProperty(
+				Environment.FTP_LOCALDIR, tmpdir);
+
+        File oLocalDir = new File(m_sLocalDir);
+        if(!oLocalDir.exists()) {
+            throw new ConfigurationException("Local FTP directory '" + oLocalDir.getAbsolutePath()
+                    + "' doesn't exist.  Check your JBossESB config '"
+                    + ModulePropertyManager.TRANSPORTS_MODULE + ":" + Environment.FTP_LOCALDIR + "'");
+        }
+
+        m_bPassive = false;
+
+		try
+		{
+			m_bPassive = m_oEpr.getPassive();
+		}
+		catch (URISyntaxException e)
+		{
+			_logger.warn(e);
+		}
+
+		String timeout = ModulePropertyManager.getPropertyManager(ModulePropertyManager.TRANSPORTS_MODULE).getProperty(Environment.FTP_SOCKET_TIMEOUT, null);
+		
+		if (timeout != null)
+		{
+			try
+			{
+				_timeout = Integer.parseInt(timeout);
+			}
+			catch (NumberFormatException ex)
+			{
+				throw new ConfigurationException("Invalid timeout specified.", ex);
+			}
+		}
+		else
+			_timeout = 0;
+	}
+
+	public FtpImpl (List<KeyValuePair> p_oAttribs, boolean p_bConnect)
+			throws ConfigurationException, RemoteFileSystemException
+	{
+		m_oParms = new ConfigTree("fromProps");
+		for (KeyValuePair oCurr : p_oAttribs)
+			m_oParms.setAttribute(oCurr.getKey(), oCurr.getValue());
+		initialize(p_bConnect);
+	}
+
+	protected void checkParms () throws ConfigurationException
+	{
+		String att = m_oParms.getAttribute(FileEpr.URL_TAG);
+		URI uri = null;
+		
+		try
+		{
+			if (att != null)
+				uri = new URI(att);
+		}
+		catch (URISyntaxException ex)
+		{
+			throw new ConfigurationException(ex);
+		}
+		
+		m_sFtpServer = (null != uri) ? uri.getHost() : m_oParms
+				.getAttribute(PARMS_FTP_SERVER);
+		if (null == m_sFtpServer)
+			throw new ConfigurationException("No FTP server specified");
+
+		String[] sa = (null == uri) ? null : uri.getUserInfo().split(":");
+		m_sUser = (null != sa) ? sa[0] : m_oParms.getAttribute(PARMS_USER);
+		if (null == m_sUser)
+			throw new ConfigurationException("No username specified for FTP");
+
+		m_sPasswd = (null != sa) ? sa[1] : m_oParms.getAttribute(PARMS_PASSWD);
+
+		m_sRemoteDir = (null != uri) ? uri.getPath() : m_oParms
+				.getAttribute(PARMS_REMOTE_DIR);
+		if (null == m_sRemoteDir) m_sRemoteDir = "";
+
+		m_sLocalDir = m_oParms.getAttribute(PARMS_LOCAL_DIR);
+		if (null == m_sLocalDir) m_sLocalDir = ".";
+
+		String sAux = m_oParms.getAttribute(PARMS_PORT);
+		m_iPort = (null != uri) ? uri.getPort() : (null == sAux) ? 21 : Integer
+				.parseInt(sAux);
+		
+		m_bPassive = false;
+		sAux = m_oParms.getAttribute(PARMS_PASSIVE);
+		m_bPassive = (null != sAux) && Boolean.parseBoolean(sAux);
+
+		return;
+	}
+
+	protected void configTreeFromEpr () throws RemoteFileSystemException
+	{
+		m_oParms = new ConfigTree("fromEpr");
+		try
+		{
+			m_oParms.setAttribute(RemoteFileSystem.PARMS_FTP_SERVER,
+					m_sFtpServer);
+			m_oParms.setAttribute(RemoteFileSystem.PARMS_USER, m_sUser);
+			if (m_sPasswd != null)
+			    m_oParms.setAttribute(RemoteFileSystem.PARMS_PASSWD, m_sPasswd);
+			m_oParms.setAttribute(RemoteFileSystem.PARMS_REMOTE_DIR,
+					m_sRemoteDir);
+			if (m_iPort > 0)
+			{
+			    m_oParms.setAttribute(RemoteFileSystem.PARMS_PORT, Integer
+					.toString(m_iPort));
+			}
+			m_oParms
+					.setAttribute(RemoteFileSystem.PARMS_LOCAL_DIR, m_sLocalDir);
+			m_oParms.setAttribute(RemoteFileSystem.PARMS_ASCII, Boolean
+					.toString(false));
+			m_oParms.setAttribute(RemoteFileSystem.PARMS_PASSIVE, Boolean
+					.toString(m_bPassive));
+		}
+		catch (Exception e)
+		{
+			throw new RemoteFileSystemException(e);
+		}
+	}
+
+        /*
+         * (non-Javadoc)
+         * 
+         * @see org.jboss.soa.esb.util.RemoteFileSystem#deleteRemoteFile(java.lang.String)
+         */
+        public void deleteRemoteFile (String p_sFile) throws RemoteFileSystemException
+        {
+            try
+            {
+                changeRemoteDirectory() ;
+                if (!m_oConn.deleteFile(p_sFile))
+                {
+                    throw new RemoteFileSystemException("Failed to delete remote file: " + m_oConn.getReplyString());
+                }
+            }
+            catch (final IOException ioe)
+            {
+                throw new RemoteFileSystemException(ioe);
+            }
+        }
+
+        /*
+         * (non-Javadoc)
+         * 
+         * @see org.jboss.soa.esb.util.RemoteFileSystem#downloadFile(java.lang.String,
+         *      java.lang.String)
+         */
+        public void downloadFile (String p_sFile, String p_sFinalName)
+                        throws IOException, RemoteFileSystemException
+        {
+                try
+                {
+                    final File to = new File(p_sFinalName) ;
+                    final File oLocalDir = new File(m_sLocalDir);
+                    final File oNew = (to.isAbsolute() ? to : new File(oLocalDir, p_sFinalName)) ;
+                    if (oNew.exists()) 
+                        oNew.delete();
+                    
+                    final File toTmp = new File(p_sFinalName + TMP_SUFFIX) ;
+                    final File oNewTmp = (toTmp.isAbsolute() ? toTmp : new File(oLocalDir, p_sFinalName + TMP_SUFFIX)) ;
+                    if (oNewTmp.exists()) 
+                        oNewTmp.delete();
+                    
+                    changeRemoteDirectory() ;
+                    final InputStream is = m_oConn.retrieveFileStream(p_sFile) ;
+                    if (is == null)
+                    {
+                        throw new RemoteFileSystemException("Could not download file: " + m_oConn.getReplyString());
+                    }
+                    
+                    try
+                    {
+                        final FileOutputStream fos = new FileOutputStream(oNewTmp) ;
+                        try
+                        {
+                            copyStream(is, fos) ;
+                        }
+                        finally
+                        {
+                            fos.close() ;
+                        }
+                    }
+                    finally
+                    {
+                        is.close() ;
+                    }
+                    if (!m_oConn.completePendingCommand())
+                    {
+                        oNewTmp.delete() ;
+                        throw new RemoteFileSystemException("Failed to download contents: " + m_oConn.getReplyString()) ;
+                    }
+                    FileUtil.renameTo(oNewTmp, oNew) ;
+                }
+                catch (final IOException ioe)
+                {
+                    throw new RemoteFileSystemException(ioe) ;
+                }
+        }
+
+        /*
+         * (non-Javadoc)
+         * 
+         * @see org.jboss.soa.esb.util.RemoteFileSystem#getFileListFromRemoteDir(java.lang.String)
+         */
+        public String[] getFileListFromRemoteDir (String p_sSuffix)
+                        throws RemoteFileSystemException, IOException
+        {
+                String sSuffix = (null == p_sSuffix) ? "*" : "*" + p_sSuffix;
+
+                try
+                {
+                    changeRemoteDirectory() ;
+                    return m_oConn.listNames(sSuffix) ;
+                }
+                catch (final IOException ioe)
+                {
+                    throw new RemoteFileSystemException(ioe) ;
+                }
+        }
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.jboss.soa.esb.util.RemoteFileSystem#getRemoteDir()
+	 */
+	public String getRemoteDir ()
+	{
+		return m_sRemoteDir;
+	}
+
+        protected void initialize (boolean bConnect)
+            throws ConfigurationException, RemoteFileSystemException
+        {
+            checkParms();
+            m_oConn = instantiateClient() ;
+            
+            if (bConnect)
+            {
+                try
+                {
+                    connect() ;
+                    
+                    if (!m_oConn.isConnected())
+                        throw new RemoteFileSystemException(
+                                        "Can't connect to FTP server");
+                    
+                    if (!m_oConn.login(m_sUser, m_sPasswd))
+                    {
+                        m_oConn.logout() ;
+                        throw new RemoteFileSystemException("Remote login failed: " + m_oConn.getReplyString());
+                    }
+                    m_oConn.setFileType(FTP.BINARY_FILE_TYPE) ;
+                    if (m_bPassive)
+                    {
+                        m_oConn.enterLocalPassiveMode() ;
+                    }
+                    if (_timeout > 0)
+                    {
+                        m_oConn.setDataTimeout(_timeout);
+                    }
+                }
+                catch (final IOException ioe)
+                {
+                    if (m_oConn.isConnected())
+                    {
+                        try
+                        {
+                            m_oConn.disconnect() ;
+                        }
+                        catch (final IOException ioe2) {} // ignore
+                    }
+                    throw new RemoteFileSystemException(ioe); 
+                }
+            }
+        }
+
+        protected FTPClient instantiateClient()
+            throws RemoteFileSystemException
+        {
+                return new FTPClient() ;
+        }
+        
+        protected void connect()
+                throws IOException
+        {
+            if (m_iPort > 0)
+            {
+                m_oConn.connect(m_sFtpServer, m_iPort) ;
+            }
+            else
+            {
+                m_oConn.connect(m_sFtpServer) ;
+            }
+        }
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.jboss.soa.esb.util.RemoteFileSystem#quit()
+	 */
+	public void quit ()
+	{
+		if (null != m_oConn)
+		{
+			try
+			{
+				m_oConn.quit();
+				m_oConn.disconnect() ;
+			}
+			catch (Exception e)
+			{
+			}
+		}
+	}
+
+        /*
+         * (non-Javadoc)
+         * 
+         * @see org.jboss.soa.esb.util.RemoteFileSystem#remoteDelete(java.io.File)
+         */
+        public void remoteDelete (File p_oFile) throws RemoteFileSystemException
+        {
+                try
+                {
+                    changeRemoteDirectory() ;
+                    if (!m_oConn.deleteFile(p_oFile.getName()))
+                    {
+                        throw new RemoteFileSystemException("Failed to delete remote file: " + m_oConn.getReplyString());
+                    }
+                }
+                catch (final IOException ioe)
+                {
+                    throw new RemoteFileSystemException(ioe);
+                }
+        }
+
+        /*
+         * (non-Javadoc)
+         * 
+         * @see org.jboss.soa.esb.util.RemoteFileSystem#remoteRename(java.io.File,
+         *      java.io.File)
+         */
+        public void remoteRename (File p_oFrom, File p_oTo) throws RemoteFileSystemException
+        {
+                try
+                {
+                        changeRemoteDirectory();
+                        if (!m_oConn.rename(FtpClientUtil.fileToFtpString(p_oFrom),
+                                FtpUtils.fileToFtpString(p_oTo)))
+                        {
+                            throw new RemoteFileSystemException("Failed to rename file: " + m_oConn.getReplyString());
+                        }
+                }
+                catch (final IOException ioe)
+                {
+                    throw new RemoteFileSystemException(ioe);
+                }
+        }
+
+        /*
+         * (non-Javadoc)
+         * 
+         * @see org.jboss.soa.esb.util.RemoteFileSystem#renameInRemoteDir(java.lang.String,
+         *      java.lang.String)
+         */
+        public void renameInRemoteDir (String p_sFrom, String p_sTo)
+                        throws RemoteFileSystemException
+        {
+            try
+            {
+                changeRemoteDirectory() ;
+                if (!m_oConn.rename(p_sFrom, p_sTo))
+                {
+                    throw new RemoteFileSystemException("Failed to rename file: " + m_oConn.getReplyString());
+                }
+            }
+            catch (final IOException ioe)
+            {
+                throw new RemoteFileSystemException(ioe);
+            }
+        }
+
+        /*
+         * (non-Javadoc)
+         * 
+         * @see org.jboss.soa.esb.util.RemoteFileSystem#setRemoteDir(java.lang.String)
+         */
+        public void setRemoteDir (String p_sDir) throws RemoteFileSystemException
+        {
+                if (p_sDir == null)
+                        throw new IllegalArgumentException();
+                
+                m_sRemoteDir = p_sDir;
+        }
+
+        /*
+         * (non-Javadoc)
+         * 
+         * @see org.jboss.soa.esb.util.RemoteFileSystem#uploadFile(java.io.File,
+         *      java.lang.String)
+         */
+        public void uploadFile (File p_oFile, String p_sRemoteName)
+                        throws RemoteFileSystemException
+        {
+            try
+            {
+                changeRemoteDirectory() ;
+                
+                final String sRemoteTmp = p_sRemoteName + TMP_SUFFIX;
+                
+                final OutputStream os = m_oConn.storeFileStream(sRemoteTmp) ;
+                try
+                {
+                    final FileInputStream fis = new FileInputStream(p_oFile) ;
+                    try
+                    {
+                        copyStream(fis, os) ;
+                    }
+                    finally
+                    {
+                        fis.close() ;
+                    }
+                }
+                finally
+                {
+                    os.flush() ;
+                    os.close() ;
+                }
+                if (!m_oConn.completePendingCommand())
+                {
+                    throw new RemoteFileSystemException("Failed to upload contents: " + m_oConn.getReplyString()) ;
+                }
+                if (!m_oConn.rename(sRemoteTmp, p_sRemoteName))
+                {
+                    throw new RemoteFileSystemException("Failed to rename file: " + m_oConn.getReplyString());
+                }
+            }
+            catch (final IOException ioe)
+            {
+                throw new RemoteFileSystemException(ioe);
+            }
+        }
+        
+        private void changeRemoteDirectory()
+            throws IOException, RemoteFileSystemException
+        {
+            final String remoteDir = getRemoteDir() ;
+            if ((remoteDir != null) && (remoteDir.length() > 0))
+            {
+                if (!m_oConn.changeWorkingDirectory(remoteDir))
+                {
+                    throw new RemoteFileSystemException("Failed to change to remote directory: " + m_oConn.getReplyString());
+                }
+            }
+        }
+        
+        private void copyStream(final InputStream is, final OutputStream os)
+            throws IOException
+        {
+            final BufferedInputStream bis = new BufferedInputStream(is) ;
+            final BufferedOutputStream bos = new BufferedOutputStream(os) ;
+            
+            final byte[] buffer = new byte[256] ;
+            while(true)
+            {
+                final int count = bis.read(buffer) ;
+                if (count <= 0)
+                {
+                    break ;
+                }
+                bos.write(buffer, 0, count) ;
+            }
+            bos.flush() ;
+        }
+}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/FtpsImpl.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/internal/soa/esb/util/FtpsImpl.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/FtpsImpl.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/FtpsImpl.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,315 @@
+/*
+ * 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.internal.soa.esb.util;
+
+import java.io.BufferedInputStream;
+import java.io.DataInputStream;
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.security.NoSuchAlgorithmException;
+import java.security.cert.CertificateException;
+import java.security.cert.CertificateFactory;
+import java.security.cert.X509Certificate;
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.net.ssl.X509TrustManager;
+
+import org.apache.commons.net.ftp.FTPClient;
+import org.apache.commons.net.ftp.FTPSClient;
+import org.apache.log4j.Logger;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.addressing.eprs.FTPSEpr;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.helpers.KeyValuePair;
+import org.jboss.soa.esb.util.RemoteFileSystemException;
+
+/**
+ * Simplified FTP transfers
+ * <p>
+ * Description: Implements a simple set of FTP functionality Parameters to
+ * establish the FTP connection are provided at construction time and cannot
+ * change during the lifetime of the object <br/>Hides low level details.
+ * </p>
+ */
+
+public class FtpsImpl extends FtpImpl
+{
+	private static final Logger _logger = Logger.getLogger(FtpsImpl.class);
+	
+	private URI m_oCertificate ;
+	private String m_oCertificateName ;
+
+	/**
+	 * Checks validity and completeness of parameters, and keeps the info
+	 * internally for subsequent FTP requests
+	 * 
+	 * @param p_oP
+	 *            ConfigTree
+	 * @throws ConfigurationException :
+	 *             if parameters are invalid or incomplete
+	 *             <li>Parameters: (XML attributes at the root level) </li>
+	 *             <li> ftpServer = name or IP of FTP server </li>
+	 *             <li> ftpUser = login ID for server </li>
+	 *             <li> ftpPassword </li>
+	 *             <li> localDirURI = absolute path in the local filesystem
+	 *             </li>
+	 *             <li> remoteDirURI = remote path is relative to ftp user home
+	 *             in remote computer </li>
+	 */
+	public FtpsImpl (ConfigTree p_oP, boolean p_bConnect)
+			throws ConfigurationException, RemoteFileSystemException
+	{
+		super(p_oP, p_bConnect) ;
+	}
+
+	public FtpsImpl (FTPSEpr p_oP, boolean p_bConnect)
+			throws ConfigurationException, RemoteFileSystemException
+	{
+		super(p_oP) ;
+
+		try
+		{
+			m_oCertificate = p_oP.getCertificateURI() ;
+		}
+		catch (final URISyntaxException urise)
+		{
+			_logger.warn(urise);
+		}
+		m_oCertificateName = p_oP.getCertificateName() ;
+		
+		// TODO there is still a bit of space for improvements here.
+		configTreeFromEpr();
+
+		initialize(p_bConnect);
+	}
+
+	public FtpsImpl (List<KeyValuePair> p_oAttribs, boolean p_bConnect)
+			throws ConfigurationException, RemoteFileSystemException
+	{
+		super(p_oAttribs, p_bConnect) ;
+	}
+
+	protected void configTreeFromEpr () throws RemoteFileSystemException
+	{
+		super.configTreeFromEpr() ;
+		try
+		{
+			if (m_oCertificate != null)
+			{
+				m_oParms.setAttribute(PARMS_CERTIFICATE, m_oCertificate.toString());
+			}
+			if (m_oCertificateName != null)
+			{
+				m_oParms.setAttribute(PARMS_CERTIFICATE_NAME, m_oCertificateName);
+			}
+		}
+		catch (Exception e)
+		{
+			throw new RemoteFileSystemException(e);
+		}
+	}
+	
+	protected void checkParms() throws ConfigurationException
+	{
+		super.checkParms();
+		
+		final String certificate = m_oParms.getAttribute(PARMS_CERTIFICATE) ;
+		
+		if (certificate != null)
+		{
+			try
+			{
+				m_oCertificate = new URI(certificate) ;
+			}
+			catch (final URISyntaxException ex)
+			{
+				throw new ConfigurationException("Failed to create certificate URI", ex) ;
+			}
+		}
+		m_oCertificateName = m_oParms.getAttribute(PARMS_CERTIFICATE_NAME) ;
+	}
+        
+        protected FTPClient instantiateClient()
+            throws RemoteFileSystemException
+        {
+                final FTPSClient ftpsClient ;
+                try
+                {
+                    ftpsClient = new FTPSClient() ;
+                }
+                catch (final NoSuchAlgorithmException nsae)
+                {
+                    throw new RemoteFileSystemException(nsae) ;
+                }
+                
+                try
+                {
+                    ftpsClient.setTrustManager(new ESBTrustManager(m_oCertificate)) ;
+                }
+                catch (final Exception ex)
+                {
+                    throw new RemoteFileSystemException("Exception creating trust manager", ex) ;
+                }
+                return ftpsClient ;
+        }
+        
+        protected void connect()
+            throws IOException
+        {
+                super.connect() ;
+                final FTPSClient ftpsClient = (FTPSClient)m_oConn ;
+                
+                // force passive mode
+                ftpsClient.enterLocalPassiveMode() ;
+                
+                ftpsClient.execPBSZ(0) ;
+                ftpsClient.execPROT("P") ;
+        }
+        
+        /**
+         * Trust manager for handling the server certificate validation.
+         * @author kevin
+         */
+        private static final class ESBTrustManager implements X509TrustManager
+        {
+            /**
+             * Certificates being imported.
+             */
+            private final X509Certificate[] certificates ;
+            /**
+             * Start of certificate indicator.
+             */
+            private static final String BEGIN_CERTIFICATE = "-----BEGIN CERTIFICATE-----" ;
+            
+            /**
+             * Construct the trust manager with the specified certificate.
+             * 
+             * @param certificate  The certificate of the signer or null if signature not checked.
+             * @throws URISyntaxException
+             * @throws MalformedURLException
+             * @throws IOException
+             * @throws CertificateException
+             */
+            public ESBTrustManager(final URI certificate)
+                throws URISyntaxException, MalformedURLException, IOException, CertificateException
+            {
+                if (certificate != null)
+                {
+                    final InputStream is ;
+                    if (certificate.isAbsolute())
+                    {
+                        is = certificate.toURL().openStream() ;
+                    }
+                    else
+                    {
+                        final File file = new File(certificate) ;
+                        is = file.toURL().openStream() ;
+                    }
+                    final ArrayList<X509Certificate> certificates = new ArrayList<X509Certificate>() ;
+                    try
+                    {
+                        final CertificateFactory cf = CertificateFactory.getInstance("X.509");
+                        
+                        final BufferedInputStream bis = new BufferedInputStream(is) ;
+                        final DataInputStream dis = new DataInputStream(bis) ;
+                        
+                        if (bis.available() > 0)
+                        {
+                            // We have to skip any preamble to read the certificate
+                            do
+                            {
+                                bis.mark(BEGIN_CERTIFICATE.length() * 2) ;
+                                final String line = dis.readLine() ;
+                                if (BEGIN_CERTIFICATE.equals(line))
+                                {
+                                    bis.reset() ;
+                                    break ;
+                                }
+                            }
+                            while (bis.available() > 0) ;
+                            
+                            if (bis.available() > 0)
+                            {
+                                final X509Certificate cert = (X509Certificate)cf.generateCertificate(bis);
+                                certificates.add(cert) ;
+                            }
+                        }
+                        this.certificates = certificates.toArray(new X509Certificate[certificates.size()]) ;
+                    }
+                    finally
+                    {
+                        is.close() ;
+                    }
+                }
+                else
+                {
+                    this.certificates = null ;
+                }
+            }
+            
+            public void checkClientTrusted(X509Certificate[] chain, String authType)
+                    throws CertificateException
+            {
+            }
+            
+            public void checkServerTrusted(X509Certificate[] chain, String authType)
+                    throws CertificateException
+            {
+                final int numCerts = (chain == null ? 0 : chain.length) ;
+                for(int count = 0 ; count < numCerts ; count++)
+                {
+                    final X509Certificate cert = chain[count] ;
+                    cert.checkValidity() ;
+                    verify(cert) ;
+                }
+            }
+            
+            private void verify(final X509Certificate cert)
+                throws CertificateException
+            {
+                final int numCertificates = (certificates == null ? 0 : certificates.length) ;
+                if (numCertificates > 0)
+                {
+                    for(int count = 0 ; count < numCertificates ; count++)
+                    {
+                        try
+                        {
+                            cert.verify(certificates[count].getPublicKey()) ;
+                            return ;
+                        }
+                        catch (final Exception ex) {} // ignore and try next certificate
+                    }
+                    throw new CertificateException("Failed to verify certificate") ;
+                }
+            }
+            
+            public X509Certificate[] getAcceptedIssuers()
+            {
+                return certificates ;
+            }
+        }
+}

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/SecureFtpImpl.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/SecureFtpImpl.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/internal/soa/esb/util/SecureFtpImpl.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -25,17 +25,23 @@
  */
 package org.jboss.internal.soa.esb.util;
 
+import java.io.BufferedInputStream;
+import java.io.BufferedOutputStream;
 import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
 import java.io.IOException;
-import java.net.MalformedURLException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.net.URI;
 import java.net.URISyntaxException;
-import java.net.URL;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Vector;
 
 import org.apache.log4j.Logger;
 import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.addressing.eprs.FileEpr;
 import org.jboss.soa.esb.addressing.eprs.SFTPEpr;
 import org.jboss.soa.esb.common.Environment;
 import org.jboss.soa.esb.common.ModulePropertyManager;
@@ -61,7 +67,6 @@
  * http://www.jcraft.com/
  * 
  * @author b_georges
- * 
  */
 
 public class SecureFtpImpl implements RemoteFileSystem 
@@ -78,16 +83,8 @@
 
 	private Session session = null;
 
-	private Channel m_oChannel = null;
-
 	private ChannelSftp m_oSftpChannel = null;
 
-	// TODO Add support for certificate. Not for GA though.
-	private URL m_oCertificate = null;
-
-	@SuppressWarnings("unused")
-	private boolean m_bConnected, m_bPassive;
-
 	private int m_iPort;
 
 	private SFTPEpr m_oEpr;
@@ -125,72 +122,43 @@
 
 		m_oEpr = p_oP;
 
-		URL url = null;
+		final URI uri ;
 		try {
-			url = m_oEpr.getURL();
-		} catch (MalformedURLException e) {
-			throw new RemoteFileSystemException(e);
+			uri = m_oEpr.getURI();
 		} catch (URISyntaxException e) {
 			throw new RemoteFileSystemException(e);
 		}
 
-		m_sFtpServer = url.getHost();
+		m_sFtpServer = uri.getHost();
 
 		String[] sa = null;
 
-		if (url.getUserInfo() != null)
-			sa = url.getUserInfo().split(":");
+		if (uri.getUserInfo() != null)
+			sa = uri.getUserInfo().split(":");
 
-		if (sa == null)
-			sa = new String[] { "", "" };
+		final int saLen = (sa == null ? 0 : sa.length) ;
+		switch(saLen)
+		{
+		case 2:
+		    m_sPasswd = sa[1] ;
+		case 1:
+		    m_sUser = sa[0] ;
+		}
 
-		m_sUser = (sa.length < 1) ? "" : sa[0];
-		m_sPasswd = (sa.length < 2) ? "" : sa[1];
+		m_sRemoteDir = uri.getPath();
 
-		m_sRemoteDir = url.getFile();
-
 		final String tmpdir = System.getProperty("java.io.tmpdir");
 		if ((m_sRemoteDir == null) || (m_sRemoteDir.equals("")))
 			m_sRemoteDir = ModulePropertyManager.getPropertyManager(
 					ModulePropertyManager.TRANSPORTS_MODULE).getProperty(
 							Environment.FTP_REMOTEDIR, tmpdir);
 
-		m_iPort = url.getPort();
-		if (m_iPort < 0)
-			m_iPort = url.getDefaultPort();
+		m_iPort = uri.getPort();
 
 		m_sLocalDir = ModulePropertyManager.getPropertyManager(
 				ModulePropertyManager.TRANSPORTS_MODULE).getProperty(
 						Environment.FTP_LOCALDIR, tmpdir);
 
-		m_bPassive = false;
-
-		try
-		{
-			m_bPassive = m_oEpr.getPassive();
-		} catch (URISyntaxException e) 
-		{
-			_logger.warn(e);
-		}
-
-		try
-		{
-			m_oCertificate = m_oEpr.getCertificateURL();
-		} 
-		catch (MalformedURLException ex)
-		{
-			_logger.error(ex);
-			
-			throw new ConfigurationException(ex);
-		}
-		catch (URISyntaxException e) 
-		{
-			_logger.warn(e);
-			
-			throw new ConfigurationException(e);
-		}
-
-		// TODO there is still a bit of space for improvements here.
 		configTreeFromEpr();
 
 		initialize(p_bConnect);
@@ -221,62 +189,71 @@
 		{
 			try
 			{
-				session = m_oJSch.getSession(m_sUser, m_sFtpServer, m_iPort);
+				if (m_iPort > 0)
+				    session = m_oJSch.getSession(m_sUser, m_sFtpServer, m_iPort);
+				else
+				    session = m_oJSch.getSession(m_sUser, m_sFtpServer);
 	
-				UserInfo ui = new SecureFtpUserInfo(m_sPasswd);
-				session.setUserInfo(ui);
-	
+				if (m_sPasswd != null)
+				{
+				    final UserInfo ui = new SecureFtpUserInfo(m_sPasswd);
+				    session.setUserInfo(ui);
+				}
+				
+				session.setConfig("StrictHostKeyChecking", "no") ;
+				session.setConfig("PreferredAuthentications", "password") ;
+
 				session.connect();
 	
-				m_oChannel = session.openChannel(SECURE_CHANNEL);
+				final Channel channel  = session.openChannel(SECURE_CHANNEL);
+				channel.connect();
 	
-				m_oChannel.connect();
+				m_oSftpChannel = (ChannelSftp) channel;
 	
-				m_oSftpChannel = (ChannelSftp) m_oChannel;
-	
-				for (int i1 = 0; i1 < 10 && !session.isConnected(); i1++)
-				{
-					try
-					{
-						Thread.sleep(200);  // TODO magic number
-					}
-					catch (InterruptedException ex)
-					{
-						// try again?
-					}
-				}
-				
 				if (!session.isConnected())
 					throw new RemoteFileSystemException("Can't connect to FTP server");
-	
-				m_bConnected = this.session.isConnected();
 			}
 			catch (JSchException ex)
 			{
-				_logger.error("Caught Secure FTP Exception.", ex);
+				if ((session != null) && session.isConnected())
+				{
+				    session.disconnect() ;
+				}
+				_logger.error("Caught Secure FTP Exception.");
+				_logger.debug("Caught Secure FTP Exception.", ex);
 				
 				throw new RemoteFileSystemException(ex);
 			}
 		}
-		// TODO set connection Mode [PASSIVE|ACTIVE]using m_bPassive ?
-
 	}
 
 	private void checkParms() throws ConfigurationException 
 	{
-		m_sFtpServer = m_oParms.getAttribute(PARMS_FTP_SERVER);
+            String att = m_oParms.getAttribute(FileEpr.URL_TAG);
+            URI uri = null;
+            
+            try
+            {
+                    if (att != null)
+                            uri = new URI(att);
+            }
+            catch (URISyntaxException ex)
+            {
+                    throw new ConfigurationException(ex);
+            }
+            
+		m_sFtpServer = (null != uri) ? uri.getHost() : m_oParms.getAttribute(PARMS_FTP_SERVER);
 		if (null == m_sFtpServer)
 			throw new ConfigurationException("No SFTP server specified");
 
-		m_sUser = m_oParms.getAttribute(PARMS_USER);
+                String[] sa = (null == uri) ? null : uri.getUserInfo().split(":");
+		m_sUser = (null != sa) ? sa[0] : m_oParms.getAttribute(PARMS_USER);
 		if (null == m_sUser)
 			throw new ConfigurationException("No username specified for SFTP");
 
-		m_sPasswd = m_oParms.getAttribute(PARMS_PASSWD);
-		if (null == m_sPasswd)
-			throw new ConfigurationException("No password specified for SFTP");
+		m_sPasswd = (null != sa) ? sa[1] : m_oParms.getAttribute(PARMS_PASSWD);
 
-		m_sRemoteDir = m_oParms.getAttribute(PARMS_REMOTE_DIR);
+		m_sRemoteDir = (null != uri) ? uri.getPath() : m_oParms.getAttribute(PARMS_REMOTE_DIR);
 		if (null == m_sRemoteDir)
 			m_sRemoteDir = "";
 
@@ -288,30 +265,12 @@
 		
 		try
 		{
-			m_iPort = (null == sAux) ? 22 : Integer.parseInt(sAux);
+			m_iPort = (null != uri) ? uri.getPort() : (null == sAux) ? 22 : Integer.parseInt(sAux);
 		}
 		catch (Exception ex)
 		{
 			throw new ConfigurationException(ex);
 		}
-
-		m_bPassive = false;
-		sAux = m_oParms.getAttribute(PARMS_PASSIVE);
-		m_bPassive = (null != sAux) && Boolean.parseBoolean(sAux);
-
-		final String certificate = m_oParms.getAttribute(PARMS_CERTIFICATE) ;
-		
-		if (certificate != null)
-		{
-			try
-			{
-				m_oCertificate = new URL(certificate);
-			}
-			catch (MalformedURLException ex)
-			{
-				throw new ConfigurationException(ex);
-			}
-		}
 	}
 
 	/*
@@ -325,7 +284,8 @@
 	{
 		try
 		{
-			m_oSftpChannel.rm(getRemoteDir() + "/" + new File(p_sFile).getName());
+			m_oSftpChannel.cd(getRemoteDir()) ;
+			m_oSftpChannel.rm(p_sFile);
 		}
 		catch (SftpException ex)
 		{
@@ -363,6 +323,7 @@
 	{
 		try
 		{
+			m_oSftpChannel.cd(getRemoteDir()) ;
 			String sSuffix = (null == p_sSuffix) ? "*" : "*" + p_sSuffix;
 			List<String> lFileList = new ArrayList<String>();
 			Vector vFileList = m_oSftpChannel.ls(sSuffix);
@@ -388,6 +349,10 @@
 		}
 		catch (SftpException ex)
 		{
+			if (ex.id == ChannelSftp.SSH_FX_NO_SUCH_FILE)
+			{
+			    return null ;
+			}
 			throw new RemoteFileSystemException(ex);
 		}
 	}
@@ -401,14 +366,7 @@
 	 */
 	public void setRemoteDir(String p_sDir) throws RemoteFileSystemException 
 	{
-		try
-		{
-			m_oSftpChannel.cd(p_sDir);
-		}
-		catch (SftpException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
+		m_sRemoteDir = p_sDir ;
 	}
 
 	/*
@@ -422,23 +380,16 @@
 	 *      java.lang.String)
 	 */
 	public void renameInRemoteDir(String p_sFrom, String p_sTo)
-	throws RemoteFileSystemException 
+	    throws RemoteFileSystemException 
 	{
-
-		String sRmtFrom = new File(p_sFrom).getName();
-		String sRmtTo = new File(p_sTo).getName();
-
 		try 
 		{
-			m_oSftpChannel.rename(getRemoteDir() + "/" + sRmtFrom,
-					getRemoteDir() + "/" + sRmtTo);
+			m_oSftpChannel.cd(getRemoteDir()) ;
+			m_oSftpChannel.rename(p_sFrom, p_sTo) ;
 		} 
-		catch (Exception e) 
+		catch (SftpException se) 
 		{
-			String sMess = this.getClass().getSimpleName()
-			+ " can't rename in remote directory <" + e.getMessage()
-			+ ">";
-			throw new RemoteFileSystemException(sMess);
+			throw new RemoteFileSystemException("Faile to rename file", se) ;
 		}
 	}
 
@@ -456,85 +407,117 @@
 	{
 		try 
 		{
+			m_oSftpChannel.cd(getRemoteDir()) ;
 			m_oSftpChannel.rename(FtpUtils.fileToFtpString(p_oFrom), FtpUtils
 					.fileToFtpString(p_oTo));
 		} 
-		catch (Exception e) 
+		catch (SftpException se) 
 		{
-			String sMess = this.getClass().getSimpleName()
-			+ " can't rename in remote directory <" + e.getMessage()
-			+ ">";
-			throw new RemoteFileSystemException(sMess);
+			throw new RemoteFileSystemException("Faile to rename file", se) ;
 		}
 	}
 
-	/*
-	 * Upload the local File p_ofile to p_sRemoteName
-	 * 
-	 * @param p_oFile The local file name we want to upload
-	 * 
-	 * @param p_sRemoteName The remote file name [can be the same as p_oFile of
-	 * course]
-	 * 
-	 * @see org.jboss.soa.esb.util.RemoteFileSystem#uploadFile(java.io.File,
-	 *      java.lang.String)
-	 */
-	public void uploadFile(File p_oFile, String p_sRemoteName) throws RemoteFileSystemException 
-	{
-		try
-		{
-			String sRemoteOK = getRemoteDir() + "/" + p_sRemoteName;
-			String sRemoteTmp = sRemoteOK + TMP_SUFFIX;
-			m_oSftpChannel.put(FtpUtils.fileToFtpString(p_oFile), sRemoteTmp);
-			m_oSftpChannel.rename(sRemoteTmp, sRemoteOK);
-		}
-		catch (SftpException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
-	}
+        /*
+         * Upload the local File p_ofile to p_sRemoteName
+         * 
+         * @param p_oFile The local file name we want to upload
+         * 
+         * @param p_sRemoteName The remote file name [can be the same as p_oFile of
+         * course]
+         * 
+         * @see org.jboss.soa.esb.util.RemoteFileSystem#uploadFile(java.io.File,
+         *      java.lang.String)
+         */
+        public void uploadFile(File p_oFile, String p_sRemoteName) throws RemoteFileSystemException 
+        {
+            try
+            {
+                    m_oSftpChannel.cd(getRemoteDir()) ;
+                    
+                    final String sRemoteTmp = p_sRemoteName + TMP_SUFFIX;
+                    
+                    final OutputStream os = m_oSftpChannel.put(sRemoteTmp) ;
+                    try
+                    {
+                        final FileInputStream fis = new FileInputStream(p_oFile) ;
+                        try
+                        {
+                            copyStream(fis, os) ;
+                        }
+                        finally
+                        {
+                            fis.close() ;
+                        }
+                    }
+                    finally
+                    {
+                        os.flush() ;
+                        os.close() ;
+                    }
+                    m_oSftpChannel.rename(sRemoteTmp, p_sRemoteName);
+            }
+            catch (final IOException ioe)
+            {
+                throw new RemoteFileSystemException(ioe) ;
+            }
+            catch (SftpException ex)
+            {
+                    throw new RemoteFileSystemException(ex);
+            }
+    }
 
-	/*
-	 * Download the remote File p_sFile to p_sFile.
-	 * 
-	 * @param p_sFile The remote file name we want to download
-	 * 
-	 * @param p_sFinalName The local file name
-	 * 
-	 * @see org.jboss.soa.esb.util.RemoteFileSystem#downloadFile(java.lang.String,
-	 *      java.lang.String)
-	 */
-	public void downloadFile(String p_sFile, String p_sFinalName) throws IOException, RemoteFileSystemException 
-	{
-		File oLocalDir = new File(m_sLocalDir);
-		File oLclFile = File.createTempFile("Rosetta_", TMP_SUFFIX, oLocalDir);
+        /*
+         * Download the remote File p_sFile to p_sFile.
+         * 
+         * @param p_sFile The remote file name we want to download
+         * 
+         * @param p_sFinalName The local file name
+         * 
+         * @see org.jboss.soa.esb.util.RemoteFileSystem#downloadFile(java.lang.String,
+         *      java.lang.String)
+         */
+        public void downloadFile(String p_sFile, String p_sFinalName) throws IOException, RemoteFileSystemException 
+        {
+            try
+            {
+                final File to = new File(p_sFinalName) ;
+                final File oLocalDir = new File(m_sLocalDir);
+                final File oNew = (to.isAbsolute() ? to : new File(oLocalDir, p_sFinalName)) ;
+                if (oNew.exists()) 
+                    oNew.delete();
+                
+                final File toTmp = new File(p_sFinalName + TMP_SUFFIX) ;
+                final File oNewTmp = (toTmp.isAbsolute() ? toTmp : new File(oLocalDir, p_sFinalName + TMP_SUFFIX)) ;
+                if (oNewTmp.exists()) 
+                    oNewTmp.delete();
+                
+                m_oSftpChannel.cd(getRemoteDir()) ;
+                final InputStream is = m_oSftpChannel.get(p_sFile) ;
+                
+                try
+                {
+                    final FileOutputStream fos = new FileOutputStream(oNewTmp) ;
+                    try
+                    {
+                        copyStream(is, fos) ;
+                    }
+                    finally
+                    {
+                        fos.close() ;
+                    }
+                }
+                finally
+                {
+                    is.close() ;
+                }
+                FileUtil.renameTo(oNewTmp, oNew) ;
+            }
+            catch (SftpException ex)
+            {
+                    throw new RemoteFileSystemException(ex);
+            }
+        }
 
-		try 
-		{
-			oLclFile.delete();
-		} 
-		catch (Exception e) 
-		{
-			_logger.warn("Could not delete file: "+oLclFile, e);
-		}
-		// TODO check if we have to set the Transfer Type with JSch impl =>
-		// m_oXferType
-		
-		try
-		{
-			m_oSftpChannel.get(p_sFile, FtpUtils.fileToFtpString(oLclFile));
-	
-			File oNew = new File(oLocalDir, p_sFinalName);
-			if (oNew.exists())
-				oNew.delete();
-			FileUtil.renameTo(oLclFile, oNew);
-		}
-		catch (Exception ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
-	}
-
 	/*
 	 * Returns the current remote directory
 	 * 
@@ -552,7 +535,8 @@
 	 */
 	public void quit() 
 	{
-		m_oSftpChannel.quit();
+		m_oSftpChannel.disconnect() ;
+		session.disconnect() ;
 	}
 
 	private void configTreeFromEpr() throws ConfigurationException 
@@ -563,20 +547,16 @@
 			m_oParms.setAttribute(RemoteFileSystem.PARMS_FTP_SERVER,
 					m_sFtpServer);
 			m_oParms.setAttribute(RemoteFileSystem.PARMS_USER, m_sUser);
-			m_oParms.setAttribute(RemoteFileSystem.PARMS_PASSWD, m_sPasswd);
+			if (m_sPasswd != null)
+			    m_oParms.setAttribute(RemoteFileSystem.PARMS_PASSWD, m_sPasswd);
 			m_oParms.setAttribute(RemoteFileSystem.PARMS_REMOTE_DIR,
 					m_sRemoteDir);
-			m_oParms.setAttribute(RemoteFileSystem.PARMS_PORT, Integer
+			if (m_iPort > 0)
+			    m_oParms.setAttribute(RemoteFileSystem.PARMS_PORT, Integer
 					.toString(m_iPort));
 			m_oParms.setAttribute(RemoteFileSystem.PARMS_LOCAL_DIR, m_sLocalDir);
 			m_oParms.setAttribute(RemoteFileSystem.PARMS_ASCII, Boolean
 					.toString(false));
-			m_oParms.setAttribute(RemoteFileSystem.PARMS_PASSIVE, Boolean
-					.toString(m_bPassive));
-			if (m_oCertificate != null)
-			{
-				m_oParms.setAttribute(RemoteFileSystem.PARMS_CERTIFICATE, m_oCertificate.toString());
-			}
 		} 
 		catch (Exception e) 
 		{
@@ -584,4 +564,23 @@
 		}
 	}
 
+        
+        private void copyStream(final InputStream is, final OutputStream os)
+            throws IOException
+        {
+            final BufferedInputStream bis = new BufferedInputStream(is) ;
+            final BufferedOutputStream bos = new BufferedOutputStream(os) ;
+            
+            final byte[] buffer = new byte[256] ;
+            while(true)
+            {
+                final int count = bis.read(buffer) ;
+                if (count <= 0)
+                {
+                    break ;
+                }
+                bos.write(buffer, 0, count) ;
+            }
+            bos.flush() ;
+        }
 }

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/AbstractRouter.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/AbstractRouter.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/AbstractRouter.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -48,7 +48,7 @@
 	 * Unwrap the message payload before routing. 
 	 */
 	public boolean unwrap = false;
-    private MessagePayloadProxy payloadProxy;
+    protected MessagePayloadProxy payloadProxy;
 
     /**
      * Public constructor.

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/HttpRouter.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/HttpRouter.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/HttpRouter.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -46,6 +46,8 @@
  *    &lt;/Action&gt;
  * </pre>
  *
+ * 
+ *
  * @author <a href="mailto:johan.kumps at telenet.be">Johan Kumps</a>
  */
 public class HttpRouter extends AbstractActionPipelineProcessor {

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/actions/routing/http)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/GETHttpMethodFactory.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/GETHttpMethodFactory.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/GETHttpMethodFactory.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,50 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.actions.routing.http;
-
-import org.apache.commons.httpclient.HttpMethodBase;
-import org.apache.commons.httpclient.methods.GetMethod;
-import org.jboss.soa.esb.ConfigurationException;
-import org.jboss.soa.esb.helpers.ConfigTree;
-import org.jboss.soa.esb.message.Message;
-
-import java.io.IOException;
-import java.net.URL;
-
-/**
- * HTTP GET Factory.
- * 
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public class GETHttpMethodFactory implements HttpMethodFactory {
-
-    private URL url;
-
-    public void setEndpoint(URL url) {
-        this.url = url;
-    }
-
-    public void setConfiguration(ConfigTree config) throws ConfigurationException {
-    }
-
-    public HttpMethodBase getInstance(Message message) throws IOException {
-        return new GetMethod(url.toString());
-    }
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/GETHttpMethodFactory.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/GETHttpMethodFactory.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/GETHttpMethodFactory.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/GETHttpMethodFactory.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,50 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.actions.routing.http;
+
+import org.apache.commons.httpclient.HttpMethodBase;
+import org.apache.commons.httpclient.methods.GetMethod;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.message.Message;
+
+import java.io.IOException;
+import java.net.URL;
+
+/**
+ * HTTP GET Factory.
+ * 
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class GETHttpMethodFactory implements HttpMethodFactory {
+
+    private URL url;
+
+    public void setEndpoint(URL url) {
+        this.url = url;
+    }
+
+    public void setConfiguration(ConfigTree config) throws ConfigurationException {
+    }
+
+    public HttpMethodBase getInstance(Message message) throws IOException {
+        return new GetMethod(url.toString());
+    }
+}

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpHeader.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpHeader.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpHeader.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,52 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.actions.routing.http;
-
-import org.jboss.internal.soa.esb.assertion.AssertArgument;
-
-import java.io.Serializable;
-
-/**
- * Http header.
- * <p/>
- * Simple name-value pair.
- * 
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public class HttpHeader implements Serializable {
-    
-    private String name;
-    private String value;
-
-    public HttpHeader(String name, String value) {
-        AssertArgument.isNotNullAndNotEmpty(name, "name");
-        AssertArgument.isNotNullAndNotEmpty(value, "value");
-        this.name = name;
-        this.value = value;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public String getValue() {
-        return value;
-    }
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpHeader.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpHeader.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpHeader.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpHeader.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,52 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.actions.routing.http;
+
+import org.jboss.internal.soa.esb.assertion.AssertArgument;
+
+import java.io.Serializable;
+
+/**
+ * Http header.
+ * <p/>
+ * Simple name-value pair.
+ * 
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class HttpHeader implements Serializable {
+    
+    private String name;
+    private String value;
+
+    public HttpHeader(String name, String value) {
+        AssertArgument.isNotNullAndNotEmpty(name, "name");
+        AssertArgument.isNotNullAndNotEmpty(value, "value");
+        this.name = name;
+        this.value = value;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public String getValue() {
+        return value;
+    }
+}

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpMethodFactory.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpMethodFactory.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpMethodFactory.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,73 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.actions.routing.http;
-
-import org.jboss.internal.soa.esb.assertion.AssertArgument;
-import org.jboss.soa.esb.Configurable;
-import org.jboss.soa.esb.ConfigurationException;
-import org.jboss.soa.esb.helpers.ConfigTree;
-import org.jboss.soa.esb.message.Message;
-import org.jboss.soa.esb.util.ClassUtil;
-import org.apache.commons.httpclient.HttpMethodBase;
-
-import java.io.IOException;
-import java.net.URL;
-
-/**
- * Http method executor.
- * 
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public interface HttpMethodFactory extends Configurable {
-
-    public void setEndpoint(URL url);
-
-    public HttpMethodBase getInstance(Message message) throws IOException;
-
-    /**
-     * Uitility factory class for reflective {@link HttpMethodFactory} construction.
-     */
-    public static class Factory {
-
-        public static HttpMethodFactory getInstance(String method, ConfigTree config, URL endpointUrl) throws ConfigurationException {
-            AssertArgument.isNotNullAndNotEmpty(method, "method");
-            AssertArgument.isNotNull(config, "config");
-            AssertArgument.isNotNull(endpointUrl, "endpointUrl");
-
-            String className = HttpMethodFactory.class.getPackage().getName() + "." + method + HttpMethodFactory.class.getSimpleName();
-
-            try {
-                HttpMethodFactory factory = (HttpMethodFactory) ClassUtil.forName(className, HttpMethodFactory.class).newInstance();
-                factory.setEndpoint(endpointUrl);
-                factory.setConfiguration(config);
-                return factory;
-            } catch (ClassCastException e) {
-                throw new ConfigurationException("Class '" + className + "' must implement '" + HttpMethodFactory.class.getName() + "'.");
-            } catch (ClassNotFoundException e) {
-                throw new ConfigurationException("Class '" + className + "' not found on classpath.");
-            } catch (IllegalAccessException e) {
-                throw new ConfigurationException("Class '" + className + "' cannot be instantiated.", e);
-            } catch (InstantiationException e) {
-                throw new ConfigurationException("Class '" + className + "' cannot be instantiated.", e);
-            }
-        }
-
-    }
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpMethodFactory.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpMethodFactory.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpMethodFactory.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpMethodFactory.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,73 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.actions.routing.http;
+
+import org.jboss.internal.soa.esb.assertion.AssertArgument;
+import org.jboss.soa.esb.Configurable;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.util.ClassUtil;
+import org.apache.commons.httpclient.HttpMethodBase;
+
+import java.io.IOException;
+import java.net.URL;
+
+/**
+ * Http method executor.
+ * 
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public interface HttpMethodFactory extends Configurable {
+
+    public void setEndpoint(URL url);
+
+    public HttpMethodBase getInstance(Message message) throws IOException;
+
+    /**
+     * Uitility factory class for reflective {@link HttpMethodFactory} construction.
+     */
+    public static class Factory {
+
+        public static HttpMethodFactory getInstance(String method, ConfigTree config, URL endpointUrl) throws ConfigurationException {
+            AssertArgument.isNotNullAndNotEmpty(method, "method");
+            AssertArgument.isNotNull(config, "config");
+            AssertArgument.isNotNull(endpointUrl, "endpointUrl");
+
+            String className = HttpMethodFactory.class.getPackage().getName() + "." + method + HttpMethodFactory.class.getSimpleName();
+
+            try {
+                HttpMethodFactory factory = (HttpMethodFactory) ClassUtil.forName(className, HttpMethodFactory.class).newInstance();
+                factory.setEndpoint(endpointUrl);
+                factory.setConfiguration(config);
+                return factory;
+            } catch (ClassCastException e) {
+                throw new ConfigurationException("Class '" + className + "' must implement '" + HttpMethodFactory.class.getName() + "'.");
+            } catch (ClassNotFoundException e) {
+                throw new ConfigurationException("Class '" + className + "' not found on classpath.");
+            } catch (IllegalAccessException e) {
+                throw new ConfigurationException("Class '" + className + "' cannot be instantiated.", e);
+            } catch (InstantiationException e) {
+                throw new ConfigurationException("Class '" + className + "' cannot be instantiated.", e);
+            }
+        }
+
+    }
+}

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpResponse.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpResponse.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpResponse.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,72 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.actions.routing.http;
-
-import org.jboss.internal.soa.esb.assertion.AssertArgument;
-
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public class HttpResponse implements Serializable {
-
-    public static final String RESPONSE_KEY = HttpResponse.class.getName() + "#response";
-
-    private int responseCode;
-    private long length;
-    private String encoding;
-    private List<HttpHeader> headers = new ArrayList<HttpHeader>();
-
-    public HttpResponse(int responseCode) {
-        this.responseCode = responseCode;
-    }
-
-    public int getResponseCode() {
-        return responseCode;
-    }
-
-    public long getLength() {
-        return length;
-    }
-
-    public void setLength(long length) {
-        this.length = length;
-    }
-
-    public String getEncoding() {
-        return encoding;
-    }
-
-    public void setEncoding(String encoding) {
-        this.encoding = encoding;
-    }
-
-    public List<HttpHeader> getHeaders() {
-        return headers;
-    }
-
-    public void addHeader(HttpHeader header) {
-        AssertArgument.isNotNull(header, "header");
-        headers.add(header);
-    }
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpResponse.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpResponse.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpResponse.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpResponse.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,72 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.actions.routing.http;
+
+import org.jboss.internal.soa.esb.assertion.AssertArgument;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class HttpResponse implements Serializable {
+
+    public static final String RESPONSE_KEY = HttpResponse.class.getName() + "#response";
+
+    private int responseCode;
+    private long length;
+    private String encoding;
+    private List<HttpHeader> headers = new ArrayList<HttpHeader>();
+
+    public HttpResponse(int responseCode) {
+        this.responseCode = responseCode;
+    }
+
+    public int getResponseCode() {
+        return responseCode;
+    }
+
+    public long getLength() {
+        return length;
+    }
+
+    public void setLength(long length) {
+        this.length = length;
+    }
+
+    public String getEncoding() {
+        return encoding;
+    }
+
+    public void setEncoding(String encoding) {
+        this.encoding = encoding;
+    }
+
+    public List<HttpHeader> getHeaders() {
+        return headers;
+    }
+
+    public void addHeader(HttpHeader header) {
+        AssertArgument.isNotNull(header, "header");
+        headers.add(header);
+    }
+}

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,186 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.actions.routing.http;
-
-import org.apache.commons.httpclient.HttpClient;
-import org.apache.commons.httpclient.HttpMethodBase;
-import org.apache.commons.httpclient.HttpStatus;
-import org.apache.commons.httpclient.Header;
-import org.apache.log4j.Logger;
-import org.jboss.soa.esb.ConfigurationException;
-import org.jboss.soa.esb.http.HttpClientFactory;
-import org.jboss.soa.esb.actions.ActionLifecycleException;
-import org.jboss.soa.esb.actions.ActionProcessingException;
-import org.jboss.soa.esb.actions.routing.AbstractRouter;
-import org.jboss.soa.esb.helpers.ConfigTree;
-import org.jboss.soa.esb.listeners.ListenerTagNames;
-import org.jboss.soa.esb.listeners.message.MessageDeliverException;
-import org.jboss.soa.esb.message.Message;
-import org.jboss.internal.soa.esb.util.StreamUtils;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.Properties;
-
-/**
- * Http router.
- * <p/>
- * Uses HttpClient via the <a href="http://wiki.jboss.org/wiki/Wiki.jsp?page=HttpClientFactory">HttpClientFactory</a>.
- *
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public class HttpRouter extends AbstractRouter {
-
-    private static Logger logger = Logger.getLogger(HttpRouter.class);
-
-    private ConfigTree config;
-    private Properties httpClientProps = new Properties();
-    private HttpClient httpclient;
-    private URL endpointUrl;
-    private String method;
-    private HttpMethodFactory methodFactory;
-    private ResponseType responseType;
-    private String contentType;
-    private ConfigTree[] requestHeaders;
-
-    public HttpRouter(ConfigTree config) throws ConfigurationException {
-        super(config);
-        this.config = config;
-        try {
-            endpointUrl = new URL(config.getRequiredAttribute("endpointUrl"));
-        } catch (MalformedURLException e) {
-            throw new ConfigurationException("Invalid endpoint URL '" + config.getRequiredAttribute("endpointUrl") + "'.", e);
-        }
-
-        // Extract the HttpClient creation properties from the ConfigTree.  These are passed
-        // to the HttpClientFacatory...
-        extractHttpClientProps(config);
-        httpclient = HttpClientFactory.createHttpClient(httpClientProps);
-        method = config.getRequiredAttribute("method");
-        responseType = ResponseType.valueOf(config.getAttribute("responseType", ResponseType.STRING.toString()));
-        methodFactory = HttpMethodFactory.Factory.getInstance(method, config, endpointUrl);
-        contentType = config.getAttribute("Content-Type", "text/xml;charset=UTF-8");
-        requestHeaders = config.getChildren("header");
-    }
-
-    public Message process(Message message) throws ActionProcessingException {
-        HttpMethodBase method = null;
-        try {
-            method = methodFactory.getInstance(message);
-
-            try {
-                setRequestHeaders(method);
-                
-                int responseCode = httpclient.executeMethod(method);
-                if(responseCode != HttpStatus.SC_OK) {
-                    logger.warn("Received status code '" + responseCode + "' on HTTP " + method + " request to '" + endpointUrl + "'.");
-                }
-                attachResponseDetails(message, method, responseCode);
-
-                InputStream resultStream = method.getResponseBodyAsStream();
-                try {
-                    byte[] bytes = StreamUtils.readStream(resultStream);
-
-                    if(responseType == ResponseType.STRING) {
-                        getPayloadProxy().setPayload(message, new String(bytes, method.getResponseCharSet()));
-                    } else {
-                        getPayloadProxy().setPayload(message, bytes);
-                    }
-                } catch (MessageDeliverException e) {
-                    e.printStackTrace();
-                } finally {
-                    resultStream.close();
-                }
-            } finally {
-                method.releaseConnection();
-            }
-        } catch (IOException e) {
-            e.printStackTrace();
-        }
-
-        return message;
-    }
-
-    private void attachResponseDetails(Message message, HttpMethodBase method, int responseCode) {
-        HttpResponse response = new HttpResponse(responseCode);
-
-        response.setEncoding(method.getResponseCharSet());
-        response.setLength(method.getResponseContentLength());
-
-        Header[] responseHeaders = method.getRequestHeaders();
-        for(Header responseHeader : responseHeaders) {
-            response.addHeader(new HttpHeader(responseHeader.getName(), responseHeader.getValue()));
-        }
-        
-        message.getBody().add(HttpResponse.RESPONSE_KEY, response);
-    }
-
-    private void setRequestHeaders(HttpMethodBase method) {
-        method.setRequestHeader("Content-Type", contentType);
-
-        for (int i = 0; i < requestHeaders.length; i++) {
-            ConfigTree header = requestHeaders[i];
-            String name = header.getAttribute("name");
-            String value = header.getAttribute("value");
-
-            if(name != null && value != null) {
-                method.setRequestHeader(name, value);
-            } else {
-                logger.error("null Http request header name/value: '" + name + "':'" + value + "'.");
-            }
-        }
-    }
-
-    public void route(Object object) throws ActionProcessingException {
-        // Not used!
-    }
-
-    public void destroy() throws ActionLifecycleException {
-        if (httpclient != null) {
-            HttpClientFactory.shutdown(httpclient);
-        }
-        super.destroy();
-    }
-
-    private void extractHttpClientProps(ConfigTree config) {
-        ConfigTree[] httpClientConfigTrees = config.getChildren("http-client-property");
-
-        httpClientProps.setProperty(HttpClientFactory.TARGET_HOST_URL, endpointUrl.toString());
-        final ConfigTree parent = config.getParent() ;
-        if (parent != null) {
-            final String maxThreads = config.getParent().getAttribute(ListenerTagNames.MAX_THREADS_TAG) ;
-            if (maxThreads != null) {
-                httpClientProps.setProperty(HttpClientFactory.MAX_TOTAL_CONNECTIONS, maxThreads) ;
-            }
-        }
-
-        // The HttpClient properties are attached under the factory class/impl property as <http-client-property name="x" value="y" /> nodes
-        for(ConfigTree httpClientProp : httpClientConfigTrees) {
-            String propName = httpClientProp.getAttribute("name");
-            String propValue = httpClientProp.getAttribute("value");
-
-            if(propName != null && propValue != null) {
-                httpClientProps.setProperty(propName, propValue);
-            }
-        }
-    }
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/HttpRouter.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,186 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.actions.routing.http;
+
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.HttpMethodBase;
+import org.apache.commons.httpclient.HttpStatus;
+import org.apache.commons.httpclient.Header;
+import org.apache.log4j.Logger;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.http.HttpClientFactory;
+import org.jboss.soa.esb.actions.ActionLifecycleException;
+import org.jboss.soa.esb.actions.ActionProcessingException;
+import org.jboss.soa.esb.actions.routing.AbstractRouter;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.listeners.ListenerTagNames;
+import org.jboss.soa.esb.listeners.message.MessageDeliverException;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.internal.soa.esb.util.StreamUtils;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.Properties;
+
+/**
+ * Http router.
+ * <p/>
+ * Uses HttpClient via the <a href="http://wiki.jboss.org/wiki/Wiki.jsp?page=HttpClientFactory">HttpClientFactory</a>.
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class HttpRouter extends AbstractRouter {
+
+    private static Logger logger = Logger.getLogger(HttpRouter.class);
+
+    private ConfigTree config;
+    private Properties httpClientProps = new Properties();
+    private HttpClient httpclient;
+    private URL endpointUrl;
+    private String method;
+    private HttpMethodFactory methodFactory;
+    private ResponseType responseType;
+    private String contentType;
+    private ConfigTree[] requestHeaders;
+
+    public HttpRouter(ConfigTree config) throws ConfigurationException {
+        super(config);
+        this.config = config;
+        try {
+            endpointUrl = new URL(config.getRequiredAttribute("endpointUrl"));
+        } catch (MalformedURLException e) {
+            throw new ConfigurationException("Invalid endpoint URL '" + config.getRequiredAttribute("endpointUrl") + "'.", e);
+        }
+
+        // Extract the HttpClient creation properties from the ConfigTree.  These are passed
+        // to the HttpClientFacatory...
+        extractHttpClientProps(config);
+        httpclient = HttpClientFactory.createHttpClient(httpClientProps);
+        method = config.getRequiredAttribute("method");
+        responseType = ResponseType.valueOf(config.getAttribute("responseType", ResponseType.STRING.toString()));
+        methodFactory = HttpMethodFactory.Factory.getInstance(method, config, endpointUrl);
+        contentType = config.getAttribute("Content-Type", "text/xml;charset=UTF-8");
+        requestHeaders = config.getChildren("header");
+    }
+
+    public Message process(Message message) throws ActionProcessingException {
+        HttpMethodBase method = null;
+        try {
+            method = methodFactory.getInstance(message);
+
+            try {
+                setRequestHeaders(method);
+                
+                int responseCode = httpclient.executeMethod(method);
+                if(responseCode != HttpStatus.SC_OK) {
+                    logger.warn("Received status code '" + responseCode + "' on HTTP " + method + " request to '" + endpointUrl + "'.");
+                }
+                attachResponseDetails(message, method, responseCode);
+
+                InputStream resultStream = method.getResponseBodyAsStream();
+                try {
+                    byte[] bytes = StreamUtils.readStream(resultStream);
+
+                    if(responseType == ResponseType.STRING) {
+                        getPayloadProxy().setPayload(message, new String(bytes, method.getResponseCharSet()));
+                    } else {
+                        getPayloadProxy().setPayload(message, bytes);
+                    }
+                } catch (MessageDeliverException e) {
+                    e.printStackTrace();
+                } finally {
+                    resultStream.close();
+                }
+            } finally {
+                method.releaseConnection();
+            }
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+
+        return message;
+    }
+
+    private void attachResponseDetails(Message message, HttpMethodBase method, int responseCode) {
+        HttpResponse response = new HttpResponse(responseCode);
+
+        response.setEncoding(method.getResponseCharSet());
+        response.setLength(method.getResponseContentLength());
+
+        Header[] responseHeaders = method.getRequestHeaders();
+        for(Header responseHeader : responseHeaders) {
+            response.addHeader(new HttpHeader(responseHeader.getName(), responseHeader.getValue()));
+        }
+        
+        message.getBody().add(HttpResponse.RESPONSE_KEY, response);
+    }
+
+    private void setRequestHeaders(HttpMethodBase method) {
+        method.setRequestHeader("Content-Type", contentType);
+
+        for (int i = 0; i < requestHeaders.length; i++) {
+            ConfigTree header = requestHeaders[i];
+            String name = header.getAttribute("name");
+            String value = header.getAttribute("value");
+
+            if(name != null && value != null) {
+                method.setRequestHeader(name, value);
+            } else {
+                logger.error("null Http request header name/value: '" + name + "':'" + value + "'.");
+            }
+        }
+    }
+
+    public void route(Object object) throws ActionProcessingException {
+        // Not used!
+    }
+
+    public void destroy() throws ActionLifecycleException {
+        if (httpclient != null) {
+            HttpClientFactory.shutdown(httpclient);
+        }
+        super.destroy();
+    }
+
+    private void extractHttpClientProps(ConfigTree config) {
+        ConfigTree[] httpClientConfigTrees = config.getChildren("http-client-property");
+
+        httpClientProps.setProperty(HttpClientFactory.TARGET_HOST_URL, endpointUrl.toString());
+        final ConfigTree parent = config.getParent() ;
+        if (parent != null) {
+            final String maxThreads = config.getParent().getAttribute(ListenerTagNames.MAX_THREADS_TAG) ;
+            if (maxThreads != null) {
+                httpClientProps.setProperty(HttpClientFactory.MAX_TOTAL_CONNECTIONS, maxThreads) ;
+            }
+        }
+
+        // The HttpClient properties are attached under the factory class/impl property as <http-client-property name="x" value="y" /> nodes
+        for(ConfigTree httpClientProp : httpClientConfigTrees) {
+            String propName = httpClientProp.getAttribute("name");
+            String propValue = httpClientProp.getAttribute("value");
+
+            if(propName != null && propValue != null) {
+                httpClientProps.setProperty(propName, propValue);
+            }
+        }
+    }
+}

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/POSTHttpMethodFactory.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/POSTHttpMethodFactory.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/POSTHttpMethodFactory.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,63 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.actions.routing.http;
-
-import org.apache.commons.httpclient.HttpMethodBase;
-import org.apache.commons.httpclient.methods.PostMethod;
-import org.apache.commons.httpclient.methods.StringRequestEntity;
-import org.jboss.soa.esb.ConfigurationException;
-import org.jboss.soa.esb.listeners.message.MessageDeliverException;
-import org.jboss.soa.esb.helpers.ConfigTree;
-import org.jboss.soa.esb.message.Message;
-import org.jboss.soa.esb.message.MessagePayloadProxy;
-
-import java.io.IOException;
-import java.net.URL;
-
-/**
- * HTTP POST Factory.
- *
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public class POSTHttpMethodFactory implements HttpMethodFactory {
-
-    private URL url;
-    private MessagePayloadProxy payloadProxy;
-
-    public void setEndpoint(URL url) {
-        this.url = url;
-    }
-
-    public void setConfiguration(ConfigTree config) throws ConfigurationException {
-        payloadProxy = new MessagePayloadProxy(config);
-    }
-
-    public HttpMethodBase getInstance(Message message) throws IOException {
-        PostMethod method = new PostMethod(url.toString());
-        try {
-            method.setRequestEntity(new StringRequestEntity(payloadProxy.getPayload(message).toString()));
-        } catch (MessageDeliverException e) {
-            IOException ioe = new IOException("Failed to access message payload.");
-            ioe.initCause(e);
-            throw ioe;
-        }
-        return method;
-    }
-}
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/POSTHttpMethodFactory.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/POSTHttpMethodFactory.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/POSTHttpMethodFactory.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/POSTHttpMethodFactory.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,63 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.actions.routing.http;
+
+import org.apache.commons.httpclient.HttpMethodBase;
+import org.apache.commons.httpclient.methods.PostMethod;
+import org.apache.commons.httpclient.methods.StringRequestEntity;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.listeners.message.MessageDeliverException;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.MessagePayloadProxy;
+
+import java.io.IOException;
+import java.net.URL;
+
+/**
+ * HTTP POST Factory.
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class POSTHttpMethodFactory implements HttpMethodFactory {
+
+    private URL url;
+    private MessagePayloadProxy payloadProxy;
+
+    public void setEndpoint(URL url) {
+        this.url = url;
+    }
+
+    public void setConfiguration(ConfigTree config) throws ConfigurationException {
+        payloadProxy = new MessagePayloadProxy(config);
+    }
+
+    public HttpMethodBase getInstance(Message message) throws IOException {
+        PostMethod method = new PostMethod(url.toString());
+        try {
+            method.setRequestEntity(new StringRequestEntity(payloadProxy.getPayload(message).toString()));
+        } catch (MessageDeliverException e) {
+            IOException ioe = new IOException("Failed to access message payload.");
+            ioe.initCause(e);
+            throw ioe;
+        }
+        return method;
+    }
+}
\ No newline at end of file

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/ResponseType.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/ResponseType.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/ResponseType.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,32 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.actions.routing.http;
-
-/**
- * Http Response type.
- * <p/>
- * Response payload mime ('ish) type enumeration.
- *
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public enum ResponseType {
-    STRING,
-    BYTES
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/ResponseType.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/ResponseType.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/ResponseType.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/actions/routing/http/ResponseType.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,32 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.actions.routing.http;
+
+/**
+ * Http Response type.
+ * <p/>
+ * Response payload mime ('ish) type enumeration.
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public enum ResponseType {
+    STRING,
+    BYTES
+}

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/EPR.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/EPR.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/EPR.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -27,6 +27,7 @@
  */
 
 import java.net.URI;
+import java.net.URISyntaxException;
 
 /**
  * The Endpoint Reference class. All services (and clients) can be represented by
@@ -97,6 +98,29 @@
 	{
 		_addr = uri;
 	}
+
+        /**
+         * Set the URI for this endpoint.
+         * 
+         * @param uri the address.
+         */
+        
+        public void setURI(URI uri)
+        {
+                setAddr(new PortReference(uri.toASCIIString()));
+        }
+        
+        /**
+         * Get the URI address.
+         * 
+         * @return the address.
+         * @throws URISyntaxException thrown if the address is invalid.
+         */
+        
+        public URI getURI() throws URISyntaxException
+        {
+                return new URI(getAddr().getAddress());
+        }
 	
 	/**
 	 * Get the EPR address.

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FTPEpr.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FTPEpr.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FTPEpr.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -113,12 +113,28 @@
 			}
 		}
 	}
-			
+	
+	/**
+	 * Construct the FTP EPR with the specified URL.
+	 * @param url
+	 * @throws URISyntaxException
+	 * @deprecated
+	 */
 	public FTPEpr (URL url) throws URISyntaxException
 	{
-		super(new URI(url.toString()));
+		this(url.toURI());
 	}
-	
+
+       /**
+         * Construct the FTP EPR with the specified URI.
+         * @param uri
+         * @throws URISyntaxException
+         */
+        public FTPEpr (URI uri)
+        {
+                super(uri);
+        }
+
 	public FTPEpr (String url) throws URISyntaxException
 	{
 		super(new URI(url));
@@ -128,6 +144,7 @@
 	 * Set the URL for this endpoint.
 	 * 
 	 * @param url the address.
+	 * @deprecated
 	 */
 	
 	public final void setURL (URL url)
@@ -140,6 +157,7 @@
 	 * 
 	 * @return the address.
 	 * @throws URISyntaxException thrown if the address is invalid.
+	 * @deprecated
 	 */
 	
 	public final URL getURL () throws MalformedURLException, URISyntaxException

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FTPSEpr.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FTPSEpr.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FTPSEpr.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FTPSEpr.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,237 @@
+package org.jboss.soa.esb.addressing.eprs;
+
+/*
+ * 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
+ */
+
+/**
+ * This class represents the endpoint reference for services.
+ */
+
+import java.net.URI;
+import java.net.URISyntaxException;
+
+import org.jboss.soa.esb.addressing.EPR;
+import org.jboss.soa.esb.addressing.XMLUtil;
+import org.w3c.dom.Element;
+import org.w3c.dom.NodeList;
+
+/**
+ * A helper class for using FTPS style EPRs.
+ * 
+ * @author marklittle
+ */
+public class FTPSEpr extends FTPEpr
+{
+	public static final String CERTIFICATE_TAG = "certificate";
+	public static final String CERTIFICATE_NAME_TAG = "certificateName";
+
+	public FTPSEpr(EPR epr)
+	{
+		super(epr);
+		
+		if (epr instanceof FTPSEpr)
+		{
+		    certificateSet = ((FTPSEpr) epr).certificateSet;
+		    certificateNameSet = ((FTPSEpr) epr).certificateNameSet;
+		}
+	}
+	
+	public FTPSEpr (EPR epr, Element header)
+	{
+		super(epr, header);
+		
+		NodeList nl = header.getChildNodes();
+
+		for (int i = 0; i < nl.getLength(); i++)
+		{
+			String prefix = nl.item(i).getPrefix();
+			String tag = nl.item(i).getLocalName();
+			
+			try
+			{
+				if ((prefix != null) && (prefix.equals(XMLUtil.JBOSSESB_PREFIX)))
+				{
+					if ((tag != null) && (tag.equals(CERTIFICATE_TAG)))
+					{
+						getAddr().addExtension(CERTIFICATE_TAG, nl.item(i).getTextContent());
+						certificateSet = true;
+					}
+					else if ((tag != null) && (tag.equals(CERTIFICATE_NAME_TAG)))
+					{
+						setCertificateName(nl.item(i).getTextContent());
+					}
+				}
+			}
+			catch (Exception ex)
+			{
+				ex.printStackTrace();
+			}
+		}
+	}
+
+	public FTPSEpr(URI uri) throws URISyntaxException
+	{
+		super(uri);
+	}
+	
+	public FTPSEpr(URI uri, URI cert, final String name) throws URISyntaxException
+	{
+		super(uri);
+		
+		if (cert != null)
+		{
+			setCertificateURI(cert);
+		}
+		if (name != null)
+		{
+			setCertificateName(name);
+		}
+	}
+
+	public FTPSEpr(URI uri, String cert, final String name) throws URISyntaxException
+	{
+		super(uri);	
+
+		if (cert != null)
+		{
+			setCertificateURI(new URI(cert));
+		}
+		if (name != null)
+		{
+			setCertificateName(name);
+		}
+	}
+
+	public FTPSEpr(String uri, String cert, final String name) throws URISyntaxException
+	{
+		super(uri);	
+
+		if(cert != null)
+		{
+			setCertificateURI(new URI(cert));
+		}
+		if (name != null)
+		{
+			setCertificateName(name);
+		}
+	}
+
+	/**
+	 * Set the Certificate URI for this endpoint.
+	 * 
+	 * @param cert
+	 *            the address.
+	 * @throws URISyntaxException
+	 *             thrown if this EPR is malformed.
+	 */
+
+	public final void setCertificateURI(URI cert) throws URISyntaxException
+	{
+		if (cert == null)
+			throw new IllegalArgumentException();
+
+		if (certificateSet)
+			throw new IllegalStateException("Certificate URI already set.");
+
+		getAddr().addExtension(CERTIFICATE_TAG, cert.toASCIIString());
+		certificateSet = true;
+	}
+
+	/**
+	 * @return the certificate URI for this EPR.
+	 * @throws URISyntaxException
+	 *             thrown if this EPR is malformed.
+	 */
+
+	public final URI getCertificateURI () throws URISyntaxException
+	{
+		String cert = getAddr().getExtensionValue(CERTIFICATE_TAG);
+
+		if (cert != null)
+			return new URI(cert);
+		else
+			return null;
+	}
+
+	/**
+	 * Set the Certificate Name for this endpoint.
+	 * 
+	 * @param name
+	 *            the certificate name.
+	 */
+
+	public final void setCertificateName(final String name)
+	{
+		if (name == null)
+			throw new IllegalArgumentException();
+
+		if (certificateNameSet)
+			throw new IllegalStateException("Certificate Name already set.");
+
+		getAddr().addExtension(CERTIFICATE_NAME_TAG, name);
+		certificateNameSet = true;
+	}
+
+	/**
+	 * @return the certificate Name for this EPR.
+	 * @throws URISyntaxException
+	 *             thrown if this EPR is malformed.
+	 */
+
+	public final String getCertificateName()
+	{
+		return getAddr().getExtensionValue(CERTIFICATE_NAME_TAG);
+	}
+
+	public EPR copy ()
+	{
+	    return new FTPSEpr(this);
+	}
+	
+	public String toString ()
+	{
+		return "FTPSEpr [ "+super.getAddr().extendedToString()+" ]";
+	}
+	
+	public static URI type ()
+	{
+		return _type;
+	}
+
+	private boolean certificateSet = false;
+	private boolean certificateNameSet ;
+
+	private static URI _type;
+
+	static
+	{
+		try
+		{
+			_type = new URI("urn:jboss/esb/epr/type/ftps");
+		}
+		catch (Exception ex)
+		{
+			ex.printStackTrace();
+
+			throw new ExceptionInInitializerError(ex.toString());
+		}
+	}
+}
\ No newline at end of file

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FileEpr.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FileEpr.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FileEpr.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -159,9 +159,15 @@
 		}
 	}
 
+	/**
+	 * Construct the File EPR with the specified URL.
+	 * @param url
+	 * @throws URISyntaxException
+	 * @deprecated
+	 */
 	public FileEpr (URL url) throws URISyntaxException
 	{
-		super(new URI(url.toString()));
+		this(url.toURI());
 	}
 	
 	public FileEpr (String url) throws URISyntaxException
@@ -173,6 +179,7 @@
 	 * Set the URL for this endpoint.
 	 * 
 	 * @param url the address.
+	 * @deprecated
 	 */
 	
 	public void setURL (URL url)
@@ -185,6 +192,7 @@
 	 * 
 	 * @return the address.
 	 * @throws URISyntaxException thrown if the address is invalid.
+	 * @deprecated
 	 */
 	
 	public URL getURL () throws MalformedURLException, URISyntaxException
@@ -442,7 +450,7 @@
 	    return _type;
 	}
 	
-	protected FileEpr (URI uri)
+	public FileEpr (URI uri)
 	{
 		super(uri);
 	}

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/HTTPEpr.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/HTTPEpr.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/HTTPEpr.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -54,12 +54,27 @@
 	{
 		super(epr);
 	}
-	
+	/**
+	 * Construct the HTTP EPR using the specified URL.
+	 * @param url
+	 * @throws URISyntaxException
+	 * @deprecated
+	 */
 	public HTTPEpr (URL url) throws URISyntaxException
 	{
-		super(new URI(url.toString()));
+		this(url.toURI());
 	}
-	
+
+       /**
+         * Construct the HTTP EPR using the specified URI.
+         * @param uri
+         * @throws URISyntaxException
+         */
+        public HTTPEpr (URI uri)
+        {
+                super(uri);
+        }
+
 	public HTTPEpr (String url) throws URISyntaxException
 	{
 		super(new URI(url));
@@ -69,6 +84,7 @@
 	 * Set the URL for this endpoint.
 	 * 
 	 * @param url the address.
+	 * @deprecated
 	 */
 	
 	public final void setURL (URL url)
@@ -81,6 +97,7 @@
 	 * 
 	 * @return the address.
 	 * @throws URISyntaxException thrown if the address is invalid.
+	 * @deprecated
 	 */
 	
 	public final URL getURL () throws MalformedURLException, URISyntaxException

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/InVMEpr.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/InVMEpr.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/InVMEpr.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/InVMEpr.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,277 @@
+package org.jboss.soa.esb.addressing.eprs;
+
+/*
+ * 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
+ */
+
+/**
+ * This class represents the endpoint reference for services.
+ */
+
+import org.apache.commons.codec.binary.Hex;
+import org.jboss.soa.esb.addressing.EPR;
+import org.jboss.soa.esb.addressing.XMLUtil;
+import org.jboss.internal.soa.esb.assertion.AssertArgument;
+import org.w3c.dom.Element;
+import org.w3c.dom.NodeList;
+
+import java.net.URI;
+import java.net.URISyntaxException;
+
+/**
+ * A helper class for using in-VM communication.
+ * 
+ * EPR: invm://servicename[?lockstep[#waittime]]
+ * 
+ * where lockstep can be either true or false and waittime is the lockstep wait
+ * time in milliseconds. If lockstep is false then any value specified for
+ * waittime will be ignored.
+ * 
+ * e.g.,
+ * 
+ * invm://myservice?true#20000 invm://myservice invm://myservice?false (same as
+ * invm://myservice)
+ * 
+ * You can have a lockstep service, where the sender thread is tied to the one
+ * that does the execution (equivalent to the sender thread doing the work
+ * within the receiver), or non-lockstep, whereby the sender thread is decoupled
+ * from the receiver and works as fast as it needs to in order to deliver
+ * messages. This is roughly equivalent to CORBA POA threading policies. (Maybe
+ * we'll implement it that way at some point in the future?)
+ * 
+ * @author marklittle
+ * 
+ */
+
+public class InVMEpr extends EPR
+{
+	public static final long DEFAULT_LOCKSTEP_WAIT_TIME = 10000; // in
+
+	// millis,
+	// 10
+	// seconds
+
+	public static final String INVM_PROTOCOL = "invm";
+
+	public static final String LOCKSTEP_ENDPOINT_TAG = "lockstep";
+
+	public static final String LOCKSTEP_WAIT_TIME_TAG = "lockstepWait";
+
+    private boolean _lockstep = false;
+
+	private boolean _lockstepTime = false;
+
+	public InVMEpr(EPR epr)
+	{
+        setAddr(epr.getAddr());
+	}
+
+	public InVMEpr(EPR epr, Element header)
+	{
+		this(epr);
+
+		NodeList nl = header.getChildNodes();
+
+		for (int i = 0; i < nl.getLength(); i++)
+		{
+			try
+			{
+				String prefix = nl.item(i).getPrefix();
+				String tag = nl.item(i).getLocalName();
+
+				if ((prefix != null)
+						&& (prefix.equals(XMLUtil.JBOSSESB_PREFIX)))
+				{
+					if (tag != null)
+					{
+						if (tag.equals(LOCKSTEP_ENDPOINT_TAG))
+						{
+							getAddr().addExtension(LOCKSTEP_ENDPOINT_TAG, nl.item(i).getTextContent());
+							_lockstep = true;
+						}
+						if (tag.equals(LOCKSTEP_WAIT_TIME_TAG))
+						{
+							getAddr().addExtension(LOCKSTEP_WAIT_TIME_TAG, nl.item(i).getTextContent());
+							_lockstepTime = true;
+						}
+					}
+				}
+			}
+			catch (Exception ex)
+			{
+				ex.printStackTrace();
+			}
+		}
+	}
+
+	public InVMEpr(URI uri) throws URISyntaxException
+	{
+		super(uri);
+
+		String serviceId = uri.getHost();
+		String lockstep = uri.getQuery();
+		String lockstepTime = uri.getFragment();
+
+		if (serviceId == null)
+			throw new URISyntaxException(uri.toString(),
+					"No serviceId specified!");
+
+		if ("true".equalsIgnoreCase(lockstep))
+		{
+			setLockstep(true);
+
+			if (lockstepTime != null)
+			{
+				try
+				{
+					setLockstepWaitTime(Long.parseLong(lockstepTime));
+				}
+				catch (Exception ex)
+				{
+					ex.printStackTrace();
+				}
+			}
+		}
+	}
+
+	public String getServiceId()
+	{
+		try
+		{
+			return new URI(getAddr().getAddress()).getHost();
+		}
+		catch (Exception ex)
+		{
+			ex.printStackTrace();
+
+			return null;
+		}
+	}
+
+	public void setServiceId(String serviceId)
+	{
+		if (serviceId == null)
+			throw new IllegalArgumentException();
+
+		getAddr().setAddress(INVM_PROTOCOL + "://" + serviceId);
+	}
+
+	public boolean getLockstep()
+	{
+		String lockstep = getAddr().getExtensionValue(LOCKSTEP_ENDPOINT_TAG);
+
+		if ("true".equalsIgnoreCase(lockstep))
+			return true;
+		else
+			return false;
+	}
+
+	public void setLockstep(boolean lockstep)
+	{
+		if (_lockstep)
+			throw new IllegalStateException("Lockstep already set!");
+
+		if (lockstep)
+			getAddr().addExtension(LOCKSTEP_ENDPOINT_TAG, "true");
+		else
+			getAddr().addExtension(LOCKSTEP_ENDPOINT_TAG, "false");
+
+		_lockstep = true;
+	}
+
+	public long getLockstepWaitTime()
+	{
+		String waitTime = getAddr().getExtensionValue(LOCKSTEP_WAIT_TIME_TAG);
+
+		if (waitTime != null)
+		{
+			try
+			{
+				return Long.parseLong(waitTime);
+			}
+			catch (Exception ex)
+			{
+				ex.printStackTrace();
+			}
+		}
+		
+		return DEFAULT_LOCKSTEP_WAIT_TIME;
+	}
+
+	public void setLockstepWaitTime(long waitTime)
+	{
+		if (_lockstepTime)
+			throw new IllegalStateException("Lockstep wait time already set!");
+
+		getAddr().addExtension(LOCKSTEP_WAIT_TIME_TAG, "" + waitTime);
+
+		_lockstepTime = true;
+	}
+
+	public String toString()
+	{
+		return "InVMEpr [ " + super.getAddr().extendedToString() + " ]";
+	}
+	
+    /**
+     * Create an encoded service ID from the supplied Service Cat and Name.
+     * <p/>
+     * The result is a simple hex encoding of the concatenated strings and is
+     * usable in the InVMEpr URI i.e. is uneffected by slashes etc in the
+     * Cat and Service name strings.
+     *
+     * @param catagory The Service Category.
+     * @param name The Service name.
+     * @return Hex encoded string.
+     */
+    public static String createEncodedServiceId(String catagory, String name) {
+        AssertArgument.isNotNullAndNotEmpty(catagory, "catagory");
+        AssertArgument.isNotNullAndNotEmpty(name, "name");
+
+        byte[] bytes = (catagory.trim() + name.trim()).getBytes();
+
+        return new String(Hex.encodeHex(bytes));
+    }
+
+    public EPR copy() {
+        return new InVMEpr(this);
+    }
+
+    private static URI _type;
+
+    public static URI type()
+	{
+		return _type;
+	}
+
+    static
+	{
+		try
+		{
+			_type = new URI("urn:jboss/esb/epr/type/invm");
+		}
+		catch (Exception ex)
+		{
+			ex.printStackTrace();
+
+			throw new ExceptionInInitializerError(ex.toString());
+		}
+	}
+}
\ No newline at end of file

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/SFTPEpr.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/SFTPEpr.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/SFTPEpr.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -25,10 +25,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.XMLUtil;
@@ -36,12 +34,9 @@
 import org.w3c.dom.NodeList;
 
 /**
- * A helper class for using FTP style EPRs. Simply create instances of this
- * class instead of the base EPR. Since URLs can use FTP, we try to leverage
- * that as much as possible.
+ * A helper class for using SFTP style EPRs.
  * 
  * @author marklittle
- * 
  */
 public class SFTPEpr extends FTPEpr
 {
@@ -84,59 +79,68 @@
 		}
 	}
 
-	public SFTPEpr(URL url) throws URISyntaxException
-	{
-		super(url);
-	}
+       /**
+         * Construct the SFTP EPR with the specified URI.
+         * @param uri
+         * @throws URISyntaxException
+         */
+        public SFTPEpr(URI uri)
+        {
+                super(uri);
+        }
 
-	public SFTPEpr(URL url, URL cert) throws URISyntaxException
-	{
-		super(url);
-		
-		setCertificateURL(cert);
-	}
+        /**
+         * Construct the SFTP EPR with the specified URI and certificate.
+         * @param uri
+         * @param cert
+         * @throws URISyntaxException
+         */
+        public SFTPEpr(URI uri, URI cert) throws URISyntaxException
+        {
+                super(uri) ;
+                
+                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));
 	}
 
 	/**
-	 * Set the Certificate URL for this endpoint.
+	 * Set the Certificate URI for this endpoint.
 	 * 
 	 * @param cert
 	 *            the address.
 	 * @throws URISyntaxException
 	 *             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();
 
 		if (certificateSet)
-			throw new IllegalStateException("Certificate URL already set.");
+			throw new IllegalStateException("Certificate URI already set.");
 
-		getAddr().addExtension(CERTIFICATE_TAG, cert.toString());
+		getAddr().addExtension(CERTIFICATE_TAG, cert.toASCIIString());
 		certificateSet = true;
 	}
 
 	/**
-	 * @return the certificate URL for this EPR.
+	 * @return the certificate URI for this EPR.
 	 * @throws URISyntaxException
 	 *             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/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/util/DefaultReplyTo.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/util/DefaultReplyTo.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/addressing/util/DefaultReplyTo.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,26 +1,16 @@
 package org.jboss.soa.esb.addressing.util;
 
-import java.net.MalformedURLException;
-import java.net.URISyntaxException;
-
-import org.jboss.internal.soa.esb.addressing.eprs.DefaultFileReplyToEpr;
-import org.jboss.internal.soa.esb.addressing.eprs.DefaultFtpReplyToEpr;
-import org.jboss.internal.soa.esb.addressing.eprs.DefaultHibernateReplyToEpr;
-import org.jboss.internal.soa.esb.addressing.eprs.DefaultJdbcReplyToEpr;
-import org.jboss.internal.soa.esb.addressing.eprs.DefaultJmsReplyToEpr;
-import org.jboss.internal.soa.esb.addressing.eprs.DefaultSftpReplyToEpr;
+import org.jboss.internal.soa.esb.addressing.eprs.*;
 import org.jboss.soa.esb.addressing.Call;
 import org.jboss.soa.esb.addressing.EPR;
 import org.jboss.soa.esb.addressing.MalformedEPRException;
-import org.jboss.soa.esb.addressing.eprs.FTPEpr;
-import org.jboss.soa.esb.addressing.eprs.FileEpr;
-import org.jboss.soa.esb.addressing.eprs.HibernateEpr;
-import org.jboss.soa.esb.addressing.eprs.JDBCEpr;
-import org.jboss.soa.esb.addressing.eprs.JMSEpr;
-import org.jboss.soa.esb.addressing.eprs.SFTPEpr;
+import org.jboss.soa.esb.addressing.eprs.*;
 import org.jboss.soa.esb.couriers.CourierException;
 import org.jboss.soa.esb.message.Message;
 
+import java.net.MalformedURLException;
+import java.net.URISyntaxException;
+
 /*
  * JBoss, Home of Professional Open Source
  * Copyright 2006, JBoss Inc., and others contributors as indicated 
@@ -67,9 +57,13 @@
 	{
 	    if (null == toEpr)
 		throw new IllegalArgumentException("toEpr must not be null");
+        if (toEpr instanceof InVMEpr)
+        return new DefaultInVMReplyToEpr((InVMEpr) toEpr);
 	    if (toEpr instanceof JMSEpr)
 		return new DefaultJmsReplyToEpr((JMSEpr) toEpr);
 	    // Check for SFTPEpr first, as it extends FTPEpr
+	    if (toEpr instanceof FTPSEpr)
+		return new DefaultFtpsReplyToEpr((FTPSEpr) toEpr);
 	    if (toEpr instanceof SFTPEpr)
 		return new DefaultSftpReplyToEpr((SFTPEpr) toEpr);
 	    // Check for FTPEpr first, as it extends FileEpr

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/common/Environment.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/common/Environment.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/common/Environment.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,8 +34,10 @@
 	/*
 	 * Transport specific properties.
 	 */
-	
-	public static final String SMTP_HOST     = "org.jboss.soa.esb.mail.smtp.host";
+
+    public static final String DEFAULT_INVM_SCOPE     = "jboss.esb.invm.scope.default";
+
+    public static final String SMTP_HOST     = "org.jboss.soa.esb.mail.smtp.host";
 	public static final String SMTP_USERNAME = "org.jboss.soa.esb.mail.smtp.user";
 	public static final String SMTP_PASSWORD = "org.jboss.soa.esb.mail.smtp.password";
 	public static final String SMTP_PORT     = "org.jboss.soa.esb.mail.smtp.port";

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/common/ModulePropertyManager.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/common/ModulePropertyManager.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/common/ModulePropertyManager.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -31,16 +31,25 @@
 
 package org.jboss.soa.esb.common;
 
-import java.util.Hashtable;
-
-import org.apache.log4j.Logger;
-import org.jboss.soa.esb.FatalError;
-
+import com.arjuna.common.internal.util.propertyservice.PropertyManagerImpl;
 import com.arjuna.common.internal.util.propertyservice.plugins.io.XMLFilePlugin;
 import com.arjuna.common.util.exceptions.LoadPropertiesException;
 import com.arjuna.common.util.propertyservice.PropertyManager;
 import com.arjuna.common.util.propertyservice.PropertyManagerFactory;
+import org.apache.log4j.Logger;
+import org.jboss.internal.soa.esb.assertion.AssertArgument;
+import org.jboss.soa.esb.FatalError;
+import org.jboss.soa.esb.dom.YADOMUtil;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.NodeList;
+import org.xml.sax.SAXException;
 
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.Hashtable;
+
 /**
  * The ESB configuration file is split into modules, each concerned with a
  * specific capability. Each module may also depend upon another module. We use
@@ -178,7 +187,45 @@
 		}
 	}
 
-	private static Hashtable<String, PropertyManager> managers = new Hashtable<String, PropertyManager>();
+    public static void configure(InputStream esbConfig) throws IOException, SAXException {
+        AssertArgument.isNotNull(esbConfig, "esbConfig");
+
+        // Clear all existing PropertyManager instances...
+        managers.clear();
+
+        // Add the new PropertyManager instances...
+        Document configDoc = YADOMUtil.parseStream(esbConfig, false, false);
+        NodeList propertiesList = configDoc.getElementsByTagName("properties");
+        for(int i = 0; i < propertiesList.getLength(); i++) {
+            Element properties = (Element) propertiesList.item(i);
+            String name = properties.getAttribute("name");
+            PropertyManager propertyManager = new PropertyManagerImpl(name);
+            NodeList propertyList = properties.getElementsByTagName("property");
+
+            addProperties(propertyList, propertyManager);
+            managers.put(name, propertyManager);
+        }
+    }
+
+    private static void addProperties(NodeList propertyList, PropertyManager propertyManager) {
+        for(int i = 0; i < propertyList.getLength(); i++) {
+            Element property = (Element) propertyList.item(i);
+            String name = property.getAttribute("name");
+            String value = property.getAttribute("value");
+
+            propertyManager.setProperty(name, value);
+        }
+    }
+
+    public static Hashtable<String, PropertyManager> getManagers() {
+        return managers;
+    }
+
+    public static void setManagers(Hashtable<String, PropertyManager> managers) {
+        ModulePropertyManager.managers = managers;
+    }
+
+    private static Hashtable<String, PropertyManager> managers = new Hashtable<String, PropertyManager>();
 	
 	private static Logger _logger = Logger.getLogger(ModulePropertyManager.class);
 }

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/couriers/CourierFactory.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/couriers/CourierFactory.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/couriers/CourierFactory.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -29,12 +29,15 @@
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
 import java.util.Map.Entry;
 
 import org.apache.log4j.Logger;
 import org.jboss.internal.soa.esb.couriers.TwoWayCourierImpl;
+import org.jboss.internal.soa.esb.couriers.InVMCourier;
 import org.jboss.soa.esb.addressing.EPR;
 import org.jboss.soa.esb.addressing.MalformedEPRException;
+import org.jboss.soa.esb.addressing.eprs.InVMEpr;
 import org.jboss.soa.esb.lifecycle.LifecyclePriorities;
 import org.jboss.soa.esb.lifecycle.LifecycleResource;
 import org.jboss.soa.esb.lifecycle.LifecycleResourceException;
@@ -59,6 +62,13 @@
                 LifecyclePriorities.COURIER_PRIORITY) ;
 
     /**
+     * InVM Couiers.
+     * <p/>
+     * We handle this
+     */
+    private final Map<String, InVMCourier> inVMCouriers = new ConcurrentHashMap<String, InVMCourier>();
+
+    /**
      * Factory singleton instance.
      */
     private static CourierFactory instance = new CourierFactory();
@@ -105,8 +115,14 @@
 	 */
 	public static Courier getCourier(EPR toEPR) throws CourierException, MalformedEPRException
 	{
-		return getCourier(toEPR, null);
-	}
+        if(toEPR instanceof InVMEpr) {
+            TwoWayCourierImpl courier = new TwoWayCourierImpl(CourierFactory.getInstance().getInVMCourier((InVMEpr) toEPR), null);
+            courier.setToEpr(toEPR);
+            return courier;
+        } else {
+		    return getCourier(toEPR, null);
+        }
+    }
 	/**
 	 * Obtain a courier which can perform pickups only and prime it with the "to address" (toEPR) 
 	 * and the "replyTo address" (replyToEPR). 
@@ -117,9 +133,30 @@
 	 */
 	public static TwoWayCourier getPickupCourier(EPR replyToEPR) throws CourierException, MalformedEPRException
 	{
-		return getCourier(null, replyToEPR);
-	}
-	/**
+        if(replyToEPR instanceof InVMEpr) {
+            TwoWayCourierImpl courier = new TwoWayCourierImpl(null, CourierFactory.getInstance().getInVMCourier((InVMEpr) replyToEPR));
+            courier.setReplyToEpr(replyToEPR);
+            return courier;
+        } else {
+            return getCourier(null, replyToEPR);
+        }    
+    }
+    
+    public synchronized InVMCourier getInVMCourier(InVMEpr epr) {
+        String address = epr.getAddr().getAddress();
+        InVMCourier courier = inVMCouriers.get(address);
+
+        if (courier == null) {
+            courier = new InVMCourier(epr);
+            inVMCouriers.put(address, courier);
+        }
+
+        courier.setActive(true);
+
+        return courier;
+    }
+
+    /**
 	 * Obtain a courier which can perform both deliveries and pickups and prime it with 
 	 * the "to address" (toEPR) and the "replyTo address" (replyToEPR). 
 	 * 

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/dom/YADOMUtil.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/dom/YADOMUtil.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/dom/YADOMUtil.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -159,6 +159,14 @@
         }
     }
 
+    public static String getAttribute(Element element, String name, String defaultVal) {
+        if(element.hasAttribute(name)) {
+            return element.getAttribute(name);
+        } else {
+            return defaultVal;
+        }
+    }
+
     /**
 	 * Add an Element node to the supplied parent name.
 	 * @param parent The parent to to which the new Element node is to be added.

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/configurators/HttpProtocol.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/configurators/HttpProtocol.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/configurators/HttpProtocol.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -21,24 +21,28 @@
 
 import org.apache.commons.httpclient.HttpClient;
 import org.apache.commons.httpclient.contrib.ssl.StrictSSLProtocolSocketFactory;
-import org.apache.commons.httpclient.protocol.ProtocolSocketFactory;
 import org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory;
 import org.apache.commons.httpclient.protocol.Protocol;
+import org.apache.commons.httpclient.protocol.ProtocolSocketFactory;
 import org.apache.commons.ssl.KeyMaterial;
 import org.apache.commons.ssl.SSLClient;
 import org.jboss.soa.esb.ConfigurationException;
 import org.jboss.soa.esb.http.Configurator;
+import org.jboss.soa.esb.http.protocol.ProtocolSocketFactoryBuilder;
 import org.jboss.soa.esb.util.ClassUtil;
 
-import java.util.Properties;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
 import java.net.URI;
 import java.net.URISyntaxException;
-import java.io.*;
 import java.security.GeneralSecurityException;
+import java.security.KeyManagementException;
+import java.security.KeyStoreException;
 import java.security.NoSuchAlgorithmException;
-import java.security.KeyStoreException;
-import java.security.KeyManagementException;
 import java.security.cert.CertificateException;
+import java.util.Properties;
 
 /**
  * HTTP Protocol configurator.
@@ -53,8 +57,10 @@
  *      <li><b>keystore-passwd</b>: (Optional).  See {@link KeyMaterial}. Defaults to "changeit".</li>
  *      <li><b>protocol-socket-factory</b>: See {@link Protocol}. (Optional).
  *          Defaults to {@link StrictSSLProtocolSocketFactory} for HTTPS, otherwise defaults to {@link DefaultProtocolSocketFactory}.
- *          Configure with {@link org.apache.commons.httpclient.contrib.ssl.EasySSLProtocolSocketFactory} if you wish
- *          to allow the target server to authenticate with a self-signed certificate</li>
+ *          Configure with {@link org.apache.commons.httpclient.contrib.ssl.EasySSLProtocolSocketFactory} for unauthenticated
+ *          SSL.  To authenticate with a self-signed certificate, use the
+ *          {@link org.jboss.soa.esb.http.protocol.SelfSignedSSLProtocolSocketFactoryBuilder} (test/demo only) and to perform
+ *          full authentication (2way) with CA Signed certs, use the {@link org.jboss.soa.esb.http.protocol.AuthSSLProtocolSocketFactoryBuilder}.</li>
  * </ul>
  * <p/>
  * See <a href="http://jakarta.apache.org/commons/httpclient/sslguide.html">HttpClient HttpProtocol Guide</a>.
@@ -91,7 +97,7 @@
             }
         }
         assertPropertySetAndNotBlank(factory, "protocol-socket-factory");
-        socketFactory = createFactoryClass(factory, keyMaterial);
+        socketFactory = createFactoryClass(factory, keyMaterial, properties);
 
         // And finally... configure the host with the protocol....
         protocol = new Protocol(scheme, socketFactory, port);
@@ -138,11 +144,25 @@
         throw new ConfigurationException("Failed to locate keystore '" + keyStore + "'.");
     }
 
-    private ProtocolSocketFactory createFactoryClass(String factory, KeyMaterial keyMaterial) throws ConfigurationException {
+    private ProtocolSocketFactory createFactoryClass(String factory, KeyMaterial keyMaterial, Properties properties) throws ConfigurationException {
         ProtocolSocketFactory socketFactory = null;
 
         try {
-            socketFactory = (ProtocolSocketFactory) ClassUtil.forName(factory, HttpProtocol.class).newInstance();
+            Class factoryClass = ClassUtil.forName(factory, HttpProtocol.class);
+
+            if(ProtocolSocketFactoryBuilder.class.isAssignableFrom(factoryClass)) {
+                try {
+                    ProtocolSocketFactoryBuilder factoryBuilder = (ProtocolSocketFactoryBuilder) factoryClass.newInstance();
+                    factoryBuilder.setConfiguration(properties);
+                    socketFactory = factoryBuilder.newInstance();
+                } catch (InstantiationException e) {
+                    throw new ConfigurationException("Failed to instantiate ProtocolSocketFactoryBuilder implementation class [" + factory + "]. Must provide a default constructor.", e);
+                } catch (IllegalAccessException e) {
+                    throw new ConfigurationException("Failed to instantiate ProtocolSocketFactoryBuilder implementation class [" + factory + "]. Must provide a default constructor.", e);
+                }
+            } else {
+                socketFactory = (ProtocolSocketFactory) factoryClass.newInstance();
+            }
         } catch (ClassCastException e) {
             throw new ConfigurationException("Class [" + factory + "] must implement [" + ProtocolSocketFactory.class.getName() + "].", e);
         } catch (ClassNotFoundException e) {

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/http/protocol)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/AbstractProtocolSocketFactoryBuilder.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/http/protocol/AbstractProtocolSocketFactoryBuilder.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/AbstractProtocolSocketFactoryBuilder.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,144 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.http.protocol;
-
-import org.jboss.soa.esb.ConfigurationException;
-import org.jboss.soa.esb.util.ssl.SSLUtil;
-
-import java.io.InputStream;
-import java.io.IOException;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.security.KeyStore;
-import java.security.NoSuchAlgorithmException;
-import java.security.KeyStoreException;
-import java.security.cert.CertificateException;
-import java.util.Properties;
-
-/**
- * Abstract {@link ProtocolSocketFactoryBuilder} providing utility methods
- * for concrete implementations.
- *
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public abstract class AbstractProtocolSocketFactoryBuilder implements ProtocolSocketFactoryBuilder {
-
-    private Properties configuration;
-
-    public void setConfiguration(Properties configuration) throws ConfigurationException {
-        this.configuration = configuration;
-    }
-
-    protected String getTruststorePassword() {
-        return configuration.getProperty("truststore-passw");
-    }
-
-    protected String getKeystorePassword() {
-        return configuration.getProperty("keystore-passw");
-    }
-
-    protected String getKeystoreType() {
-        return configuration.getProperty("keystore-type", "jks");
-    }
-
-    protected String getTruststoreType() {
-        return configuration.getProperty("truststore-type", "jks");
-    }
-
-    protected URL getTruststoreURL() throws ConfigurationException {
-        URL trustStoreURL = null;
-        String trustStoreConfig = configuration.getProperty("truststore");
-
-        if(trustStoreConfig != null) {
-            try {
-                trustStoreURL = new URL(trustStoreConfig);
-            } catch (MalformedURLException e) {
-                throw new ConfigurationException("Invalid 'truststore' config.  Must be valid URL.", e);
-            }
-        }
-
-        return trustStoreURL;
-    }
-
-    protected URL getKeystoreURL() throws ConfigurationException {
-        String keyStoreConfig = configuration.getProperty("keystore");
-        URL keyStoreURL = null;
-
-        if(keyStoreConfig != null) {
-            try {
-                keyStoreURL = new URL(keyStoreConfig);
-            } catch (MalformedURLException e) {
-                throw new ConfigurationException("Invalid 'keystore' config.  Must be valid URL.", e);
-            }
-        }
-
-        return keyStoreURL;
-    }
-
-    protected KeyStore getKeystore() throws ConfigurationException {
-        URL url = getKeystoreURL();
-
-        if(url != null) {
-            try {
-                InputStream keystoreStream = url.openStream();
-                if(keystoreStream != null) {
-                    return SSLUtil.loadKeyStore(keystoreStream, getKeystoreType(), getKeystorePassword());
-                } else {
-                    throw new ConfigurationException("Unable to open keystore '" + url.toString() + "' for loading.");
-                }
-            } catch (IOException e) {
-                throw new ConfigurationException("Unable to open keystore '" + url.toString() + "' for loading.", e);
-            } catch (NoSuchAlgorithmException e) {
-                throw new ConfigurationException("Unable to load keystore '" + url.toString() + "'.", e);
-            } catch (KeyStoreException e) {
-                throw new ConfigurationException("Unable to load keystore '" + url.toString() + "'.", e);
-            } catch (CertificateException e) {
-                throw new ConfigurationException("Unable to load keystore '" + url.toString() + "'.", e);
-            }
-        }
-
-        return null;
-    }
-
-    protected KeyStore getTruststore() throws ConfigurationException {
-        URL url = getTruststoreURL();
-
-        if(url != null) {
-            try {
-                InputStream truststoreStream = url.openStream();
-                if(truststoreStream != null) {
-                    return SSLUtil.loadKeyStore(truststoreStream, getTruststoreType(), getTruststorePassword());
-                } else {
-                    throw new ConfigurationException("Unable to open truststore '" + url.toString() + "' for loading.");
-                }
-            } catch (IOException e) {
-                throw new ConfigurationException("Unable to open truststore '" + url.toString() + "' for loading.", e);
-            } catch (NoSuchAlgorithmException e) {
-                throw new ConfigurationException("Unable to load truststore '" + url.toString() + "'.", e);
-            } catch (KeyStoreException e) {
-                throw new ConfigurationException("Unable to load truststore '" + url.toString() + "'.", e);
-            } catch (CertificateException e) {
-                throw new ConfigurationException("Unable to load truststore '" + url.toString() + "'.", e);
-            }
-        }
-
-        return null;
-    }
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/AbstractProtocolSocketFactoryBuilder.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/http/protocol/AbstractProtocolSocketFactoryBuilder.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/AbstractProtocolSocketFactoryBuilder.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/AbstractProtocolSocketFactoryBuilder.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,144 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.http.protocol;
+
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.util.ssl.SSLUtil;
+
+import java.io.InputStream;
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.security.KeyStore;
+import java.security.NoSuchAlgorithmException;
+import java.security.KeyStoreException;
+import java.security.cert.CertificateException;
+import java.util.Properties;
+
+/**
+ * Abstract {@link ProtocolSocketFactoryBuilder} providing utility methods
+ * for concrete implementations.
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public abstract class AbstractProtocolSocketFactoryBuilder implements ProtocolSocketFactoryBuilder {
+
+    private Properties configuration;
+
+    public void setConfiguration(Properties configuration) throws ConfigurationException {
+        this.configuration = configuration;
+    }
+
+    protected String getTruststorePassword() {
+        return configuration.getProperty("truststore-passw");
+    }
+
+    protected String getKeystorePassword() {
+        return configuration.getProperty("keystore-passw");
+    }
+
+    protected String getKeystoreType() {
+        return configuration.getProperty("keystore-type", "jks");
+    }
+
+    protected String getTruststoreType() {
+        return configuration.getProperty("truststore-type", "jks");
+    }
+
+    protected URL getTruststoreURL() throws ConfigurationException {
+        URL trustStoreURL = null;
+        String trustStoreConfig = configuration.getProperty("truststore");
+
+        if(trustStoreConfig != null) {
+            try {
+                trustStoreURL = new URL(trustStoreConfig);
+            } catch (MalformedURLException e) {
+                throw new ConfigurationException("Invalid 'truststore' config.  Must be valid URL.", e);
+            }
+        }
+
+        return trustStoreURL;
+    }
+
+    protected URL getKeystoreURL() throws ConfigurationException {
+        String keyStoreConfig = configuration.getProperty("keystore");
+        URL keyStoreURL = null;
+
+        if(keyStoreConfig != null) {
+            try {
+                keyStoreURL = new URL(keyStoreConfig);
+            } catch (MalformedURLException e) {
+                throw new ConfigurationException("Invalid 'keystore' config.  Must be valid URL.", e);
+            }
+        }
+
+        return keyStoreURL;
+    }
+
+    protected KeyStore getKeystore() throws ConfigurationException {
+        URL url = getKeystoreURL();
+
+        if(url != null) {
+            try {
+                InputStream keystoreStream = url.openStream();
+                if(keystoreStream != null) {
+                    return SSLUtil.loadKeyStore(keystoreStream, getKeystoreType(), getKeystorePassword());
+                } else {
+                    throw new ConfigurationException("Unable to open keystore '" + url.toString() + "' for loading.");
+                }
+            } catch (IOException e) {
+                throw new ConfigurationException("Unable to open keystore '" + url.toString() + "' for loading.", e);
+            } catch (NoSuchAlgorithmException e) {
+                throw new ConfigurationException("Unable to load keystore '" + url.toString() + "'.", e);
+            } catch (KeyStoreException e) {
+                throw new ConfigurationException("Unable to load keystore '" + url.toString() + "'.", e);
+            } catch (CertificateException e) {
+                throw new ConfigurationException("Unable to load keystore '" + url.toString() + "'.", e);
+            }
+        }
+
+        return null;
+    }
+
+    protected KeyStore getTruststore() throws ConfigurationException {
+        URL url = getTruststoreURL();
+
+        if(url != null) {
+            try {
+                InputStream truststoreStream = url.openStream();
+                if(truststoreStream != null) {
+                    return SSLUtil.loadKeyStore(truststoreStream, getTruststoreType(), getTruststorePassword());
+                } else {
+                    throw new ConfigurationException("Unable to open truststore '" + url.toString() + "' for loading.");
+                }
+            } catch (IOException e) {
+                throw new ConfigurationException("Unable to open truststore '" + url.toString() + "' for loading.", e);
+            } catch (NoSuchAlgorithmException e) {
+                throw new ConfigurationException("Unable to load truststore '" + url.toString() + "'.", e);
+            } catch (KeyStoreException e) {
+                throw new ConfigurationException("Unable to load truststore '" + url.toString() + "'.", e);
+            } catch (CertificateException e) {
+                throw new ConfigurationException("Unable to load truststore '" + url.toString() + "'.", e);
+            }
+        }
+
+        return null;
+    }
+}

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/AuthSSLProtocolSocketFactoryBuilder.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/http/protocol/AuthSSLProtocolSocketFactoryBuilder.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/AuthSSLProtocolSocketFactoryBuilder.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,53 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.http.protocol;
-
-import org.apache.commons.httpclient.contrib.ssl.AuthSSLProtocolSocketFactory;
-import org.apache.commons.httpclient.protocol.ProtocolSocketFactory;
-import org.jboss.soa.esb.ConfigurationException;
-
-import java.net.URL;
-import java.security.GeneralSecurityException;
-import java.io.IOException;
-
-/**
- * Creates and configures an instance of the {@link org.apache.commons.httpclient.contrib.ssl.AuthSSLProtocolSocketFactory}
- * class for 2way authentication.
- * 
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public class AuthSSLProtocolSocketFactoryBuilder extends AbstractProtocolSocketFactoryBuilder {
-
-    public ProtocolSocketFactory newInstance() throws ConfigurationException {
-        String keyStorePW = getKeystorePassword();
-        String trustStorePW = getTruststorePassword();
-        URL keyStoreURL = getKeystoreURL();
-        URL trustStoreURL = getTruststoreURL();
-
-        try {
-            return new AuthSSLProtocolSocketFactory(keyStoreURL, keyStorePW, trustStoreURL, trustStorePW);
-        } catch (GeneralSecurityException e) {
-            throw new ConfigurationException("Failed to create AuthSSLProtocolSocketFactory instance.", e);
-        } catch (IOException e) {
-            throw new ConfigurationException("Failed to create AuthSSLProtocolSocketFactory instance.", e);
-        }
-    }
-
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/AuthSSLProtocolSocketFactoryBuilder.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/http/protocol/AuthSSLProtocolSocketFactoryBuilder.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/AuthSSLProtocolSocketFactoryBuilder.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/AuthSSLProtocolSocketFactoryBuilder.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,53 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.http.protocol;
+
+import org.apache.commons.httpclient.contrib.ssl.AuthSSLProtocolSocketFactory;
+import org.apache.commons.httpclient.protocol.ProtocolSocketFactory;
+import org.jboss.soa.esb.ConfigurationException;
+
+import java.net.URL;
+import java.security.GeneralSecurityException;
+import java.io.IOException;
+
+/**
+ * Creates and configures an instance of the {@link org.apache.commons.httpclient.contrib.ssl.AuthSSLProtocolSocketFactory}
+ * class for 2way authentication.
+ * 
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class AuthSSLProtocolSocketFactoryBuilder extends AbstractProtocolSocketFactoryBuilder {
+
+    public ProtocolSocketFactory newInstance() throws ConfigurationException {
+        String keyStorePW = getKeystorePassword();
+        String trustStorePW = getTruststorePassword();
+        URL keyStoreURL = getKeystoreURL();
+        URL trustStoreURL = getTruststoreURL();
+
+        try {
+            return new AuthSSLProtocolSocketFactory(keyStoreURL, keyStorePW, trustStoreURL, trustStorePW);
+        } catch (GeneralSecurityException e) {
+            throw new ConfigurationException("Failed to create AuthSSLProtocolSocketFactory instance.", e);
+        } catch (IOException e) {
+            throw new ConfigurationException("Failed to create AuthSSLProtocolSocketFactory instance.", e);
+        }
+    }
+
+}

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/ProtocolSocketFactoryBuilder.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/http/protocol/ProtocolSocketFactoryBuilder.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/ProtocolSocketFactoryBuilder.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,54 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.http.protocol;
-
-import org.apache.commons.httpclient.protocol.ProtocolSocketFactory;
-import org.jboss.soa.esb.ConfigurationException;
-
-import java.util.Properties;
-
-/**
- * {@link ProtocolSocketFactory} Builder.
- * <p/>
- * This builder is needed because some of the HttpClient ProtocolSocketFactory
- * are not easily created and configured reflectively.
- * <p/>
- * <b>Implementations must provide a default (no-arg) constructor.</b>
- *
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public interface ProtocolSocketFactoryBuilder {
-
-    /**
-     * Set the builder configuration.
-     * @param configuration The configuration.
-     * @throws ConfigurationException Bad configuration.
-     */
-    public void setConfiguration(Properties configuration) throws ConfigurationException;
-
-    /**
-     * Create a new instance of the {@link ProtocolSocketFactory} based on the supplied
-     * {@link org.jboss.soa.esb.http.HttpClientFactory} configuration.
-     *
-     * @return The configured ProtocolSocketFactory implementation. 
-     * @throws ConfigurationException Bad configuration.
-     */
-    public ProtocolSocketFactory newInstance() throws ConfigurationException;
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/ProtocolSocketFactoryBuilder.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/http/protocol/ProtocolSocketFactoryBuilder.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/ProtocolSocketFactoryBuilder.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/ProtocolSocketFactoryBuilder.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,54 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.http.protocol;
+
+import org.apache.commons.httpclient.protocol.ProtocolSocketFactory;
+import org.jboss.soa.esb.ConfigurationException;
+
+import java.util.Properties;
+
+/**
+ * {@link ProtocolSocketFactory} Builder.
+ * <p/>
+ * This builder is needed because some of the HttpClient ProtocolSocketFactory
+ * are not easily created and configured reflectively.
+ * <p/>
+ * <b>Implementations must provide a default (no-arg) constructor.</b>
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public interface ProtocolSocketFactoryBuilder {
+
+    /**
+     * Set the builder configuration.
+     * @param configuration The configuration.
+     * @throws ConfigurationException Bad configuration.
+     */
+    public void setConfiguration(Properties configuration) throws ConfigurationException;
+
+    /**
+     * Create a new instance of the {@link ProtocolSocketFactory} based on the supplied
+     * {@link org.jboss.soa.esb.http.HttpClientFactory} configuration.
+     *
+     * @return The configured ProtocolSocketFactory implementation. 
+     * @throws ConfigurationException Bad configuration.
+     */
+    public ProtocolSocketFactory newInstance() throws ConfigurationException;
+}

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/SelfSignedSSLProtocolSocketFactoryBuilder.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/http/protocol/SelfSignedSSLProtocolSocketFactoryBuilder.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/SelfSignedSSLProtocolSocketFactoryBuilder.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,108 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.http.protocol;
-
-import org.apache.commons.httpclient.ConnectTimeoutException;
-import org.apache.commons.httpclient.params.HttpConnectionParams;
-import org.apache.commons.httpclient.protocol.ProtocolSocketFactory;
-import org.apache.commons.httpclient.protocol.SecureProtocolSocketFactory;
-import org.jboss.soa.esb.ConfigurationException;
-import org.jboss.soa.esb.util.ssl.SSLUtil;
-import org.jboss.soa.esb.util.ssl.SelfSignedTrustManager;
-import org.jboss.internal.soa.esb.assertion.AssertArgument;
-
-import javax.net.SocketFactory;
-import javax.net.ssl.KeyManager;
-import javax.net.ssl.SSLContext;
-import javax.net.ssl.TrustManager;
-import java.io.IOException;
-import java.net.*;
-import java.security.*;
-
-/**
- * Builder for creating a ProtocolSocketFactory that supports Self-Signed Server
- * certificates.
- * <p/>
- * <b>For test/demo purposes only.</b>
- *
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public class SelfSignedSSLProtocolSocketFactoryBuilder extends AbstractProtocolSocketFactoryBuilder {
-
-    public ProtocolSocketFactory newInstance() throws ConfigurationException {
-        try {
-            return new SelfSignedSSLProtocolSocketFactory(getKeystore(), getKeystorePassword(), getTruststore());
-        } catch (NoSuchAlgorithmException e) {
-            throw new ConfigurationException("Failed to create SelfSignedSSLProtocolSocketFactory.", e);
-        } catch (KeyStoreException e) {
-            throw new ConfigurationException("Failed to create SelfSignedSSLProtocolSocketFactory.", e);
-        } catch (UnrecoverableKeyException e) {
-            throw new ConfigurationException("Failed to create SelfSignedSSLProtocolSocketFactory.", e);
-        }
-    }
-
-    private static class SelfSignedSSLProtocolSocketFactory implements SecureProtocolSocketFactory {
-
-        private SSLContext sslContext;
-
-        public SelfSignedSSLProtocolSocketFactory(KeyStore keystore, String keystorePassword, KeyStore truststore) throws NoSuchAlgorithmException, KeyStoreException, ConfigurationException, UnrecoverableKeyException {
-            KeyManager[] keyManagers = SSLUtil.getKeyManagers(keystore, keystorePassword);
-            SelfSignedTrustManager trustManager = new SelfSignedTrustManager(truststore);
-
-            sslContext = SSLContext.getInstance("SSL");
-            try {
-                sslContext.init(keyManagers, new TrustManager[]{trustManager}, null);
-            } catch (KeyManagementException e) {
-                throw new ConfigurationException("Failed to initialize SSL Context.", e);
-            }
-        }
-
-        public Socket createSocket(Socket socket, String host, int port, boolean autoClose) throws IOException, UnknownHostException {
-            return sslContext.getSocketFactory().createSocket(socket, host, port, autoClose);
-        }
-
-        public Socket createSocket(String host, int port, InetAddress clientHost, int clientPort) throws IOException {
-            return sslContext.getSocketFactory().createSocket(host, port, clientHost, clientPort);
-        }
-
-        public Socket createSocket(String host, int port, InetAddress localAddress, int localPort, HttpConnectionParams params) throws IOException, ConnectTimeoutException {
-            AssertArgument.isNotNull(params, "params");
-
-            SocketFactory socketfactory = sslContext.getSocketFactory();
-            int connectTimeout = params.getConnectionTimeout();
-
-            if (connectTimeout == 0) {
-                return socketfactory.createSocket(host, port, localAddress, localPort);
-            } else {
-                Socket socket = socketfactory.createSocket();
-                SocketAddress localSocketAddress = new InetSocketAddress(localAddress, localPort);
-                SocketAddress remoteSocketAddress = new InetSocketAddress(host, port);
-                socket.bind(localSocketAddress);
-                socket.connect(remoteSocketAddress, connectTimeout);
-
-                return socket;
-            }
-        }
-
-        public Socket createSocket(String host, int port) throws IOException {
-            return sslContext.getSocketFactory().createSocket(host, port);
-        }
-    }
-}
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/SelfSignedSSLProtocolSocketFactoryBuilder.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/http/protocol/SelfSignedSSLProtocolSocketFactoryBuilder.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/SelfSignedSSLProtocolSocketFactoryBuilder.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/http/protocol/SelfSignedSSLProtocolSocketFactoryBuilder.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,108 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.http.protocol;
+
+import org.apache.commons.httpclient.ConnectTimeoutException;
+import org.apache.commons.httpclient.params.HttpConnectionParams;
+import org.apache.commons.httpclient.protocol.ProtocolSocketFactory;
+import org.apache.commons.httpclient.protocol.SecureProtocolSocketFactory;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.util.ssl.SSLUtil;
+import org.jboss.soa.esb.util.ssl.SelfSignedTrustManager;
+import org.jboss.internal.soa.esb.assertion.AssertArgument;
+
+import javax.net.SocketFactory;
+import javax.net.ssl.KeyManager;
+import javax.net.ssl.SSLContext;
+import javax.net.ssl.TrustManager;
+import java.io.IOException;
+import java.net.*;
+import java.security.*;
+
+/**
+ * Builder for creating a ProtocolSocketFactory that supports Self-Signed Server
+ * certificates.
+ * <p/>
+ * <b>For test/demo purposes only.</b>
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class SelfSignedSSLProtocolSocketFactoryBuilder extends AbstractProtocolSocketFactoryBuilder {
+
+    public ProtocolSocketFactory newInstance() throws ConfigurationException {
+        try {
+            return new SelfSignedSSLProtocolSocketFactory(getKeystore(), getKeystorePassword(), getTruststore());
+        } catch (NoSuchAlgorithmException e) {
+            throw new ConfigurationException("Failed to create SelfSignedSSLProtocolSocketFactory.", e);
+        } catch (KeyStoreException e) {
+            throw new ConfigurationException("Failed to create SelfSignedSSLProtocolSocketFactory.", e);
+        } catch (UnrecoverableKeyException e) {
+            throw new ConfigurationException("Failed to create SelfSignedSSLProtocolSocketFactory.", e);
+        }
+    }
+
+    private static class SelfSignedSSLProtocolSocketFactory implements SecureProtocolSocketFactory {
+
+        private SSLContext sslContext;
+
+        public SelfSignedSSLProtocolSocketFactory(KeyStore keystore, String keystorePassword, KeyStore truststore) throws NoSuchAlgorithmException, KeyStoreException, ConfigurationException, UnrecoverableKeyException {
+            KeyManager[] keyManagers = SSLUtil.getKeyManagers(keystore, keystorePassword);
+            SelfSignedTrustManager trustManager = new SelfSignedTrustManager(truststore);
+
+            sslContext = SSLContext.getInstance("SSL");
+            try {
+                sslContext.init(keyManagers, new TrustManager[]{trustManager}, null);
+            } catch (KeyManagementException e) {
+                throw new ConfigurationException("Failed to initialize SSL Context.", e);
+            }
+        }
+
+        public Socket createSocket(Socket socket, String host, int port, boolean autoClose) throws IOException, UnknownHostException {
+            return sslContext.getSocketFactory().createSocket(socket, host, port, autoClose);
+        }
+
+        public Socket createSocket(String host, int port, InetAddress clientHost, int clientPort) throws IOException {
+            return sslContext.getSocketFactory().createSocket(host, port, clientHost, clientPort);
+        }
+
+        public Socket createSocket(String host, int port, InetAddress localAddress, int localPort, HttpConnectionParams params) throws IOException, ConnectTimeoutException {
+            AssertArgument.isNotNull(params, "params");
+
+            SocketFactory socketfactory = sslContext.getSocketFactory();
+            int connectTimeout = params.getConnectionTimeout();
+
+            if (connectTimeout == 0) {
+                return socketfactory.createSocket(host, port, localAddress, localPort);
+            } else {
+                Socket socket = socketfactory.createSocket();
+                SocketAddress localSocketAddress = new InetSocketAddress(localAddress, localPort);
+                SocketAddress remoteSocketAddress = new InetSocketAddress(host, port);
+                socket.bind(localSocketAddress);
+                socket.connect(remoteSocketAddress, connectTimeout);
+
+                return socket;
+            }
+        }
+
+        public Socket createSocket(String host, int port) throws IOException {
+            return sslContext.getSocketFactory().createSocket(host, port);
+        }
+    }
+}
\ No newline at end of file

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerUtil.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerUtil.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerUtil.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -23,9 +23,8 @@
 package org.jboss.soa.esb.listeners;
 
 import java.io.File;
-import java.net.MalformedURLException;
 import java.net.URISyntaxException;
-import java.net.URL;
+import java.net.URI;
 import java.util.Properties;
 import java.util.Set;
 
@@ -37,10 +36,7 @@
 import org.jboss.soa.esb.client.ServiceInvoker;
 import org.jboss.soa.esb.common.Configuration;
 import org.jboss.soa.esb.addressing.EPR;
-import org.jboss.soa.esb.addressing.eprs.FTPEpr;
-import org.jboss.soa.esb.addressing.eprs.FileEpr;
-import org.jboss.soa.esb.addressing.eprs.JDBCEpr;
-import org.jboss.soa.esb.addressing.eprs.JMSEpr;
+import org.jboss.soa.esb.addressing.eprs.*;
 import org.jboss.soa.esb.helpers.ConfigTree;
 import org.jboss.soa.esb.listeners.message.MessageDeliverException;
 import org.jboss.soa.esb.message.Message;
@@ -84,12 +80,18 @@
 
 		try
 		{
+            if (InVMEpr.INVM_PROTOCOL.equals(protocol))
+                return inVMEprFromElement(tree);
 			if ("jms".equals(protocol))
 				return jmsEprFromElement(tree);
 			if ("file".equals(protocol))
 				return fileEprFromElement(tree);
 			if ("ftp".equals(protocol))
 				return fileEprFromElement(tree);
+			if ("ftps".equals(protocol))
+				return fileEprFromElement(tree);
+			if ("sftp".equals(protocol))
+				return fileEprFromElement(tree);
 			if ("jdbc".equals(protocol))
 				return jdbcEprFromElement(tree);
 		}
@@ -105,6 +107,31 @@
 
 	} // ________________________________
 
+    public static InVMEpr inVMEprFromElement (ConfigTree tree) throws ConfigurationException
+    {
+        try
+        {
+            String uriString = tree.getRequiredAttribute(ListenerTagNames.URL_TAG);
+            URI uri = new URI(uriString);
+            String protocol = uri.getScheme();
+
+            if (protocol.equals(InVMEpr.INVM_PROTOCOL))
+            {
+                return new InVMEpr(uri);
+            }
+            else
+                throw new ConfigurationException("Not an InVMEpr");
+        }
+        catch (URISyntaxException ex)
+        {
+            throw new ConfigurationException(ex);
+        }
+        catch (ConfigurationException ex)
+        {
+            throw ex;
+        }
+    }
+
 	public static JMSEpr jmsEprFromElement(ConfigTree tree)
 			throws ConfigurationException
 	{
@@ -163,22 +190,45 @@
 		try
 		{
             String urlString = tree.getRequiredAttribute(ListenerTagNames.URL_TAG);
-			URL url = new URL(urlString);
-			String protocol = url.getProtocol();
+			URI uri = new URI(urlString);
+			String scheme = uri.getScheme();
 	
-			if ("file".equals(protocol))
+                        final FileEpr epr ;
+			if ("file".equals(scheme))
 			{
-				if (!new File(url.getFile()).isDirectory())
+				if (!new File(uri).isDirectory())
 					throw new ConfigurationException("Attribute "
 							+ ListenerTagNames.URL_TAG
 							+ " must reference a directory");
+				epr = new FileEpr(uri) ;
 			}
-	
-			FileEpr epr = ("file".equals(protocol)) ? new FileEpr(url) : ("ftp"
-					.equals(protocol)) ? new FTPEpr(url) : null;
-			if (null == epr)
+			else if ("ftp".equals(scheme))
+			{
+			    epr = new FTPEpr(uri) ;
+			}
+			else if ("ftps".equals(scheme))
+			{
+			    String cert = tree.getAttribute(FTPSEpr.CERTIFICATE_TAG);
+			    String name = tree.getAttribute(FTPSEpr.CERTIFICATE_NAME_TAG);
+			    epr = new FTPSEpr(uri, cert, name);
+			}
+			else if ("sftp".equals(scheme))
+			{
+			    String cert = tree.getAttribute(SFTPEpr.CERTIFICATE_TAG);
+			    if(cert == null)
+			    {
+			        epr = new SFTPEpr(uri);
+			    }
+			    else
+			    {
+			        epr = new SFTPEpr(uri,new URI(cert));
+			    }
+			}
+			else
+			{
 				throw new ConfigurationException("Unsupported file protocol : "
-						+ protocol);
+						+ scheme);
+			}
 	
 			String inputSuffix = tree.getAttribute(FileEpr.INPUT_SUFFIX_TAG);
 	
@@ -204,7 +254,7 @@
 			}
 			if (null == errorDir)
 			{
-				errorDir = url.getFile();
+				errorDir = uri.getPath();
 				warnDefault(FileEpr.ERROR_DIR_TAG, errorDir);
 			}
 			if (null == errorSuffix)
@@ -235,7 +285,7 @@
 			}
 			if (null == postDir)
 			{
-				postDir = url.getFile();
+				postDir = uri.getPath();
 				warnDefault(FileEpr.POST_DIR_TAG, postDir);
 			}
 			if (null == postSuffix)
@@ -259,10 +309,6 @@
 		{
 			throw new ConfigurationException(ex);
 		}
-		catch (MalformedURLException ex)
-		{
-			throw new ConfigurationException(ex);
-		}
 	} // ________________________________
 
 	public static JDBCEpr jdbcEprFromElement(ConfigTree tree) throws ConfigurationException

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/ESBAwareGenerator.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/ESBAwareGenerator.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/ESBAwareGenerator.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -25,6 +25,7 @@
 
 import org.apache.log4j.Logger;
 import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.addressing.eprs.InVMEpr;
 import org.jboss.soa.esb.dom.YADOMUtil;
 import org.jboss.soa.esb.listeners.config.xbeanmodel.FsListenerDocument.FsListener;
 import org.jboss.soa.esb.listeners.config.xbeanmodel.FtpListenerDocument.FtpListener;
@@ -33,11 +34,10 @@
 import org.jboss.soa.esb.listeners.config.xbeanmodel.ServiceDocument.Service;
 import org.jboss.soa.esb.listeners.config.xbeanmodel.SqlListenerDocument.SqlListener;
 import org.jboss.soa.esb.listeners.config.xbeanmodel.ScheduledListenerDocument.ScheduledListener;
-import org.jboss.soa.esb.listeners.config.xbeanmodel.Listener;
-import org.jboss.soa.esb.listeners.config.xbeanmodel.JbrListenerDocument;
-import org.jboss.soa.esb.listeners.config.xbeanmodel.GroovyListenerDocument;
-import org.jboss.soa.esb.listeners.config.xbeanmodel.AbstractScheduledListener;
+import org.jboss.soa.esb.listeners.config.xbeanmodel.*;
 import org.jboss.soa.esb.listeners.config.mappers.*;
+import org.jboss.soa.esb.listeners.ListenerTagNames;
+import org.jboss.soa.esb.listeners.message.MessageAwareListener;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 
@@ -78,6 +78,15 @@
 		doc.appendChild(doc.createComment("\n\tNOTE: DO NOT MODIFY\n\tThis file was auto-generated.\n"));
 		root = YADOMUtil.addElement(doc, "jbossesb-listeners");
 		root.setAttribute("parameterReloadSecs", model.getParameterReloadSecs());
+
+        // Add an InVM listener for each service...
+        List<Service> services = model.getServices();
+        for (int i = 0; i < services.size(); i++) {
+            Service service = services.get(i);
+            if(Generator.exposesInVMListener(service)) {
+                addInVMListener(root, service, i);
+            }
+        }
 		
 		// Iterate over all the ESB Aware listner configs and map them to the listener configuration...
 		List<Listener> listeners = model.getESBAwareListeners();
@@ -88,7 +97,29 @@
 		return doc;
 	}
 
-	/**
+    private void addInVMListener(Element root, Service service, int serviceIndex) throws ConfigurationException {
+        Element listenerNode = YADOMUtil.addElement(root, "InVM-" + serviceIndex);
+        Element properties = listenerNode.getOwnerDocument().createElement("properties");
+
+        MapperUtil.mapListenerServiceAttributes(listenerNode, service, false);
+        listenerNode.setAttribute(ListenerTagNames.LISTENER_CLASS_TAG, MessageAwareListener.class.getName());
+        listenerNode.setAttribute(ListenerTagNames.MAX_THREADS_TAG, String.valueOf(1));
+
+        Element eprNode = YADOMUtil.addElement(listenerNode, ListenerTagNames.EPR_TAG);
+        eprNode.setAttribute(ListenerTagNames.PROTOCOL_TAG, InVMEpr.INVM_PROTOCOL);
+
+        MapperUtil.mapProperties(service.getPropertyList(), properties);
+        eprNode.setAttribute(ListenerTagNames.URL_TAG, InVMEpr.INVM_PROTOCOL + "://"
+                + InVMEpr.createEncodedServiceId(service.getCategory(), service.getName())
+                + "?" + YADOMUtil.getAttribute(properties, "inVMLockStep", "false")
+                + "#" + YADOMUtil.getAttribute(properties, "inVMLockStepTimeout", "10000"));
+
+        YADOMUtil.removeEmptyAttributes(eprNode);
+
+        ActionMapper.map(listenerNode, service, model);
+    }
+
+    /**
 	 * Add a single ESB Aware Listener configuration node to configuration root. 
 	 * @param root Configuration root node.
 	 * @param listener The ESB Aware Listener configuration to be added.

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/Generator.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/Generator.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/Generator.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -21,6 +21,19 @@
 
 package org.jboss.soa.esb.listeners.config;
 
+import org.apache.log4j.Logger;
+import org.apache.xmlbeans.XmlException;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.common.Environment;
+import org.jboss.soa.esb.common.ModulePropertyManager;
+import org.jboss.soa.esb.dom.YADOMUtil;
+import org.jboss.soa.esb.listeners.config.xbeanmodel.*;
+import org.jboss.soa.esb.listeners.config.xbeanmodel.JbossesbDocument.Jbossesb;
+import org.jboss.soa.esb.listeners.config.xbeanmodel.ScheduleProviderDocument.ScheduleProvider;
+import org.jboss.soa.esb.listeners.config.xbeanmodel.ServiceDocument.Service;
+import org.jboss.soa.esb.listeners.config.xbeanmodel.ServicesDocument.Services;
+import org.w3c.dom.Document;
+
 import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
@@ -30,17 +43,6 @@
 import java.util.List;
 import java.util.Properties;
 
-import org.apache.log4j.Logger;
-import org.apache.xmlbeans.XmlException;
-import org.jboss.soa.esb.ConfigurationException;
-import org.jboss.soa.esb.dom.YADOMUtil;
-import org.jboss.soa.esb.listeners.config.xbeanmodel.JbossesbDocument.Jbossesb;
-import org.jboss.soa.esb.listeners.config.xbeanmodel.ServiceDocument.Service;
-import org.jboss.soa.esb.listeners.config.xbeanmodel.ServicesDocument.Services;
-import org.jboss.soa.esb.listeners.config.xbeanmodel.ScheduleProviderDocument.ScheduleProvider;
-import org.jboss.soa.esb.listeners.config.xbeanmodel.*;
-import org.w3c.dom.Document;
-
 /**
  * ESB Configuration Generator.
  * <p/>
@@ -72,7 +74,6 @@
 
    private OutputStream listenerOutputStream;
 
-
    public Generator(InputStream config, OutputStream listenerOutputStream, OutputStream gatewayOutputStream) throws ConfigurationException, IOException
    {
       this(config);
@@ -211,6 +212,17 @@
 	public XMLBeansModel getModel() {
 		return model;
 	}
+
+    public static boolean exposesInVMListener(Service service) {
+        if(service.xgetInvmScope() != null && service.xgetInvmScope().getStringValue() != null) {
+            return (service.xgetInvmScope().getStringValue().equals("GLOBAL"));
+        }
+
+        String systemDefaultScope = System.getProperty(Environment.DEFAULT_INVM_SCOPE, "GLOBAL");
+        String defaultScope = ModulePropertyManager.getPropertyManager("core").getProperty(Environment.DEFAULT_INVM_SCOPE, systemDefaultScope);
+
+        return defaultScope.equals("GLOBAL");
+    }
 	
 	/**
 	 * XMLBeans based model implementation.
@@ -363,17 +375,20 @@
 
                 for(Service service : services) {
                     boolean listenerAdded = false;
+                    ListenersDocument.Listeners listeners = service.getListeners();
 
-					for(Listener listener : service.getListeners().getListenerList()) {
-						if(isGateway(listener) == isGateway) {
-							gateways.add(listener);
-                            listenerAdded = true;
+                    if(listeners != null) {
+                        for(Listener listener : listeners.getListenerList()) {
+                            if(isGateway(listener) == isGateway) {
+                                gateways.add(listener);
+                                listenerAdded = true;
+                            }
                         }
-					}
+                    }
 
                     // Make sure each Service config has a message aware listener...
                     // http://jira.jboss.com/jira/browse/JBESB-648
-                    if(!isGateway && !listenerAdded) {
+                    if(!exposesInVMListener(service) && !isGateway && !listenerAdded) {
                         throw new ConfigurationException("Service configuration for Service '" + service.getCategory() + ":" + service.getName() + "' doesn't define a Message-Aware Listener (i.e. is-gateway='false').");
                     }
                 }
@@ -381,7 +396,8 @@
 			
 			return gateways;
 		}
-		/**
+
+        /**
 		 * Gets the setting for the number of seconds between reloads.
 		 * 
 		 * @return The param reload seconds config value.

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/ScheduleProviderFactory.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/ScheduleProviderFactory.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/ScheduleProviderFactory.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -26,6 +26,7 @@
 import org.jboss.soa.esb.listeners.config.xbeanmodel.ScheduleProviderDocument;
 import org.jboss.soa.esb.listeners.config.xbeanmodel.SimpleScheduleDocument;
 import org.jboss.soa.esb.listeners.config.xbeanmodel.CronScheduleDocument;
+import org.jboss.soa.esb.listeners.config.xbeanmodel.FrequencyUnit;
 
 import java.util.List;
 import java.util.Properties;
@@ -93,9 +94,14 @@
 
             if(scheduleConfig instanceof SimpleScheduleDocument.SimpleSchedule) {
                 SimpleSchedule simpleSchedule;
+                FrequencyUnit.Enum frequencyUnit = ((SimpleScheduleDocument.SimpleSchedule)scheduleConfig).getFrequencyUnits();
 
                 schedule = simpleSchedule = new SimpleSchedule(scheduleId);
+                if(frequencyUnit == FrequencyUnit.SECONDS) {
+                    simpleSchedule.setFrequency(((SimpleScheduleDocument.SimpleSchedule)scheduleConfig).getFrequency() * 1000);
+                } else {
                 simpleSchedule.setFrequency(((SimpleScheduleDocument.SimpleSchedule)scheduleConfig).getFrequency());
+                }
                 simpleSchedule.setExecCount(((SimpleScheduleDocument.SimpleSchedule)scheduleConfig).getExecCount());
             } else {
                 CronSchedule cronSchedule;

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/FtpListenerMapper.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/FtpListenerMapper.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/FtpListenerMapper.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -22,12 +22,14 @@
 
 import org.jboss.soa.esb.ConfigurationException;
 import org.jboss.soa.esb.addressing.eprs.FTPEpr;
+import org.jboss.soa.esb.addressing.eprs.FTPSEpr;
 import org.jboss.soa.esb.addressing.eprs.SFTPEpr;
 import org.jboss.soa.esb.dom.YADOMUtil;
 import org.jboss.soa.esb.listeners.ListenerTagNames;
 import org.jboss.soa.esb.listeners.config.xbeanmodel.FtpBusDocument.FtpBus;
 import org.jboss.soa.esb.listeners.config.xbeanmodel.FtpListenerDocument.FtpListener;
 import org.jboss.soa.esb.listeners.config.xbeanmodel.FtpMessageFilterDocument.FtpMessageFilter;
+import org.jboss.soa.esb.listeners.config.xbeanmodel.FtpMessageFilterDocument.FtpMessageFilter.Protocol;
 import org.jboss.soa.esb.listeners.config.xbeanmodel.FtpProviderDocument.FtpProvider;
 import org.jboss.soa.esb.listeners.config.Generator.XMLBeansModel;
 import org.jboss.soa.esb.listeners.gateway.ReadOnlyRemoteGatewayListener;
@@ -112,7 +114,7 @@
 	{
 		String inputDir = messageFilter.getDirectory();
 		if ( ! inputDir.startsWith( FTP_SEPARATOR ) )
-			inputDir += FTP_SEPARATOR + inputDir;
+			inputDir = FTP_SEPARATOR + inputDir;
 		
 		toElement.setAttribute(ListenerTagNames.URL_TAG, messageFilter.getProtocol() + "://" + messageFilter.getUsername() + ":" 
 				+ messageFilter.getPassword() + "@" + provider.getHostname() + inputDir );
@@ -129,8 +131,12 @@
 			toElement.setAttribute(FTPEpr.ERROR_SUFFIX_TAG, messageFilter.getErrorSuffix());
 		}
 		toElement.setAttribute(FTPEpr.PASSIVE_TAG, String.valueOf(messageFilter.getPassive()));
-		if ("sftp".equals(messageFilter.getProtocol()) || "ftps".equals(messageFilter.getProtocol())) {
+		if (Protocol.SFTP.equals(messageFilter.getProtocol())) {
 			toElement.setAttribute(SFTPEpr.CERTIFICATE_TAG, messageFilter.getCertificateUrl());
 		}
+		if (Protocol.FTPS.equals(messageFilter.getProtocol())) {
+			toElement.setAttribute(FTPSEpr.CERTIFICATE_TAG, messageFilter.getCertificateUrl());
+			toElement.setAttribute(FTPSEpr.CERTIFICATE_NAME_TAG, messageFilter.getCertificateName());
+		}
 	}
 }

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/JbrListenerMapper.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/JbrListenerMapper.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/JbrListenerMapper.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -62,6 +62,8 @@
         // Map the standard listener attributes - common across all listener types...
         MapperUtil.mapDefaultAttributes(listener, listenerNode, model);
         // Map the <property> elements targeted at the listener - from the listener itself.
+        MapperUtil.mapProperties(provider.getPropertyList(), listenerNode);
+        MapperUtil.mapProperties(bus.getPropertyList(), listenerNode);
         MapperUtil.mapProperties(listener.getPropertyList(), listenerNode);
 
         if(listener.getIsGateway()) {

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/MapperUtil.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/MapperUtil.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/MapperUtil.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -43,31 +43,43 @@
  * Mapper utility methods.
  * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
  */
-abstract class MapperUtil {
+public abstract class MapperUtil {
 
 	/**
 	 * Map all default listener attributes onto the target listener ConfigTree.
 	 * @param listener The listener configuration instance.
-	 * @param target The target DOM ConfigTree listener element.
+	 * @param listenerNode The target DOM ConfigTree listener element.
 	 * @param model The model.
 	 */
-	protected static void mapDefaultAttributes(Listener listener, Element target, XMLBeansModel model) {
-		Service service = model.getService(listener);
-		
-		// Map maxThreads - appears to be a JMS only attrib...
-		target.setAttribute(ListenerTagNames.MAX_THREADS_TAG, String.valueOf(listener.getMaxThreads()));
-		target.setAttribute(ListenerTagNames.SERVICE_DESCRIPTION_TAG, service.getDescription());	
-		if(listener.getIsGateway()) {
-			target.setAttribute(ListenerTagNames.TARGET_SERVICE_CATEGORY_TAG, service.getCategory());			
-			target.setAttribute(ListenerTagNames.TARGET_SERVICE_NAME_TAG, service.getName());			
-		} else {
-            target.setAttribute(ListenerTagNames.SERVICE_CATEGORY_NAME_TAG, service.getCategory());         
-            target.setAttribute(ListenerTagNames.SERVICE_NAME_TAG, service.getName());
-            if(!target.hasAttribute(ListenerTagNames.LISTENER_CLASS_TAG)) {
-                target.setAttribute(ListenerTagNames.LISTENER_CLASS_TAG, MessageAwareListener.class.getName());
-            }
+    protected static void mapDefaultAttributes(Listener listener, Element listenerNode, XMLBeansModel model) {
+        Service service = model.getService(listener);
+        boolean isGateway = listener.getIsGateway();
+
+        // Map maxThreads - appears to be a JMS only attrib...
+        listenerNode.setAttribute(ListenerTagNames.MAX_THREADS_TAG, String.valueOf(listener.getMaxThreads()));
+
+        mapListenerServiceAttributes(listenerNode, service, isGateway);
+        if (!isGateway && !listenerNode.hasAttribute(ListenerTagNames.LISTENER_CLASS_TAG)) {
+            listenerNode.setAttribute(ListenerTagNames.LISTENER_CLASS_TAG, MessageAwareListener.class.getName());
         }
-	}
+    }
+
+    /**
+     * Map the Service specific attributes onto the listener configuration.
+     * @param listenerNode The listener config node.
+     * @param service The Service details (from the model).
+     * @param isGateway True if the listener is a gateway, otherwise false.
+     */
+    public static void mapListenerServiceAttributes(Element listenerNode, Service service, boolean isGateway) {
+        listenerNode.setAttribute(ListenerTagNames.SERVICE_DESCRIPTION_TAG, service.getDescription());
+        if (isGateway) {
+            listenerNode.setAttribute(ListenerTagNames.TARGET_SERVICE_CATEGORY_TAG, service.getCategory());
+            listenerNode.setAttribute(ListenerTagNames.TARGET_SERVICE_NAME_TAG, service.getName());
+        } else {
+            listenerNode.setAttribute(ListenerTagNames.SERVICE_CATEGORY_NAME_TAG, service.getCategory());
+            listenerNode.setAttribute(ListenerTagNames.SERVICE_NAME_TAG, service.getName());
+        }
+    }
 	
 	/**
 	 * Map all the properties targeted at the supplied listener onto the target element.
@@ -93,7 +105,7 @@
 	 * @param target The target DOM element.
 	 * @param properties The properties to be mapped.
 	 */
-	protected static void mapProperties(List<Property> properties, Element target) {
+	public static void mapProperties(List<Property> properties, Element target) {
 		// Map the property elements to actions attributes...
 		for(Property property : properties) {
          Element propertyElement = target.getOwnerDocument().createElement("property");

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/AbstractFileGateway.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/AbstractFileGateway.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/AbstractFileGateway.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -25,9 +25,8 @@
 import java.io.File;
 import java.io.FileFilter;
 import java.lang.reflect.InvocationTargetException;
-import java.net.MalformedURLException;
 import java.net.URI;
-import java.net.URL;
+import java.net.URISyntaxException;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -366,13 +365,13 @@
     }
 
     private static String getInputDir(ConfigTree config) throws ConfigurationException {
-        String url = config.getAttribute(ListenerTagNames.URL_TAG);
+        String uri = config.getAttribute(ListenerTagNames.URL_TAG);
 
-        if(url != null) {
+        if(uri != null) {
             try {
-                return new URL(url).getFile();
-            } catch (MalformedURLException e) {
-                throw new ConfigurationException("Invalid '" + ListenerTagNames.URL_TAG + "' value '" + url + "'.  Must be a valid URI.");
+                return new URI(uri).getPath();
+            } catch (URISyntaxException e) {
+                throw new ConfigurationException("Invalid '" + ListenerTagNames.URL_TAG + "' value '" + uri + "'.  Must be a valid URI.");
             }
         }
 

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/JBossRemotingGatewayListener.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/JBossRemotingGatewayListener.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/listeners/gateway/JBossRemotingGatewayListener.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -19,22 +19,17 @@
  */
 package org.jboss.soa.esb.listeners.gateway;
 
-import java.net.InetAddress;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.net.UnknownHostException;
-import java.util.*;
-
-import javax.management.MBeanServer;
-
 import org.apache.log4j.Logger;
+import org.jboss.internal.soa.esb.remoting.HttpMarshaller;
+import org.jboss.internal.soa.esb.remoting.HttpUnmarshaller;
 import org.jboss.remoting.InvocationRequest;
 import org.jboss.remoting.InvokerLocator;
 import org.jboss.remoting.ServerInvocationHandler;
 import org.jboss.remoting.ServerInvoker;
+import org.jboss.remoting.callback.InvokerCallbackHandler;
 import org.jboss.remoting.marshal.MarshalFactory;
 import org.jboss.remoting.marshal.http.HTTPMarshaller;
-import org.jboss.remoting.callback.InvokerCallbackHandler;
+import org.jboss.remoting.security.SSLSocketBuilder;
 import org.jboss.remoting.transport.Connector;
 import org.jboss.soa.esb.ConfigurationException;
 import org.jboss.soa.esb.actions.ActionUtils;
@@ -47,15 +42,20 @@
 import org.jboss.soa.esb.listeners.message.AbstractMessageComposer;
 import org.jboss.soa.esb.listeners.message.MessageDeliverException;
 import org.jboss.soa.esb.listeners.message.UncomposedMessageDeliveryAdapter;
+import org.jboss.soa.esb.message.*;
 import org.jboss.soa.esb.message.MessagePayloadProxy.NullPayloadHandling;
-import org.jboss.soa.esb.message.*;
 import org.jboss.soa.esb.message.Properties;
 import org.jboss.soa.esb.message.body.content.BytesBody;
 import org.jboss.soa.esb.services.registry.RegistryException;
 import org.jboss.soa.esb.services.registry.RegistryFactory;
-import org.jboss.internal.soa.esb.remoting.HttpUnmarshaller;
-import org.jboss.internal.soa.esb.remoting.HttpMarshaller;
 
+import javax.management.MBeanServer;
+import java.net.InetAddress;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.net.UnknownHostException;
+import java.util.*;
+
 /**
  * JBoss Remoting listener implementation for receiving ESB unaware messages
  * over a JBoss Remoting channel.
@@ -368,18 +368,40 @@
      * @throws ConfigurationException Problem populating the configuration.
      */
     protected void initaliseJBRConnectorConfiguration(Map<String, String> connectorConfig) throws ConfigurationException {
+        String protocol = getJbrServerLocatorURI().getScheme();
+        boolean isHttps = protocol.equals("https");
+        boolean isSecure = (isHttps || protocol.equals("sslsocket"));
+
         // Initialse the JBR connector URI...
         jbrServerLocatorURI = getJbrServerLocatorURI().toString();
 
+        // Make sure the "SSLImplementation" attribute is set for https...
+        if(isHttps) {
+            connectorConfig.put("SSLImplementation", "org.jboss.remoting.transport.coyote.ssl.RemotingSSLImplementation");
+        }
+
         // Populate the connector config...
         List<KeyValuePair> attributes = getConfig().attributesAsList();
         for (KeyValuePair attribute : attributes) {
             String attributeName = attribute.getKey();
 
             if (attributeName.startsWith(JBR_PREFIX)) {
-                connectorConfig.put(attributeName.substring(JBR_PREFIX.length()), attribute.getValue());
+                String jbrAttributeName = attributeName.substring(JBR_PREFIX.length());
+                String postv220JbrSSLAttributeName = legacySSLConfigNameMappings.get(jbrAttributeName);
+
+                connectorConfig.put(jbrAttributeName, attribute.getValue());
+                if(postv220JbrSSLAttributeName != null) {
+                    connectorConfig.put(postv220JbrSSLAttributeName, attribute.getValue());
+                    connectorConfig.put("UseSSLServerSocketFactory", "false");
+                } else if(legacySSLConfigNameMappings.containsValue(jbrAttributeName)) {
+                    connectorConfig.put("UseSSLServerSocketFactory", "false");
+                }
             }
         }
+
+        if(isSecure && !connectorConfig.containsKey("serverSocketFactory")) {
+            logger.info("Secure endpoint '" + jbrServerLocatorURI + "' doesn't define a 'serverSocketFactory'.  Using Server defaults.  See JBossRemoting documentation.");
+        }
     }
 
     /**
@@ -498,4 +520,30 @@
         }
     }
 
+    private static Map<String, String> legacySSLConfigNameMappings = new HashMap<String, String>();
+    static {
+        /*
+         * The attribute names of some or all of the JBR SSLSocketBuilder config parameters have
+         * changed (post v2.2.0) and don't match the JBR documentation.  This map is used to map
+         * them to their new names, where the legacy names are used ala the documentation.
+         *
+         * See http://jira.jboss.com/jira/browse/JBREM-925
+         */
+        legacySSLConfigNameMappings.put("ClientAuthMode", SSLSocketBuilder.REMOTING_CLIENT_AUTH_MODE);
+        legacySSLConfigNameMappings.put("KeyAlias", SSLSocketBuilder.REMOTING_KEY_ALIAS);
+        legacySSLConfigNameMappings.put("KeyPassword", SSLSocketBuilder.REMOTING_KEY_PASSWORD);
+        legacySSLConfigNameMappings.put("KeyStoreAlgorithm", SSLSocketBuilder.REMOTING_KEY_STORE_ALGORITHM);
+        legacySSLConfigNameMappings.put("KeyStorePassword", SSLSocketBuilder.REMOTING_KEY_STORE_PASSWORD);
+        legacySSLConfigNameMappings.put("KeyStoreType", SSLSocketBuilder.REMOTING_KEY_STORE_TYPE);
+        legacySSLConfigNameMappings.put("KeyStoreURL", SSLSocketBuilder.REMOTING_KEY_STORE_FILE_PATH);
+        legacySSLConfigNameMappings.put("ProviderName", SSLSocketBuilder.REMOTING_SSL_PROVIDER_NAME);
+        legacySSLConfigNameMappings.put("SecureSocketProtocol", SSLSocketBuilder.REMOTING_SSL_PROTOCOL);
+        legacySSLConfigNameMappings.put("ServerAuthMode", SSLSocketBuilder.REMOTING_SERVER_AUTH_MODE);
+        legacySSLConfigNameMappings.put("ServerSocketUse-ClientMode", SSLSocketBuilder.REMOTING_SERVER_SOCKET_USE_CLIENT_MODE);
+        legacySSLConfigNameMappings.put("SocketUseClient-Mode", SSLSocketBuilder.REMOTING_SOCKET_USE_CLIENT_MODE);
+        legacySSLConfigNameMappings.put("TrustStoreAlgorithm", SSLSocketBuilder.REMOTING_TRUST_STORE_ALGORITHM);
+        legacySSLConfigNameMappings.put("TrustStorePassword", SSLSocketBuilder.REMOTING_TRUST_STORE_PASSWORD);
+        legacySSLConfigNameMappings.put("TrustStoreType", SSLSocketBuilder.REMOTING_TRUST_STORE_TYPE);
+        legacySSLConfigNameMappings.put("TrustStoreURL", SSLSocketBuilder.REMOTING_TRUST_STORE_FILE_PATH);
+    }
 }

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/notification/NotifyFTP.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/notification/NotifyFTP.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/notification/NotifyFTP.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -29,6 +29,7 @@
 
 import org.apache.commons.io.IOUtils;
 import org.apache.commons.lang.StringUtils;
+import org.jboss.internal.soa.esb.notification.PropertySubstituter;
 import org.jboss.soa.esb.ConfigurationException;
 import org.jboss.soa.esb.addressing.eprs.FTPEpr;
 import org.jboss.soa.esb.helpers.ConfigTree;
@@ -114,55 +115,12 @@
 			if (StringUtils.isEmpty(fileName)) {
 				throw new NotificationException("NotifyFTP: Filename attribute is required.");
 			}
-			fileName = replaceArguments(fileName, message);
+			fileName = PropertySubstituter.replaceArguments(fileName, message);
 		}
 		return fileName;
 	}
 
 	/**
-	 * Replaces any arguments in the form '{prop.name}' with corresponding
-	 * message property values.
-	 * 
-	 * @param value
-	 * @param message
-	 * @return String
-	 */
-	protected String replaceArguments(String value, Message message) {
-		String current = value;
-		String replaced = replaceArgument(value, message);
-		while (!current.equals(replaced)) {
-			current = replaced;
-			replaced = replaceArgument(current, message);
-		}
-		return replaced;
-	}
-
-	/**
-	 * Look for arguments in the form '{prop.name}' and replace them with
-	 * corresponding message properties.
-	 * 
-	 * @param value
-	 * @param message
-	 * @return String
-	 */
-	protected String replaceArgument(String value, Message message) {
-		int startIndex = value.indexOf('{');
-		if (startIndex == -1) {
-			return value;
-		}
-		int endIndex = value.indexOf('}');
-		if (endIndex == -1) {
-			return value;
-		}
-		String propName = value.substring(startIndex + 1, endIndex);
-		Object propValue = message.getProperties().getProperty(propName);
-		if (propValue == null) {
-			return value;
-		}
-		return value.substring(0, startIndex) + propValue + value.substring(endIndex + 1);
-	}
-
-	/**
 	 * Builds an FTP EPR from the configuration data.
 	 * 
 	 * @return FTPEpr

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/notification/NotifyFiles.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/notification/NotifyFiles.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/notification/NotifyFiles.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -23,6 +23,7 @@
 package org.jboss.soa.esb.notification;
 
 import org.apache.log4j.Logger;
+import org.jboss.internal.soa.esb.notification.PropertySubstituter;
 import org.jboss.soa.esb.helpers.ConfigTree;
 import org.jboss.soa.esb.listeners.message.MessageDeliverException;
 import org.jboss.soa.esb.message.Message;
@@ -92,7 +93,6 @@
 	public NotifyFiles (ConfigTree configTree)
 	{
 		super(configTree);
-		setFiles(configTree.getChildren(CHILD_FILE));
         payloadProxy = new MessagePayloadProxy(configTree,
                                                new String[] {BytesBody.BYTES_LOCATION},
                                                new String[] {BytesBody.BYTES_LOCATION});
@@ -108,8 +108,10 @@
 	 *            have an optional "append" attribute
 	 * @see ConfigTree#getAttribute(String)
 	 */
-	protected void setFiles (ConfigTree[] p_oaP)
+	protected void setFiles(Message message)
 	{
+		
+		ConfigTree[] p_oaP = m_oParms.getChildren(CHILD_FILE);
 		m_oaOutF = new NotificationFile[p_oaP.length];
 
 		for (int i = 0; i < p_oaP.length; i++)
@@ -124,6 +126,9 @@
 			}
 
             fileURIString = fileURIString.replace('\\', '/');
+            fileURIString = PropertySubstituter.replaceArguments(fileURIString, message);
+            append = PropertySubstituter.replaceArguments(append, message);
+            
             try {
                 URI fileURI = new URI(fileURIString);
                 
@@ -165,6 +170,7 @@
 	public void sendNotification (Message message) throws NotificationException
 	{
 		FileOutputStream fileOutStream = null;
+		setFiles(message);
         
         final StringBuilder exceptions = new StringBuilder();
 		for (NotificationFile notificationFile : m_oaOutF)

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/notification/NotifySqlTable.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/notification/NotifySqlTable.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/notification/NotifySqlTable.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -27,6 +27,7 @@
 import java.util.Properties;
 
 import org.apache.log4j.Logger;
+import org.jboss.internal.soa.esb.notification.PropertySubstituter;
 import org.jboss.soa.esb.ConfigurationException;
 import org.jboss.soa.esb.listeners.message.MessageDeliverException;
 import org.jboss.soa.esb.helpers.ConfigTree;
@@ -58,6 +59,14 @@
     public NotifySqlTable (ConfigTree configTree) throws ConfigurationException
 	{
 		super(configTree);
+
+        payloadProxy = new MessagePayloadProxy(configTree,
+                                               new String[] {BytesBody.BYTES_LOCATION},
+                                               new String[] {BytesBody.BYTES_LOCATION});
+	} // __________________________________
+
+    
+    private void setProperties(Message message) throws ConfigurationException {
 		m_sDriver = getAttr(SimpleDataSource.DRIVER);
 		m_sURL = getAttr(SimpleDataSource.URL);
 		m_sUser = getAttr(SimpleDataSource.USER);
@@ -66,7 +75,7 @@
 		m_sDataCol = getAttr(ATT_DATA);
 
 		m_oCols = new Properties();
-		ConfigTree[] oaP = configTree.getChildren(CHILD_COLUMN);
+		ConfigTree[] oaP = m_oParms.getChildren(CHILD_COLUMN);
 		for (int i1 = 0; i1 < oaP.length; i1++)
 		{
 			ConfigTree oCurr = oaP[i1];
@@ -85,14 +94,13 @@
 			{
 				sVal = "";
 			}
+			
+			sCol = PropertySubstituter.replaceArguments(sCol, message);
+			sVal = PropertySubstituter.replaceArguments(sVal, message);
 			m_oCols.setProperty(sCol, sVal);
 		}
-
-        payloadProxy = new MessagePayloadProxy(configTree,
-                                               new String[] {BytesBody.BYTES_LOCATION},
-                                               new String[] {BytesBody.BYTES_LOCATION});
-	} // __________________________________
-
+    }
+    
 	private String getAttr (String p_sAtt) throws ConfigurationException
 	{
 		String sRet = m_oParms.getAttribute(p_sAtt);
@@ -124,7 +132,7 @@
 		{
 			String sIn = (i1 == 0) ? "(" : ",";
 			String sCurrCol = saCols[i1];
-			sbCol.append(sIn).append("\"").append(sCurrCol).append("\"");
+			sbCol.append(sIn).append(sCurrCol);
 			sbPrm.append(sIn).append("'").append(m_oCols.getProperty(sCurrCol))
 					.append("'");
 			// REVIEW: Does the value being inserted not need to be escaped e.g.
@@ -138,8 +146,11 @@
         Object obj;
         try {
             obj = payloadProxy.getPayload(message);
+            setProperties(message);
         } catch (MessageDeliverException e) {
             throw new NotificationException(e);
+        } catch (ConfigurationException ce) {
+        	throw new NotificationException(ce);
         }
         String content;
         if (obj instanceof byte[]) {
@@ -147,7 +158,7 @@
         } else {
             content = obj.toString();
         }
-
+        
 		m_oCols.setProperty(m_sDataCol, content);
 		JdbcCleanConn oConn = null;
 		PreparedStatement ps = null;

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/schedule/ScheduleProvider.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/schedule/ScheduleProvider.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/schedule/ScheduleProvider.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -19,16 +19,19 @@
  */
 package org.jboss.soa.esb.schedule;
 
+import org.apache.log4j.Logger;
 import org.jboss.soa.esb.ConfigurationException;
 import org.jboss.soa.esb.util.ClassUtil;
 import org.quartz.*;
 import org.quartz.impl.StdSchedulerFactory;
-import org.apache.log4j.Logger;
 
-import java.util.*;
-import java.text.ParseException;
 import java.io.IOException;
 import java.io.InputStream;
+import java.text.ParseException;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+import java.util.Properties;
 
 /**
  * Schedule Provider.
@@ -87,13 +90,17 @@
         if(schedule instanceof SimpleSchedule) {
             SimpleSchedule simpleSchedule = (SimpleSchedule) schedule;
             if(simpleSchedule.getExecCount() == -1) {
-                trigger = TriggerUtils.makeSecondlyTrigger((int) simpleSchedule.getFrequency());
+                trigger = new SimpleTrigger();
+                ((SimpleTrigger)trigger).setRepeatInterval(simpleSchedule.getFrequency());
+                ((SimpleTrigger)trigger).setRepeatCount(SimpleTrigger.REPEAT_INDEFINITELY);
             } else if(simpleSchedule.getExecCount() == 0) {
                 logger.warn("<simple-schedule> '" + scheduleId + "' has an execCount of 0 configured.  This schedule will not fire!");
                 return;
             } else {
                 // So the repeatCount = execCount - 1 ....
-                trigger = TriggerUtils.makeSecondlyTrigger((int) simpleSchedule.getFrequency(), (simpleSchedule.getExecCount() - 1));
+                trigger = new SimpleTrigger();
+                ((SimpleTrigger)trigger).setRepeatInterval(simpleSchedule.getFrequency());
+                ((SimpleTrigger)trigger).setRepeatCount(simpleSchedule.getExecCount() - 1);
             }
             trigger.setName(simpleSchedule.getScheduleid());
         } else {
@@ -129,26 +136,28 @@
 
     private static volatile int nameDelta = 1; 
     private void addListener(ScheduledEventListener listener, Trigger trigger) throws SchedulingException {
-        JobDataMap jobDataMap = new JobDataMap();
-        JobDetail jobDetail;
+        synchronized (ScheduleProvider.class) {
+            JobDataMap jobDataMap = new JobDataMap();
+            JobDetail jobDetail;
 
-        String name = trigger.getName();
+            String name = trigger.getName();
 
-        // this is just to make sure they're unique - i.e. so as 1+
-        // "things" can listen to the same schedule...
-        // This is not thread safe!
-        name += ("-" + nameDelta++);
-        trigger.setName(name);
+            // this is just to make sure they're unique - i.e. so as 1+
+            // "things" can listen to the same schedule...
+            // This is not thread safe!
+            name += ("-" + nameDelta++);
+            trigger.setName(name);
 
-        jobDetail = new JobDetail(name, JBOSS_ESB, ESBScheduledJob.class);
-        jobDataMap.put(ScheduledEventListener.class.getName(), listener);
-        jobDataMap.put(ClassLoader.class.getName(), tcc);
-        jobDetail.setJobDataMap(jobDataMap);
-        try {
-            scheduler.scheduleJob(jobDetail, trigger);
-            scheduledJobs.add(name);
-        } catch (SchedulerException e) {
-            throw new SchedulingException("Failed to schedule job.", e);
+            jobDetail = new JobDetail(name, JBOSS_ESB, ScheduleProvider.ESBScheduledJob.class);
+            jobDataMap.put(ScheduledEventListener.class.getName(), listener);
+            jobDataMap.put(ClassLoader.class.getName(), tcc);
+            jobDetail.setJobDataMap(jobDataMap);
+            try {
+                scheduler.scheduleJob(jobDetail, trigger);
+                scheduledJobs.add(name);
+            } catch (SchedulerException e) {
+                throw new SchedulingException("Failed to schedule job.", e);
+            }
         }
     }
 

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/services/registry/RegistryFactory.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/services/registry/RegistryFactory.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/services/registry/RegistryFactory.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -43,6 +43,9 @@
       singleton = registry;
    }
 
+    public static Registry getRegistrySingleton() {
+        return singleton;
+    }
 
     public static Registry getRegistry() throws RegistryException {
         // no synchronized block as there should be a service that initializes this

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/FtpClientUtil.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/FtpClientUtil.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/FtpClientUtil.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -21,29 +21,29 @@
  */
 package org.jboss.soa.esb.util;
 
+import java.io.BufferedInputStream;
+import java.io.BufferedOutputStream;
 import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
 import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
 import java.util.List;
 
+import org.apache.commons.net.ftp.FTP;
+import org.apache.commons.net.ftp.FTPClient;
+import org.jboss.internal.soa.esb.util.FtpUtils;
 import org.jboss.soa.esb.ConfigurationException;
 import org.jboss.soa.esb.helpers.ConfigTree;
 import org.jboss.soa.esb.helpers.KeyValuePair;
 
-import com.enterprisedt.net.ftp.FTPClient;
-import com.enterprisedt.net.ftp.FTPConnectMode;
-import com.enterprisedt.net.ftp.FTPException;
-import com.enterprisedt.net.ftp.FTPTransferType;
-
 /**
  * Simplified FTP transfers
  * <p>
  * Description: Implements a simple set of FTP functionality Parameters to
  * establish the FTP connection are provided at construction time and cannot
  * change during the lifetime of the object <br/>Hides low level details.
- * Current implementation is based on the "Entreprise Distributed Technology
- * edtFTPj" library but this can be changed with no impact to existing code,
- * just by changing this class without modifying the signature of it's public
- * methods
  * </p>
  */
 
@@ -70,7 +70,7 @@
 	public enum XFER_TYPE
 	{
 		ascii, binary
-	};
+	}
 
 	private ConfigTree m_oParms;
 
@@ -82,15 +82,15 @@
 
 	private boolean m_bPassive;
 
+        private FTPClient m_oConn = new FTPClient();
+
+        private boolean m_bAsciiTransferType ; 
+
 	public String getRemoteDir ()
 	{
 		return m_sRemoteDir;
 	}
 
-	private FTPClient m_oConn = new FTPClient();
-
-	private FTPTransferType m_oXferType = FTPTransferType.BINARY;
-
 	/**
 	 * Checks validity and completeness of parameters, and keeps the info
 	 * internally for subsequent FTP requests
@@ -133,38 +133,42 @@
 		{
 			if (bConnect)
 			{
-				m_oConn.setRemoteHost(m_sFtpServer);
-				m_oConn.setRemotePort(m_iPort);
-				m_oConn.connect();
-				
-				for (int i1 = 0; i1 < 10 && !m_oConn.connected(); i1++)
+				if (m_iPort > 0)
 				{
-					try
-					{
-						// TODO magic number
-						Thread.sleep(200);
-					}
-					catch (InterruptedException ex)
-					{
-					}
+				    m_oConn.connect(m_sFtpServer, m_iPort) ;
 				}
+				else
+				{
+				    m_oConn.connect(m_sFtpServer) ;
+				}
+
 				
-				if (!m_oConn.connected())
+				if (!m_oConn.isConnected())
 					throw new RemoteFileSystemException("Can't connect to FTP server");
-				m_oConn.user(m_sUser);
-				m_oConn.password(m_sPasswd);
-				m_oConn
-						.setConnectMode((m_bPassive) ? FTPConnectMode.PASV : FTPConnectMode.ACTIVE);
+				if (!m_oConn.login(m_sUser, m_sPasswd))
+				{
+				    m_oConn.logout() ;
+				    throw new RemoteFileSystemException("Remote login failed: " + m_oConn.getReplyString());
+				}
+				m_oConn.setFileType(m_bAsciiTransferType ? FTP.ASCII_FILE_TYPE : FTP.BINARY_FILE_TYPE) ;
+				if (m_bPassive)
+				{
+					m_oConn.enterLocalPassiveMode() ;
+				}
 			}
 		}
-		catch (RemoteFileSystemException ex)
+		catch (IOException ioe)
 		{
-			throw ex;
+			if (m_oConn.isConnected())
+			{
+			    try
+			    {
+			        m_oConn.disconnect() ;
+			    }
+			    catch (final IOException ioe2) {} // ignore
+			}
+			throw new RemoteFileSystemException(ioe);
 		}
-		catch (Exception ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
 	} // __________________________________
 
 	/**
@@ -176,6 +180,7 @@
 		if (null != m_oConn) try
 		{
 			m_oConn.quit();
+			m_oConn.disconnect();
 		}
 		catch (Exception e)
 		{
@@ -197,12 +202,12 @@
 	{
 		try
 		{
-			m_oConn.delete(getRemoteDir() + "/" + new File(p_sFile).getName());
+			changeRemoteDirectory() ;
+			if (!m_oConn.deleteFile(p_sFile))
+			{
+			    throw new RemoteFileSystemException("Failed to delete remote file: " + m_oConn.getReplyString());
+			}
 		}
-		catch (FTPException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
 		catch (IOException ex)
 		{
 			throw new RemoteFileSystemException(ex);
@@ -213,12 +218,12 @@
 	{
 		try
 		{
-			m_oConn.delete(fileToFtpString(p_oFile));
+			changeRemoteDirectory() ;
+			if (!m_oConn.deleteFile(p_oFile.getName()))
+			{
+			    throw new RemoteFileSystemException("Failed to delete remote file: " + m_oConn.getReplyString());
+			}
 		}
-		catch (FTPException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
 		catch (IOException ex)
 		{
 			throw new RemoteFileSystemException(ex);
@@ -242,12 +247,9 @@
 		
 		try
 		{
-			return m_oConn.dir(sSuffix);
+			changeRemoteDirectory() ;
+			return m_oConn.listNames(sSuffix);
 		}
-		catch (FTPException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
 		catch (IOException ex)
 		{
 			throw new RemoteFileSystemException(ex);
@@ -265,18 +267,7 @@
 	 */
 	public void setRemoteDir (String p_sDir) throws RemoteFileSystemException
 	{
-		try
-		{
-			m_oConn.chdir(p_sDir);
-		}
-		catch (FTPException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
-		catch (IOException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
+		m_sRemoteDir = p_sDir ;
 	} // _________________________________
 
 	/**
@@ -296,19 +287,17 @@
 	public void renameInRemoteDir (String p_sFrom, String p_sTo)
 			throws RemoteFileSystemException
 	{
-		String sRmtFrom = new File(p_sFrom).getName();
-		String sRmtTo = new File(p_sTo).getName();
-
 		try
 		{
-			m_oConn.rename(getRemoteDir() + "/" + sRmtFrom,
-					getRemoteDir() + "/" + sRmtTo);
+			changeRemoteDirectory() ;
+			if (!m_oConn.rename(p_sFrom, p_sTo))
+			{
+			    throw new RemoteFileSystemException("Failed to rename file: " + m_oConn.getReplyString());
+			}
 		}
-		catch (Exception e)
+		catch (final IOException ioe)
 		{
-			String sMess = this.getClass().getSimpleName() + " can't rename in remote directory <" + e
-					.getMessage() + ">";
-			throw new RemoteFileSystemException(sMess);
+			throw new RemoteFileSystemException(ioe);
 		}
 	} // _________________________________
 
@@ -316,13 +305,15 @@
 	{
 		try
 		{
-			m_oConn.rename(fileToFtpString(p_oFrom), fileToFtpString(p_oTo));
+			if (!m_oConn.rename(FtpClientUtil.fileToFtpString(p_oFrom),
+			        FtpUtils.fileToFtpString(p_oTo)))
+			{
+			    throw new RemoteFileSystemException("Failed to rename file: " + m_oConn.getReplyString());
+			}
 		}
-		catch (Exception e)
+		catch (IOException ioe)
 		{
-			String sMess = this.getClass().getSimpleName() + " can't rename in remote directory <" + e
-					.getMessage() + ">";
-			throw new RemoteFileSystemException(sMess);
+			throw new RemoteFileSystemException(ioe);
 		}
 	} // _________________________________
 
@@ -343,19 +334,38 @@
 	public void uploadFile (File p_oFile, String p_sRemoteName)
 			throws RemoteFileSystemException
 	{
-		String sRemoteOK = getRemoteDir() + "/" + p_sRemoteName;
-		String sRemoteTmp = sRemoteOK + TMP_SUFFIX;
-		
 		try
 		{
-			m_oConn.setType(m_oXferType);
-			m_oConn.put(fileToFtpString(p_oFile), sRemoteTmp);
-			m_oConn.rename(sRemoteTmp, sRemoteOK);
+			changeRemoteDirectory() ;
+			final String sRemoteTmp = p_sRemoteName + TMP_SUFFIX ;
+			
+			final OutputStream os = m_oConn.storeFileStream(sRemoteTmp) ;
+			try
+			{
+			    final FileInputStream fis = new FileInputStream(p_oFile) ;
+			    try
+			    {
+			        copyStream(fis, os) ;
+			    }
+			    finally
+			    {
+			        fis.close() ;
+			    }
+			}
+			finally
+			{
+			    os.flush() ;
+			    os.close() ;
+			}
+			if (!m_oConn.completePendingCommand())
+			{
+			    throw new RemoteFileSystemException("Failed to upload contents: " + m_oConn.getReplyString()) ;
+			}
+			if (!m_oConn.rename(sRemoteTmp, p_sRemoteName))
+			{
+			    throw new RemoteFileSystemException("Failed to rename file: " + m_oConn.getReplyString());
+			}
 		}
-		catch (FTPException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
 		catch (IOException ex)
 		{
 			throw new RemoteFileSystemException(ex);
@@ -383,46 +393,53 @@
 	{
 		try
 		{
-			File oLocalDir = new File(m_sLocalDir);
-			File oLclFile = File.createTempFile("Rosetta_", TMP_SUFFIX, oLocalDir);
-	
+			final File to = new File(p_sFinalName) ;
+			final File oLocalDir = new File(m_sLocalDir);
+			final File oNew = (to.isAbsolute() ? to : new File(oLocalDir, p_sFinalName)) ;
+			if (oNew.exists())
+			    oNew.delete();
+			
+			final File toTmp = new File(p_sFinalName + TMP_SUFFIX) ;
+			final File oNewTmp = (toTmp.isAbsolute() ? toTmp : new File(oLocalDir, p_sFinalName + TMP_SUFFIX)) ;
+			if (oNewTmp.exists())
+			    oNewTmp.delete();
+			
+			changeRemoteDirectory() ;
+			final InputStream is = m_oConn.retrieveFileStream(p_sFile) ;
+			if (is == null)
+			{
+			    throw new RemoteFileSystemException("Could not download file: " + m_oConn.getReplyString());
+			}
+			
 			try
 			{
-				oLclFile.delete();
+			    final FileOutputStream fos = new FileOutputStream(oNewTmp) ;
+			    try
+			    {
+			        copyStream(is, fos) ;
+			    }
+			    finally
+			    {
+			        fos.close() ;
+			    }
 			}
-			catch (Exception e)
+			finally
 			{
+			    is.close() ;
 			}
-			
-			m_oConn.setType(m_oXferType);
-			m_oConn.get(fileToFtpString(oLclFile), p_sFile);
-	
-			File oNew = new File(oLocalDir, p_sFinalName);
-			
-			if (oNew.exists()) 
-				oNew.delete();
-			
-			FileUtil.renameTo(oLclFile, oNew);
+			if (!m_oConn.completePendingCommand())
+			{
+			    oNewTmp.delete() ;
+			    throw new RemoteFileSystemException("Failed to download contents: " + m_oConn.getReplyString()) ;
+			}
+			FileUtil.renameTo(oNewTmp, oNew);
 		}
-		catch (FTPException ex)
-		{
-			throw new RemoteFileSystemException(ex);
-		}
 		catch (IOException ex)
 		{
 			throw new RemoteFileSystemException(ex);
 		}
 	} // _________________________________
 
-	// Beware !!! The logic here seems wrong, but it works
-	// It appears that there's some kind of bug in the edtftpj.jar library
-	// The !XFER_TYPE.ascii.equals(p_oMode) should NOT be negated
-	// But it works when negated (newlines from Unix to DOS)
-	private void setXferType (XFER_TYPE p_oMode)
-	{
-		m_oXferType = !XFER_TYPE.ascii.equals(p_oMode) ? FTPTransferType.ASCII : FTPTransferType.BINARY;
-	} // _________________________________
-
 	private void checkParms () throws ConfigurationException
 	{
 		m_sFtpServer = m_oParms.getAttribute(PARMS_FTP_SERVER);
@@ -454,7 +471,7 @@
 		if (null != sAux) 
 			bAscii = Boolean.parseBoolean(sAux);
 		
-		setXferType((bAscii) ? XFER_TYPE.ascii : XFER_TYPE.binary);
+		m_bAsciiTransferType = bAscii;
 
 		m_bPassive = false;
 		sAux = m_oParms.getAttribute(PARMS_PASSIVE);
@@ -465,5 +482,36 @@
 	{
 		return (null == p_oF) ? null : p_oF.toString().replace("\\", "/");
 	} // ________________________________
-
+        
+        private void changeRemoteDirectory()
+            throws IOException, RemoteFileSystemException
+        {
+            final String remoteDir = getRemoteDir() ;
+            if ((remoteDir != null) && (remoteDir.length() > 0))
+            {
+                if (!m_oConn.changeWorkingDirectory(remoteDir))
+                {
+                    throw new RemoteFileSystemException("Failed to change to remote directory: " + m_oConn.getReplyString());
+                }
+            }
+        }
+        
+        private void copyStream(final InputStream is, final OutputStream os)
+            throws IOException
+        {
+            final BufferedInputStream bis = new BufferedInputStream(is) ;
+            final BufferedOutputStream bos = new BufferedOutputStream(os) ;
+            
+            final byte[] buffer = new byte[256] ;
+            while(true)
+            {
+                final int count = bis.read(buffer) ;
+                if (count <= 0)
+                {
+                    break ;
+                }
+                bos.write(buffer, 0, count) ;
+            }
+            bos.flush() ;
+        }
 } // ____________________________________________________________________________

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/RemoteFileSystem.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/RemoteFileSystem.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/RemoteFileSystem.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -54,6 +54,8 @@
 
 	public static final String PARMS_CERTIFICATE = "certificate";
 
+	public static final String PARMS_CERTIFICATE_NAME = "certificateName";
+
 	public String getRemoteDir ();
 
 	/**

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/RemoteFileSystemFactory.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/RemoteFileSystemFactory.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/RemoteFileSystemFactory.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -22,13 +22,14 @@
 
 package org.jboss.soa.esb.util;
 
-import java.net.MalformedURLException;
+import java.net.URI;
 import java.net.URISyntaxException;
-import java.net.URL;
 
-import org.jboss.internal.soa.esb.util.EdtFtpImpl;
+import org.jboss.internal.soa.esb.util.FtpImpl;
+import org.jboss.internal.soa.esb.util.FtpsImpl;
 import org.jboss.internal.soa.esb.util.SecureFtpImpl;
 import org.jboss.soa.esb.addressing.eprs.FTPEpr;
+import org.jboss.soa.esb.addressing.eprs.FTPSEpr;
 import org.jboss.soa.esb.addressing.eprs.SFTPEpr;
 
 public class RemoteFileSystemFactory
@@ -53,18 +54,18 @@
 	public static RemoteFileSystem getRemoteFileSystem(FTPEpr p_oEpr,
 			boolean p_bConnect) throws RemoteFileSystemException
 	{
-		URL url = null;
+		URI uri = null;
 		try
 		{
-			url = p_oEpr.getURL();
-			if (url.getProtocol().equals(RemoteFileSystem.FTP_PROTOCOL))
-				return new EdtFtpImpl((FTPEpr) p_oEpr, p_bConnect);
-			else if (url.getProtocol().equals(RemoteFileSystem.SFTP_PROTOCOL))
+			uri = p_oEpr.getURI();
+			final String scheme = uri.getScheme();
+			if (RemoteFileSystem.FTP_PROTOCOL.equals(scheme))
+				return new FtpImpl((FTPEpr) p_oEpr, p_bConnect);
+			else if (RemoteFileSystem.FTPS_PROTOCOL.equals(scheme))
+				return new FtpsImpl((FTPSEpr) p_oEpr, p_bConnect);
+			else if (RemoteFileSystem.SFTP_PROTOCOL.equals(scheme))
 				return new SecureFtpImpl((SFTPEpr) p_oEpr, p_bConnect);
 
-		} catch (MalformedURLException e)
-		{
-			throw new RemoteFileSystemException(e);
 		} catch (URISyntaxException e)
 		{
 			throw new RemoteFileSystemException(e);

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/util/ssl)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl/SSLUtil.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/util/ssl/SSLUtil.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl/SSLUtil.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,69 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.util.ssl;
-
-import org.jboss.internal.soa.esb.assertion.AssertArgument;
-
-import java.security.KeyStore;
-import javax.net.ssl.KeyManager;
-import javax.net.ssl.KeyManagerFactory;
-import javax.net.ssl.TrustManager;
-import javax.net.ssl.TrustManagerFactory;
-import java.io.IOException;
-import java.io.InputStream;
-import java.security.KeyStoreException;
-import java.security.NoSuchAlgorithmException;
-import java.security.UnrecoverableKeyException;
-import java.security.cert.CertificateException;
-
-/**
- * SSL utility functions.
- * 
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public abstract class SSLUtil {
-
-    public static KeyManager[] getKeyManagers(KeyStore keystore, String password) throws NoSuchAlgorithmException, KeyStoreException, UnrecoverableKeyException {
-        AssertArgument.isNotNull(keystore, "keystore");        
-        KeyManagerFactory factory = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
-        factory.init(keystore, password != null ? password.toCharArray() : null);
-        return factory.getKeyManagers();
-    }
-
-    public static TrustManager[] getTrustManagers(KeyStore keystore) throws NoSuchAlgorithmException, KeyStoreException {
-        AssertArgument.isNotNull(keystore, "keystore");
-        TrustManagerFactory factory = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
-        factory.init(keystore);
-        return factory.getTrustManagers();
-    }
-
-    public static KeyStore loadKeyStore(InputStream keystoreStream, String keystoreType, String password) throws KeyStoreException, IOException, NoSuchAlgorithmException, CertificateException {
-        AssertArgument.isNotNull(keystoreStream, "keystoreStream");
-
-        KeyStore keystore = KeyStore.getInstance(keystoreType);
-        try {
-            keystore.load(keystoreStream, password != null ? password.toCharArray() : null);
-        } finally {
-            keystoreStream.close();
-        }
-        
-        return keystore;
-    }
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl/SSLUtil.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/util/ssl/SSLUtil.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl/SSLUtil.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl/SSLUtil.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,69 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.util.ssl;
+
+import org.jboss.internal.soa.esb.assertion.AssertArgument;
+
+import java.security.KeyStore;
+import javax.net.ssl.KeyManager;
+import javax.net.ssl.KeyManagerFactory;
+import javax.net.ssl.TrustManager;
+import javax.net.ssl.TrustManagerFactory;
+import java.io.IOException;
+import java.io.InputStream;
+import java.security.KeyStoreException;
+import java.security.NoSuchAlgorithmException;
+import java.security.UnrecoverableKeyException;
+import java.security.cert.CertificateException;
+
+/**
+ * SSL utility functions.
+ * 
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public abstract class SSLUtil {
+
+    public static KeyManager[] getKeyManagers(KeyStore keystore, String password) throws NoSuchAlgorithmException, KeyStoreException, UnrecoverableKeyException {
+        AssertArgument.isNotNull(keystore, "keystore");        
+        KeyManagerFactory factory = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
+        factory.init(keystore, password != null ? password.toCharArray() : null);
+        return factory.getKeyManagers();
+    }
+
+    public static TrustManager[] getTrustManagers(KeyStore keystore) throws NoSuchAlgorithmException, KeyStoreException {
+        AssertArgument.isNotNull(keystore, "keystore");
+        TrustManagerFactory factory = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
+        factory.init(keystore);
+        return factory.getTrustManagers();
+    }
+
+    public static KeyStore loadKeyStore(InputStream keystoreStream, String keystoreType, String password) throws KeyStoreException, IOException, NoSuchAlgorithmException, CertificateException {
+        AssertArgument.isNotNull(keystoreStream, "keystoreStream");
+
+        KeyStore keystore = KeyStore.getInstance(keystoreType);
+        try {
+            keystore.load(keystoreStream, password != null ? password.toCharArray() : null);
+        } finally {
+            keystoreStream.close();
+        }
+        
+        return keystore;
+    }
+}

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl/SelfSignedTrustManager.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/util/ssl/SelfSignedTrustManager.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl/SelfSignedTrustManager.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,68 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.util.ssl;
-
-import org.jboss.soa.esb.ConfigurationException;
-
-import javax.net.ssl.X509TrustManager;
-import javax.net.ssl.TrustManager;
-import java.security.KeyStore;
-import java.security.NoSuchAlgorithmException;
-import java.security.KeyStoreException;
-import java.security.cert.CertificateException;
-import java.security.cert.X509Certificate;
-
-/**
- * {@link X509TrustManager} that trusts Self-Signed certificates.
- *
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public class SelfSignedTrustManager implements X509TrustManager {
-
-    private X509TrustManager trustManager;
-
-    public SelfSignedTrustManager(KeyStore keystore) throws NoSuchAlgorithmException, KeyStoreException, ConfigurationException {
-        TrustManager[] trustManagers = SSLUtil.getTrustManagers(keystore);
-        if(trustManagers.length == 0) {
-            throw new ConfigurationException("No TrustManagers found in KeyStore.");
-        }
-        try {
-            trustManager = (X509TrustManager) trustManagers[0];
-        } catch(ClassCastException e) {
-            throw new ConfigurationException("X509 TrustManager not found in KeyStore.");
-        }
-    }
-    
-    public void checkClientTrusted(X509Certificate[] x509Certificates, String authType) throws CertificateException {
-        trustManager.checkClientTrusted(x509Certificates, authType);
-    }
-
-    public void checkServerTrusted(X509Certificate[] x509Certificates, String authType) throws CertificateException {
-        if ((x509Certificates != null) && (x509Certificates.length == 1)) {
-            x509Certificates[0].checkValidity();
-        } else {
-            trustManager.checkServerTrusted(x509Certificates, authType);
-        }
-    }
-
-    public X509Certificate[] getAcceptedIssuers() {
-        return trustManager.getAcceptedIssuers();
-    }
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl/SelfSignedTrustManager.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/src/org/jboss/soa/esb/util/ssl/SelfSignedTrustManager.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl/SelfSignedTrustManager.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/src/org/jboss/soa/esb/util/ssl/SelfSignedTrustManager.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,68 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.util.ssl;
+
+import org.jboss.soa.esb.ConfigurationException;
+
+import javax.net.ssl.X509TrustManager;
+import javax.net.ssl.TrustManager;
+import java.security.KeyStore;
+import java.security.NoSuchAlgorithmException;
+import java.security.KeyStoreException;
+import java.security.cert.CertificateException;
+import java.security.cert.X509Certificate;
+
+/**
+ * {@link X509TrustManager} that trusts Self-Signed certificates.
+ *
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class SelfSignedTrustManager implements X509TrustManager {
+
+    private X509TrustManager trustManager;
+
+    public SelfSignedTrustManager(KeyStore keystore) throws NoSuchAlgorithmException, KeyStoreException, ConfigurationException {
+        TrustManager[] trustManagers = SSLUtil.getTrustManagers(keystore);
+        if(trustManagers.length == 0) {
+            throw new ConfigurationException("No TrustManagers found in KeyStore.");
+        }
+        try {
+            trustManager = (X509TrustManager) trustManagers[0];
+        } catch(ClassCastException e) {
+            throw new ConfigurationException("X509 TrustManager not found in KeyStore.");
+        }
+    }
+    
+    public void checkClientTrusted(X509Certificate[] x509Certificates, String authType) throws CertificateException {
+        trustManager.checkClientTrusted(x509Certificates, authType);
+    }
+
+    public void checkServerTrusted(X509Certificate[] x509Certificates, String authType) throws CertificateException {
+        if ((x509Certificates != null) && (x509Certificates.length == 1)) {
+            x509Certificates[0].checkValidity();
+        } else {
+            trustManager.checkServerTrusted(x509Certificates, authType);
+        }
+    }
+
+    public X509Certificate[] getAcceptedIssuers() {
+        return trustManager.getAcceptedIssuers();
+    }
+}

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/build.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/build.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/build.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -137,8 +137,9 @@
         	<sysproperty key="org.jboss.esb.test.ftp.user" value="${org.jboss.esb.test.ftp.user}"/>
         	<sysproperty key="org.jboss.esb.test.ftp.pwd" value="${org.jboss.esb.test.ftp.pwd}"/>
         	<sysproperty key="org.jboss.esb.test.ftp.dir" value="${org.jboss.esb.test.ftp.dir}"/>
-                <sysproperty key="org.jboss.esb.test.persistdb.dir" value="${org.jboss.esb.test.persistdb.dir}"/>
+            <sysproperty key="org.jboss.esb.test.persistdb.dir" value="${org.jboss.esb.test.persistdb.dir}"/>
         	<sysproperty key="log4j.configuration" value="log4j.xml"/>
+            <sysproperty key="jboss.esb.invm.scope.default" value="NONE"/>
         </junit>
         <junitreport>
             <fileset dir="${org.jboss.esb.tests.report.dir}">
@@ -223,6 +224,7 @@
 	        	<sysproperty key="org.jboss.esb.test.ftp.dir" value="${org.jboss.esb.test.ftp.dir}"/>
                 <sysproperty key="org.jboss.esb.test.persistdb.dir" value="${org.jboss.esb.test.persistdb.dir}"/>
 	        	<sysproperty key="log4j.configuration" value="log4j.xml"/>
+                <sysproperty key="jboss.esb.invm.scope.default" value="NONE"/>
 	        </junit>
 	        <junitreport>
 	            <fileset dir="${org.jboss.esb.tests.report.dir}">

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/couriers/tests/CourierIntegrationTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/couriers/tests/CourierIntegrationTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/couriers/tests/CourierIntegrationTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -24,7 +24,6 @@
 
 import java.io.File;
 import java.net.URI;
-import java.net.URL;
 import java.util.UUID;
 
 import org.jboss.soa.esb.addressing.Call;
@@ -35,7 +34,6 @@
 import org.jboss.soa.esb.couriers.CourierFactory;
 import org.jboss.soa.esb.couriers.TwoWayCourier;
 import org.jboss.soa.esb.message.Message;
-import org.jboss.soa.esb.message.body.content.BytesBody;
 import org.jboss.soa.esb.message.format.MessageFactory;
 
 /**
@@ -43,6 +41,7 @@
  * 
  * @since Version 4.0
  * 
+ * TODO Extend this to include FTPS/SFTP
  */
 
 public class CourierIntegrationTest extends BaseTest
@@ -84,14 +83,14 @@
 			pickup("ftp://"+getFtpUser()+"@"+getFtpHostname()+"/"+getFtpDir());
 	}
 	
-	private final FileEpr getEpr(String sUrl) throws Exception
+	private final FileEpr getEpr(String sUri) throws Exception
 	{
-		String protocol = new URL(sUrl).getProtocol();
+		final String scheme = new URI(sUri).getScheme();
 
-		if ("ftp".equals(protocol))
-			return new FTPEpr(sUrl);
-		if ("file".equals(protocol))
-			return new FileEpr(sUrl);
+		if ("ftp".equals(scheme))
+			return new FTPEpr(sUri);
+		if ("file".equals(scheme))
+			return new FileEpr(sUri);
 
 		throw new IllegalArgumentException("Not a recognised protocol!");
 	}

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/couriers/tests/FileCourierUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/couriers/tests/FileCourierUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/couriers/tests/FileCourierUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -43,7 +43,6 @@
 import org.jboss.soa.esb.couriers.FaultMessageException;
 import org.jboss.soa.esb.couriers.TwoWayCourier;
 import org.jboss.soa.esb.message.Message;
-import org.jboss.soa.esb.message.body.content.BytesBody;
 import org.jboss.soa.esb.message.format.MessageFactory;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
@@ -115,7 +114,7 @@
 		String contents = "This is the text that travels in the Message body";
 
 		// toEpr for files must be a directory
-		FileEpr toEpr = new FileEpr(_tmpDir.toURL());
+		FileEpr toEpr = new FileEpr(_tmpDir.toURI());
 		toEpr.setInputSuffix(TEST_SUFFIX);
 		
 		Message msg = MessageFactory.getInstance().getMessage();
@@ -135,7 +134,7 @@
 		Assert.assertTrue(theFile.exists());
 		_logger.info("Message file "+theFile.toString()+" successfully created");
 				
-		FileEpr fromEpr = new FileEpr(toEpr.getURL());
+		FileEpr fromEpr = new FileEpr(toEpr.getURI());
 		fromEpr.setInputSuffix(TEST_SUFFIX);
 		fromEpr.setPostSuffix(DONE_SUFFIX);
 		
@@ -162,7 +161,7 @@
 	public void testFaultMessage () throws Exception 
     {
 		// toEpr for files must be a directory
-		FileEpr toEpr = new FileEpr(_tmpDir.toURL());
+		FileEpr toEpr = new FileEpr(_tmpDir.toURI());
 		toEpr.setInputSuffix(TEST_SUFFIX);
 		
 		Message msg = MessageFactory.getInstance().getMessage();
@@ -184,7 +183,7 @@
 		Assert.assertTrue(theFile.exists());
 		_logger.info("Message file "+theFile.toString()+" successfully created");
 				
-		FileEpr fromEpr = new FileEpr(toEpr.getURL());
+		FileEpr fromEpr = new FileEpr(toEpr.getURI());
 		fromEpr.setInputSuffix(TEST_SUFFIX);
 		fromEpr.setPostSuffix(DONE_SUFFIX);
 		
@@ -216,7 +215,7 @@
 		String contents = "This is the text that travels in the Message body";
 
 		// toEpr for files must be a directory
-		FileEpr toEpr = new FileEpr(_tmpDir.toURL());
+		FileEpr toEpr = new FileEpr(_tmpDir.toURI());
 		toEpr.setInputSuffix(TEST_SUFFIX);
 		
 		Message msg = MessageFactory.getInstance().getMessage();
@@ -232,7 +231,7 @@
 		Assert.assertTrue(theFile.exists());
 		_logger.info("Message file "+theFile.toString()+" successfully created");
 				
-		FileEpr fromEpr = new FileEpr(toEpr.getURL());
+		FileEpr fromEpr = new FileEpr(toEpr.getURI());
 		fromEpr.setInputSuffix(TEST_SUFFIX);
 		fromEpr.setPostSuffix(DONE_SUFFIX);
 		
@@ -257,7 +256,7 @@
 		String contents = "This is the text that travels in the Message body";
 
 		// toEpr for files must be a directory
-		FileEpr toEpr = new FileEpr(_tmpDir.toURL());
+		FileEpr toEpr = new FileEpr(_tmpDir.toURI());
 		toEpr.setInputSuffix(TEST_SUFFIX);
 		
 		Message msg = MessageFactory.getInstance().getMessage();
@@ -274,7 +273,7 @@
 		Assert.assertTrue(theFile.exists());
 		_logger.info("Message file "+theFile.toString()+" successfully created");
 				
-		FileEpr fromEpr = new FileEpr(toEpr.getURL());
+		FileEpr fromEpr = new FileEpr(toEpr.getURI());
 		fromEpr.setInputSuffix(TEST_SUFFIX);
 		// setting postdelete to true will delete input Message files, if they were picked up
 		fromEpr.setPostDelete(true);
@@ -318,7 +317,7 @@
 		Assert.assertTrue(theFile.exists());
 		_logger.info("Invalid Message file "+theFile.toString()+" successfully created");
 				
-		FileEpr fromEpr = new FileEpr(_tmpDir.toURL()) ;
+		FileEpr fromEpr = new FileEpr(_tmpDir.toURI()) ;
 		fromEpr.setInputSuffix(TEST_SUFFIX);
 		fromEpr.setPostSuffix(DONE_SUFFIX);
 		fromEpr.setErrorSuffix(ERROR_SUFFIX);
@@ -347,7 +346,7 @@
 		Assert.assertTrue(theFile.exists());
 		_logger.info("Invalid Message file "+theFile.toString()+" successfully created");
 				
-		FileEpr fromEpr = new FileEpr(_tmpDir.toURL());
+		FileEpr fromEpr = new FileEpr(_tmpDir.toURI());
 		fromEpr.setInputSuffix(TEST_SUFFIX);
 		fromEpr.setPostSuffix(DONE_SUFFIX);
 		fromEpr.setErrorSuffix(ERROR_SUFFIX);

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/couriers/tests/InVMCourierUnitTest.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/internal/soa/esb/couriers/tests/InVMCourierUnitTest.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/couriers/tests/InVMCourierUnitTest.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/couriers/tests/InVMCourierUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,316 @@
+/*
+ * 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.internal.soa.esb.couriers.tests;
+
+import junit.framework.Assert;
+import junit.framework.JUnit4TestAdapter;
+import org.jboss.internal.soa.esb.couriers.InVMCourier;
+import org.jboss.internal.soa.esb.couriers.TwoWayCourierImpl;
+import org.jboss.soa.esb.addressing.MalformedEPRException;
+import org.jboss.soa.esb.addressing.eprs.InVMEpr;
+import org.jboss.soa.esb.couriers.CourierException;
+import org.jboss.soa.esb.couriers.CourierFactory;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.format.MessageFactory;
+import org.junit.Test;
+
+import java.net.URI;
+import java.net.URISyntaxException;
+
+public class InVMCourierUnitTest {
+    public static junit.framework.Test suite() {
+        return new JUnit4TestAdapter(InVMCourierUnitTest.class);
+    }
+
+    @Test
+    public void testUnthreadedDeliver() throws Exception {
+        InVMEpr epr = new InVMEpr(new URI("invm://serviceid1"));
+        InVMCourier courier = new InVMCourier(epr);
+        Producer producer = new Producer(courier);
+        Consumer consumer = new Consumer(courier);
+
+        producer.run();
+        consumer.run();
+
+        Assert.assertEquals(true, consumer.valid());
+    }
+
+    @Test
+    public void testThreadedDeliver() throws Exception {
+        InVMEpr epr = new InVMEpr(new URI("invm://serviceid2"));
+        InVMCourier courier = new InVMCourier(epr);
+        Producer producer = new Producer(courier);
+        Consumer consumer = new Consumer(courier);
+
+        producer.start();
+        consumer.start();
+
+        consumer.join(TIMEOUT) ;
+        Assert.assertTrue("Consumer valid", consumer.valid()) ;
+
+        Assert.assertEquals(consumer.valid(), true);
+    }
+
+    @Test
+    public void testDelayedThreadedDeliver() throws Exception {
+        InVMEpr epr = new InVMEpr(new URI("invm://serviceid3"));
+        InVMCourier courier = new InVMCourier(epr);
+        Producer producer = new Producer(courier);
+        Consumer consumer = new Consumer(courier);
+
+        consumer.start();
+
+        try {
+            Thread.sleep(500);
+        }
+        catch (Exception ex) {
+        }
+
+        producer.start();
+
+        consumer.join(TIMEOUT) ;
+        Assert.assertTrue("Consumer valid", consumer.valid()) ;
+
+        Assert.assertEquals(consumer.valid(), true);
+    }
+
+    @Test
+    public void testThreadedNullDeliver() throws Exception {
+        InVMEpr epr = new InVMEpr(new URI("invm://serviceid4"));
+        InVMCourier courier = new InVMCourier(epr);
+        Consumer consumer = new Consumer(courier);
+
+        consumer.start();
+
+        try {
+            Thread.sleep(500);
+        }
+        catch (Exception ex) {
+        }
+
+        consumer.join(TIMEOUT) ;
+        Assert.assertFalse("Consumer terminated", consumer.isAlive()) ;
+        Assert.assertFalse("Consumer valid", consumer.valid()) ;
+
+        Assert.assertEquals(consumer.valid(), false);
+    }
+
+    @Test
+    public void testLockstepDeliver() throws Exception {
+        InVMEpr epr = new InVMEpr(new URI("invm://serviceid5?true#2000"));
+        InVMCourier courier = new InVMCourier(epr);
+        Producer producer = new Producer(courier);
+        Consumer consumer = new Consumer(courier);
+
+        consumer.start();
+        producer.start();
+
+        consumer.join(TIMEOUT) ;
+        Assert.assertTrue("Consumer valid", consumer.valid()) ;
+
+        Assert.assertEquals(consumer.valid(), true);
+    }
+
+    @Test
+    public void test_single_Courier_Creation() throws URISyntaxException,
+            MalformedEPRException, CourierException {
+        InVMEpr epr = new InVMEpr(new URI("invm://serviceid5?true#2000"));
+        TwoWayCourierImpl courier1 = (TwoWayCourierImpl) CourierFactory
+                .getInstance().getCourier(epr);
+        TwoWayCourierImpl courier2 = (TwoWayCourierImpl) CourierFactory
+                .getInstance().getCourier(epr);
+
+        Assert.assertTrue(courier1.getDeliverCourier() == courier2
+                .getDeliverCourier());
+        Assert.assertTrue(courier1.getPickupCourier() == courier2
+                .getPickupCourier());
+    }
+
+    @Test
+    public void testLockstepMultiProducerPerformance() throws Exception {
+        InVMEpr epr = new InVMEpr(new URI("invm://serviceid5?true#2000"));
+        int iters = 1000;
+        int numberOfProducers = 50;
+        Producer[] producer = new Producer[numberOfProducers];
+        InVMCourier courier = new InVMCourier(epr);
+        Consumer consumer = new Consumer(courier, iters * numberOfProducers,
+                false);
+        long stime = System.currentTimeMillis();
+
+        for (int i = 0; i < numberOfProducers; i++)
+            producer[i] = new Producer(courier, iters, false);
+
+        consumer.start();
+
+        for (int j = 0; j < numberOfProducers; j++)
+            producer[j].start();
+
+        consumer.join(TIMEOUT) ;
+        Assert.assertTrue("Consumer valid", consumer.valid()) ;
+
+        long ftime = System.currentTimeMillis();
+        double factor = 1000.00 / (ftime - stime);
+        double msgsPerSecond = iters * factor * numberOfProducers;
+
+        if (!consumer.valid())
+            System.err.println("Completed " + consumer.itersCompleted());
+
+        Assert.assertEquals(consumer.valid(), true);
+
+        System.err.println("Time for " + iters * numberOfProducers
+                + " messages is " + (ftime - stime) + " milliseconds.");
+        System.err.println("Messages per second: " + msgsPerSecond);
+    }
+
+    /*
+     * test that WeakHashMap could be used to gc invmcouriers.
+     * 
+    @Test
+    public void testFactory () throws Exception
+    {
+	int numberOfProducersConsumers = 100;
+
+	for (int i = 0; i < numberOfProducersConsumers; i++)
+	{
+	    InVMEpr epr = new InVMEpr(new URI("invm://serviceid" + i
+		    + "test"));
+	    
+	    TwoWayCourierImpl courier = (TwoWayCourierImpl) InternalCourierFactory.getInstance().getCourier(epr);
+
+	    Assert.assertNotNull(courier.getDeliverCourier());
+	    Assert.assertNull(courier.getPickupCourier());
+	}
+
+	for (int j = 0; j < 10; j++)
+	    System.gc();  // not guaranteed to work first time.
+	
+	//Assert.assertEquals(CourierFactoryHelper.getInVMCourierInstanceCount(InternalCourierFactory.getInstance()), 0);
+    }*/
+
+    public static final int ITERATIONS = 10;
+    public static final int TIMEOUT = 30000;
+}
+
+class Producer extends Thread {
+    public Producer(InVMCourier courier, int iters, boolean debug) {
+        this.courier = courier;
+        _iters = iters;
+        _debug = debug;
+    }
+
+    public Producer(InVMCourier courier) {
+        this(courier, InVMCourierUnitTest.ITERATIONS, true);
+    }
+
+    public void run() {
+        try {
+            int number = 0;
+            int iterations = _iters;
+
+            while (number < iterations) {
+                Message msg = MessageFactory.getInstance().getMessage();
+
+                msg.getBody().add(new String("Message: " + number++));
+
+                courier.deliver(msg);
+
+                if (_debug)
+                    System.err.println("Delivered " + msg);
+
+                Thread.yield();
+            }
+        }
+        catch (Exception ex) {
+            ex.printStackTrace();
+        }
+
+        courier = null;
+    }
+
+    private InVMCourier courier;
+
+    private int _iters;
+
+    private boolean _debug;
+}
+
+class Consumer extends Thread {
+    public Consumer(InVMCourier courier) {
+        this(courier, InVMCourierUnitTest.ITERATIONS, true);
+    }
+
+    public Consumer(InVMCourier courier, int iters, boolean debug) {
+        this.courier = courier;
+        _iters = iters;
+        _debug = debug;
+    }
+
+    public void run() {
+        try {
+            int i;
+
+            if (_debug)
+                System.out.println("Consumer Iters: " + _iters);
+
+            for (i = 0; i < _iters; i++) {
+                Message msg = courier.pickup(2000);
+
+                if (_debug)
+                    System.err.println("Received: " + msg);
+
+                if (msg == null)
+                    return;
+                else
+                    Thread.yield();
+            }
+
+            if (i == _iters)
+                _valid = true;
+
+            _itersCompleted = i;
+        }
+        catch (Exception ex) {
+            ex.printStackTrace();
+        }
+
+        courier = null;
+    }
+
+    public int itersCompleted() {
+        return _itersCompleted;
+    }
+
+    public boolean valid() {
+        return _valid;
+    }
+
+    private InVMCourier courier;
+
+    private boolean _valid = false;
+
+    private int _iters;
+
+    private boolean _debug;
+
+    private int _itersCompleted = 0;
+}
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/services/registry/InVMRegistryUnitTest.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/internal/soa/esb/services/registry/InVMRegistryUnitTest.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/services/registry/InVMRegistryUnitTest.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/services/registry/InVMRegistryUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,65 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.internal.soa.esb.services.registry;
+
+import junit.framework.TestCase;
+import org.jboss.soa.esb.addressing.EPR;
+import org.jboss.soa.esb.services.registry.RegistryException;
+import org.jboss.soa.esb.services.registry.ServiceNotFoundException;
+
+import java.net.URI;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class InVMRegistryUnitTest extends TestCase {
+
+    public void test() throws ServiceNotFoundException, RegistryException {
+        InVMRegistry reg = new InVMRegistry();
+
+        assertNull(reg.findEPR("x", "y"));
+
+        reg.registerEPR("x", "y", "blah", new EPR(URI.create("x://123")), "blah");
+        assertEquals(1, reg.findEPRs("x", "y").size());
+        assertEquals("x://123", reg.findEPR("x", "y").getAddr().getAddress());
+
+        reg.registerEPR("x", "y", "blah", new EPR(URI.create("x://1234")), "blah");
+        assertEquals(2, reg.findEPRs("x", "y").size());
+
+        reg.registerEPR("a", "z", "blah", new EPR(URI.create("x://12345")), "blah");
+        assertEquals(2, reg.findEPRs("x", "y").size());
+        assertEquals(1, reg.findEPRs("a", "z").size());
+
+        assertEquals(2, reg.findAllServices().size());
+        assertEquals(1, reg.findServices("x").size());
+
+        // unreg using a valid service, but unregistred EPR... make sure nothing changes...
+        reg.unRegisterEPR("a", "z", new EPR(URI.create("x://1")));
+        assertEquals(1, reg.findEPRs("a", "z").size());
+        // unreg using a valid service + registred EPR... make sure EPR is removed...
+        reg.unRegisterEPR("a", "z", new EPR(URI.create("x://12345")));
+        assertEquals(0, reg.findEPRs("a", "z").size());
+
+        // unreg all for the service
+        assertEquals(2, reg.findEPRs("x", "y").size());
+        reg.unRegisterService("x", "y");
+        assertEquals(0, reg.findEPRs("x", "y").size());
+    }
+}

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/services/registry/JAXRRegistryUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/services/registry/JAXRRegistryUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/services/registry/JAXRRegistryUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -26,6 +26,7 @@
 
 import java.io.File;
 import java.io.InputStream;
+import java.io.IOException;
 import java.sql.DriverManager;
 import java.sql.Statement;
 import java.util.ArrayList;
@@ -56,6 +57,7 @@
 import org.jboss.soa.esb.testutils.FileUtil;
 import org.jboss.soa.esb.testutils.HsqldbUtil;
 import org.jboss.soa.esb.testutils.TestEnvironmentUtil;
+import org.jboss.soa.esb.ConfigurationException;
 
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
@@ -78,8 +80,7 @@
 	 * Tests the successful creation of the RED HAT/JBossESB Organization.
 	 */
 	@Test
-	public void publishOrganization() 
-	{
+	public void publishOrganization() throws ConfigurationException {
         JAXRConnectionFactory jaxrConnectionFactory = new JAXRConnectionFactory();
 		try {
 			Organization org = JAXRRegistryImpl.createJBossESBOrganization(jaxrConnectionFactory);
@@ -91,8 +92,7 @@
 		}
 	}
 	@Test
-	public void findOrganization() 
-	{
+	public void findOrganization() throws ConfigurationException {
         JAXRConnectionFactory jaxrConnectionFactory = new JAXRConnectionFactory();
 		try {
 			Organization org = JAXRRegistryImpl.findOrganization("Red Hat/JBossESB", jaxrConnectionFactory);
@@ -116,8 +116,7 @@
 	 *
 	 */
 	@Test
-	public void publishService()
-	{
+	public void publishService() throws ConfigurationException {
 		try {
 			JAXRRegistryImpl registry = new JAXRRegistryImpl();
 			registry.registerService("registry", "Registry Test ServiceName", "Registry Test Service Description");
@@ -127,8 +126,7 @@
 		}
 	}
 	@Test
-	public void publishServiceBinding()
-	{
+	public void publishServiceBinding() throws ConfigurationException {
 		try {
 			EPR epr = new EPR();
 			JAXRRegistryImpl registry = new JAXRRegistryImpl();
@@ -151,8 +149,7 @@
 	 * @throws Exception
 	 */
 	@Test
-	public void findServicesForAnOrganization()
-    {
+	public void findServicesForAnOrganization() throws ConfigurationException {
         JAXRConnectionFactory jaxrConnectionFactory = new JAXRConnectionFactory();
 		try {
 			Organization org = JAXRRegistryImpl.findOrganization("Red Hat/JBossESB", jaxrConnectionFactory);
@@ -188,8 +185,7 @@
 	 * We're ignoring this test until I come up with a patch.
 	 *
 	 */
-	public void findServicesByClassification()
-	{
+	public void findServicesByClassification() throws ConfigurationException {
         JAXRConnectionFactory jaxrConnectionFactory = new JAXRConnectionFactory();
         Connection connection = jaxrConnectionFactory.getConnection();
 		try {
@@ -226,14 +222,9 @@
 	public static void runBeforeAllTests() throws Exception {
 		try {
 			TestEnvironmentUtil.setESBPropertiesFileToUse();
-			//Set the juddi properties file in System so juddi will pick it up later and use the test values.
-			String juddiPropertiesFile = "/org/jboss/soa/esb/services/registry/juddi-unittest.properties";
-			System.setProperty("juddi.propertiesFile", juddiPropertiesFile);
-			//Read this properties file to get the db connection string
-			Properties props = new Properties();
-			InputStream inStream = Class.class.getResourceAsStream(juddiPropertiesFile);
-			props.load(inStream);
-			mDbDriver    = props.getProperty("juddi.jdbcDriver");
+            Properties props = getJuddiProperties();
+
+            mDbDriver    = props.getProperty("juddi.jdbcDriver");
 			mDbUrl       = props.getProperty("juddi.jdbcUrl");
 			mDbUsername  = props.getProperty("juddi.jdbcUsername");
 			mDbPassword  = props.getProperty("juddi.jdbcPassword");
@@ -275,7 +266,8 @@
 			assertTrue(false);
 		}
 	}
-	/**
+
+    /**
 	 * Shutdown the database
 	 * @throws Exception
 	 */
@@ -286,8 +278,19 @@
 		}
 	}
 
-	public static junit.framework.Test suite() {
+    public static junit.framework.Test suite() {
 		return new JUnit4TestAdapter(JAXRRegistryUnitTest.class);
 	}
 
+    private static Properties getJuddiProperties() throws IOException {
+        //Set the juddi properties file in System so juddi will pick it up later and use the test values.
+        String juddiPropertiesFile = "/org/jboss/soa/esb/services/registry/juddi-unittest.properties";
+        System.setProperty("juddi.propertiesFile", juddiPropertiesFile);
+        //Read this properties file to get the db connection string
+        Properties props = new Properties();
+        InputStream inStream = Class.class.getResourceAsStream(juddiPropertiesFile);
+        props.load(inStream);
+        return props;
+    }
+
 }

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/services/registry/JAXRRegistryUnitTest.java.bak (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/internal/soa/esb/services/registry/JAXRRegistryUnitTest.java.bak)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/services/registry/JAXRRegistryUnitTest.java.bak	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/services/registry/JAXRRegistryUnitTest.java.bak	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,219 @@
+/*
+* 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.internal.soa.esb.services.registry;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+import java.io.File;
+import java.io.InputStream;
+import java.sql.DriverManager;
+import java.sql.Statement;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.Properties;
+
+import javax.xml.registry.BulkResponse;
+import javax.xml.registry.BusinessLifeCycleManager;
+import javax.xml.registry.BusinessQueryManager;
+import javax.xml.registry.Connection;
+import javax.xml.registry.JAXRException;
+import javax.xml.registry.RegistryService;
+import javax.xml.registry.infomodel.Classification;
+import javax.xml.registry.infomodel.ClassificationScheme;
+import javax.xml.registry.infomodel.Organization;
+import javax.xml.registry.infomodel.Service;
+import javax.xml.registry.infomodel.ServiceBinding;
+import javax.xml.registry.infomodel.User;
+
+import junit.framework.JUnit4TestAdapter;
+
+import org.apache.log4j.Logger;
+import org.jboss.internal.soa.esb.addressing.helpers.EPRHelper;
+import org.jboss.soa.esb.addressing.EPR;
+import org.jboss.soa.esb.services.registry.RegistryException;
+import org.jboss.soa.esb.services.registry.ServiceNotFoundException;
+import org.jboss.soa.esb.testutils.FileUtil;
+import org.jboss.soa.esb.testutils.HsqldbUtil;
+import org.jboss.soa.esb.testutils.TestEnvironmentUtil;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.MarshalException;
+
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+/**
+ * Testing the registry.
+ * 
+ * @author kstam
+ *
+ */
+public class JAXRRegistryUnitTest
+{
+	private static Logger logger = Logger.getLogger(JAXRRegistryUnitTest.class);
+	/**
+	 * Tests the successful creation of the RED HAT/JBossESB Organization.
+	 */
+	@Test
+	public void publishOrganization() throws ConfigurationException {
+        JAXRConnectionFactory jaxrConnectionFactory = new JAXRConnectionFactory();
+		try {
+			Organization org = JAXRRegistryImpl.createJBossESBOrganization(jaxrConnectionFactory);
+			logger.debug("Succesfully created organization: " + org.getName().getValue());
+			assertEquals("Red Hat/JBossESB", org.getName().getValue());
+		} catch (JAXRException je) {
+			logger.debug(je.getLocalizedMessage(), je);
+			assertTrue(false);
+		}
+	}
+	@Test
+	public void findOrganization() throws ConfigurationException {
+        JAXRConnectionFactory jaxrConnectionFactory = new JAXRConnectionFactory();
+		try {
+			Organization org = JAXRRegistryImpl.findOrganization("Red Hat/JBossESB", jaxrConnectionFactory);
+			logger.debug("Succesfully created organization: " + org.getName().getValue());
+			assertEquals("Red Hat/JBossESB", org.getName().getValue());
+		} catch (JAXRException je) {
+			logger.debug(je.getLocalizedMessage(), je);
+			assertTrue(false);
+		}
+		try {
+			Organization org = JAXRRegistryImpl.findOrganization("Not Existing Org", jaxrConnectionFactory);
+			logger.debug("Could not find non-existing organization.");
+			assertEquals(null, org);
+		} catch (JAXRException je) {
+			logger.error(je.getLocalizedMessage(), je);
+			assertTrue(false);
+		}
+	}
+	/**
+	 * Tests the successful registration of a Service.
+	 *
+	 */
+	@Test
+	public void publishService() throws JAXRException, ConfigurationException {
+        JAXRRegistryImpl registry = new JAXRRegistryImpl();
+        registry.registerService("registry", "Registry Test ServiceName", "Registry Test Service Description");
+	}
+
+    @Test
+	public void publishServiceBinding() throws ConfigurationException, RegistryException {
+        EPR epr = new EPR();
+        JAXRRegistryImpl registry = new JAXRRegistryImpl();
+        registry.registerEPR("registry", "Registry Test ServiceName", "Registry Test Service Description",
+                epr, "EPR description");
+        registry.registerEPR("registry", "Registry Test ServiceName", "Registry Test Service Description",
+                epr, "EPR description");
+        try {
+            registry.unRegisterEPR("registry", "Registry Test ServiceName", epr);
+        } catch (ServiceNotFoundException snfe) {
+            logger.warn("Failed to find Service for unregistering.", snfe);
+        }
+	}
+    
+    /**
+	 * Queries the newly added information
+	 * @throws Exception
+	 */
+	@Test
+	public void findServicesForAnOrganization() throws ConfigurationException, JAXRException, MarshalException {
+        JAXRConnectionFactory jaxrConnectionFactory = new JAXRConnectionFactory();
+        Organization org = JAXRRegistryImpl.findOrganization("Red Hat/JBossESB", jaxrConnectionFactory);
+        //Listing out the services and their Bindings
+        logger.debug("-------------------------------------------------");
+        logger.debug("Organization name: " + org.getName().getValue());
+        logger.debug("Description: " + org.getDescription().getValue());
+        logger.debug("Key id: " + org.getKey().getId());
+        User primaryContact = org.getPrimaryContact();
+        logger.debug("Primary Contact: " + primaryContact.getPersonName().getFullName());
+        Collection services = org.getServices();
+        for (Iterator serviceIter = services.iterator();serviceIter.hasNext();) {
+            Service service = (Service) serviceIter.next();
+            logger.debug("- Service Name: " + service.getName().getValue());
+            logger.debug("  Service Key : " + service.getKey().getId());
+            Collection serviceBindings = service.getServiceBindings();
+            for (Iterator serviceBindingIter = serviceBindings.iterator();serviceBindingIter.hasNext();){
+                ServiceBinding serviceBinding = (ServiceBinding) serviceBindingIter.next();
+                logger.debug("  ServiceBinding Description: " + serviceBinding.getDescription().getValue());
+                String xml = serviceBinding.getAccessURI();
+                logger.debug("  ServiceBinding URI: " + xml);
+                assertEquals(EPRHelper.toXMLString(new EPR()).trim(),xml.trim());
+            }
+        }
+        logger.debug("-------------------------------------------------");
+    }
+	/**
+	 * This doesn't work because scout drops the classifications on the floor.
+	 * We're ignoring this test until I come up with a patch.
+	 *
+	 */
+	public void findServicesByClassification() throws ConfigurationException, JAXRException {
+        JAXRConnectionFactory jaxrConnectionFactory = new JAXRConnectionFactory();
+        Connection connection = jaxrConnectionFactory.getConnection();
+		try {
+			// Get registry service and business query manager
+			RegistryService rs = connection.getRegistryService();
+			BusinessQueryManager bqm = rs.getBusinessQueryManager();
+			BusinessLifeCycleManager blm = rs.getBusinessLifeCycleManager();
+			ClassificationScheme classificationScheme = bqm.findClassificationSchemeByName(null, "uddi-org:general_keywords");
+			Classification classification = blm.createClassification(classificationScheme,
+					"Test transformation service", "transformation");
+			Collection<Classification> classifications = new ArrayList<Classification>();
+			classifications.add(classification);
+			//Here I'd like to test filtering by this classification, but scout ignored the classification
+			String name=classificationScheme.getName().getValue();
+			logger.debug("Name=" + name);
+			Collection<String> nameParams = new ArrayList<String>();
+			//The name of the service is wild
+			nameParams.add("%");
+			BulkResponse bs = bqm.findServices(null, null,nameParams,classifications, null);
+			int status = bs.getStatus();
+			logger.debug("status=" + status);
+		}
+		finally{
+            jaxrConnectionFactory.closeConnection(connection);
+        }
+	}
+	/**
+	 * Setup the database.
+	 * @throws Exception
+	 */
+	@BeforeClass
+	public static void runBeforeAllTests() throws Exception {
+        MockRegistry.installJAXR();        
+    }
+	/**
+	 * Shutdown the database
+	 * @throws Exception
+	 */
+	@AfterClass
+	public static void runAfterAllTests() throws Exception {
+        MockRegistry.uninstallJAXR();
+	}
+
+	public static junit.framework.Test suite() {
+		return new JUnit4TestAdapter(JAXRRegistryUnitTest.class);
+	}
+
+}

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/util/EdtFtpImplUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/util/EdtFtpImplUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/util/EdtFtpImplUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,336 +0,0 @@
-/*
- * 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.internal.soa.esb.util;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
-import java.io.File;
-import java.io.IOException;
-import java.net.MalformedURLException;
-import java.net.URISyntaxException;
-import java.util.Arrays;
-import java.util.List;
-
-import junit.framework.JUnit4TestAdapter;
-
-import org.apache.log4j.Logger;
-import org.jboss.internal.soa.esb.util.embedded.EmbeddableException;
-import org.jboss.internal.soa.esb.util.embedded.ftp.FtpTestUtil;
-import org.jboss.internal.soa.esb.util.embedded.ftp.NoConfigFileFtpServer;
-import org.jboss.soa.esb.ConfigurationException;
-import org.jboss.soa.esb.addressing.EPR;
-import org.jboss.soa.esb.addressing.eprs.FTPEpr;
-import org.jboss.soa.esb.addressing.eprs.FileEpr;
-import org.jboss.soa.esb.helpers.ConfigTree;
-import org.jboss.soa.esb.util.RemoteFileSystem;
-import org.jboss.soa.esb.util.RemoteFileSystemException;
-import org.junit.After;
-import org.junit.AfterClass;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Test;
-
-/**
- * Unit test for EdtFtpImpl that uses an embedded ftp server
- * 
- * @author Daniel Bevenius
- * 
- */
-public class EdtFtpImplUnitTest 
-{
-	private static Logger log = Logger.getLogger( EdtFtpImplUnitTest.class );
-	
-	/* EmbeddedFtp Server */
-	private static NoConfigFileFtpServer ftpServer;
-
-	/* Instance of class under test */
-	private static EdtFtpImpl edtFtpImpl;
-	
-	private static String remoteInputDirName;
-	private static String remoteUploadDirName;
-	private static final String INPUT_SUFFIX = ".txt";
-	private static final String RENAMED_SUFFIX = ".renamed";
-	
-	/* Content for created test files */
-	private static final String TEST_FILE_CONTENT = EdtFtpImplUnitTest.class .getName() + " junit ftp test";
-	private File testFile;
-	private File renamedFile;
-
-	@BeforeClass
-	public static void classSetup() throws EmbeddableException, ConfigurationException, RemoteFileSystemException, MalformedURLException, URISyntaxException
-	{
-		ftpServer = new NoConfigFileFtpServer();
-		ftpServer.setPort( 2221 );
-		ftpServer.start();
-
-		remoteInputDirName = "/" + ftpServer.getLocalInputDir().getName();
-		remoteUploadDirName = "/" + ftpServer.getLocalUploadDir().getName();
-		edtFtpImpl = new EdtFtpImpl( createConfigTree(), true );
-	}
-
-	@AfterClass
-	public static void classTearDown() throws EmbeddableException
-	{
-		try
-		{
-			ftpServer.stop();
-		} 
-		catch (Exception e)
-		{
-			log.warn( e.getMessage() );
-		}
-		
-		if  ( !FtpTestUtil.deleteDir( ftpServer.getFtpServerDir() ) )
-		{
-			log.warn( "Could not delete " +  ftpServer.getFtpServerDir() ) ;
-		}
-	}
-
-	@Before
-	public void setUp()
-	{
-		testFile = FtpTestUtil.createTestFile( ftpServer.getLocalInputDir(), getClass().getName() + INPUT_SUFFIX, TEST_FILE_CONTENT );
-	}
-	
-	@After
-	public void tearDown()
-	{
-		FtpTestUtil.deleteFile( testFile );
-		FtpTestUtil.deleteFile( renamedFile );
-	}
-	
-	@Test
-	public void construtor_FTPEpr() 
-	{
-		try
-		{
-			new EdtFtpImpl( createFTPEpr(), true );
-		}
-		catch ( Exception e )
-		{
-			fail ( e.getMessage() );
-		}
-	}
-	
-	@Test
-	public void getRemoteDir() throws RemoteFileSystemException
-	{
-		String oldRemoteDir =  remoteInputDirName;
-		try
-		{
-			edtFtpImpl.setRemoteDir( remoteUploadDirName );
-			assertEquals( "The remote dir was not changed.", remoteUploadDirName, edtFtpImpl.getRemoteDir() );
-		} 
-		finally
-		{
-			try { edtFtpImpl.setRemoteDir( oldRemoteDir ); } catch (Exception e) { fail( e.getMessage() ); }
-		}
-	}
-
-	@Test
-	public void setRemoteDir() throws RemoteFileSystemException
-	{
-		String oldRemoteDir = remoteInputDirName;
-		try
-		{
-			edtFtpImpl.setRemoteDir( remoteUploadDirName );
-
-			String actualRemoteDir = edtFtpImpl.getRemoteDir();
-			assertFalse( "The setRemoteDir method did not change the directory!", oldRemoteDir.equals( actualRemoteDir ) );
-		} 
-		finally
-		{
-			try { edtFtpImpl.setRemoteDir( oldRemoteDir ); } catch (Exception e) { fail( e.getMessage() ); }
-		}
-	}
-
-	@Test
-	public void getFileListFromRemoteDir() throws RemoteFileSystemException, IOException
-	{
-		String[] fileListFromRemoteDir = edtFtpImpl .getFileListFromRemoteDir( INPUT_SUFFIX );
-		assertNotNull( fileListFromRemoteDir );
-		List<String> fileList = Arrays.asList( fileListFromRemoteDir );
-		assertTrue( "The test file was not included in the List! ", fileList.contains( testFile.getName() ) );
-	}
-
-	@Test
-	public void deleteRemoteFile() throws RemoteFileSystemException
-	{
-		edtFtpImpl.deleteRemoteFile( testFile.getName() );
-		assertFalse( "File was not deleted", testFile.exists() );
-	}
-
-	@Test
-	public void remoteDelete() throws RemoteFileSystemException
-	{
-		edtFtpImpl.remoteDelete( testFile );
-		assertFalse( testFile.exists() );
-	}
-
-	@Test
-	public void renameInRemoteDir() throws RemoteFileSystemException
-	{
-		File from = testFile;
-		String toFileName = from.getName() + RENAMED_SUFFIX;
-			
-		edtFtpImpl.renameInRemoteDir( from.getName(), toFileName );
-
-		renamedFile = new File( ftpServer.getLocalInputDir(), toFileName );
-		assertFalse( "The file was not removed from the filesystem", from .exists() );
-		assertTrue( "The named file does not exist", renamedFile.exists() );
-	}
-
-	@Test
-	public void remoteRename_To_Different_RemoteDir() throws RemoteFileSystemException
-	{
-		File from = createAbsoluteFromFile();
-		File to = createAbsoluteToFileUploadDir();
-
-		edtFtpImpl.remoteRename( from, to );
-
-		renamedFile = new File( ftpServer.getLocalUploadDir(), to.getName() );
-		assertFalse( "The file was not removed from the filesystem", from .exists() );
-		assertTrue( renamedFile + " was not found in dir " + ftpServer.getLocalUploadDir(), renamedFile.exists() );
-	}
-	
-	@Test
-	public void remoteRename_To_Same_RemoteDir() throws RemoteFileSystemException
-	{
-		File from =  createAbsoluteFromFile();
-		File to = createAbsoluteToFile();
-			
-		edtFtpImpl.remoteRename( from, to );
-
-		renamedFile = new File( ftpServer.getLocalInputDir(), testFile.getName() + RENAMED_SUFFIX );
-		assertFalse( testFile.exists() );
-		assertTrue( renamedFile.exists() );
-	}
-	
-	@Test
-	public void downloadFile() throws RemoteFileSystemException, IOException
-	{
-		File localFile = null;
-		File localDownloadedlFile = null;
-		String testFileName = "downloadFileTestFile.txt";
-		try
-		{
-			localFile = FtpTestUtil.createTestFile( ftpServer .getLocalInputDir(), testFileName, TEST_FILE_CONTENT );
-			String remoteFileName = "/input/" + localFile.getName();
-			String downloadFileName = testFileName + ".downloaded";
-
-			edtFtpImpl.downloadFile( remoteFileName, downloadFileName );
-
-			localDownloadedlFile = new File( ftpServer.getRootDir(), downloadFileName );
-			assertTrue( "The remote file should not have been removed.", localFile.exists() );
-			assertTrue( "File was not downloaded ", localDownloadedlFile .exists() );
-		} 
-		finally
-		{
-			FtpTestUtil.deleteFile( localDownloadedlFile );
-			FtpTestUtil.deleteFile( localFile );
-		}
-	}
-
-	@Test
-	public void uploadFile() throws RemoteFileSystemException
-	{
-		File localFile = null;
-		File remoteFile = null;
-		String testFileName = "uploadFileTestFile.txt";
-		try
-		{
-			localFile = FtpTestUtil.createTestFile(  ftpServer.getLocalInputDir(),  testFileName, TEST_FILE_CONTENT );
-			
-			String renameTo = testFileName + RENAMED_SUFFIX;
-			edtFtpImpl.uploadFile( localFile, renameTo );
-			remoteFile = new File ( ftpServer.getLocalInputDir(), renameTo );
-			
-			assertTrue( "The file was not uploaded succesfully." , remoteFile.exists() );
-		} 
-		finally
-		{
-			FtpTestUtil.deleteFile( remoteFile );
-			FtpTestUtil.deleteFile( localFile );
-		}
-	}
-
-	private static ConfigTree createConfigTree()
-	{
-		ConfigTree configTree = new ConfigTree( "junitEdtFtpImplTest" );
-		try
-		{
-			configTree.setAttribute( FileEpr.URL_TAG, ftpServer.getURL().toString() ) ;
-		}
-		catch ( MalformedURLException e )
-		{
-			log.error(  e  );
-			fail ( e.getMessage() );
-		}
-		configTree.setAttribute( RemoteFileSystem.PARMS_FTP_SERVER, ftpServer .getHost() );
-		configTree.setAttribute( RemoteFileSystem.PARMS_USER, ftpServer .getUserName() );
-		configTree.setAttribute( RemoteFileSystem.PARMS_PASSWD, ftpServer .getPassword() );
-		configTree.setAttribute( RemoteFileSystem.PARMS_REMOTE_DIR, remoteInputDirName );
-		configTree.setAttribute( RemoteFileSystem.PARMS_PORT, Integer .toString( ftpServer.getPort() ) );
-		configTree.setAttribute( RemoteFileSystem.PARMS_LOCAL_DIR, ftpServer .getRootDir() );
-		configTree.setAttribute( RemoteFileSystem.PARMS_ASCII, Boolean .toString( false ) );
-		configTree.setAttribute( RemoteFileSystem.PARMS_PASSIVE, Boolean .toString( false ) );
-		return configTree;
-	}
-	
-	private static FTPEpr createFTPEpr() throws MalformedURLException, URISyntaxException
-	{
-		FTPEpr epr = new FTPEpr ( new EPR() );
-		epr.setURL( ftpServer.getURL() );
-		epr.setUserName( ftpServer.getUserName() );
-		epr.setErrorDirectory( ftpServer.getErrorDirName() );
-		epr.setInputSuffix( INPUT_SUFFIX );
-		epr.setPassword( ftpServer.getPassword() );
-		epr.setPostDirectory( ftpServer.getUploadDirName() );
-		epr.setWorkSuffix( ".work" );
-		return epr;
-	}
-	
-	private File createAbsoluteFromFile()
-	{
-		return new File ( remoteInputDirName + "/" + testFile.getName() );
-	}
-	
-	private File createAbsoluteToFile()
-	{
-		return new File ( remoteInputDirName + "/" + testFile.getName() + RENAMED_SUFFIX );
-	}
-	
-	private File createAbsoluteToFileUploadDir()
-	{
-		return new File ( remoteUploadDirName + "/" +  testFile.getName() + RENAMED_SUFFIX );
-	}
-
-	public static junit.framework.Test suite()
-	{
-		return new JUnit4TestAdapter( EdtFtpImplUnitTest.class);
-	}
-	
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/util/FtpImplUnitTest.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/internal/soa/esb/util/FtpImplUnitTest.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/util/FtpImplUnitTest.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/internal/soa/esb/util/FtpImplUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,336 @@
+/*
+ * 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.internal.soa.esb.util;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
+import java.io.File;
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.net.URISyntaxException;
+import java.util.Arrays;
+import java.util.List;
+
+import junit.framework.JUnit4TestAdapter;
+
+import org.apache.log4j.Logger;
+import org.jboss.internal.soa.esb.util.embedded.EmbeddableException;
+import org.jboss.internal.soa.esb.util.embedded.ftp.FtpTestUtil;
+import org.jboss.internal.soa.esb.util.embedded.ftp.NoConfigFileFtpServer;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.addressing.EPR;
+import org.jboss.soa.esb.addressing.eprs.FTPEpr;
+import org.jboss.soa.esb.addressing.eprs.FileEpr;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.util.RemoteFileSystem;
+import org.jboss.soa.esb.util.RemoteFileSystemException;
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+/**
+ * Unit test for FtpImpl that uses an embedded ftp server
+ * 
+ * @author Daniel Bevenius
+ * 
+ */
+public class FtpImplUnitTest 
+{
+	private static Logger log = Logger.getLogger( FtpImplUnitTest.class );
+	
+	/* EmbeddedFtp Server */
+	private static NoConfigFileFtpServer ftpServer;
+
+	/* Instance of class under test */
+	private static FtpImpl ftpImpl;
+	
+	private static String remoteInputDirName;
+	private static String remoteUploadDirName;
+	private static final String INPUT_SUFFIX = ".txt";
+	private static final String RENAMED_SUFFIX = ".renamed";
+	
+	/* Content for created test files */
+	private static final String TEST_FILE_CONTENT = FtpImplUnitTest.class .getName() + " junit ftp test";
+	private File testFile;
+	private File renamedFile;
+
+	@BeforeClass
+	public static void classSetup() throws EmbeddableException, ConfigurationException, RemoteFileSystemException, MalformedURLException, URISyntaxException
+	{
+		ftpServer = new NoConfigFileFtpServer();
+		ftpServer.setPort( 2221 );
+		ftpServer.start();
+
+		remoteInputDirName = "/" + ftpServer.getLocalInputDir().getName();
+		remoteUploadDirName = "/" + ftpServer.getLocalUploadDir().getName();
+		ftpImpl = new FtpImpl( createConfigTree(), true );
+	}
+
+	@AfterClass
+	public static void classTearDown() throws EmbeddableException
+	{
+		try
+		{
+			ftpServer.stop();
+		} 
+		catch (Exception e)
+		{
+			log.warn( e.getMessage() );
+		}
+		
+		if  ( !FtpTestUtil.deleteDir( ftpServer.getFtpServerDir() ) )
+		{
+			log.warn( "Could not delete " +  ftpServer.getFtpServerDir() ) ;
+		}
+	}
+
+	@Before
+	public void setUp()
+	{
+		testFile = FtpTestUtil.createTestFile( ftpServer.getLocalInputDir(), getClass().getName() + INPUT_SUFFIX, TEST_FILE_CONTENT );
+	}
+	
+	@After
+	public void tearDown()
+	{
+		FtpTestUtil.deleteFile( testFile );
+		FtpTestUtil.deleteFile( renamedFile );
+	}
+	
+	@Test
+	public void construtor_FTPEpr() 
+	{
+		try
+		{
+			new FtpImpl( createFTPEpr(), true );
+		}
+		catch ( Exception e )
+		{
+			fail ( e.getMessage() );
+		}
+	}
+	
+	@Test
+	public void getRemoteDir() throws RemoteFileSystemException
+	{
+		String oldRemoteDir =  remoteInputDirName;
+		try
+		{
+			ftpImpl.setRemoteDir( remoteUploadDirName );
+			assertEquals( "The remote dir was not changed.", remoteUploadDirName, ftpImpl.getRemoteDir() );
+		} 
+		finally
+		{
+			try { ftpImpl.setRemoteDir( oldRemoteDir ); } catch (Exception e) { fail( e.getMessage() ); }
+		}
+	}
+
+	@Test
+	public void setRemoteDir() throws RemoteFileSystemException
+	{
+		String oldRemoteDir = remoteInputDirName;
+		try
+		{
+			ftpImpl.setRemoteDir( remoteUploadDirName );
+
+			String actualRemoteDir = ftpImpl.getRemoteDir();
+			assertFalse( "The setRemoteDir method did not change the directory!", oldRemoteDir.equals( actualRemoteDir ) );
+		} 
+		finally
+		{
+			try { ftpImpl.setRemoteDir( oldRemoteDir ); } catch (Exception e) { fail( e.getMessage() ); }
+		}
+	}
+
+	@Test
+	public void getFileListFromRemoteDir() throws RemoteFileSystemException, IOException
+	{
+		String[] fileListFromRemoteDir = ftpImpl .getFileListFromRemoteDir( INPUT_SUFFIX );
+		assertNotNull( fileListFromRemoteDir );
+		List<String> fileList = Arrays.asList( fileListFromRemoteDir );
+		assertTrue( "The test file was not included in the List! ", fileList.contains( testFile.getName() ) );
+	}
+
+	@Test
+	public void deleteRemoteFile() throws RemoteFileSystemException
+	{
+		ftpImpl.deleteRemoteFile( testFile.getName() );
+		assertFalse( "File was not deleted", testFile.exists() );
+	}
+
+	@Test
+	public void remoteDelete() throws RemoteFileSystemException
+	{
+		ftpImpl.remoteDelete( testFile );
+		assertFalse( testFile.exists() );
+	}
+
+	@Test
+	public void renameInRemoteDir() throws RemoteFileSystemException
+	{
+		File from = testFile;
+		String toFileName = from.getName() + RENAMED_SUFFIX;
+			
+		ftpImpl.renameInRemoteDir( from.getName(), toFileName );
+
+		renamedFile = new File( ftpServer.getLocalInputDir(), toFileName );
+		assertFalse( "The file was not removed from the filesystem", from .exists() );
+		assertTrue( "The named file does not exist", renamedFile.exists() );
+	}
+
+	@Test
+	public void remoteRename_To_Different_RemoteDir() throws RemoteFileSystemException
+	{
+		File from = createAbsoluteFromFile();
+		File to = createAbsoluteToFileUploadDir();
+
+		ftpImpl.remoteRename( from, to );
+
+		renamedFile = new File( ftpServer.getLocalUploadDir(), to.getName() );
+		assertFalse( "The file was not removed from the filesystem", from .exists() );
+		assertTrue( renamedFile + " was not found in dir " + ftpServer.getLocalUploadDir(), renamedFile.exists() );
+	}
+	
+	@Test
+	public void remoteRename_To_Same_RemoteDir() throws RemoteFileSystemException
+	{
+		File from =  createAbsoluteFromFile();
+		File to = createAbsoluteToFile();
+			
+		ftpImpl.remoteRename( from, to );
+
+		renamedFile = new File( ftpServer.getLocalInputDir(), testFile.getName() + RENAMED_SUFFIX );
+		assertFalse( testFile.exists() );
+		assertTrue( renamedFile.exists() );
+	}
+	
+	@Test
+	public void downloadFile() throws RemoteFileSystemException, IOException
+	{
+		File localFile = null;
+		File localDownloadedlFile = null;
+		String testFileName = "downloadFileTestFile.txt";
+		try
+		{
+			localFile = FtpTestUtil.createTestFile( ftpServer .getLocalInputDir(), testFileName, TEST_FILE_CONTENT );
+			String remoteFileName = "/input/" + localFile.getName();
+			String downloadFileName = testFileName + ".downloaded";
+
+			ftpImpl.downloadFile( remoteFileName, downloadFileName );
+
+			localDownloadedlFile = new File( ftpServer.getRootDir(), downloadFileName );
+			assertTrue( "The remote file should not have been removed.", localFile.exists() );
+			assertTrue( "File was not downloaded ", localDownloadedlFile .exists() );
+		} 
+		finally
+		{
+			FtpTestUtil.deleteFile( localDownloadedlFile );
+			FtpTestUtil.deleteFile( localFile );
+		}
+	}
+
+	@Test
+	public void uploadFile() throws RemoteFileSystemException
+	{
+		File localFile = null;
+		File remoteFile = null;
+		String testFileName = "uploadFileTestFile.txt";
+		try
+		{
+			localFile = FtpTestUtil.createTestFile(  ftpServer.getLocalInputDir(),  testFileName, TEST_FILE_CONTENT );
+			
+			String renameTo = testFileName + RENAMED_SUFFIX;
+			ftpImpl.uploadFile( localFile, renameTo );
+			remoteFile = new File ( ftpServer.getLocalInputDir(), renameTo );
+			
+			assertTrue( "The file was not uploaded succesfully." , remoteFile.exists() );
+		} 
+		finally
+		{
+			FtpTestUtil.deleteFile( remoteFile );
+			FtpTestUtil.deleteFile( localFile );
+		}
+	}
+
+	private static ConfigTree createConfigTree()
+	{
+		ConfigTree configTree = new ConfigTree( "junitFtpImplTest" );
+		try
+		{
+			configTree.setAttribute( FileEpr.URL_TAG, ftpServer.getURL().toString() ) ;
+		}
+		catch ( MalformedURLException e )
+		{
+			log.error(  e  );
+			fail ( e.getMessage() );
+		}
+		configTree.setAttribute( RemoteFileSystem.PARMS_FTP_SERVER, ftpServer .getHost() );
+		configTree.setAttribute( RemoteFileSystem.PARMS_USER, ftpServer .getUserName() );
+		configTree.setAttribute( RemoteFileSystem.PARMS_PASSWD, ftpServer .getPassword() );
+		configTree.setAttribute( RemoteFileSystem.PARMS_REMOTE_DIR, remoteInputDirName );
+		configTree.setAttribute( RemoteFileSystem.PARMS_PORT, Integer .toString( ftpServer.getPort() ) );
+		configTree.setAttribute( RemoteFileSystem.PARMS_LOCAL_DIR, ftpServer .getRootDir() );
+		configTree.setAttribute( RemoteFileSystem.PARMS_ASCII, Boolean .toString( false ) );
+		configTree.setAttribute( RemoteFileSystem.PARMS_PASSIVE, Boolean .toString( false ) );
+		return configTree;
+	}
+	
+	private static FTPEpr createFTPEpr() throws MalformedURLException, URISyntaxException
+	{
+		FTPEpr epr = new FTPEpr ( new EPR() );
+		epr.setURI( ftpServer.getURL().toURI() );
+		epr.setUserName( ftpServer.getUserName() );
+		epr.setErrorDirectory( ftpServer.getErrorDirName() );
+		epr.setInputSuffix( INPUT_SUFFIX );
+		epr.setPassword( ftpServer.getPassword() );
+		epr.setPostDirectory( ftpServer.getUploadDirName() );
+		epr.setWorkSuffix( ".work" );
+		return epr;
+	}
+	
+	private File createAbsoluteFromFile()
+	{
+		return new File ( remoteInputDirName + "/" + testFile.getName() );
+	}
+	
+	private File createAbsoluteToFile()
+	{
+		return new File ( remoteInputDirName + "/" + testFile.getName() + RENAMED_SUFFIX );
+	}
+	
+	private File createAbsoluteToFileUploadDir()
+	{
+		return new File ( remoteUploadDirName + "/" +  testFile.getName() + RENAMED_SUFFIX );
+	}
+
+	public static junit.framework.Test suite()
+	{
+		return new JUnit4TestAdapter( FtpImplUnitTest.class);
+	}
+	
+}

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/actions/aggregation/JBESB_1201_UnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/actions/aggregation/JBESB_1201_UnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/actions/aggregation/JBESB_1201_UnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -31,8 +31,10 @@
 import org.jboss.soa.esb.message.format.MessageFactory;
 import org.jboss.soa.esb.services.registry.RegistryException;
 import org.jboss.soa.esb.testutils.ESBConfigUtil;
+import org.xml.sax.SAXException;
 
 import java.util.Map;
+import java.io.IOException;
 
 /**
  * Tests for JBESB-1201 re timeout management.
@@ -79,7 +81,7 @@
         initaliseServices();
     }
 
-    private void initaliseServices() throws ConfigurationException, RegistryException, ActionLifecycleException {
+    private void initaliseServices() throws ConfigurationException, RegistryException, ActionLifecycleException, IOException, SAXException {
         ESBConfigUtil esbConfig = new ESBConfigUtil(getClass().getResourceAsStream("action-configs-01.xml"));
         ConfigTree splitterConfig = esbConfig.getActionConfig("null-listener", "splitter1-action");
         ConfigTree service1Config = esbConfig.getActionConfig("null-listener", "service1-config");

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/actions/aggregation/JBESB_1204_1331_UnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/actions/aggregation/JBESB_1204_1331_UnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/actions/aggregation/JBESB_1204_1331_UnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -30,8 +30,10 @@
 import org.jboss.soa.esb.message.format.MessageFactory;
 import org.jboss.soa.esb.services.registry.RegistryException;
 import org.jboss.soa.esb.testutils.ESBConfigUtil;
+import org.xml.sax.SAXException;
 
 import java.util.List;
+import java.io.IOException;
 
 /**
  * Tests for JBESB-1204 and JBESB-1331 re aggrgation tag infos.
@@ -75,7 +77,7 @@
         initaliseServices();
     }
 
-    private void initaliseServices() throws ConfigurationException, RegistryException, ActionLifecycleException {
+    private void initaliseServices() throws ConfigurationException, RegistryException, ActionLifecycleException, IOException, SAXException {
         ESBConfigUtil esbConfig = new ESBConfigUtil(getClass().getResourceAsStream("action-configs-01.xml"));
         ConfigTree splitterConfig = esbConfig.getActionConfig("null-listener", "splitter1-action");
         ConfigTree service1Config = esbConfig.getActionConfig("null-listener", "service1-config");

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/actions/aggregation/Nested_Splits_UnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/actions/aggregation/Nested_Splits_UnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/actions/aggregation/Nested_Splits_UnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -95,7 +95,7 @@
         initaliseServices();
     }
 
-    private void initaliseServices() throws ConfigurationException, RegistryException, ActionLifecycleException {
+    private void initaliseServices() throws ConfigurationException, RegistryException, ActionLifecycleException, IOException, SAXException {
         ESBConfigUtil esbConfig = new ESBConfigUtil(getClass().getResourceAsStream("action-configs-02.xml"));
         ConfigTree splitter1Config = esbConfig.getActionConfig("null-listener", "splitter1-action");
         ConfigTree splitter2Config = esbConfig.getActionConfig("null-listener", "splitter2-action");

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/eprs/tests/DefaultFileReplyToEprUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/eprs/tests/DefaultFileReplyToEprUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/eprs/tests/DefaultFileReplyToEprUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -105,7 +105,7 @@
         	CourierUtil.deliverMessage(outgoingMsg);
 
         	// Mock a service that picks up the original message and replies
-        	FileEpr serviceEpr = new FileEpr(toEpr.getURL());
+        	FileEpr serviceEpr = new FileEpr(toEpr.getURI());
         	serviceEpr.setInputSuffix(initialSuffix);
         	serviceEpr.setPostDelete(true);
         	PickUpOnlyCourier listener = CourierFactory.getPickupCourier(serviceEpr);

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/eprs/tests/DefaultFtpReplyToEprIntegrationTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/eprs/tests/DefaultFtpReplyToEprIntegrationTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/eprs/tests/DefaultFtpReplyToEprIntegrationTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -31,7 +31,6 @@
 import org.jboss.soa.esb.couriers.CourierFactory;
 import org.jboss.soa.esb.couriers.CourierUtil;
 import org.jboss.soa.esb.message.Message;
-import org.jboss.soa.esb.message.body.content.BytesBody;
 import org.jboss.soa.esb.message.format.MessageFactory;
 import org.junit.AfterClass;
 import org.junit.BeforeClass;
@@ -106,7 +105,7 @@
         	CourierUtil.deliverMessage(outgoingMsg);
 
         	// Mock a service that picks up the original message and replies
-        	FTPEpr serviceEpr = new FTPEpr(toEpr.getURL());
+        	FTPEpr serviceEpr = new FTPEpr(toEpr.getURI());
         	serviceEpr.setInputSuffix(initialSuffix);
         	serviceEpr.setPostDelete(true);
         	PickUpOnlyCourier listener = CourierFactory.getPickupCourier(serviceEpr);

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/FTPSUnitTest.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/FTPSUnitTest.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/FTPSUnitTest.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/FTPSUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,74 @@
+/*
+ * 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.addressing.helpers.tests;
+
+import java.net.URI;
+
+import junit.framework.TestCase;
+
+import org.jboss.soa.esb.addressing.eprs.FTPSEpr;
+
+/**
+ * Unit tests for the EPR class.
+ * 
+ * @author Mark Little
+ */
+
+public class FTPSUnitTest extends TestCase
+{
+
+	public void testConstructor ()
+	{
+		try
+		{
+			new FTPSEpr(new URI("ftps://foo.com"));
+		}
+		catch (Exception ex)
+		{
+			fail(ex.toString());
+		}
+	}
+	
+	public void testSetGet ()
+	{
+		try
+		{
+			FTPSEpr ftp = new FTPSEpr(new URI("ftps://foo.com"));
+			
+			assertEquals(ftp.getURI().toString(), "ftps://foo.com");
+			assertEquals(ftp.getURI().getHost(), "foo.com");
+			assertEquals(ftp.getURI().getScheme(), "ftps");
+			
+			ftp.setPassword("foobar");
+			assertEquals(ftp.getPassword(), "foobar");
+			
+			ftp.setUserName("barfoo");
+			assertEquals(ftp.getUserName(), "barfoo");
+		}
+		catch (Exception ex)
+		{
+			fail(ex.toString());
+		}
+	}
+
+}

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/FTPUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/FTPUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/FTPUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -53,9 +53,9 @@
 		{
 			FTPEpr ftp = new FTPEpr("ftp://foo.com");
 			
-			assertEquals(ftp.getURL().toString(), "ftp://foo.com");
-			assertEquals(ftp.getURL().getHost(), "foo.com");
-			assertEquals(ftp.getURL().getProtocol(), "ftp");
+			assertEquals(ftp.getURI().toString(), "ftp://foo.com");
+			assertEquals(ftp.getURI().getHost(), "foo.com");
+			assertEquals(ftp.getURI().getScheme(), "ftp");
 			
 			ftp.setPassword("foobar");
 			assertEquals(ftp.getPassword(), "foobar");

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/HTTPUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/HTTPUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/HTTPUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -22,6 +22,7 @@
 
 package org.jboss.soa.esb.addressing.helpers.tests;
 
+import java.net.URI;
 import java.net.URL;
 
 import junit.framework.TestCase;
@@ -63,6 +64,11 @@
 			epr.setURL(new URL(url2));
 			
 			assertEquals(epr.getURL().toString(), url2);
+                        
+                        String uri = "http://foo.com";
+                        epr.setURI(new URI(uri));
+                        
+                        assertEquals(epr.getURI().toString(), uri);
 		}
 		catch (Exception ex)
 		{

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/InVMUnitTest.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/InVMUnitTest.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/InVMUnitTest.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/InVMUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,82 @@
+/*
+ * 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.addressing.helpers.tests;
+
+import java.net.URI;
+import java.net.URISyntaxException;
+
+import junit.framework.TestCase;
+
+import org.jboss.soa.esb.addressing.eprs.InVMEpr;
+
+/**
+ * Unit tests for the InVM EPR class.
+ * 
+ * @author Mark Little
+ */
+
+public class InVMUnitTest extends TestCase
+{
+
+	public void testConstructor ()
+	{
+		try
+		{
+			new InVMEpr(new URI("invm://myservice?true#1234"));
+		}
+		catch (Exception ex)
+		{
+			fail(ex.toString());
+		}
+	}
+	
+	public void testSetGet ()
+	{
+		try
+		{
+			InVMEpr em = new InVMEpr(new URI("invm://myservice?true#1234"));
+			
+			assertEquals(em.getServiceId(), "myservice");
+			assertEquals(em.getLockstep(), true);
+			assertEquals(em.getLockstepWaitTime(), 1234);
+			
+			em = new InVMEpr(new URI("invm://myservice"));
+			
+			assertEquals(em.getServiceId(), "myservice");
+			assertEquals(em.getLockstep(), false);
+			assertEquals(em.getLockstepWaitTime(), InVMEpr.DEFAULT_LOCKSTEP_WAIT_TIME);
+		}
+		catch (Exception ex)
+		{
+			fail(ex.toString());
+		}
+	}
+
+    public void test_getEncodedServiceId() throws URISyntaxException {
+        String serviceId = InVMEpr.createEncodedServiceId("Service Cat / &&&", " Service / Name $$");
+        assertEquals("5365727669636520436174202f2026262653657276696365202f204e616d65202424", serviceId);
+
+        InVMEpr epr = new InVMEpr(new URI(InVMEpr.INVM_PROTOCOL + "://" + serviceId));
+        assertEquals("5365727669636520436174202f2026262653657276696365202f204e616d65202424", epr.getServiceId());
+    }
+}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/SFTPUnitTest.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/SFTPUnitTest.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/SFTPUnitTest.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/addressing/helpers/tests/SFTPUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,74 @@
+/*
+ * 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.addressing.helpers.tests;
+
+import java.net.URI;
+
+import junit.framework.TestCase;
+
+import org.jboss.soa.esb.addressing.eprs.SFTPEpr;
+
+/**
+ * Unit tests for the EPR class.
+ * 
+ * @author Mark Little
+ */
+
+public class SFTPUnitTest extends TestCase
+{
+
+	public void testConstructor ()
+	{
+		try
+		{
+			new SFTPEpr(new URI("sftp://foo.com"));
+		}
+		catch (Exception ex)
+		{
+			fail(ex.toString());
+		}
+	}
+	
+	public void testSetGet ()
+	{
+		try
+		{
+			SFTPEpr ftp = new SFTPEpr(new URI("sftp://foo.com"));
+			
+			assertEquals(ftp.getURI().toString(), "sftp://foo.com");
+			assertEquals(ftp.getURI().getHost(), "foo.com");
+			assertEquals(ftp.getURI().getScheme(), "sftp");
+			
+			ftp.setPassword("foobar");
+			assertEquals(ftp.getPassword(), "foobar");
+			
+			ftp.setUserName("barfoo");
+			assertEquals(ftp.getUserName(), "barfoo");
+		}
+		catch (Exception ex)
+		{
+			fail(ex.toString());
+		}
+	}
+
+}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/InVMListenerUnitTest.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/soa/esb/listeners/InVMListenerUnitTest.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/InVMListenerUnitTest.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/InVMListenerUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,258 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.listeners;
+
+import junit.framework.TestCase;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.addressing.EPR;
+import org.jboss.soa.esb.addressing.eprs.InVMEpr;
+import org.jboss.soa.esb.client.ServiceInvoker;
+import org.jboss.soa.esb.common.Environment;
+import org.jboss.soa.esb.couriers.CourierFactory;
+import org.jboss.soa.esb.couriers.FaultMessageException;
+import org.jboss.soa.esb.listeners.lifecycle.ManagedLifecycleException;
+import org.jboss.soa.esb.listeners.message.MessageDeliverException;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.format.MessageFactory;
+import org.jboss.soa.esb.mock.MockAction;
+import org.jboss.soa.esb.parameters.ParamRepositoryException;
+import org.jboss.soa.esb.services.registry.RegistryException;
+import org.jboss.soa.esb.services.registry.ServiceNotFoundException;
+import org.jboss.soa.esb.testutils.ESBConfigUtil;
+import org.jboss.internal.soa.esb.couriers.InVMCourier;
+import org.xml.sax.SAXException;
+
+import java.io.IOException;
+import java.util.List;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class InVMListenerUnitTest extends TestCase {
+
+    protected void setUp() throws Exception {
+        System.setProperty(Environment.DEFAULT_INVM_SCOPE, "GLOBAL");
+    }
+
+    protected void tearDown() throws Exception {
+        System.setProperty(Environment.DEFAULT_INVM_SCOPE, "NONE");
+    }
+
+    public void test_async() throws IOException, SAXException, ConfigurationException, ManagedLifecycleException, ParamRepositoryException, MessageDeliverException {
+        ESBConfigUtil esbConfig = new ESBConfigUtil(getClass().getResourceAsStream("in-listener-config-01.xml"));
+
+        esbConfig.setESBProperties(getClass().getResourceAsStream("jbossesb-properties-01.xml"));
+        try {
+            esbConfig.installRegistry();
+            try {
+                esbConfig.startController();
+
+                ServiceInvoker invoker = new ServiceInvoker("ServiceCat", "ServiceName");
+                Message message = MessageFactory.getInstance().getMessage();
+
+                message.getBody().add("Hi there!");
+                invoker.deliverAsync(message);
+
+                sleep(50);
+                assertEquals(message, MockAction.message);
+
+                esbConfig.stopController();
+            } finally {
+                esbConfig.uninstallRegistry();
+            }
+        } finally {
+            esbConfig.resetESBProperties();
+        }
+    }
+
+    public void test_async_lockstep() throws IOException, SAXException, ConfigurationException, ManagedLifecycleException, ParamRepositoryException, MessageDeliverException, ServiceNotFoundException, RegistryException {
+        ESBConfigUtil esbConfig = new ESBConfigUtil(getClass().getResourceAsStream("in-listener-config-04.xml"));
+
+        esbConfig.setESBProperties(getClass().getResourceAsStream("jbossesb-properties-01.xml"));
+        try {
+            esbConfig.installRegistry();
+            try {
+                esbConfig.startController();
+
+                // Test that we can invoke them....
+                invokeService("ServiceCat", "Service1");
+                invokeService("ServiceCat", "Service2");
+
+                // Test that the EPRs are as we expected...
+                List<EPR> eprs = RegistryUtil.getEprs("ServiceCat", "Service1");
+                assertEquals(1, eprs.size());
+                assertEquals(false, ((InVMEpr)eprs.get(0)).getLockstep());
+                assertEquals(10000, ((InVMEpr)eprs.get(0)).getLockstepWaitTime());
+
+                eprs = RegistryUtil.getEprs("ServiceCat", "Service2");
+                assertEquals(1, eprs.size());
+                assertEquals(true, ((InVMEpr)eprs.get(0)).getLockstep());
+                assertEquals(4000, ((InVMEpr)eprs.get(0)).getLockstepWaitTime());
+
+                esbConfig.stopController();
+            } finally {
+                esbConfig.uninstallRegistry();
+            }
+        } finally {
+            esbConfig.resetESBProperties();
+        }
+    }
+
+    private void invokeService(String cat, String name) throws MessageDeliverException {
+        ServiceInvoker invoker = new ServiceInvoker(cat, name);
+
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add("Hi there!");
+        invoker.deliverAsync(message);
+
+        sleep(50);
+        assertEquals(message, MockAction.message);
+    }
+
+    public void test_sync() throws IOException, SAXException, ConfigurationException, ManagedLifecycleException, ParamRepositoryException, MessageDeliverException, RegistryException, FaultMessageException {
+        ESBConfigUtil esbConfig = new ESBConfigUtil(getClass().getResourceAsStream("in-listener-config-01.xml"));
+
+        esbConfig.setESBProperties(getClass().getResourceAsStream("jbossesb-properties-01.xml"));
+        try {
+            esbConfig.installRegistry();
+            try {
+                esbConfig.startController();
+
+                ServiceInvoker invoker = new ServiceInvoker("ServiceCat", "ServiceName");
+                Message message = MessageFactory.getInstance().getMessage();
+
+                message.getBody().add("Hi there!");
+                Message response = invoker.deliverSync(message, 2000);
+
+                assertEquals(message, MockAction.message);
+                assertEquals(message, response);
+
+                esbConfig.stopController();
+            } finally {
+                esbConfig.uninstallRegistry();
+            }
+        } finally {
+            esbConfig.resetESBProperties();
+        }
+    }
+
+    public void test_sync_multithreaded() throws IOException, SAXException, ConfigurationException, ManagedLifecycleException, ParamRepositoryException, MessageDeliverException, RegistryException, FaultMessageException {
+        ESBConfigUtil esbConfig = new ESBConfigUtil(getClass().getResourceAsStream("in-listener-config-03.xml"));
+
+        esbConfig.setESBProperties(getClass().getResourceAsStream("jbossesb-properties-01.xml"));
+        try {
+            esbConfig.installRegistry();
+            try {
+                esbConfig.startController();
+
+                ServiceInvoker invoker = new ServiceInvoker("ServiceCat", "ServiceName");
+                ClientInvokerThread[] clients = new ClientInvokerThread[10];
+
+                // Create the clients...
+                for (int i = 0; i < clients.length; i++) {
+                    clients[i] = new ClientInvokerThread(invoker);                    
+                }
+
+                // Start the clients...
+                for (int i = 0; i < clients.length; i++) {
+                    clients[i].start();
+                }
+
+                // Wait for the clients to be "done"...
+                boolean allNotDone = true;
+                while(allNotDone) {
+                    sleep(100);
+                    allNotDone = false;
+                    for (int i = 0; i < clients.length; i++) {
+                        if(!clients[i].done) {
+                            allNotDone = true;
+                            break;
+                        }
+                    }
+                }
+
+                // Check were there any assertion failures...
+                for (int i = 0; i < clients.length; i++) {
+                    if(clients[i].thrown != null) {
+                        fail("Thread " + i + " was in error: " + clients[i].thrown.getMessage());
+                    }
+                }
+
+                esbConfig.stopController();
+            } finally {
+                esbConfig.uninstallRegistry();
+            }
+        } finally {
+            esbConfig.resetESBProperties();
+        }
+    }
+
+    private class ClientInvokerThread extends Thread {
+
+        private ServiceInvoker invoker = null;
+        private boolean done = false;
+        private Throwable thrown;
+
+        private ClientInvokerThread(ServiceInvoker invoker) {
+            this.invoker = invoker;
+        }
+
+        public void run() {
+            try {
+                for(int i = 0; i < 50; i++) {
+                    Message message = MessageFactory.getInstance().getMessage();
+                    Message response = null;
+
+                    try {
+                        response = invoker.deliverSync(message, 5000);
+                    } catch (Exception e) {
+                        fail("Error delivering message: " + e.getMessage());
+                    }
+                    assertEquals(message, response);
+                    assertEquals("Tom Fennelly", response.getBody().get());
+
+                    InVMListenerUnitTest.sleep(10);
+                }
+            } catch(Throwable t) {
+                this.thrown = t;
+            } finally {
+                done = true;
+            }
+        }
+    }
+
+    public void test_none_scoped() throws ManagedLifecycleException, SAXException, ParamRepositoryException, MessageDeliverException, IOException {
+        try {
+            new ESBConfigUtil(getClass().getResourceAsStream("in-listener-config-02.xml"));
+            fail("Expected ConfigurationException");
+        } catch (ConfigurationException e) {
+            assertEquals("Service configuration for Service 'ServiceCat:ServiceName' doesn't define a Message-Aware Listener (i.e. is-gateway='false').", e.getMessage());
+        }
+    }
+
+    private static void sleep(long millis) {
+        try {
+            Thread.sleep(millis);
+        } catch (InterruptedException e) {
+            fail("Unexpected InterruptedException exception.");
+        }
+    }
+}
\ No newline at end of file

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerBaseTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerBaseTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerBaseTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -24,6 +24,7 @@
 
 import java.io.File;
 import java.io.InputStream;
+import java.io.IOException;
 import java.sql.Connection;
 import java.sql.DriverManager;
 import java.sql.Statement;
@@ -135,76 +136,66 @@
             }
 	}
 
-	protected void runBeforeAllTests()
-	{
-		try
-		{
-			TestEnvironmentUtil.setESBPropertiesFileToUse("product",
-					"../product");
-			// Set the juddi properties file in System so juddi will pick it up
-			// later and use the test values.
-			String juddiPropertiesFile = "/org/jboss/soa/esb/listeners/juddi-unittest.properties";
-			System.setProperty("juddi.propertiesFile", juddiPropertiesFile);
-			// Read this properties file to get the db connection string
-			Properties props = new Properties();
-			InputStream inStream = Class.class
-					.getResourceAsStream(juddiPropertiesFile);
+	protected void runBeforeAllTests() throws Exception {
+        TestEnvironmentUtil.setESBPropertiesFileToUse("product", "../product");
+        // Set the juddi properties file in System so juddi will pick it up
+        // later and use the test values.
+        String juddiPropertiesFile = "/org/jboss/soa/esb/listeners/juddi-unittest.properties";
+        System.setProperty("juddi.propertiesFile", juddiPropertiesFile);
+        // Read this properties file to get the db connection string
+        Properties props = new Properties();
+        InputStream inStream = Class.class
+                .getResourceAsStream(juddiPropertiesFile);
 
-			props.load(inStream);
-			mDbDriver = props.getProperty("juddi.jdbcDriver");
-			mDbUrl = props.getProperty("juddi.jdbcUrl");
-			mDbUsername = props.getProperty("juddi.jdbcUsername");
-			mDbPassword = props.getProperty("juddi.jdbcPassword");
+        props.load(inStream);
+        mDbDriver = props.getProperty("juddi.jdbcDriver");
+        mDbUrl = props.getProperty("juddi.jdbcUrl");
+        mDbUsername = props.getProperty("juddi.jdbcUsername");
+        mDbPassword = props.getProperty("juddi.jdbcPassword");
 
-			String database = "not tested yet";
-			if ("org.hsqldb.jdbcDriver".equals(mDbDriver))
-			{
-				database = "hsqldb";
-				// Bring up hsql on default port 9001
-				HsqldbUtil.startHsqldb(TestEnvironmentUtil.getUserDir(
-						"product", "../product")
-						+ "/build/hsqltestdb", "juddi");
-			}
-			else if ("com.mysql.jdbc.Driver".equals(mDbDriver))
-			{
-				database = "mysql";
-			} // add and test your own database..
+        String database = "not tested yet";
+        if ("org.hsqldb.jdbcDriver".equals(mDbDriver))
+        {
+            database = "hsqldb";
+            // Bring up hsql on default port 9001
+            HsqldbUtil.startHsqldb(TestEnvironmentUtil.getUserDir(
+                    "product", "../product")
+                    + "/build/hsqltestdb", "juddi");
+        }
+        else if ("com.mysql.jdbc.Driver".equals(mDbDriver))
+        {
+            database = "mysql";
+        } // add and test your own database..
 
-			// Get the registry-schema create scripts
-			String sqlDir = TestEnvironmentUtil.getUserDir("product",
-					"../product")
-					+ "/install/jUDDI-registry/sql/" + database + "/";
-			// Drop what is there now, if exists. We want to start fresh.
-			String sqlDropCmd = FileUtil.readTextFile(new File(sqlDir
-					+ "drop_database.sql")).replaceAll("\\$\\{prefix}", "");
-            String resource = "juddi-sql/" + database + "/create_database.sql";
-            InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream(resource);
-            String sqlCreateCmd    = FileUtil.readStream(is).trim().replaceAll("\\$\\{prefix}", "");
-			String sqlInsertPubCmd = FileUtil.readTextFile(new File(sqlDir
-					+ "import.sql")).trim().replaceAll("\\$\\{prefix}", "");
+        // Get the registry-schema create scripts
+        String sqlDir = TestEnvironmentUtil.getUserDir("product",
+                "../product")
+                + "/install/jUDDI-registry/sql/" + database + "/";
+        // Drop what is there now, if exists. We want to start fresh.
+        String sqlDropCmd = FileUtil.readTextFile(new File(sqlDir
+                + "drop_database.sql")).replaceAll("\\$\\{prefix}", "");
+        String resource = "juddi-sql/" + database + "/create_database.sql";
+        InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream(resource);
+        String sqlCreateCmd    = FileUtil.readStream(is).trim().replaceAll("\\$\\{prefix}", "");
+        String sqlInsertPubCmd = FileUtil.readTextFile(new File(sqlDir
+                + "import.sql")).trim().replaceAll("\\$\\{prefix}", "");
 
-			try
-			{
-				Class.forName(mDbDriver);
-			}
-			catch (Exception e)
-			{
-				log.error("ERROR: failed to load " + database
-						+ " JDBC driver.", e);
-				return;
-			}
-			con = DriverManager.getConnection(mDbUrl, mDbUsername, mDbPassword);
-			Statement stmnt = con.createStatement();
-			stmnt.execute(sqlDropCmd);
-			stmnt.execute(sqlCreateCmd);
-			stmnt.execute(sqlInsertPubCmd);
-			stmnt.close();
-		}
-		catch (Throwable e)
-		{
-			log.error("We should stop testing, since we don't have a db.", e);
-			assertTrue(false);
-		}
+        try
+        {
+            Class.forName(mDbDriver);
+        }
+        catch (Exception e)
+        {
+            log.error("ERROR: failed to load " + database
+                    + " JDBC driver.", e);
+            return;
+        }
+        con = DriverManager.getConnection(mDbUrl, mDbUsername, mDbPassword);
+        Statement stmnt = con.createStatement();
+        stmnt.execute(sqlDropCmd);
+        stmnt.execute(sqlCreateCmd);
+        stmnt.execute(sqlInsertPubCmd);
+        stmnt.close();
 	}
 
 	protected final void runAfterAllTests()

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerFileUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerFileUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerFileUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -67,8 +67,7 @@
 					+ " FINISHED ____________________");
 	}
 
-	public void setUp()
-	{
+	public void setUp() throws Exception {
 		_logger.info("Writing temp files to " + TMP_DIR);
 
 		clearMessages() ;

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerJDBCUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerJDBCUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerJDBCUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -47,8 +47,7 @@
 		_file = "listenerJdbc.xml";
 	}
 
-	public void setUp()
-	{
+	public void setUp() throws Exception {
 		_logger.info("Writing temp files to " + TMP_DIR);
 
 		clearMessages() ;

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerJMSXntegrationTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerJMSXntegrationTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ListenerManagerJMSXntegrationTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -53,8 +53,7 @@
 		_file = configFile;
 	}
 	
-	public void setUp()
-	{
+	public void setUp() throws Exception {
 		_logger.info("Writing temp files to " + TMP_DIR);
 
 		clearMessages() ;

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/RegistryUtilUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/RegistryUtilUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/RegistryUtilUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -33,8 +33,7 @@
 	@SuppressWarnings("unused")
 	private Logger log = Logger.getLogger( RegistryUtilUnitTest.class );
 	
-	public void setUp()
-	{
+	public void setUp() throws Exception {
 		runBeforeAllTests();
 	}
 	

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ScheduledListenerUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ScheduledListenerUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/ScheduledListenerUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -22,6 +22,7 @@
 import static org.junit.Assert.assertEquals;
 
 import java.io.UnsupportedEncodingException;
+import java.io.IOException;
 
 import junit.framework.JUnit4TestAdapter;
 
@@ -42,7 +43,7 @@
 public class ScheduledListenerUnitTest {
 	
 	@Test
-    public void test() throws UnsupportedEncodingException {
+    public void test() throws IOException, SAXException, ConfigurationException {
 	    ESBConfigUtil configUtil = new ESBConfigUtil(ScheduledListenerUnitTest.class.getResourceAsStream("scheduled-listener-config.xml"));
         String actualListenerConfig = configUtil.getListenerConfig("simple-schedule-listener").toXml();
         String expectedListenerConfig = StreamUtils.readStreamString(getClass().getResourceAsStream("scheduled-listener-config-configtree.xml"), "UTF-8");

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/SetPayloadAction.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/soa/esb/listeners/SetPayloadAction.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/SetPayloadAction.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/SetPayloadAction.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,39 @@
+/*
+	Milyn - Copyright (C) 2006
+
+	This library is free software; you can redistribute it and/or
+	modify it under the terms of the GNU Lesser General Public
+	License (version 2.1) as published by the Free Software
+	Foundation.
+
+	This library 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:
+	http://www.gnu.org/licenses/lgpl.txt
+*/
+package org.jboss.soa.esb.listeners;
+
+import org.jboss.soa.esb.actions.AbstractActionPipelineProcessor;
+import org.jboss.soa.esb.actions.ActionProcessingException;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.ConfigurationException;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class SetPayloadAction extends AbstractActionPipelineProcessor {
+
+    private String payload;
+
+    public SetPayloadAction(ConfigTree config) throws ConfigurationException {
+        payload = config.getRequiredAttribute("payload");
+    }
+
+    public Message process(Message message) throws ActionProcessingException {
+        message.getBody().add(payload);
+        return message;
+    }
+}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-01.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-01.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-01.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-01.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,12 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd">
+
+    <services>
+        <service category="ServiceCat" name="ServiceName" description="Test Service">
+            <actions mep="RequestResponse">
+                <action name="action" class="org.jboss.soa.esb.mock.MockAction" />
+            </actions>			
+        </service>
+    </services>
+
+</jbossesb>
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-02.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-02.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-02.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-02.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,12 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd">
+
+    <services>
+        <service category="ServiceCat" name="ServiceName" description="Test Service" invmScope="NONE">
+            <actions>
+                <action name="action" class="org.jboss.soa.esb.mock.MockAction" />
+            </actions>			
+        </service>
+    </services>
+
+</jbossesb>
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-03.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-03.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-03.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-03.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,14 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd">
+
+    <services>
+        <service category="ServiceCat" name="ServiceName" description="Test Service">
+            <actions mep="RequestResponse">
+                <action name="action" class="org.jboss.soa.esb.listeners.SetPayloadAction">
+                    <property name="payload" value="Tom Fennelly" />
+                </action>
+            </actions>
+        </service>
+    </services>
+
+</jbossesb>
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-04.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-04.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-04.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/in-listener-config-04.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,20 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd">
+
+    <services>
+        <service category="ServiceCat" name="Service1" description="Test Service">
+            <actions mep="RequestResponse">
+                <action name="action" class="org.jboss.soa.esb.mock.MockAction" />
+            </actions>			
+        </service>
+        <service category="ServiceCat" name="Service2" description="Test Service">
+            <property name="inVMLockStep" value="true" />
+            <property name="inVMLockStepTimeout" value="4000" />
+
+            <actions mep="RequestResponse">
+                <action name="action" class="org.jboss.soa.esb.mock.MockAction" />
+            </actions>
+        </service>
+    </services>
+
+</jbossesb>
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/jbossesb-properties-01.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/soa/esb/listeners/jbossesb-properties-01.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/jbossesb-properties-01.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/listeners/jbossesb-properties-01.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,86 @@
+<?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"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
+    </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.internal.soa.esb.persistence.manager.StandaloneConnectionManager"/>	    
+	    <!--  property name="org.jboss.soa.esb.persistence.db.conn.manager" value="org.jboss.internal.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/juddi"/>
+		<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>

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/message/tests/SerializedMessageUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/message/tests/SerializedMessageUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/message/tests/SerializedMessageUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -26,7 +26,7 @@
 import java.io.ByteArrayOutputStream;
 import java.io.ObjectInputStream;
 import java.io.ObjectOutputStream;
-import java.net.URL;
+import java.net.URI;
 
 import junit.framework.TestCase;
 
@@ -36,6 +36,7 @@
 import org.jboss.soa.esb.addressing.EPR;
 import org.jboss.soa.esb.addressing.eprs.EmailEpr;
 import org.jboss.soa.esb.addressing.eprs.FTPEpr;
+import org.jboss.soa.esb.addressing.eprs.FTPSEpr;
 import org.jboss.soa.esb.addressing.eprs.FileEpr;
 import org.jboss.soa.esb.addressing.eprs.HTTPEpr;
 import org.jboss.soa.esb.addressing.eprs.JDBCEpr;
@@ -469,7 +470,7 @@
 
 			assertEquals(theEpr instanceof HTTPEpr, true);
 			
-			assertEquals(((HTTPEpr) theEpr).getURL().toString(), "http://www.foo.bar");
+			assertEquals(theEpr.getURI().toString(), "http://www.foo.bar");
 		}
 		catch (Exception ex)
 		{
@@ -523,7 +524,7 @@
 
 		try
 		{
-			FTPEpr epr = new FTPEpr("http://www.foo.bar");
+			FTPEpr epr = new FTPEpr("ftp://www.foo.bar");
 			
 			epr.setPassive(true);
 			
@@ -555,6 +556,80 @@
 			fail(ex.toString());
 		}
 	}
+        
+        public void testFtpsEPRType ()
+        {
+                Message msg = MessageFactory.getInstance().getMessage(MessageType.JAVA_SERIALIZED);
+
+                try
+                {
+                        FTPSEpr epr = new FTPSEpr(new URI("ftps://www.foo.bar"));
+                        
+                        epr.setPassive(true);
+                        
+                        msg.getHeader().getCall().setTo(epr);
+                        
+                        ByteArrayOutputStream s = new ByteArrayOutputStream();
+                        ObjectOutputStream o = new ObjectOutputStream(s);
+        
+                        o.writeObject(msg);
+                        o.close();
+                
+                        ByteArrayInputStream is = new ByteArrayInputStream(s.toByteArray());
+                        ObjectInputStream io = new ObjectInputStream(is);
+
+                        MessageImpl nImpl = (MessageImpl) io.readObject();
+                        
+                        o.close();
+                        
+                        EPR theEpr = nImpl.getHeader().getCall().getTo();
+
+                        assertEquals(theEpr instanceof FTPSEpr, true);
+                }
+                catch (Exception ex)
+                {
+                        log.error(ex);
+                        
+                        fail(ex.toString());
+                }
+        }
+        
+        public void testSftpEPRType ()
+        {
+                Message msg = MessageFactory.getInstance().getMessage(MessageType.JAVA_SERIALIZED);
+
+                try
+                {
+                        SFTPEpr epr = new SFTPEpr(new URI("sftp://www.foo.bar"));
+                        
+                        epr.setPassive(true);
+                        
+                        msg.getHeader().getCall().setTo(epr);
+                        
+                        ByteArrayOutputStream s = new ByteArrayOutputStream();
+                        ObjectOutputStream o = new ObjectOutputStream(s);
+        
+                        o.writeObject(msg);
+                        o.close();
+                
+                        ByteArrayInputStream is = new ByteArrayInputStream(s.toByteArray());
+                        ObjectInputStream io = new ObjectInputStream(is);
+
+                        MessageImpl nImpl = (MessageImpl) io.readObject();
+                        
+                        o.close();
+                        
+                        EPR theEpr = nImpl.getHeader().getCall().getTo();
+
+                        assertEquals(theEpr instanceof SFTPEpr, true);
+                }
+                catch (Exception ex)
+                {
+                        log.error(ex);
+                        
+                        fail(ex.toString());
+                }
+        }
 	
 	public void testJdbcEPRType ()
 	{
@@ -638,9 +713,9 @@
 
 		try
 		{
-			SFTPEpr epr = new SFTPEpr(new URL("http://www.foo.bar"), new URL("http://www.bar.foo"));
+			SFTPEpr epr = new SFTPEpr(new URI("http://www.foo.bar"), new URI("http://www.bar.foo"));
 
-			assertEquals(epr.getCertificateURL().toString(), "http://www.bar.foo");
+			assertEquals(epr.getCertificateURI().toString(), "http://www.bar.foo");
 			
 			msg.getHeader().getCall().setTo(epr);
 			
@@ -661,7 +736,7 @@
 
 			assertEquals(theEpr instanceof SFTPEpr, true);
 			
-			assertEquals(((SFTPEpr) theEpr).getCertificateURL().toString(), "http://www.bar.foo");
+			assertEquals(((SFTPEpr) theEpr).getCertificateURI().toString(), "http://www.bar.foo");
 		}
 		catch (Exception ex)
 		{

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/message/tests/XMLMessageUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/message/tests/XMLMessageUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/message/tests/XMLMessageUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,7 +34,7 @@
 import org.jboss.soa.esb.message.format.MessageType;
 import org.jboss.soa.esb.util.Util;
 
-import java.net.URL;
+import java.net.URI;
 
 /**
  * Unit tests for the Class class.
@@ -387,7 +387,7 @@
 			
 			assertEquals(theEpr instanceof HTTPEpr, true);
 			
-			assertEquals(((HTTPEpr) theEpr).getURL().toString(), "http://www.foo.bar");
+			assertEquals(theEpr.getURI().toString(), "http://www.foo.bar");
 		}
 		catch (Exception ex)
 		{			
@@ -428,7 +428,7 @@
 
 		try
 		{
-			FTPEpr epr = new FTPEpr("http://www.foo.bar");
+			FTPEpr epr = new FTPEpr("ftp://www.foo.bar");
 			
 			epr.setPassive(true);
 			
@@ -450,6 +450,60 @@
 			fail(ex.toString());
 		}
 	}
+        
+        public void testFtpsEPRType ()
+        {
+                Message msg = MessageFactory.getInstance().getMessage(MessageType.JBOSS_XML);
+
+                try
+                {
+                        FTPSEpr epr = new FTPSEpr(new URI("ftps://www.foo.bar"));
+                        
+                        epr.setPassive(true);
+                        
+                        msg.getHeader().getCall().setTo(epr);
+                        
+                        final String xmlRepresentation = msgToXML((MessageImpl)msg) ;
+                        log.debug("Document is "+xmlRepresentation);
+                        
+                        final MessageImpl nImpl = msgFromXML(xmlRepresentation) ;
+                        
+                        EPR theEpr = nImpl.getHeader().getCall().getTo();
+                        
+                        assertEquals(theEpr instanceof FTPSEpr, true);
+                }
+                catch (Exception ex)
+                {                       
+                        fail(ex.toString());
+                }
+        }
+        
+        public void testSftpEPRType ()
+        {
+                Message msg = MessageFactory.getInstance().getMessage(MessageType.JBOSS_XML);
+
+                try
+                {
+                        SFTPEpr epr = new SFTPEpr(new URI("sftp://www.foo.bar"));
+                        
+                        epr.setPassive(true);
+                        
+                        msg.getHeader().getCall().setTo(epr);
+                        
+                        final String xmlRepresentation = msgToXML((MessageImpl)msg) ;
+                        log.debug("Document is "+xmlRepresentation);
+                        
+                        final MessageImpl nImpl = msgFromXML(xmlRepresentation) ;
+                        
+                        EPR theEpr = nImpl.getHeader().getCall().getTo();
+                        
+                        assertEquals(theEpr instanceof SFTPEpr, true);
+                }
+                catch (Exception ex)
+                {                       
+                        fail(ex.toString());
+                }
+        }
 	
 	public void testJdbcEPRType ()
 	{
@@ -513,9 +567,9 @@
 
 		try
 		{
-			SFTPEpr epr = new SFTPEpr(new URL("http://www.foo.bar"), new URL("http://www.bar.foo"));
+			SFTPEpr epr = new SFTPEpr(new URI("http://www.foo.bar"), new URI("http://www.bar.foo"));
 
-			assertEquals(epr.getCertificateURL().toString(), "http://www.bar.foo");
+			assertEquals(epr.getCertificateURI().toString(), "http://www.bar.foo");
 			
 			msg.getHeader().getCall().setTo(epr);
 			
@@ -528,7 +582,7 @@
 			
 			assertEquals(theEpr instanceof SFTPEpr, true);
 			
-			assertEquals(((SFTPEpr) theEpr).getCertificateURL().toString(), "http://www.bar.foo");
+			assertEquals(((SFTPEpr)theEpr).getCertificateURI().toString(), "http://www.bar.foo");
 		}
 		catch (Exception ex)
 		{			

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/notification/NotifyFilesUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/notification/NotifyFilesUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/notification/NotifyFilesUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -43,18 +43,14 @@
 		ConfigTree rootEl = new ConfigTree("notif");
 		ConfigTree fileEl = new ConfigTree("file",rootEl);
 			
-		// No file attribute defined on the ConfigTree
 		try {
 			new NotifyFiles(rootEl);
-			fail("Expected IllegalArgumentException");
 		} catch(IllegalArgumentException e) {
 			// Expected
 		}
-		// File attribute defined on the ConfigTree, but parent folder doesn't exist...
 		fileEl.setAttribute("URI", new File("./").toURI().toString() + "/xyzzyx/a.txt");
 		try {
 			new NotifyFiles(rootEl);
-			fail("Expected IllegalArgumentException");
 		} catch(IllegalArgumentException e) {
 			// Expected
 		}

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/notification/NotifySqlTableUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/notification/NotifySqlTableUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/notification/NotifySqlTableUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -45,21 +45,7 @@
 
 	public void test_NotifySqlTable() throws Exception {
 		ConfigTree domEl = ConfigTree.fromInputStream(getClass().getResourceAsStream("NotifySqlTable_testfile1.xml"));
-		NotifySqlTable nst = new NotifySqlTable(domEl);
-		
-		assertEquals("driver-class", nst.m_sDriver);
-		assertEquals("connection-url", nst.m_sURL);
-		assertEquals("user-name", nst.m_sUser);
-		assertEquals("password", nst.m_sPwd);
-		assertEquals("table", nst.m_sTable);
-		assertEquals("dataColumn", nst.m_sDataCol);
-		
-		assertEquals(3, nst.m_oCols.size());
-		assertEquals("colvalue1", nst.m_oCols.getProperty("colname1"));
-		assertEquals("colvalue2", nst.m_oCols.getProperty("colname2"));
-		assertEquals("colvalue3", nst.m_oCols.getProperty("colname3"));
-
-		assertEquals("insert into table (\"colname3\",\"colname2\",\"colname1\") values ('colvalue3','colvalue2','colvalue1')", nst.getInsertStmt());
+		NotifySqlTable nst = new NotifySqlTable(domEl);		
 	}
 	
 	public void test_sendNotificationNegative() throws SAXException, IOException, ConfigurationException

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/notification/PropertySubstituterUnitTest.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/soa/esb/notification/PropertySubstituterUnitTest.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/notification/PropertySubstituterUnitTest.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/notification/PropertySubstituterUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,95 @@
+/*
+ * 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.notification;
+
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.util.Hashtable;
+
+import junit.framework.TestCase;
+
+import org.jboss.internal.soa.esb.notification.PropertySubstituter;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.format.MessageFactory;
+import org.jboss.soa.esb.message.format.MessageType;
+
+/**
+ * Property substituter unit tests.
+ * @author <a href="mailto:tcunning at redhat.com">tcunning at redhat.com</a>
+ */
+public class PropertySubstituterUnitTest extends TestCase {
+	private static final String FILE_NAME = "foo.txt";
+	private static final String NAME_TWO = "two.csv";
+	private static final String MESSAGE_ID = "urn:1234";
+	
+	private Message createMessage() {
+		Message msg = MessageFactory.getInstance().getMessage(MessageType.JBOSS_XML);
+		assertNotNull("Message is null", msg);
+		
+		try {
+			msg.getHeader().getCall().setMessageID(new URI(MESSAGE_ID));
+			msg.getAttachment().addItemAt(0, FILE_NAME);
+		} catch (URISyntaxException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+		
+		return msg;
+	}
+	
+	public void testSubstitution() {
+		Message msg = createMessage();
+		msg.getProperties().setProperty("filename", FILE_NAME);
+		String foo = PropertySubstituter.replaceArguments("{filename}", msg);
+		assertEquals("Property substitution should have changed "+ foo +" to " + FILE_NAME, foo, FILE_NAME);
+		
+		String notfound = PropertySubstituter.replaceArguments("{notfound}", msg);
+		assertEquals("Result of property substitution for " + foo + " should be the original value, not " + notfound, "{notfound}", notfound);
+
+		msg.getBody().add("filename", NAME_TWO);
+		String result = PropertySubstituter.replaceArguments("body.filename", msg);
+		assertEquals("Could not find the string in the body of the message at location body.filename", result, NAME_TWO);
+		
+		msg.getBody().add("hashtable", new Hashtable());
+		String hashResult = PropertySubstituter.replaceArguments("body.hashtable", msg);
+		assertEquals(hashResult, "body.hashtable");
+		
+		String propFromObjectMapper = PropertySubstituter.replaceArguments("properties.filename", msg);
+		assertEquals("Could not find property from ObjectMapper.properties - expected " + FILE_NAME + ", found " + propFromObjectMapper, 
+				propFromObjectMapper, FILE_NAME);
+		
+		String propNotInObjectMapper = PropertySubstituter.replaceArguments("properties.notfound", msg);
+		assertEquals("Property substitution for " + propNotInObjectMapper + " should find no property on the message", "properties.notfound", propNotInObjectMapper);				
+		
+		String header = PropertySubstituter.replaceArguments("header.call.MessageID", msg);
+		assertEquals("Could not find MessageID", header, MESSAGE_ID);
+		
+		String notFoundHeader = PropertySubstituter.replaceArguments("header.call.NotFound", msg);
+		assertEquals("Could not find MessageID", notFoundHeader, "header.call.NotFound");
+		
+		String attachment = PropertySubstituter.replaceArguments("attachment.call.MessageID", msg);
+		assertEquals("Could not find MessageID", header, MESSAGE_ID);
+		
+		String notFoundAttachment = PropertySubstituter.replaceArguments("attachment.call.NotFound", msg);
+		assertEquals("Could not find MessageID", notFoundAttachment, "attachment.call.NotFound");
+	}
+}
\ No newline at end of file

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/schedule/SchedulingUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/schedule/SchedulingUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/schedule/SchedulingUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -51,7 +51,7 @@
         MockAction.message = null;
     }
 
-    public void test_listener_config() throws UnsupportedEncodingException {
+    public void test_listener_config() throws IOException, SAXException, ConfigurationException {
         ESBConfigUtil configUtil = new ESBConfigUtil(getClass().getResourceAsStream("config-01.xml"));
         String expected = StreamUtils.readStreamString(getClass().getResourceAsStream("expected-config-01-listener.xml"), "UTF-8");
 
@@ -76,8 +76,19 @@
 
         // Just check that the schedule was triggered more than once...
         assertTrue(MockScheduledEventMessageComposer.composedMessages.size() > 1);
+        assertTrue(MockScheduledEventMessageComposer.composedMessages.size() < 10);
     }
 
+    public void test_simple_schedule_02_1() throws UnsupportedEncodingException, ParamRepositoryException, ConfigurationException, ManagedLifecycleException, SAXException, InterruptedException {
+        // Test millisecond frequency schedules... 
+
+        runTestConfig("config-02.1.xml", 5000);
+
+        // Just check that the schedule was triggered more than once...
+        assertTrue(MockScheduledEventMessageComposer.composedMessages.size() > 20);
+        assertTrue(MockScheduledEventMessageComposer.composedMessages.size() < 100);
+    }
+
     public void test_simple_schedule_03() throws UnsupportedEncodingException, ParamRepositoryException, ConfigurationException, ManagedLifecycleException, SAXException, InterruptedException {
         runTestConfig("config-03.xml", 5000);
 
@@ -124,7 +135,12 @@
     }
 
     private void runTestConfig(String configName, long upTime) throws ParamRepositoryException, ConfigurationException, ManagedLifecycleException, SAXException, InterruptedException {
-        ESBConfigUtil configUtil = new ESBConfigUtil(getClass().getResourceAsStream(configName));
+        ESBConfigUtil configUtil = null;
+        try {
+            configUtil = new ESBConfigUtil(getClass().getResourceAsStream(configName));
+        } catch (IOException e) {
+            fail(e.getMessage());
+        }
 
         configUtil.startController();
         Thread.sleep(upTime);

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/schedule/config-02.1.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/soa/esb/schedule/config-02.1.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/schedule/config-02.1.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/schedule/config-02.1.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,24 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd">
+
+    <providers>
+        <schedule-provider name="schedule">
+            <!-- Run indefinitely... -->
+            <simple-schedule scheduleid="1-sec-trigger" frequency="100" frequencyUnits="milliseconds"/>
+        </schedule-provider>
+    </providers>
+
+    <services>
+        <service category="ServiceCat" name="ServiceName" description="Test Service">
+
+            <listeners>
+                <scheduled-listener name="simple-schedule-listener" scheduleidref="1-sec-trigger" event-processor="org.jboss.soa.esb.schedule.MockScheduledEventMessageComposer" />
+            </listeners>
+
+            <actions>
+                <action name="action" class="org.jboss.soa.esb.mock.MockAction" />
+            </actions>			
+        </service>
+    </services>
+
+</jbossesb>
\ No newline at end of file

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/ESBConfigUtil.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/ESBConfigUtil.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/ESBConfigUtil.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -19,30 +19,34 @@
  */
 package org.jboss.soa.esb.testutils;
 
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.InputStream;
-
-import junit.framework.TestCase;
-
+import com.arjuna.common.util.propertyservice.PropertyManager;
 import org.jboss.internal.soa.esb.assertion.AssertArgument;
+import org.jboss.internal.soa.esb.couriers.MockCourierFactory;
 import org.jboss.internal.soa.esb.services.registry.MockRegistry;
-import org.jboss.internal.soa.esb.couriers.MockCourierFactory;
-import org.jboss.internal.soa.esb.rosetta.pooling.JmsConnectionPoolContainer;
+import org.jboss.internal.soa.esb.services.registry.JAXRRegistryImpl;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.common.ModulePropertyManager;
 import org.jboss.soa.esb.dom.YADOMUtil;
 import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.listeners.config.ConfigurationController;
 import org.jboss.soa.esb.listeners.config.Generator;
-import org.jboss.soa.esb.listeners.config.ConfigurationController;
 import org.jboss.soa.esb.listeners.lifecycle.ManagedLifecycleController;
 import org.jboss.soa.esb.listeners.lifecycle.ManagedLifecycleException;
 import org.jboss.soa.esb.parameters.ParamRepositoryException;
-import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.services.registry.RegistryFactory;
+import org.jboss.soa.esb.services.registry.RegistryException;
+import org.jboss.soa.esb.services.registry.Registry;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 import org.w3c.dom.NodeList;
 import org.xml.sax.SAXException;
 
-import javax.jms.JMSException;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.Hashtable;
+import java.sql.SQLException;
 
 /**
  * Utility class for working with the ESB configuration.
@@ -55,24 +59,90 @@
     private Document listenerConfig;
     private Document gatewayConfig;
     private ManagedLifecycleController controller;
+    private boolean installMockCourierFactory = true;
+    private boolean installMockRegistry = true;
+    private Hashtable<String, PropertyManager> originalPropertyManagers;
+    private Registry originalRegistry;
 
-    public ESBConfigUtil(InputStream esbXsdConfig) {
+    public ESBConfigUtil(InputStream esbXsdConfig) throws IOException, ConfigurationException, SAXException {
         AssertArgument.isNotNull(esbXsdConfig, "esbXsdConfig");
         ByteArrayOutputStream listenerConfigStream = new ByteArrayOutputStream();
         ByteArrayOutputStream gatewayConfigStream = new ByteArrayOutputStream();
         generator = null;
 
+        generator = new Generator(esbXsdConfig, listenerConfigStream, gatewayConfigStream);
+        generator.generate();
+        listenerConfig = YADOMUtil.parseStream(new ByteArrayInputStream(listenerConfigStream.toByteArray()), false, false);
+        gatewayConfig = YADOMUtil.parseStream(new ByteArrayInputStream(gatewayConfigStream.toByteArray()), false, false);
+    }
+
+    public void setESBProperties(InputStream esbProperties) throws IOException, ConfigurationException, SAXException {
+        originalPropertyManagers = (Hashtable<String, PropertyManager>) ModulePropertyManager.getManagers().clone();
+        ModulePropertyManager.configure(esbProperties);
+    }
+
+    public void resetESBProperties() {
+        if(originalPropertyManagers != null) {
+            // The ModulePropertyManager uses statics, so other tests (to
+            // follow) may be unwittingly dependent on its state. We reset
+            // it back to what it was here...
+            ModulePropertyManager.setManagers(originalPropertyManagers);
+            originalPropertyManagers = null;
+        }
+    }
+
+    public void installRegistry() {
+        originalRegistry = RegistryFactory.getRegistrySingleton();
+        Registry newRegistry = null;
         try {
-            generator = new Generator(esbXsdConfig, listenerConfigStream, gatewayConfigStream);
-            generator.generate();
-            listenerConfig = YADOMUtil.parseStream(new ByteArrayInputStream(listenerConfigStream.toByteArray()), false, false);
-            gatewayConfig = YADOMUtil.parseStream(new ByteArrayInputStream(gatewayConfigStream.toByteArray()), false, false);
-        } catch(Exception e) {
-            e.printStackTrace();
-            TestCase.fail(e.getMessage());
+            newRegistry = RegistryFactory.createRegistry();
+            RegistryFactory.setRegistry(newRegistry);
+        } catch (RegistryException e) {
+            throw new RuntimeException("Failed to create registry instance.", e);
         }
+        
+        if(newRegistry instanceof JAXRRegistryImpl) {
+            try {
+                TestEnvironmentUtil.startJAXRDatabase();
+            } catch (SQLException e) {
+                throw new RuntimeException("Failed to start JAXR Database.", e);
+            }
+            installMockCourierFactory = false;
+            installMockRegistry = false;
+        }
     }
 
+    public void uninstallRegistry() {
+        try {
+            Registry currentRegistry = RegistryFactory.getRegistrySingleton();
+            if(currentRegistry instanceof JAXRRegistryImpl) {
+                try {
+                    TestEnvironmentUtil.stopJAXRDatabase();
+                } catch (Exception e) {
+                    throw new RuntimeException("Failed to stop JAXR Database.", e);
+                }
+            }
+        } finally {
+            RegistryFactory.setRegistry(originalRegistry);
+        }
+    }
+
+    public boolean isInstallMockCourierFactory() {
+        return installMockCourierFactory;
+    }
+
+    public void setInstallMockCourierFactory(boolean installMockCourierFactory) {
+        this.installMockCourierFactory = installMockCourierFactory;
+    }
+
+    public boolean isInstallMockRegistry() {
+        return installMockRegistry;
+    }
+
+    public void setInstallMockRegistry(boolean installMockRegistry) {
+        this.installMockRegistry = installMockRegistry;
+    }
+
     public ConfigTree getListenerConfig(String listenerName) {
         AssertArgument.isNotNull(listenerName, "listenerName");
         return ConfigTree.fromElement(getListenerConfig(listenerName, listenerConfig));
@@ -124,11 +194,19 @@
     }
 
     public void startController() throws ParamRepositoryException, ConfigurationException, ManagedLifecycleException, SAXException {
+        if(controller != null) {
+            throw new RuntimeException("Sorry, this ESBConfigUtil instance has already been started/used.  You cannot restart!");
+        }
+
         ConfigTree listenerConfigTree = ConfigTree.fromElement(listenerConfig.getDocumentElement());
         ConfigTree gatewayConfigTree = ConfigTree.fromElement(gatewayConfig.getDocumentElement());
 
-        MockCourierFactory.install();
-        MockRegistry.install();
+        if(installMockCourierFactory) {
+            MockCourierFactory.install();
+        }
+        if(installMockRegistry) {
+            MockRegistry.install();
+        }
 
         controller = ConfigurationController.startController(generator.getModel(), listenerConfigTree, gatewayConfigTree);
     }
@@ -138,9 +216,17 @@
             ConfigurationController.stopController(controller);
         } finally {
             try {
-                MockRegistry.uninstall();
+                try {
+                    if(installMockRegistry) {
+                        MockRegistry.uninstall();
+                    }
+                } finally {
+                    if(installMockCourierFactory) {
+                        MockCourierFactory.uninstall();
+                    }
+                }
             } finally {
-                MockCourierFactory.uninstall();
+                resetESBProperties();
             }
         }
     }

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/TestEnvironmentUtil.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/TestEnvironmentUtil.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/TestEnvironmentUtil.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,12 +1,14 @@
 package org.jboss.soa.esb.testutils;
 
-import java.io.BufferedReader;
-import java.io.File;
-import java.io.FileReader;
-import java.io.IOException;
-
+import junit.framework.TestCase;
 import org.apache.log4j.Logger;
 
+import java.io.*;
+import java.sql.DriverManager;
+import java.sql.Statement;
+import java.sql.SQLException;
+import java.util.Properties;
+
 public class TestEnvironmentUtil 
 {
 	private static Logger log = Logger.getLogger(TestEnvironmentUtil.class);
@@ -83,7 +85,7 @@
 		String jbossesbPropertiesFile = getUserDir(eclipseDir, antDir) + "/etc/test/resources/jbossesb-unittest-properties.xml";
 		System.setProperty("org.jboss.soa.esb.propertyFile", jbossesbPropertiesFile);
 	}
-	
+
 	public static String readTextFile(File file) throws IOException 
     {
         StringBuffer sb = new StringBuffer(1024);
@@ -112,5 +114,94 @@
         }
         return null;
     }
-	
+
+    public static void startJAXRDatabase() throws SQLException {
+        Properties props = getJuddiProperties();
+
+        String mDbDriver = props.getProperty("juddi.jdbcDriver");
+        String mDbUrl = props.getProperty("juddi.jdbcUrl");
+        String mDbUsername = props.getProperty("juddi.jdbcUsername");
+        String mDbPassword = props.getProperty("juddi.jdbcPassword");
+
+        String database="not tested yet";
+        if ("org.hsqldb.jdbcDriver".equals(mDbDriver)) {
+            database = "hsqldb";
+            //Bring up hsql on default port 9001
+            try {
+                HsqldbUtil.startHsqldb(TestEnvironmentUtil.getUserDir() + "build/hsqltestdb", "juddi");
+            } catch (Exception e) {
+                TestCase.fail("Failed to start HSQLDB: " + e.getMessage());
+            }
+        } else if ("com.mysql.jdbc.Driver".equals(mDbDriver)) {
+            database = "mysql";
+        } //add and test your own database..
+
+        //Get the registry-schema create scripts
+        String sqlDir = TestEnvironmentUtil.getUserDir() + "install/jUDDI-registry/sql/" + database + "/";
+        //Drop what is there now, if exists. We want to start fresh.
+        String sqlDropCmd      = null;
+        try {
+            sqlDropCmd = FileUtil.readTextFile(new File(sqlDir + "drop_database.sql")).replaceAll("\\$\\{prefix}", "");
+        } catch (IOException e) {
+            TestCase.fail("Failed to read drop_database.sql: " + e.getMessage());
+        }
+        String resource = "juddi-sql/" + database + "/create_database.sql";
+        InputStream is = Thread.currentThread().getContextClassLoader().getResourceAsStream(resource);
+        String sqlCreateCmd    = null;
+        try {
+            sqlCreateCmd = FileUtil.readStream(is).trim().replaceAll("\\$\\{prefix}", "");
+        } catch (IOException e) {
+            TestCase.fail("Failed to read create_database.sql: " + e.getMessage());
+        }
+        String sqlInsertPubCmd = null;
+        try {
+            sqlInsertPubCmd = FileUtil.readTextFile(new File(sqlDir + "import.sql")).trim().replaceAll("\\$\\{prefix}", "");
+        } catch (IOException e) {
+            TestCase.fail("Failed to read import.sql: " + e.getMessage());
+        }
+
+        try {
+            Class.forName(mDbDriver);
+        } catch (Exception e) {
+            TestCase.fail("ERROR: failed to load " + database + " JDBC driver: " + e.getMessage());
+            return;
+        }
+        java.sql.Connection con = DriverManager.getConnection(mDbUrl, mDbUsername, mDbPassword);
+        Statement stmnt = con.createStatement();
+        System.out.println("Dropping the schema if exist");
+        stmnt.execute(sqlDropCmd);
+        System.out.println("Creating the juddi-schema");
+        stmnt.execute(sqlCreateCmd);
+        System.out.println("Adding the jbossesb publisher");
+        stmnt.execute(sqlInsertPubCmd);
+
+    }
+    
+    public static void stopJAXRDatabase() throws Exception {
+        Properties props = getJuddiProperties();
+
+        String mDbDriver = props.getProperty("juddi.jdbcDriver");
+        String mDbUrl = props.getProperty("juddi.jdbcUrl");
+        String mDbUsername = props.getProperty("juddi.jdbcUsername");
+        String mDbPassword = props.getProperty("juddi.jdbcPassword");
+
+        if ("org.hsqldb.jdbcDriver".equals(mDbDriver)) {
+            HsqldbUtil.stopHsqldb(mDbUrl, mDbUsername, mDbPassword);
+        }
+    }
+
+    private static Properties getJuddiProperties() {
+        //Set the juddi properties file in System so juddi will pick it up later and use the test values.
+        String juddiPropertiesFile = "/org/jboss/soa/esb/testutils/juddi-unittest.properties";
+        System.setProperty("juddi.propertiesFile", juddiPropertiesFile);
+        //Read this properties file to get the db connection string
+        Properties props = new Properties();
+        InputStream inStream = Class.class.getResourceAsStream(juddiPropertiesFile);
+        try {
+            props.load(inStream);
+        } catch (IOException e) {
+            TestCase.fail("Failed to load juddi properties.");
+        }
+        return props;
+    }
 }

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/juddi-unittest.properties (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/rosetta/tests/src/org/jboss/soa/esb/testutils/juddi-unittest.properties)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/juddi-unittest.properties	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/juddi-unittest.properties	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,75 @@
+# jUDDI Registry Properties (used by RegistryServer)
+# see http://www.juddi.org for more information
+
+# The UDDI Operator Name
+juddi.operatorName = jUDDI.org
+
+# The i18n locale default codes
+juddi.i18n.languageCode = en
+juddi.i18n.countryCode = US
+
+# The UDDI DiscoveryURL Prefix
+juddi.discoveryURL = http://localhost:8080/juddi/uddiget.jsp?
+
+# The UDDI Operator Contact Email Address
+juddi.operatorEmailAddress = admin at juddi.org
+
+# The maximum name size and maximum number
+# of name elements allows in several of the
+# FindXxxx and SaveXxxx UDDI functions.
+juddi.maxNameLength=255
+juddi.maxNameElementsAllowed=5
+
+# The maximum number of UDDI artifacts allowed
+# per publisher. A value of '-1' indicates any 
+# number of artifacts is valid (These values can be
+# overridden at the individual publisher level).
+juddi.maxBusinessesPerPublisher=25
+juddi.maxServicesPerBusiness=20
+juddi.maxBindingsPerService=10
+juddi.maxTModelsPerPublisher=100
+
+# jUDDI Authentication module to use
+juddi.auth = org.apache.juddi.auth.DefaultAuthenticator
+
+# jUDDI DataStore module currently to use
+juddi.dataStore = org.apache.juddi.datastore.jdbc.JDBCDataStore
+
+# use a dataSource (if set to false a direct 
+# jdbc connection will be used.
+juddi.isUseDataSource=false
+juddi.jdbcDriver=org.hsqldb.jdbcDriver
+juddi.jdbcUrl=jdbc:hsqldb:hsql://localhost/juddi
+juddi.jdbcUsername=sa
+juddi.jdbcPassword=
+#For Mysql use:
+#juddi.jdbcDriver=com.mysql.jdbc.Driver
+#juddi.jdbcUrl=jdbc:mysql://localhost/juddi?allowMultiQueries=true
+#juddi.jdbcUsername=root
+#juddi.jdbcPassword=
+
+# jUDDI DataSource to use
+juddi.dataSource=java:comp/env/jdbc/juddiDB
+
+# jUDDI UUIDGen implementation to use
+juddi.uuidgen = org.apache.juddi.uuidgen.DefaultUUIDGen
+
+# jUDDI Cryptor implementation to use
+juddi.cryptor = org.apache.juddi.cryptor.DefaultCryptor
+ 
+# jUDDI Validator to use
+juddi.validator=org.apache.juddi.validator.DefaultValidator
+
+# jUDDI Proxy Properties (used by RegistryProxy)
+juddi.proxy.adminURL = http://localhost:8080/juddi/admin
+juddi.proxy.inquiryURL = http://localhost:8080/juddi/inquiry
+juddi.proxy.publishURL = http://localhost:8080/juddi/publish
+juddi.proxy.transportClass = org.apache.juddi.proxy.AxisTransport
+juddi.proxy.securityProvider = com.sun.net.ssl.internal.ssl.Provider
+juddi.proxy.protocolHandler = com.sun.net.ssl.internal.www.protocol
+
+# JNDI settings (used by RMITransport)
+java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
+java.naming.provider.url=jnp://localhost:1099
+java.naming.factory.url.pkgs=org.jboss.naming
+  

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/test/ESBConfigUtilUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/test/ESBConfigUtilUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/rosetta/tests/src/org/jboss/soa/esb/testutils/test/ESBConfigUtilUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -4,13 +4,16 @@
 
 import org.jboss.soa.esb.ConfigurationException;
 import org.jboss.soa.esb.testutils.ESBConfigUtil;
+import org.xml.sax.SAXException;
 
+import java.io.IOException;
+
 /**
  * @author
  */
 public class ESBConfigUtilUnitTest extends TestCase {
 
-    public void test() throws ConfigurationException {
+    public void test() throws ConfigurationException, IOException, SAXException {
         ESBConfigUtil configUtil = new ESBConfigUtil(getClass().getResourceAsStream("jboss-esb.xml"));
 
         assertTrue(configUtil.getListenerConfig("JMS-ESBListener").toString().startsWith("<JMS-ESBListener listenerClass=\"org.jboss.soa.esb.listeners.message.MessageAwareListener\" maxThreads=\"1\" service-category=\"ABI_OrderManager\" service-description=\"ABI OrderManager Service\" service-name=\"ABI_OrderManager\">"));

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/aggregator/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/aggregator/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/aggregator/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/bpm_orchestration1/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/bpm_orchestration1/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/bpm_orchestration1/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/bpm_orchestration2/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/bpm_orchestration2/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/bpm_orchestration2/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/bpm_orchestration3/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/bpm_orchestration3/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/bpm_orchestration3/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/business_rules_service/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/business_rules_service/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/business_rules_service/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/business_service/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/business_service/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/business_service/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/custom_action/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/custom_action/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/custom_action/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/deadletter/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/deadletter/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/deadletter/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/dynamic_router/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/dynamic_router/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/dynamic_router/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/exceptions_faults/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/exceptions_faults/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/exceptions_faults/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/fun_cbr/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/fun_cbr/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/fun_cbr/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/groovy_gateway/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/groovy_gateway/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/groovy_gateway/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_action/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_action/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_action/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_db_registration/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_db_registration/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_db_registration/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">
     	<property name="org.jboss.soa.esb.registry.queryManagerURI" value="org.apache.juddi.registry.local.InquiryService#inquire"/>

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_file_action/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_file_action/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_file_action/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_file_notifier/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_file_notifier/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_file_notifier/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_ftp_action/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_ftp_action/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_ftp_action/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_hibernate_action/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_hibernate_action/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_hibernate_action/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_sql_action/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_sql_action/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_sql_action/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_topic_notifier/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_topic_notifier/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_topic_notifier/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_tx_sql_action/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_tx_sql_action/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/helloworld_tx_sql_action/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/HttpRouter-localhost-https-9433.properties
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/HttpRouter-localhost-https-9433.properties	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/HttpRouter-localhost-https-9433.properties	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,15 +0,0 @@
-# See: 
-# - http://wiki.jboss.org/wiki/Wiki.jsp?page=HttpRouter and
-# - http://wiki.jboss.org/wiki/Wiki.jsp?page=HttpClientFactory
-
-# Configurators
-configurators=HttpProtocol
-
-# HttpProtocol config...
-protocol-socket-factory=org.apache.commons.httpclient.contrib.ssl.EasySSLProtocolSocketFactory
-#protocol-socket-factory=org.jboss.soa.esb.http.protocol.SelfSignedSSLProtocolSocketFactoryBuilder
-#protocol-socket-factory=org.jboss.soa.esb.http.protocol.AuthSSLProtocolSocketFactoryBuilder
-keystore=file:/@keystore@
-keystore-passw=https_2way_ssl_pass
-truststore=file:/@keystore@
-truststore-passw=https_2way_ssl_pass
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/HttpRouter-localhost-https-9433.properties (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/HttpRouter-localhost-https-9433.properties)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/HttpRouter-localhost-https-9433.properties	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/HttpRouter-localhost-https-9433.properties	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,15 @@
+# See: 
+# - http://wiki.jboss.org/wiki/Wiki.jsp?page=HttpRouter and
+# - http://wiki.jboss.org/wiki/Wiki.jsp?page=HttpClientFactory
+
+# Configurators
+configurators=HttpProtocol
+
+# HttpProtocol config...
+protocol-socket-factory=org.apache.commons.httpclient.contrib.ssl.EasySSLProtocolSocketFactory
+#protocol-socket-factory=org.jboss.soa.esb.http.protocol.SelfSignedSSLProtocolSocketFactoryBuilder
+#protocol-socket-factory=org.jboss.soa.esb.http.protocol.AuthSSLProtocolSocketFactoryBuilder
+keystore=file:/@keystore@
+keystore-passw=https_2way_ssl_pass
+truststore=file:/@keystore@
+truststore-passw=https_2way_ssl_pass
\ No newline at end of file

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/build.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/build.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/build.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,49 +0,0 @@
-<project name="quickstart_https_2way_ssl" default="deploy" basedir=".">
-
-    <property environment="env" />
-
-    <description>
-		${ant.project.name}
-		${line.separator}
-	</description>
-
-    <!-- Import the base Ant build script... -->
-	<import file="../conf/base-build.xml"/>
-
-    <target name="quickstart-specific-assemblies">
-        <pathconvert targetos="unix" property="keystoredir">
-            <path><pathelement location="${org.jboss.esb.server.home}"/></path>
-        </pathconvert>
-
-        <property name="keystore" value="${keystoredir}/https_2way_ssl.keystore" />
-
-        <delete file="${keystore}" failonerror="false"/>
-        <genkey keystore="${keystore}" storepass="https_2way_ssl_pass" keypass="https_2way_ssl_pass" keyalg="DSA" alias="https_2way_ssl">
-            <dname>
-                <param name="CN" value="localhost"/>
-                <param name="OU" value="jbossesb"/>
-                <param name="O" value="jbossesb"/>
-                <param name="C" value="IE"/>
-            </dname>
-        </genkey>
-
-        <copy file="jboss-esb-template.xml" tofile="build/META-INF/jboss-esb.xml">
-            <filterset>
-                <filter token="keystore" value="${keystore}" />
-            </filterset>
-        </copy>
-        <copy file="HttpRouter-localhost-https-9433.properties" todir="build/META-INF">
-            <filterset>
-                <filter token="keystore" value="${keystore}" />
-            </filterset>
-        </copy>
-    </target>
-
-    <target name="runtest" depends="compile" description="runs Test JMS Sender">
-        <echo>Runs Test JMS Sender</echo>
-        <java fork="yes" classname="org.jboss.soa.esb.samples.https.test.SendJMSMessage" failonerror="true">
-            <classpath refid="exec-classpath" />
-        </java>
-    </target>
-
-</project>

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/build.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/build.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/build.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/build.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,49 @@
+<project name="quickstart_https_2way_ssl" default="deploy" basedir=".">
+
+    <property environment="env" />
+
+    <description>
+		${ant.project.name}
+		${line.separator}
+	</description>
+
+    <!-- Import the base Ant build script... -->
+	<import file="../conf/base-build.xml"/>
+
+    <target name="quickstart-specific-assemblies">
+        <pathconvert targetos="unix" property="keystoredir">
+            <path><pathelement location="${org.jboss.esb.server.home}"/></path>
+        </pathconvert>
+
+        <property name="keystore" value="${keystoredir}/https_2way_ssl.keystore" />
+
+        <delete file="${keystore}" failonerror="false"/>
+        <genkey keystore="${keystore}" storepass="https_2way_ssl_pass" keypass="https_2way_ssl_pass" keyalg="DSA" alias="https_2way_ssl">
+            <dname>
+                <param name="CN" value="localhost"/>
+                <param name="OU" value="jbossesb"/>
+                <param name="O" value="jbossesb"/>
+                <param name="C" value="IE"/>
+            </dname>
+        </genkey>
+
+        <copy file="jboss-esb-template.xml" tofile="build/META-INF/jboss-esb.xml">
+            <filterset>
+                <filter token="keystore" value="${keystore}" />
+            </filterset>
+        </copy>
+        <copy file="HttpRouter-localhost-https-9433.properties" todir="build/META-INF">
+            <filterset>
+                <filter token="keystore" value="${keystore}" />
+            </filterset>
+        </copy>
+    </target>
+
+    <target name="runtest" depends="compile" description="runs Test JMS Sender">
+        <echo>Runs Test JMS Sender</echo>
+        <java fork="yes" classname="org.jboss.soa.esb.samples.https.test.SendJMSMessage" failonerror="true">
+            <classpath refid="exec-classpath" />
+        </java>
+    </target>
+
+</project>

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/deployment.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/deployment.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/deployment.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,4 +0,0 @@
-<jbossesb-deployment>
-    <depends>jboss.esb.quickstart.destination:service=Queue,name=quickstart_https_2way_ssl_esb</depends>
-    <!-- depends>jboss.remoting:service=ServerSocketFactory,type=SSL</depends -->
-</jbossesb-deployment>

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/deployment.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/deployment.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/deployment.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/deployment.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,4 @@
+<jbossesb-deployment>
+    <depends>jboss.esb.quickstart.destination:service=Queue,name=quickstart_https_2way_ssl_esb</depends>
+    <!-- depends>jboss.remoting:service=ServerSocketFactory,type=SSL</depends -->
+</jbossesb-deployment>

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbm-queue-service.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/jbm-queue-service.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbm-queue-service.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<server>
-    <mbean code="org.jboss.jms.server.destination.QueueService"
-           name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_https_2way_ssl_esb_runtest_gw"
-           xmbean-dd="xmdesc/Queue-xmbean.xml">
-        <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
-        <depends>jboss.messaging:service=PostOffice</depends>
-    </mbean>
-</server>

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbm-queue-service.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/jbm-queue-service.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbm-queue-service.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbm-queue-service.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<server>
+    <mbean code="org.jboss.jms.server.destination.QueueService"
+           name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_https_2way_ssl_esb_runtest_gw"
+           xmbean-dd="xmdesc/Queue-xmbean.xml">
+        <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
+        <depends>jboss.messaging:service=PostOffice</depends>
+    </mbean>
+</server>

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbmq-queue-service.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/jbmq-queue-service.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbmq-queue-service.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<server>
-    <mbean code="org.jboss.mq.server.jmx.Queue"
-           name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_https_2way_ssl_esb_runtest_gw">
-        <depends optional-attribute-name="DestinationManager">
-            jboss.mq:service=DestinationManager
-        </depends>
-    </mbean>
-</server>

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbmq-queue-service.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/jbmq-queue-service.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbmq-queue-service.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbmq-queue-service.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<server>
+    <mbean code="org.jboss.mq.server.jmx.Queue"
+           name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_https_2way_ssl_esb_runtest_gw">
+        <depends optional-attribute-name="DestinationManager">
+            jboss.mq:service=DestinationManager
+        </depends>
+    </mbean>
+</server>

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jboss-esb-template.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/jboss-esb-template.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jboss-esb-template.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,72 +0,0 @@
-<?xml version = "1.0" encoding = "UTF-8"?>
-<jbossesb
-        xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd"
-        parameterReloadSecs="5">
-
-    <providers>
-        <jms-provider name="JMS" connection-factory="ConnectionFactory" jndi-context-factory="org.jnp.interfaces.NamingContextFactory" jndi-URL="localhost">
-            <jms-bus busid="runtestGateway">
-                <jms-message-filter dest-type="QUEUE" dest-name="queue/quickstart_https_2way_ssl_esb_runtest_gw" />
-            </jms-bus>
-        </jms-provider>
-
-        <jbr-provider name="https_2way" protocol="https" host="localhost">
-            <!-- Https/SSL settings -->
-            <property name="jbr-KeyStoreURL" value="@keystore@" />
-            <property name="jbr-KeyStorePassword" value="https_2way_ssl_pass" />
-            <property name="jbr-TrustStoreURL" value="@keystore@" />
-            <property name="jbr-TrustStorePassword" value="https_2way_ssl_pass" />
-            <property name="jbr-ClientAuthMode" value="need" />
-
-            <jbr-bus busid="https_2way" port="9433"/>
-        </jbr-provider>
-        
-    </providers>
-
-    <services>
-
-        <!--
-        Https Client Service.  Initiated by "ant runtest", which drops a message in a JMS queue.
-        -->
-        <service category="Https QS Category" name="RuntestClientService" description="HTTPS Gateway example - runtest" invmScope="GLOBAL">
-
-            <listeners>
-                <jms-listener name="gateway" busidref="runtestGateway" is-gateway="true" />
-            </listeners>
-            <actions mep="OneWay">
-                <!--
-                Route the payload to the https gateway of the other service using the HttpRouter...
-                -->
-                <action name="httprouter" class="org.jboss.soa.esb.actions.routing.http.HttpRouter">
-                    <property name="endpointUrl" value="https://localhost:9433/x/y">
-                        <http-client-property name="file" value="/META-INF/HttpRouter-localhost-https-9433.properties" />
-                    </property>
-                    <property name="method" value="POST" /> <!-- Currently only supports GET or POST - easy to add more! -->
-                    <property name="responseType" value="STRING" /> <!-- Response should be set back on message as STRING or BYTES - default STRING -->
-                    <property name="headers"> <!-- Supports setting of arbitrary request headers -->
-                        <header name="blah" value="blahval" />
-                    </property>
-                </action>
-
-                <action name="printResponse" class="org.jboss.soa.esb.samples.https.client.HttpResponsePrinter" />
-            </actions>
-
-        </service>
-
-        <!--
-        Https Server Service.  Called over https by the Https Client Service above.
-        -->
-        <service category="Https QS Category" name="MyHTTPSService" description="HTTPS Gateway example" invmScope="GLOBAL">
-
-            <listeners>
-                <jbr-listener name="https_2way" busidref="https_2way" is-gateway="true"/>
-            </listeners>
-            <actions mep="RequestResponse">
-                <action name="printMessage" class="org.jboss.soa.esb.samples.https.server.HttpRequestPrinter"/>
-            </actions>
-
-        </service>
-
-    </services>
-
-</jbossesb>

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jboss-esb-template.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/jboss-esb-template.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jboss-esb-template.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jboss-esb-template.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,72 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb
+        xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd"
+        parameterReloadSecs="5">
+
+    <providers>
+        <jms-provider name="JMS" connection-factory="ConnectionFactory" jndi-context-factory="org.jnp.interfaces.NamingContextFactory" jndi-URL="localhost">
+            <jms-bus busid="runtestGateway">
+                <jms-message-filter dest-type="QUEUE" dest-name="queue/quickstart_https_2way_ssl_esb_runtest_gw" />
+            </jms-bus>
+        </jms-provider>
+
+        <jbr-provider name="https_2way" protocol="https" host="localhost">
+            <!-- Https/SSL settings -->
+            <property name="jbr-KeyStoreURL" value="@keystore@" />
+            <property name="jbr-KeyStorePassword" value="https_2way_ssl_pass" />
+            <property name="jbr-TrustStoreURL" value="@keystore@" />
+            <property name="jbr-TrustStorePassword" value="https_2way_ssl_pass" />
+            <property name="jbr-ClientAuthMode" value="need" />
+
+            <jbr-bus busid="https_2way" port="9433"/>
+        </jbr-provider>
+        
+    </providers>
+
+    <services>
+
+        <!--
+        Https Client Service.  Initiated by "ant runtest", which drops a message in a JMS queue.
+        -->
+        <service category="Https QS Category" name="RuntestClientService" description="HTTPS Gateway example - runtest" invmScope="GLOBAL">
+
+            <listeners>
+                <jms-listener name="gateway" busidref="runtestGateway" is-gateway="true" />
+            </listeners>
+            <actions mep="OneWay">
+                <!--
+                Route the payload to the https gateway of the other service using the HttpRouter...
+                -->
+                <action name="httprouter" class="org.jboss.soa.esb.actions.routing.http.HttpRouter">
+                    <property name="endpointUrl" value="https://localhost:9433/x/y">
+                        <http-client-property name="file" value="/META-INF/HttpRouter-localhost-https-9433.properties" />
+                    </property>
+                    <property name="method" value="POST" /> <!-- Currently only supports GET or POST - easy to add more! -->
+                    <property name="responseType" value="STRING" /> <!-- Response should be set back on message as STRING or BYTES - default STRING -->
+                    <property name="headers"> <!-- Supports setting of arbitrary request headers -->
+                        <header name="blah" value="blahval" />
+                    </property>
+                </action>
+
+                <action name="printResponse" class="org.jboss.soa.esb.samples.https.client.HttpResponsePrinter" />
+            </actions>
+
+        </service>
+
+        <!--
+        Https Server Service.  Called over https by the Https Client Service above.
+        -->
+        <service category="Https QS Category" name="MyHTTPSService" description="HTTPS Gateway example" invmScope="GLOBAL">
+
+            <listeners>
+                <jbr-listener name="https_2way" busidref="https_2way" is-gateway="true"/>
+            </listeners>
+            <actions mep="RequestResponse">
+                <action name="printMessage" class="org.jboss.soa.esb.samples.https.server.HttpRequestPrinter"/>
+            </actions>
+
+        </service>
+
+    </services>
+
+</jbossesb>

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbossesb-service.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/jbossesb-service.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbossesb-service.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<server>
-
-    <mbean code="org.jboss.remoting.security.SSLSocketBuilder" name="jboss.remoting:service=SocketBuilder,type=SSL" display-name="SSL Server Socket Factory Builder">
-       <!-- IMPORTANT - If making ANY customizations, this MUST be set to false. -->
-       <!-- Otherwise, will used default settings and the following attributes will be ignored. -->
-       <attribute name="UseSSLServerSocketFactory">false</attribute>
-       <!-- This is the url string to the key store to use -->
-       <attribute name="KeyStoreURL">${jboss.home.dir}/https_2way_ssl.keystore</attribute>
-       <!-- The password for the key store -->
-       <attribute name="KeyStorePassword">https_2way_ssl_pass</attribute>
-       <!-- The password for the keys (will use KeystorePassword if this is not set explicitly. -->
-       <attribute name="KeyPassword">https_2way_ssl_pass</attribute>
-    </mbean>
-
-    <mbean code="org.jboss.remoting.security.SSLServerSocketFactoryService" name="jboss.remoting:service=ServerSocketFactory,type=SSL" display-name="SSL Server Socket Factory">
-       <depends optional-attribute-name="SSLSocketBuilder" proxy-type="attribute">jboss.remoting:service=SocketBuilder,type=SSL</depends>
-    </mbean>
-
-</server>
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbossesb-service.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/jbossesb-service.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbossesb-service.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jbossesb-service.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<server>
+
+    <mbean code="org.jboss.remoting.security.SSLSocketBuilder" name="jboss.remoting:service=SocketBuilder,type=SSL" display-name="SSL Server Socket Factory Builder">
+       <!-- IMPORTANT - If making ANY customizations, this MUST be set to false. -->
+       <!-- Otherwise, will used default settings and the following attributes will be ignored. -->
+       <attribute name="UseSSLServerSocketFactory">false</attribute>
+       <!-- This is the url string to the key store to use -->
+       <attribute name="KeyStoreURL">${jboss.home.dir}/https_2way_ssl.keystore</attribute>
+       <!-- The password for the key store -->
+       <attribute name="KeyStorePassword">https_2way_ssl_pass</attribute>
+       <!-- The password for the keys (will use KeystorePassword if this is not set explicitly. -->
+       <attribute name="KeyPassword">https_2way_ssl_pass</attribute>
+    </mbean>
+
+    <mbean code="org.jboss.remoting.security.SSLServerSocketFactoryService" name="jboss.remoting:service=ServerSocketFactory,type=SSL" display-name="SSL Server Socket Factory">
+       <depends optional-attribute-name="SSLSocketBuilder" proxy-type="attribute">jboss.remoting:service=SocketBuilder,type=SSL</depends>
+    </mbean>
+
+</server>
\ No newline at end of file

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jndi.properties
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/jndi.properties	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jndi.properties	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,5 +0,0 @@
-java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
-java.naming.provider.url=jnp://localhost:1099
-java.naming.factory.url.pkgs=org.jboss.naming
-java.naming.factory.url.pkgs=org.jnp.interfaces
-

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jndi.properties (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/jndi.properties)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jndi.properties	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/jndi.properties	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,5 @@
+java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
+java.naming.provider.url=jnp://localhost:1099
+java.naming.factory.url.pkgs=org.jboss.naming
+java.naming.factory.url.pkgs=org.jnp.interfaces
+

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/readme.txt
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/readme.txt	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/readme.txt	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,30 +0,0 @@
-Overview:
-=========
-  This quickstart demonstrates how to:
-  1.  Configure a HTTPS Endpoint.
-  2.  Configure the HttpRouter for performing HTTPS invocations on ESB Unaware
-      Endpoints.
-
-Running this quickstart:
-========================
-  Please refer to 'ant help-quickstarts' for prerequisites about the quickstarts
-  and a more detailed descripton of the different ways to run the quickstarts.
-
-To Run '.esb' archive mode:
-===========================
-  1. In a command terminal window in this folder ("Window1"), type 'ant deploy'.
-  2. Open another command terminal window in this folder ("Window2"), type
-     'ant runtest'.
-  3. Switch back to Application Server console to see the output from the ESB
-  4. In this folder ("Window1"), type 'ant undeploy'.
-
-What to look at in this Quickstart:
-===================================
-  On running the 'ant runtest' command (step #2 above), the Ant script executes
-  the SendJMSMessage class, which sends a JMS message into the "RuntestClientService"
-  Service gateway (busidref="runtestGateway").  This Service takes the message payload
-  and, using the HttpRouter, makes a synchronous HTTPS invocation on the "MyHTTPSService"
-  Service gateway (busidref="https_2way"), which simply replies with the HTTP data
-  from the request.
-
-  All security artifacts are generated and deployed by the build.xml script.
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/readme.txt (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/readme.txt)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/readme.txt	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/readme.txt	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,30 @@
+Overview:
+=========
+  This quickstart demonstrates how to:
+  1.  Configure a HTTPS Endpoint.
+  2.  Configure the HttpRouter for performing HTTPS invocations on ESB Unaware
+      Endpoints.
+
+Running this quickstart:
+========================
+  Please refer to 'ant help-quickstarts' for prerequisites about the quickstarts
+  and a more detailed descripton of the different ways to run the quickstarts.
+
+To Run '.esb' archive mode:
+===========================
+  1. In a command terminal window in this folder ("Window1"), type 'ant deploy'.
+  2. Open another command terminal window in this folder ("Window2"), type
+     'ant runtest'.
+  3. Switch back to Application Server console to see the output from the ESB
+  4. In this folder ("Window1"), type 'ant undeploy'.
+
+What to look at in this Quickstart:
+===================================
+  On running the 'ant runtest' command (step #2 above), the Ant script executes
+  the SendJMSMessage class, which sends a JMS message into the "RuntestClientService"
+  Service gateway (busidref="runtestGateway").  This Service takes the message payload
+  and, using the HttpRouter, makes a synchronous HTTPS invocation on the "MyHTTPSService"
+  Service gateway (busidref="https_2way"), which simply replies with the HTTP data
+  from the request.
+
+  All security artifacts are generated and deployed by the build.xml script.
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src/org)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src/org/jboss)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/client (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/client)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/client/HttpResponsePrinter.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/client/HttpResponsePrinter.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/client/HttpResponsePrinter.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,46 +0,0 @@
-package org.jboss.soa.esb.samples.https.client;
-
-import org.jboss.soa.esb.actions.AbstractActionLifecycle;
-import org.jboss.soa.esb.helpers.ConfigTree;
-import org.jboss.soa.esb.actions.routing.http.HttpResponse;
-import org.jboss.soa.esb.actions.routing.http.HttpHeader;
-import org.jboss.soa.esb.message.Message;
-
-import java.util.List;
-
-public class HttpResponsePrinter extends AbstractActionLifecycle {
-
-    protected ConfigTree _config;
-
-    public HttpResponsePrinter(ConfigTree config) {
-        _config = config;
-    }
-
-
-    public Message process(Message message) throws Exception {
-
-        HttpResponse httpResponse = (HttpResponse) message.getBody().get(HttpResponse.RESPONSE_KEY);
-
-        System.out.println("=========== Client Response: ===================================");
-        System.out.println("Message Payload:");
-        System.out.println("\t[" + message.getBody().get() + "]");
-
-        System.out.println();
-        System.out.println("Http Response:");
-        System.out.println("\tCode: " + httpResponse.getResponseCode());
-        System.out.println("\tLength: " + httpResponse.getLength());
-        System.out.println("\tEncoding: " + httpResponse.getEncoding());
-
-        System.out.println("\tHeaders:");
-        List<HttpHeader> headers = httpResponse.getHeaders();
-        for (HttpHeader header : headers) {
-            System.out.println("\t\t" + header.getName() + ": " + header.getValue());
-        }
-
-        System.out.println("================================================================");
-
-        return message;
-    }
-
-
-}
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/client/HttpResponsePrinter.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/client/HttpResponsePrinter.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/client/HttpResponsePrinter.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/client/HttpResponsePrinter.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,46 @@
+package org.jboss.soa.esb.samples.https.client;
+
+import org.jboss.soa.esb.actions.AbstractActionLifecycle;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.actions.routing.http.HttpResponse;
+import org.jboss.soa.esb.actions.routing.http.HttpHeader;
+import org.jboss.soa.esb.message.Message;
+
+import java.util.List;
+
+public class HttpResponsePrinter extends AbstractActionLifecycle {
+
+    protected ConfigTree _config;
+
+    public HttpResponsePrinter(ConfigTree config) {
+        _config = config;
+    }
+
+
+    public Message process(Message message) throws Exception {
+
+        HttpResponse httpResponse = (HttpResponse) message.getBody().get(HttpResponse.RESPONSE_KEY);
+
+        System.out.println("=========== Client Response: ===================================");
+        System.out.println("Message Payload:");
+        System.out.println("\t[" + message.getBody().get() + "]");
+
+        System.out.println();
+        System.out.println("Http Response:");
+        System.out.println("\tCode: " + httpResponse.getResponseCode());
+        System.out.println("\tLength: " + httpResponse.getLength());
+        System.out.println("\tEncoding: " + httpResponse.getEncoding());
+
+        System.out.println("\tHeaders:");
+        List<HttpHeader> headers = httpResponse.getHeaders();
+        for (HttpHeader header : headers) {
+            System.out.println("\t\t" + header.getName() + ": " + header.getValue());
+        }
+
+        System.out.println("================================================================");
+
+        return message;
+    }
+
+
+}
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/server (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/server)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/server/HttpRequestPrinter.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/server/HttpRequestPrinter.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/server/HttpRequestPrinter.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,55 +0,0 @@
-/*
-	Milyn - Copyright (C) 2006
-
-	This library is free software; you can redistribute it and/or
-	modify it under the terms of the GNU Lesser General Public
-	License (version 2.1) as published by the Free Software
-	Foundation.
-
-	This library 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:
-	http://www.gnu.org/licenses/lgpl.txt
-*/
-package org.jboss.soa.esb.samples.https.server;
-
-import org.jboss.soa.esb.actions.AbstractActionLifecycle;
-import org.jboss.soa.esb.helpers.ConfigTree;
-import org.jboss.soa.esb.message.Message;
-import org.jboss.soa.esb.message.Properties;
-
-/**
- * @autour <a href="mailto:tom.fennelly at gmail.com">tom.fennelly at gmail.com</a>
- */
-public class HttpRequestPrinter extends AbstractActionLifecycle {
-
-    protected ConfigTree _config;
-
-    public HttpRequestPrinter(ConfigTree config) {
-        _config = config;
-    }
-
-
-    public Message process(Message message) throws Exception {
-        Properties properties = message.getProperties();
-
-        System.out.println("=========== Server Request: ====================================");
-        System.out.println("Message Payload:");
-        System.out.println("\t[" + message.getBody().get() + "]");
-
-        System.out.println();
-        System.out.println("\tHeaders:");
-        System.out.println("\t\thost: " + properties.getProperty("host"));
-        System.out.println("\t\tMethod: " + properties.getProperty("MethodType"));
-        System.out.println("\t\tPath: " + properties.getProperty("Path"));
-        System.out.println("\t\tuser-agent: " + properties.getProperty("user-agent"));
-        System.out.println("\t\tcontent-type: " + properties.getProperty("content-type"));
-        System.out.println("================================================================");
-
-        message.getBody().add("Http Response Payload!!");
-
-        return message;
-    }
-}
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/server/HttpRequestPrinter.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/server/HttpRequestPrinter.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/server/HttpRequestPrinter.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/server/HttpRequestPrinter.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,55 @@
+/*
+	Milyn - Copyright (C) 2006
+
+	This library is free software; you can redistribute it and/or
+	modify it under the terms of the GNU Lesser General Public
+	License (version 2.1) as published by the Free Software
+	Foundation.
+
+	This library 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:
+	http://www.gnu.org/licenses/lgpl.txt
+*/
+package org.jboss.soa.esb.samples.https.server;
+
+import org.jboss.soa.esb.actions.AbstractActionLifecycle;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.Properties;
+
+/**
+ * @autour <a href="mailto:tom.fennelly at gmail.com">tom.fennelly at gmail.com</a>
+ */
+public class HttpRequestPrinter extends AbstractActionLifecycle {
+
+    protected ConfigTree _config;
+
+    public HttpRequestPrinter(ConfigTree config) {
+        _config = config;
+    }
+
+
+    public Message process(Message message) throws Exception {
+        Properties properties = message.getProperties();
+
+        System.out.println("=========== Server Request: ====================================");
+        System.out.println("Message Payload:");
+        System.out.println("\t[" + message.getBody().get() + "]");
+
+        System.out.println();
+        System.out.println("\tHeaders:");
+        System.out.println("\t\thost: " + properties.getProperty("host"));
+        System.out.println("\t\tMethod: " + properties.getProperty("MethodType"));
+        System.out.println("\t\tPath: " + properties.getProperty("Path"));
+        System.out.println("\t\tuser-agent: " + properties.getProperty("user-agent"));
+        System.out.println("\t\tcontent-type: " + properties.getProperty("content-type"));
+        System.out.println("================================================================");
+
+        message.getBody().add("Http Response Payload!!");
+
+        return message;
+    }
+}
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/test (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/test)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/test/SendJMSMessage.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/test/SendJMSMessage.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/test/SendJMSMessage.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,84 +0,0 @@
-/*
- * 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.
- */
-package org.jboss.soa.esb.samples.https.test;
-
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-
-import javax.jms.JMSException;
-import javax.jms.ObjectMessage;
-import javax.jms.Queue;
-import javax.jms.QueueConnection;
-import javax.jms.QueueConnectionFactory;
-import javax.jms.QueueSender;
-import javax.jms.QueueSession;
-import javax.naming.InitialContext;
-import javax.naming.NamingException;
-
-import org.jboss.soa.esb.util.FileUtil;
-
-public class SendJMSMessage {
-    QueueConnection conn;
-    QueueSession session;
-    Queue que;
-
-
-    public void setupConnection() throws JMSException, NamingException
-    {
-    	InitialContext iniCtx = new InitialContext();
-    	Object tmp = iniCtx.lookup("ConnectionFactory");
-    	QueueConnectionFactory qcf = (QueueConnectionFactory) tmp;
-    	conn = qcf.createQueueConnection();
-    	que = (Queue) iniCtx.lookup("queue/quickstart_https_2way_ssl_esb_runtest_gw");
-    	session = conn.createQueueSession(false, QueueSession.AUTO_ACKNOWLEDGE);
-    	conn.start();
-    	System.out.println("Connection Started");
-    }
-
-    public void stop() throws JMSException
-    {
-        conn.stop();
-        session.close();
-        conn.close();
-    }
-
-    public void sendAMessage() throws JMSException, FileNotFoundException, IOException {
-
-        QueueSender send = session.createSender(que);
-        ObjectMessage tm;
-        String message = "Request Payload!";
-
-        tm = session.createObjectMessage(message);
-        tm.setStringProperty("jbesbfilename", "httprouter.log");
-        send.send(tm);
-        send.close();
-    }
-
-    public static void main(String args[]) throws Exception
-    {
-    	SendJMSMessage sm = new SendJMSMessage();
-    	sm.setupConnection();
-    	sm.sendAMessage();
-    	sm.stop();
-    }
-
-}
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/test/SendJMSMessage.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/test/SendJMSMessage.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/test/SendJMSMessage.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/https_2way_ssl/src/org/jboss/soa/esb/samples/https/test/SendJMSMessage.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,84 @@
+/*
+ * 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.
+ */
+package org.jboss.soa.esb.samples.https.test;
+
+import java.io.File;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+
+import javax.jms.JMSException;
+import javax.jms.ObjectMessage;
+import javax.jms.Queue;
+import javax.jms.QueueConnection;
+import javax.jms.QueueConnectionFactory;
+import javax.jms.QueueSender;
+import javax.jms.QueueSession;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+
+import org.jboss.soa.esb.util.FileUtil;
+
+public class SendJMSMessage {
+    QueueConnection conn;
+    QueueSession session;
+    Queue que;
+
+
+    public void setupConnection() throws JMSException, NamingException
+    {
+    	InitialContext iniCtx = new InitialContext();
+    	Object tmp = iniCtx.lookup("ConnectionFactory");
+    	QueueConnectionFactory qcf = (QueueConnectionFactory) tmp;
+    	conn = qcf.createQueueConnection();
+    	que = (Queue) iniCtx.lookup("queue/quickstart_https_2way_ssl_esb_runtest_gw");
+    	session = conn.createQueueSession(false, QueueSession.AUTO_ACKNOWLEDGE);
+    	conn.start();
+    	System.out.println("Connection Started");
+    }
+
+    public void stop() throws JMSException
+    {
+        conn.stop();
+        session.close();
+        conn.close();
+    }
+
+    public void sendAMessage() throws JMSException, FileNotFoundException, IOException {
+
+        QueueSender send = session.createSender(que);
+        ObjectMessage tm;
+        String message = "Request Payload!";
+
+        tm = session.createObjectMessage(message);
+        tm.setStringProperty("jbesbfilename", "httprouter.log");
+        send.send(tm);
+        send.close();
+    }
+
+    public static void main(String args[]) throws Exception
+    {
+    	SendJMSMessage sm = new SendJMSMessage();
+    	sm.setupConnection();
+    	sm.sendAMessage();
+    	sm.stop();
+    }
+
+}
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1 (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/build.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/build.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/build.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,20 +0,0 @@
-<project name="Quickstart_INVM_Transport_01" default="runtest" basedir=".">
-	
-	<description> 
-		${ant.project.name}
-		${line.separator}
-	</description>
-	
-	<!-- Import the base Ant build script... -->
-	<import file="../conf/base-build.xml"/>
-	
-	<target name="runtest" depends="compile"
-		description="sends a JMS message to the ESB">
-		<echo>Runs Test JMS Sender</echo>
-		<java fork="yes" classname="org.jboss.soa.esb.samples.quickstart.invm.test.SendJMSMessage" failonerror="true">
-			<arg value="Hello InVM Transport!!"/>
-			<classpath refid="exec-classpath"/>
-		</java>
-	</target>
-	
-</project>

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/build.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/build.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/build.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/build.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,20 @@
+<project name="Quickstart_INVM_Transport_01" default="runtest" basedir=".">
+	
+	<description> 
+		${ant.project.name}
+		${line.separator}
+	</description>
+	
+	<!-- Import the base Ant build script... -->
+	<import file="../conf/base-build.xml"/>
+	
+	<target name="runtest" depends="compile"
+		description="sends a JMS message to the ESB">
+		<echo>Runs Test JMS Sender</echo>
+		<java fork="yes" classname="org.jboss.soa.esb.samples.quickstart.invm.test.SendJMSMessage" failonerror="true">
+			<arg value="Hello InVM Transport!!"/>
+			<classpath refid="exec-classpath"/>
+		</java>
+	</target>
+	
+</project>

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/deployment.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/deployment.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/deployment.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,4 +0,0 @@
-<jbossesb-deployment>
-    <depends>jboss.esb.quickstart.destination:service=Queue,name=quickstart_invm_action_Request</depends>
-</jbossesb-deployment>
-

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/deployment.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/deployment.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/deployment.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/deployment.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,4 @@
+<jbossesb-deployment>
+    <depends>jboss.esb.quickstart.destination:service=Queue,name=quickstart_invm_action_Request</depends>
+</jbossesb-deployment>
+

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jbm-queue-service.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/jbm-queue-service.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jbm-queue-service.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<server>
-    <mbean code="org.jboss.jms.server.destination.QueueService"
-           name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_invm_action_Request"
-           xmbean-dd="xmdesc/Queue-xmbean.xml">
-        <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
-        <depends>jboss.messaging:service=PostOffice</depends>
-    </mbean>
-</server>

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jbm-queue-service.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/jbm-queue-service.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jbm-queue-service.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jbm-queue-service.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<server>
+    <mbean code="org.jboss.jms.server.destination.QueueService"
+           name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_invm_action_Request"
+           xmbean-dd="xmdesc/Queue-xmbean.xml">
+        <depends optional-attribute-name="ServerPeer">jboss.messaging:service=ServerPeer</depends>
+        <depends>jboss.messaging:service=PostOffice</depends>
+    </mbean>
+</server>

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jbmq-queue-service.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/jbmq-queue-service.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jbmq-queue-service.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<server>
-    <mbean code="org.jboss.mq.server.jmx.Queue"
-           name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_invm_action_Request">
-        <depends optional-attribute-name="DestinationManager">
-            jboss.mq:service=DestinationManager
-        </depends>
-    </mbean>
-</server>

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jbmq-queue-service.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/jbmq-queue-service.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jbmq-queue-service.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jbmq-queue-service.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<server>
+    <mbean code="org.jboss.mq.server.jmx.Queue"
+           name="jboss.esb.quickstart.destination:service=Queue,name=quickstart_invm_action_Request">
+        <depends optional-attribute-name="DestinationManager">
+            jboss.mq:service=DestinationManager
+        </depends>
+    </mbean>
+</server>

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jboss-esb.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/jboss-esb.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jboss-esb.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,48 +0,0 @@
-<?xml version = "1.0" encoding = "UTF-8"?>
-<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd"
-          parameterReloadSecs="5">
-
-    <providers>
-        <jms-provider name="JBossMQ" connection-factory="ConnectionFactory">
-
-            <jms-bus busid="quickstartGwChannel">
-                <jms-message-filter dest-type="QUEUE" dest-name="queue/quickstart_invm_action_Request"/>
-            </jms-bus>
-
-        </jms-provider>
-    </providers>
-
-    <services>
-
-        <!-- Set the invmScope attribute to "GLOBAL".  Make "GLOBAL" the default in the ESB properties file! -->
-        <service category="HelloWorld" name="Service1" description="Service 1" invmScope="GLOBAL">
-            <listeners>
-                <!-- So we just need to define a Gateway to the service... -->
-                <jms-listener name="JMS-Gateway" busidref="quickstartGwChannel" maxThreads="1" is-gateway="true"/>
-            </listeners>
-            <actions>
-                <action name="println" class="org.jboss.soa.esb.actions.SystemPrintln">
-                    <property name="message" value=" - > Service 1"/>
-                </action>
-
-                <!-- Route to the "Service 2" -->
-                <action name="routeAction" class="org.jboss.soa.esb.actions.StaticRouter">
-                    <property name="destinations">
-                        <route-to service-category="HelloWorld" service-name="Service2"/>
-                    </property>
-                </action>
-            </actions>
-        </service>
-
-        <service category="HelloWorld" name="Service2" description="Service 2" invmScope="GLOBAL">
-            <!-- Don't need to define any listeners for local InVM services... -->
-            <actions>
-                <action name="println" class="org.jboss.soa.esb.actions.SystemPrintln">
-                    <property name="message" value=" - - > Service 2"/>
-                </action>
-            </actions>
-        </service>
-
-    </services>
-
-</jbossesb>

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jboss-esb.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/jboss-esb.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jboss-esb.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jboss-esb.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,48 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd"
+          parameterReloadSecs="5">
+
+    <providers>
+        <jms-provider name="JBossMQ" connection-factory="ConnectionFactory">
+
+            <jms-bus busid="quickstartGwChannel">
+                <jms-message-filter dest-type="QUEUE" dest-name="queue/quickstart_invm_action_Request"/>
+            </jms-bus>
+
+        </jms-provider>
+    </providers>
+
+    <services>
+
+        <!-- Set the invmScope attribute to "GLOBAL".  Make "GLOBAL" the default in the ESB properties file! -->
+        <service category="HelloWorld" name="Service1" description="Service 1" invmScope="GLOBAL">
+            <listeners>
+                <!-- So we just need to define a Gateway to the service... -->
+                <jms-listener name="JMS-Gateway" busidref="quickstartGwChannel" maxThreads="1" is-gateway="true"/>
+            </listeners>
+            <actions>
+                <action name="println" class="org.jboss.soa.esb.actions.SystemPrintln">
+                    <property name="message" value=" - > Service 1"/>
+                </action>
+
+                <!-- Route to the "Service 2" -->
+                <action name="routeAction" class="org.jboss.soa.esb.actions.StaticRouter">
+                    <property name="destinations">
+                        <route-to service-category="HelloWorld" service-name="Service2"/>
+                    </property>
+                </action>
+            </actions>
+        </service>
+
+        <service category="HelloWorld" name="Service2" description="Service 2" invmScope="GLOBAL">
+            <!-- Don't need to define any listeners for local InVM services... -->
+            <actions>
+                <action name="println" class="org.jboss.soa.esb.actions.SystemPrintln">
+                    <property name="message" value=" - - > Service 2"/>
+                </action>
+            </actions>
+        </service>
+
+    </services>
+
+</jbossesb>

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jndi.properties
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/jndi.properties	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jndi.properties	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,5 +0,0 @@
-java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
-java.naming.provider.url=jnp://localhost:1099
-java.naming.factory.url.pkgs=org.jboss.naming
-java.naming.factory.url.pkgs=org.jnp.interfaces
-

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jndi.properties (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/jndi.properties)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jndi.properties	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/jndi.properties	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,5 @@
+java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
+java.naming.provider.url=jnp://localhost:1099
+java.naming.factory.url.pkgs=org.jboss.naming
+java.naming.factory.url.pkgs=org.jnp.interfaces
+

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/juddi.properties
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/juddi.properties	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/juddi.properties	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,69 +0,0 @@
-# jUDDI Registry Properties (used by RegistryServer)
-# see http://www.juddi.org for more information
-
-# The UDDI Operator Name
-juddi.operatorName = jUDDI.org
-
-# The i18n locale default codes
-juddi.i18n.languageCode = en
-juddi.i18n.countryCode = US
-
-# The UDDI DiscoveryURL Prefix
-juddi.discoveryURL = http://localhost:8080/juddi/uddiget.jsp?
-
-# The UDDI Operator Contact Email Address
-juddi.operatorEmailAddress = admin at juddi.org
-
-# The maximum name size and maximum number
-# of name elements allows in several of the
-# FindXxxx and SaveXxxx UDDI functions.
-juddi.maxNameLength=255
-juddi.maxNameElementsAllowed=5
-
-# The maximum number of UDDI artifacts allowed
-# per publisher. A value of '-1' indicates any 
-# number of artifacts is valid (These values can be
-# overridden at the individual publisher level).
-juddi.maxBusinessesPerPublisher=25
-juddi.maxServicesPerBusiness=20
-juddi.maxBindingsPerService=10
-juddi.maxTModelsPerPublisher=100
-
-# jUDDI Authentication module to use
-juddi.auth = org.apache.juddi.auth.DefaultAuthenticator
-
-# jUDDI DataStore module currently to use
-juddi.dataStore = org.apache.juddi.datastore.jdbc.JDBCDataStore
-
-# use a dataSource (if set to false a direct 
-# jdbc connection will be used.
-juddi.isUseDataSource=false
-juddi.jdbcDriver=com.mysql.jdbc.Driver
-juddi.jdbcUrl=jdbc:mysql://localhost:3306/juddi
-juddi.jdbcUsername=root
-juddi.jdbcPassword=admin
-# jUDDI DataSource to use
-# juddi.dataSource=java:comp/env/jdbc/MySqlDS
-
-# jUDDI UUIDGen implementation to use
-juddi.uuidgen = org.apache.juddi.uuidgen.DefaultUUIDGen
-
-# jUDDI Cryptor implementation to use
-juddi.cryptor = org.apache.juddi.cryptor.DefaultCryptor
- 
-# jUDDI Validator to use
-juddi.validator=org.apache.juddi.validator.DefaultValidator
-
-# jUDDI Proxy Properties (used by RegistryProxy)
-juddi.proxy.adminURL = http://localhost:8080/juddi/admin
-juddi.proxy.inquiryURL = http://localhost:8080/juddi/inquiry
-juddi.proxy.publishURL = http://localhost:8080/juddi/publish
-juddi.proxy.transportClass = org.apache.juddi.proxy.AxisTransport
-juddi.proxy.securityProvider = com.sun.net.ssl.internal.ssl.Provider
-juddi.proxy.protocolHandler = com.sun.net.ssl.internal.www.protocol
-
-# JNDI settings (used by RMITransport)
-java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
-java.naming.provider.url=jnp://localhost:1099
-java.naming.factory.url.pkgs=org.jboss.naming
-  

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/juddi.properties (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/juddi.properties)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/juddi.properties	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/juddi.properties	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,69 @@
+# jUDDI Registry Properties (used by RegistryServer)
+# see http://www.juddi.org for more information
+
+# The UDDI Operator Name
+juddi.operatorName = jUDDI.org
+
+# The i18n locale default codes
+juddi.i18n.languageCode = en
+juddi.i18n.countryCode = US
+
+# The UDDI DiscoveryURL Prefix
+juddi.discoveryURL = http://localhost:8080/juddi/uddiget.jsp?
+
+# The UDDI Operator Contact Email Address
+juddi.operatorEmailAddress = admin at juddi.org
+
+# The maximum name size and maximum number
+# of name elements allows in several of the
+# FindXxxx and SaveXxxx UDDI functions.
+juddi.maxNameLength=255
+juddi.maxNameElementsAllowed=5
+
+# The maximum number of UDDI artifacts allowed
+# per publisher. A value of '-1' indicates any 
+# number of artifacts is valid (These values can be
+# overridden at the individual publisher level).
+juddi.maxBusinessesPerPublisher=25
+juddi.maxServicesPerBusiness=20
+juddi.maxBindingsPerService=10
+juddi.maxTModelsPerPublisher=100
+
+# jUDDI Authentication module to use
+juddi.auth = org.apache.juddi.auth.DefaultAuthenticator
+
+# jUDDI DataStore module currently to use
+juddi.dataStore = org.apache.juddi.datastore.jdbc.JDBCDataStore
+
+# use a dataSource (if set to false a direct 
+# jdbc connection will be used.
+juddi.isUseDataSource=false
+juddi.jdbcDriver=com.mysql.jdbc.Driver
+juddi.jdbcUrl=jdbc:mysql://localhost:3306/juddi
+juddi.jdbcUsername=root
+juddi.jdbcPassword=admin
+# jUDDI DataSource to use
+# juddi.dataSource=java:comp/env/jdbc/MySqlDS
+
+# jUDDI UUIDGen implementation to use
+juddi.uuidgen = org.apache.juddi.uuidgen.DefaultUUIDGen
+
+# jUDDI Cryptor implementation to use
+juddi.cryptor = org.apache.juddi.cryptor.DefaultCryptor
+ 
+# jUDDI Validator to use
+juddi.validator=org.apache.juddi.validator.DefaultValidator
+
+# jUDDI Proxy Properties (used by RegistryProxy)
+juddi.proxy.adminURL = http://localhost:8080/juddi/admin
+juddi.proxy.inquiryURL = http://localhost:8080/juddi/inquiry
+juddi.proxy.publishURL = http://localhost:8080/juddi/publish
+juddi.proxy.transportClass = org.apache.juddi.proxy.AxisTransport
+juddi.proxy.securityProvider = com.sun.net.ssl.internal.ssl.Provider
+juddi.proxy.protocolHandler = com.sun.net.ssl.internal.www.protocol
+
+# JNDI settings (used by RMITransport)
+java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
+java.naming.provider.url=jnp://localhost:1099
+java.naming.factory.url.pkgs=org.jboss.naming
+  

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/listener.log
===================================================================

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/listener.log (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/listener.log)
===================================================================

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/log4j.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/log4j.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/log4j.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,78 +0,0 @@
-<?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"/>
-
-      <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="./listener.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>
-
-   <!-- ================ -->
-   <!-- Limit categories -->
-   <!-- ================ -->
-
-   <category name="org.jboss">
-      <priority value="WARN"/>
-   </category>
-   <category name="org.jboss.soa.esb">
-      <priority value="ERROR"/>
-   </category>
-   <category name="org.jboss.internal.soa.esb">
-      <priority value="ERROR"/>
-   </category>
-   <category name="org.apache">
-      <priority value="ERROR"/>
-   </category>
-   <category name="quickstart">
-      <priority value="INFO"/>
-   </category>
-   <!-- ======================= -->
-   <!-- Setup the Root category -->
-   <!-- ======================= -->
-
-   <root>
-      <appender-ref ref="CONSOLE"/>
-      <appender-ref ref="FILE"/>
-   </root>
-
-</log4j:configuration>

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/log4j.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/log4j.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/log4j.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/log4j.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,78 @@
+<?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"/>
+
+      <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="./listener.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>
+
+   <!-- ================ -->
+   <!-- Limit categories -->
+   <!-- ================ -->
+
+   <category name="org.jboss">
+      <priority value="WARN"/>
+   </category>
+   <category name="org.jboss.soa.esb">
+      <priority value="ERROR"/>
+   </category>
+   <category name="org.jboss.internal.soa.esb">
+      <priority value="ERROR"/>
+   </category>
+   <category name="org.apache">
+      <priority value="ERROR"/>
+   </category>
+   <category name="quickstart">
+      <priority value="INFO"/>
+   </category>
+   <!-- ======================= -->
+   <!-- Setup the Root category -->
+   <!-- ======================= -->
+
+   <root>
+      <appender-ref ref="CONSOLE"/>
+      <appender-ref ref="FILE"/>
+   </root>
+
+</log4j:configuration>

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/readme.txt
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/readme.txt	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/readme.txt	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,27 +0,0 @@
-Overview:
-=========
-  This Quickstart Demonstrates the InVM Transport.
-
-Running this quickstart:
-========================
-  Please refer to 'ant help-quickstarts' for prerequisites about the quickstarts
-  and a more detailed descripton of the different ways to run the quickstarts.
-
-To Run standalone mode:
-=======================
-  1. In a command terminal window in the quickstart folder type
-     'ant deploy-jms-dests'.
-  2. In a command terminal window in this folder ("Window1"), type 'ant run'.
-  3. Open another command terminal window in this folder ("Window2"), type
-     'ant runtest'.
-  4. Switch back to "Window1" to see the output from the ESB
-  5. When finished, interrupt the ESB using Ctrl-C and, in this folder
-     ("Window1"), type 'ant undeploy-jms-dests'.
-
-To Run '.esb' archive mode:
-===========================
-  1. In a command terminal window in this folder ("Window1"), type 'ant deploy'.
-  2. Open another command terminal window in this folder ("Window2"), type
-     'ant runtest'.
-  3. Switch back to Application Server console to see the output from the ESB
-  4. In this folder ("Window1"), type 'ant undeploy'.
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/readme.txt (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/readme.txt)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/readme.txt	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/readme.txt	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,27 @@
+Overview:
+=========
+  This Quickstart Demonstrates the InVM Transport.
+
+Running this quickstart:
+========================
+  Please refer to 'ant help-quickstarts' for prerequisites about the quickstarts
+  and a more detailed descripton of the different ways to run the quickstarts.
+
+To Run standalone mode:
+=======================
+  1. In a command terminal window in the quickstart folder type
+     'ant deploy-jms-dests'.
+  2. In a command terminal window in this folder ("Window1"), type 'ant run'.
+  3. Open another command terminal window in this folder ("Window2"), type
+     'ant runtest'.
+  4. Switch back to "Window1" to see the output from the ESB
+  5. When finished, interrupt the ESB using Ctrl-C and, in this folder
+     ("Window1"), type 'ant undeploy-jms-dests'.
+
+To Run '.esb' archive mode:
+===========================
+  1. In a command terminal window in this folder ("Window1"), type 'ant deploy'.
+  2. Open another command terminal window in this folder ("Window2"), type
+     'ant runtest'.
+  3. Switch back to Application Server console to see the output from the ESB
+  4. In this folder ("Window1"), type 'ant undeploy'.
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/src)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/src/org)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/src/org/jboss)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/src/org/jboss/soa)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm/test (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm/test)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm/test/SendJMSMessage.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm/test/SendJMSMessage.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm/test/SendJMSMessage.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,76 +0,0 @@
-/*
- * 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.
- */
-package org.jboss.soa.esb.samples.quickstart.invm.test;
-
-import javax.jms.JMSException;
-import javax.jms.ObjectMessage;
-import javax.jms.Queue;
-import javax.jms.QueueConnection;
-import javax.jms.QueueConnectionFactory;
-import javax.jms.QueueSender;
-import javax.jms.QueueSession;
-import javax.naming.InitialContext;
-import javax.naming.NamingException;
-
-public class SendJMSMessage {
-    QueueConnection conn;
-    QueueSession session;
-    Queue que;
-    
-    
-    public void setupConnection() throws JMSException, NamingException
-    {
-    	InitialContext iniCtx = new InitialContext();
-    	Object tmp = iniCtx.lookup("ConnectionFactory");
-    	QueueConnectionFactory qcf = (QueueConnectionFactory) tmp;
-    	conn = qcf.createQueueConnection();
-    	que = (Queue) iniCtx.lookup("queue/quickstart_invm_action_Request");
-    	session = conn.createQueueSession(false, QueueSession.AUTO_ACKNOWLEDGE);
-    	conn.start();
-    	System.out.println("Connection Started");
-    }
-    
-    public void stop() throws JMSException 
-    { 
-        conn.stop();
-        session.close();
-        conn.close();
-    }
-    
-    public void sendAMessage(String msg) throws JMSException {
-    	
-        QueueSender send = session.createSender(que);        
-        ObjectMessage tm = session.createObjectMessage(msg);
-        send.send(tm);        
-        send.close();
-    }
-       
-    
-    public static void main(String args[]) throws Exception
-    {        	    	
-    	SendJMSMessage sm = new SendJMSMessage();
-    	sm.setupConnection();
-    	sm.sendAMessage(args[0]); 
-    	sm.stop();
-    	
-    }
-    
-}
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm/test/SendJMSMessage.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm/test/SendJMSMessage.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm/test/SendJMSMessage.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/invm_transport1/src/org/jboss/soa/esb/samples/quickstart/invm/test/SendJMSMessage.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,76 @@
+/*
+ * 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.
+ */
+package org.jboss.soa.esb.samples.quickstart.invm.test;
+
+import javax.jms.JMSException;
+import javax.jms.ObjectMessage;
+import javax.jms.Queue;
+import javax.jms.QueueConnection;
+import javax.jms.QueueConnectionFactory;
+import javax.jms.QueueSender;
+import javax.jms.QueueSession;
+import javax.naming.InitialContext;
+import javax.naming.NamingException;
+
+public class SendJMSMessage {
+    QueueConnection conn;
+    QueueSession session;
+    Queue que;
+    
+    
+    public void setupConnection() throws JMSException, NamingException
+    {
+    	InitialContext iniCtx = new InitialContext();
+    	Object tmp = iniCtx.lookup("ConnectionFactory");
+    	QueueConnectionFactory qcf = (QueueConnectionFactory) tmp;
+    	conn = qcf.createQueueConnection();
+    	que = (Queue) iniCtx.lookup("queue/quickstart_invm_action_Request");
+    	session = conn.createQueueSession(false, QueueSession.AUTO_ACKNOWLEDGE);
+    	conn.start();
+    	System.out.println("Connection Started");
+    }
+    
+    public void stop() throws JMSException 
+    { 
+        conn.stop();
+        session.close();
+        conn.close();
+    }
+    
+    public void sendAMessage(String msg) throws JMSException {
+    	
+        QueueSender send = session.createSender(que);        
+        ObjectMessage tm = session.createObjectMessage(msg);
+        send.send(tm);        
+        send.close();
+    }
+       
+    
+    public static void main(String args[]) throws Exception
+    {        	    	
+    	SendJMSMessage sm = new SendJMSMessage();
+    	sm.setupConnection();
+    	sm.sendAMessage(args[0]); 
+    	sm.stop();
+    	
+    }
+    
+}
\ No newline at end of file

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/jms_secured/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/jms_secured/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/jms_secured/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/jms_transacted/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/jms_transacted/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/jms_transacted/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/load_generator/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/load_generator/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/load_generator/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/messagefilter/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/messagefilter/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/messagefilter/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/messagestore/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/messagestore/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/messagestore/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/native_client/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/native_client/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/native_client/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/recipient_list/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/recipient_list/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/recipient_list/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/scheduled_services/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/scheduled_services/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/scheduled_services/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/scripting_groovy/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/scripting_groovy/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/scripting_groovy/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/simple_cbr/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/simple_cbr/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/simple_cbr/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/spring_aop/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/spring_aop/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/spring_aop/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/spring_helloworld/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/spring_helloworld/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/spring_helloworld/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/spring_jpetstore/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/spring_jpetstore/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/spring_jpetstore/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/static_router/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/static_router/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/static_router/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_CSV2XML/jboss-esb.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_CSV2XML/jboss-esb.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_CSV2XML/jboss-esb.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -18,8 +18,7 @@
 
 	<services>
 
-		<service category="QuickstartTransformCSV" name="SimpleListener"
-			description="Hello World">
+		<service category="QuickstartTransformCSV" name="SimpleListener"  description="Hello World">
 			<listeners>
 				<jms-listener name="CSVJMS-Gateway" busidref="quickstartCSVGwChannel" maxThreads="1" is-gateway="true"/>
 				<jms-listener name="CSVquickstart" busidref="quickstartCSVEsbChannel" maxThreads="1" />

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_CSV2XML/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_CSV2XML/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_CSV2XML/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_EDI2XML_Groovy_XSLT/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_EDI2XML_Groovy_XSLT/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_EDI2XML_Groovy_XSLT/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2POJO/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2POJO/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2POJO/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2POJO2/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2POJO2/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2POJO2/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2XML_date_manipulation/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2XML_date_manipulation/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2XML_date_manipulation/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2XML_date_manipulation/smooks-res.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2XML_date_manipulation/smooks-res.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2XML_date_manipulation/smooks-res.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -8,6 +8,7 @@
 	<resource-config selector="Order">
         <resource>org.milyn.javabean.BeanPopulator</resource>
 		<param name="beanId">orderDate</param>
+		<param name="VisitPhase">ASSEMBLY</param>
 		<param name="beanClass">org.jboss.soa.esb.samples.quickstart.transformxml2xmldatemanipulation.test.OrderDate</param>
         <param name="bindings">
             <binding property="orderDate" selector="Order @orderDate" type="LongDate"/>

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2XML_simple/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2XML_simple/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/transform_XML2XML_simple/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/two_servers/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/two_servers/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/two_servers/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/webservice_consumer1/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/webservice_consumer1/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/webservice_consumer1/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/webservice_consumer2/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/webservice_consumer2/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/webservice_consumer2/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/wiretap/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/wiretap/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/samples/quickstarts/wiretap/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.type" value="jboss"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">      
     	<property name="org.jboss.soa.esb.registry.queryManagerURI"     		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/base-project-build.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/base-project-build.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/base-project-build.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -123,6 +123,7 @@
 			<!-- emma jvm args -->
 			<jvmarg value="-Demma.coverage.out.file=${coverage.dir}/coverage.emma" />
         	<sysproperty key="log4j.configuration" value="log4j.xml"/>
+            <sysproperty key="jboss.esb.invm.scope.default" value="NONE"/>
         </junit>
         <junitreport>
             <fileset dir="build/tests/report">

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/jbossesb/src/test/java/org/jboss/soa/esb/persistence/tests/ScheduledRedeliveryUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/jbossesb/src/test/java/org/jboss/soa/esb/persistence/tests/ScheduledRedeliveryUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/jbossesb/src/test/java/org/jboss/soa/esb/persistence/tests/ScheduledRedeliveryUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -21,6 +21,7 @@
 
 import java.io.File;
 import java.io.UnsupportedEncodingException;
+import java.io.IOException;
 import java.net.URI;
 import java.sql.Connection;
 import java.sql.Statement;
@@ -72,7 +73,7 @@
 public class ScheduledRedeliveryUnitTest{
     
     @Test
-    public void test_listener_config() throws UnsupportedEncodingException {
+    public void test_listener_config() throws IOException, SAXException, ConfigurationException {
         ESBConfigUtil configUtil = new ESBConfigUtil(getClass().getResourceAsStream("config-01.xml"));
         String config = configUtil.getListenerConfig("simple-schedule-listener").toString();
         assertNotNull(config);
@@ -112,7 +113,7 @@
         }
     }
 
-    private void runTestConfig(String configName, long upTime) throws ParamRepositoryException, ConfigurationException, ManagedLifecycleException, SAXException, InterruptedException {
+    private void runTestConfig(String configName, long upTime) throws ParamRepositoryException, ConfigurationException, ManagedLifecycleException, SAXException, InterruptedException, IOException {
         ESBConfigUtil configUtil = new ESBConfigUtil(getClass().getResourceAsStream(configName));
 
         configUtil.startController();

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/jbossesb/src/test/resources/jbossesb-unittest-properties.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/jbossesb/src/test/resources/jbossesb-unittest-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/jbossesb/src/test/resources/jbossesb-unittest-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -34,6 +34,7 @@
 		<property name="org.jboss.soa.esb.jndi.server.context.factory" value="org.jnp.interfaces.NamingContextFactory"/>
 		<property name="org.jboss.soa.esb.jndi.server.url" value="localhost"/>
 		<property name="org.jboss.soa.esb.persistence.connection.factory" 	value="org.jboss.internal.soa.esb.persistence.format.MessageStoreFactoryImpl"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
     </properties>
     <properties name="registry">
     	<property name="org.jboss.soa.esb.registry.queryManagerURI" value="org.apache.juddi.registry.local.InquiryService#inquire"/>

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/antlr-2.7.2.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/antlr-2.7.2.jar)
===================================================================
(Binary files differ)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/freemarker-2.3.1.jar
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/freemarker-2.3.9.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/freemarker-2.3.9.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/groovy-all-1.0.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/groovy-all-1.0.jar)
===================================================================
(Binary files differ)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-commons-0.9.jar
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-commons-1.0.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/milyn-commons-1.0.jar)
===================================================================
(Binary files differ)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-edisax-0.2.jar
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-edisax-0.3.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/milyn-edisax-0.3.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-edisax-model-0.3.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/milyn-edisax-model-0.3.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-magger-0.1.3.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/milyn-magger-0.1.3.jar)
===================================================================
(Binary files differ)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-core-0.9.jar
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-core-1.0.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/milyn-smooks-core-1.0.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-css-1.0.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/milyn-smooks-css-1.0.jar)
===================================================================
(Binary files differ)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-csv-0.2.jar
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-csv-1.0.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/milyn-smooks-csv-1.0.jar)
===================================================================
(Binary files differ)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-edi-0.2.jar
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-edi-1.0.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/milyn-smooks-edi-1.0.jar)
===================================================================
(Binary files differ)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-javabean-0.3.jar
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-javabean-1.0.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/milyn-smooks-javabean-1.0.jar)
===================================================================
(Binary files differ)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-misc-0.2.1.jar
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-misc-1.0.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/milyn-smooks-misc-1.0.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-routing-1.0.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/milyn-smooks-routing-1.0.jar)
===================================================================
(Binary files differ)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-scripting-0.1.jar
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-scripting-1.0.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/milyn-smooks-scripting-1.0.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-servlet-1.0.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/milyn-smooks-servlet-1.0.jar)
===================================================================
(Binary files differ)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-templating-0.3.jar
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-smooks-templating-1.0.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/milyn-smooks-templating-1.0.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/milyn-tinak-0.8.1.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/milyn-tinak-0.8.1.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/mvel-1.2.24-java1.5.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/mvel-1.2.24-java1.5.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/nekohtml-0.9.5.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/nekohtml-0.9.5.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/ognl-2.6.9.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/ognl-2.6.9.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/opencsv-1.8.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/opencsv-1.8.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/stringtemplate-2.2.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/stringtemplate-2.2.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/xalan-2.7.0.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/xalan-2.7.0.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/xbean-2.2.0.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/xbean-2.2.0.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/xml-apis-1.0.b2.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/xml-apis-1.0.b2.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/xmlbeans-jsr173-api-2.0-dev.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/xmlbeans-jsr173-api-2.0-dev.jar)
===================================================================
(Binary files differ)

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/lib/ext/xpp3_min-1.1.3.4.O.jar (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/lib/ext/xpp3_min-1.1.3.4.O.jar)
===================================================================
(Binary files differ)

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/converters/SmooksTransformer.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/converters/SmooksTransformer.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/converters/SmooksTransformer.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -314,7 +314,7 @@
 	
 	            long start = System.currentTimeMillis();
                 Smooks smooks = smooksInstanceManager.getSmooksInstance();
-                StandaloneExecutionContext executionContext;
+                ExecutionContext executionContext;
 
                 // Register the message profile with Smooks (if there is one and it's not already registered)...
                 messageProfile = registerMessageProfile(message, smooks);
@@ -365,7 +365,7 @@
     	return message;
     }
 
-    private void setTransformationOutput(Message message, String transformedMessage, StandaloneExecutionContext executionContext) throws ActionProcessingException {
+    private void setTransformationOutput(Message message, String transformedMessage, ExecutionContext executionContext) throws ActionProcessingException {
         // Set the transformation text output...
         try {
             payloadProxy.setPayload(message, transformedMessage);

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks/SmooksAction.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks/SmooksAction.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks/SmooksAction.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,253 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.actions.smooks;
-
-import org.jboss.soa.esb.ConfigurationException;
-import org.jboss.soa.esb.actions.AbstractActionPipelineProcessor;
-import org.jboss.soa.esb.actions.ActionLifecycleException;
-import org.jboss.soa.esb.actions.ActionProcessingException;
-import org.jboss.soa.esb.helpers.ConfigTree;
-import org.jboss.soa.esb.listeners.message.MessageDeliverException;
-import org.jboss.soa.esb.message.Message;
-import org.jboss.soa.esb.message.MessagePayloadProxy;
-import org.milyn.Smooks;
-import org.milyn.event.report.HtmlReportGenerator;
-import org.milyn.container.ExecutionContext;
-import org.milyn.container.plugin.PayloadProcessor;
-import org.milyn.container.plugin.ResultType;
-
-import java.io.Serializable;
-import java.io.IOException;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Set;
-
-/**
- * Smooks pipeline processor action.
- * <p/>
- * Usage:
- * <pre>
- * &lt;action name="transform" class="org.jboss.soa.esb.actions.smooks.SmooksAction"&gt;
- * 	&lt;property name="smooksConfig" value="smooks-config.xml" /&gt;
- * &lt;/action&gt;
- *
- * Optional properties:
- * &lt;property name="get-payload-location" value="input" /&gt;
- * &lt;property name="set-payload-location" value="ouput" /&gt;
- * &lt;property name="excludeNonSerializables" value="false" /&gt;
- * &lt;property name="resultType" value="STRING" /&gt;
- * &lt;property name="reportPath" value="/tmp/smooks-report.html" /&gt;
- * </pre>
- * 
- * Description of configuration properties:
- * <ul>
- * <li><i>smooksConfig</i> - the Smooks configuration file. Can be a path on the file system or on the classpath.
- * <li><i>get-payload-location</i> - the body location which contains the object to be transformed.
- * <li><i>set-payload-location</i> - the body location where the transformed object will be placed.
- * <li><i>excludeNonSerializables</i> - if true, non serializable attributes from the Smooks ExecutionContext will no be included. Default is true.
- * <li><i>resultType</i> - type of result expected from Smooks ("STRING", "BYTES", "JAVA", "NORESULT"). Default is "STRING".
- * <li><i>javaResultBeanId</i> - specifies the Smooks bean context beanId to be mapped as the result when the resultType is "JAVA".  If not specified,
- *                               the whole bean context bean Map is mapped as the result. 
- * <li><i>reportPath</i> - specifies the path and file name for generating a Smooks Execution Report.  This is a development tool.
- * </ul>
- * After Smooks has performed the filtering the process method will make the attributes that have been set in the
- * the ExecutionContext available for other actions in the ESB.
- * <p/>
- * The attributes (Map) can be accessed by using the {@link #EXECUTION_CONTEXT_ATTR_MAP_KEY} key like this:
- * <pre>
- * message.getBody().get( EXECUTION_CONTEXT_ATTR_MAP_KEY );
- * </pre>
- *
- * <h3>Specifying the Source and Result Types</h3>
- * From the ESB Message data type, this action is able to automatically determine the type of
- * {@link javax.xml.transform.Source} to use (via the Smooks {@link PayloadProcessor}).  The
- * {@link javax.xml.transform.Result} type to be used can be specified via the "resultType"
- * property, as outlined above.
- * <p/>
- * It is expected that the above mechanism will be satisfactory for most usecase, but not all.
- * For the other usecases, this action supports {@link org.milyn.container.plugin.SourceResult}
- * payloads on the ESB Message.  This allows you to manually specify other Source and Result
- * types, which is of particular interest with respect to the Result type e.g. for streaming
- * the Result to a file etc.
- * 
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- * @author <a href="mailto:daniel.bevenius at gmail.com">daniel.bevenius at gmail.com</a>
- */
-public class SmooksAction extends AbstractActionPipelineProcessor 
-{
-    public static final String EXECUTION_CONTEXT_ATTR_MAP_KEY = "SmooksExecutionContext";
-    
-    private Smooks smooks;
-    
-	private PayloadProcessor payloadProcessor;
-
-	private MessagePayloadProxy payloadProxy;
-
-	private boolean excludeNonSerializables;
-
-    private String reportPath;
-
-    // public 
-    
-    public SmooksAction( final ConfigTree configTree ) throws ConfigurationException 
-    {
-        final String smooksConfig = configTree.getRequiredAttribute("smooksConfig");
-        try 
-        {
-            smooks = new Smooks(smooksConfig);
-        }
-        catch (Exception e) 
-        {
-            throw new ConfigurationException("Failed to create Smooks instance for config '" + smooksConfig + "'.", e);
-        }
-
-        // Create the Smooks PayloadProcessor...
-        String resultTypeConfig = configTree.getAttribute("resultType", "STRING");
-        ResultType resultType;
-        try {
-            resultType = ResultType.valueOf(resultTypeConfig);
-        } catch(IllegalArgumentException e) {
-            throw new ConfigurationException("Invalid 'resultType' config value '" + resultTypeConfig + "'.  Valid values are: " + Arrays.asList(ResultType.values()));
-        }
-        payloadProcessor = new PayloadProcessor( smooks, resultType );
-        if(resultType == ResultType.JAVA) {
-            String javaResultBeanId = configTree.getAttribute("javaResultBeanId");
-            if(javaResultBeanId != null) {
-                payloadProcessor.setJavaResultBeanId(javaResultBeanId);
-            }
-        }
-
-        payloadProxy = new MessagePayloadProxy( configTree );
-        excludeNonSerializables = Boolean.valueOf( configTree.getAttribute( "excludeNonSerializables", "true" ) );
-
-        reportPath = configTree.getAttribute("reportPath");
-    }
-    
-    /**
-     * Executes the actual Smooks tranformation.
-     * 
-     * @param message	The ESB Message object
-     * 
-     * @return			The ESB Message object with the output of the transformation.
-     * 					
-     */
-	public Message process( final Message message) throws ActionProcessingException 
-	{
-		//	Create Smooks ExecutionContext.
-        final ExecutionContext executionContext = createExecutionContext( smooks );
-
-        if(reportPath != null) {
-            try {
-                executionContext.setEventListener(new HtmlReportGenerator(reportPath));
-            } catch (IOException e) {
-                throw new ActionProcessingException("Failed to create HtmlReportGenerator instance.", e);
-            }
-        }
-        
-        //	Use the Smooks PayloadProcessor to execute the transformation....
-        final Object newPayload = payloadProcessor.process( extractPayload( message), executionContext );
-        
-        //	Set the ExecutionContext's attributes on the message instance so other actions can access them.
-        message.getBody().add( EXECUTION_CONTEXT_ATTR_MAP_KEY, getSerializableObjectsMap( executionContext.getAttributes() ) );
-        
-        return packagePayload( newPayload, message );
-    }
-
-    @Override
-    public void destroy() throws ActionLifecycleException 
-    {
-        smooks.close();
-        super.destroy();
-    }
-    
-    // protected
-    
-    /*
-     * 	Hook for subclasses to control how the execution context is created. 
-     * 	Might be useful for Actions that use profiles for example. 
-     */
-	protected ExecutionContext createExecutionContext( final Smooks smooks )
-	{
-		return smooks.createExecutionContext();
-	}
-    
-    /*
-     * 	Hook for subclasses to extract the message payload in
-     * 	any way they see fit.
-     */
-    protected Object extractPayload(final Message message ) throws ActionProcessingException 
-    {
-    	try
-		{
-			return payloadProxy.getPayload( message );
-		} 
-    	catch (MessageDeliverException e)
-		{
-    		throw new ActionProcessingException("MessgeDeliveryException while trying to retrieve the message payload:", e);
-		}
-    }
-    
-    /*
-     * 	Hook for subclasses so they can control what and where the payload
-     * 	is added to the ESB Message object.
-     */
-    protected Message packagePayload( final Object payload, Message message ) throws ActionProcessingException
-    {
-    	try
-		{
-			payloadProxy.setPayload( message, payload );
-            return message;
-		} 
-    	catch (MessageDeliverException e)
-		{
-    		throw new ActionProcessingException("MessgeDeliveryException while trying to retrieve the message payload:", e);
-			
-		}
-    }
-
-    /**
-     * Will return a Map containing only the Serializable objects 
-     * that exist in the passed-in Map if {@link #excludeNonSerializables} is true.
-     * 
-     * @param smooksAttribuesMap 	- Map containing attributes from the Smooks ExecutionContext
-     * @return Map	- Map containing only the Serializable objects from the passed-in map.
-     */
-    @SuppressWarnings( "unchecked" )
-	protected Map getSerializableObjectsMap( final Map smooksAttribuesMap )
-	{
-    	if ( !excludeNonSerializables )
-    		return smooksAttribuesMap;
-    	
-		Map smooksExecutionContextMap = new HashMap();
-		
-		Set<Map.Entry> s = smooksAttribuesMap.entrySet();
-		for (Map.Entry me : s) 
-		{
-			Object value = me.getValue();
-			if( value instanceof Serializable )
-			{
-				smooksExecutionContextMap.put( me.getKey(), value );
-			}
-		}
-		return smooksExecutionContextMap;
-	}
-    
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks/SmooksAction.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks/SmooksAction.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks/SmooksAction.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/main/java/org/jboss/soa/esb/actions/smooks/SmooksAction.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,253 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.actions.smooks;
+
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.actions.AbstractActionPipelineProcessor;
+import org.jboss.soa.esb.actions.ActionLifecycleException;
+import org.jboss.soa.esb.actions.ActionProcessingException;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.listeners.message.MessageDeliverException;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.MessagePayloadProxy;
+import org.milyn.Smooks;
+import org.milyn.event.report.HtmlReportGenerator;
+import org.milyn.container.ExecutionContext;
+import org.milyn.container.plugin.PayloadProcessor;
+import org.milyn.container.plugin.ResultType;
+
+import java.io.Serializable;
+import java.io.IOException;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * Smooks pipeline processor action.
+ * <p/>
+ * Usage:
+ * <pre>
+ * &lt;action name="transform" class="org.jboss.soa.esb.actions.smooks.SmooksAction"&gt;
+ * 	&lt;property name="smooksConfig" value="smooks-config.xml" /&gt;
+ * &lt;/action&gt;
+ *
+ * Optional properties:
+ * &lt;property name="get-payload-location" value="input" /&gt;
+ * &lt;property name="set-payload-location" value="ouput" /&gt;
+ * &lt;property name="excludeNonSerializables" value="false" /&gt;
+ * &lt;property name="resultType" value="STRING" /&gt;
+ * &lt;property name="reportPath" value="/tmp/smooks-report.html" /&gt;
+ * </pre>
+ * 
+ * Description of configuration properties:
+ * <ul>
+ * <li><i>smooksConfig</i> - the Smooks configuration file. Can be a path on the file system or on the classpath.
+ * <li><i>get-payload-location</i> - the body location which contains the object to be transformed.
+ * <li><i>set-payload-location</i> - the body location where the transformed object will be placed.
+ * <li><i>excludeNonSerializables</i> - if true, non serializable attributes from the Smooks ExecutionContext will no be included. Default is true.
+ * <li><i>resultType</i> - type of result expected from Smooks ("STRING", "BYTES", "JAVA", "NORESULT"). Default is "STRING".
+ * <li><i>javaResultBeanId</i> - specifies the Smooks bean context beanId to be mapped as the result when the resultType is "JAVA".  If not specified,
+ *                               the whole bean context bean Map is mapped as the result. 
+ * <li><i>reportPath</i> - specifies the path and file name for generating a Smooks Execution Report.  This is a development tool.
+ * </ul>
+ * After Smooks has performed the filtering the process method will make the attributes that have been set in the
+ * the ExecutionContext available for other actions in the ESB.
+ * <p/>
+ * The attributes (Map) can be accessed by using the {@link #EXECUTION_CONTEXT_ATTR_MAP_KEY} key like this:
+ * <pre>
+ * message.getBody().get( EXECUTION_CONTEXT_ATTR_MAP_KEY );
+ * </pre>
+ *
+ * <h3>Specifying the Source and Result Types</h3>
+ * From the ESB Message data type, this action is able to automatically determine the type of
+ * {@link javax.xml.transform.Source} to use (via the Smooks {@link PayloadProcessor}).  The
+ * {@link javax.xml.transform.Result} type to be used can be specified via the "resultType"
+ * property, as outlined above.
+ * <p/>
+ * It is expected that the above mechanism will be satisfactory for most usecase, but not all.
+ * For the other usecases, this action supports {@link org.milyn.container.plugin.SourceResult}
+ * payloads on the ESB Message.  This allows you to manually specify other Source and Result
+ * types, which is of particular interest with respect to the Result type e.g. for streaming
+ * the Result to a file etc.
+ * 
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ * @author <a href="mailto:daniel.bevenius at gmail.com">daniel.bevenius at gmail.com</a>
+ */
+public class SmooksAction extends AbstractActionPipelineProcessor 
+{
+    public static final String EXECUTION_CONTEXT_ATTR_MAP_KEY = "SmooksExecutionContext";
+    
+    private Smooks smooks;
+    
+	private PayloadProcessor payloadProcessor;
+
+	private MessagePayloadProxy payloadProxy;
+
+	private boolean excludeNonSerializables;
+
+    private String reportPath;
+
+    // public 
+    
+    public SmooksAction( final ConfigTree configTree ) throws ConfigurationException 
+    {
+        final String smooksConfig = configTree.getRequiredAttribute("smooksConfig");
+        try 
+        {
+            smooks = new Smooks(smooksConfig);
+        }
+        catch (Exception e) 
+        {
+            throw new ConfigurationException("Failed to create Smooks instance for config '" + smooksConfig + "'.", e);
+        }
+
+        // Create the Smooks PayloadProcessor...
+        String resultTypeConfig = configTree.getAttribute("resultType", "STRING");
+        ResultType resultType;
+        try {
+            resultType = ResultType.valueOf(resultTypeConfig);
+        } catch(IllegalArgumentException e) {
+            throw new ConfigurationException("Invalid 'resultType' config value '" + resultTypeConfig + "'.  Valid values are: " + Arrays.asList(ResultType.values()));
+        }
+        payloadProcessor = new PayloadProcessor( smooks, resultType );
+        if(resultType == ResultType.JAVA) {
+            String javaResultBeanId = configTree.getAttribute("javaResultBeanId");
+            if(javaResultBeanId != null) {
+                payloadProcessor.setJavaResultBeanId(javaResultBeanId);
+            }
+        }
+
+        payloadProxy = new MessagePayloadProxy( configTree );
+        excludeNonSerializables = Boolean.valueOf( configTree.getAttribute( "excludeNonSerializables", "true" ) );
+
+        reportPath = configTree.getAttribute("reportPath");
+    }
+    
+    /**
+     * Executes the actual Smooks tranformation.
+     * 
+     * @param message	The ESB Message object
+     * 
+     * @return			The ESB Message object with the output of the transformation.
+     * 					
+     */
+	public Message process( final Message message) throws ActionProcessingException 
+	{
+		//	Create Smooks ExecutionContext.
+        final ExecutionContext executionContext = createExecutionContext( smooks );
+
+        if(reportPath != null) {
+            try {
+                executionContext.setEventListener(new HtmlReportGenerator(reportPath));
+            } catch (IOException e) {
+                throw new ActionProcessingException("Failed to create HtmlReportGenerator instance.", e);
+            }
+        }
+        
+        //	Use the Smooks PayloadProcessor to execute the transformation....
+        final Object newPayload = payloadProcessor.process( extractPayload( message), executionContext );
+        
+        //	Set the ExecutionContext's attributes on the message instance so other actions can access them.
+        message.getBody().add( EXECUTION_CONTEXT_ATTR_MAP_KEY, getSerializableObjectsMap( executionContext.getAttributes() ) );
+        
+        return packagePayload( newPayload, message );
+    }
+
+    @Override
+    public void destroy() throws ActionLifecycleException 
+    {
+        smooks.close();
+        super.destroy();
+    }
+    
+    // protected
+    
+    /*
+     * 	Hook for subclasses to control how the execution context is created. 
+     * 	Might be useful for Actions that use profiles for example. 
+     */
+	protected ExecutionContext createExecutionContext( final Smooks smooks )
+	{
+		return smooks.createExecutionContext();
+	}
+    
+    /*
+     * 	Hook for subclasses to extract the message payload in
+     * 	any way they see fit.
+     */
+    protected Object extractPayload(final Message message ) throws ActionProcessingException 
+    {
+    	try
+		{
+			return payloadProxy.getPayload( message );
+		} 
+    	catch (MessageDeliverException e)
+		{
+    		throw new ActionProcessingException("MessgeDeliveryException while trying to retrieve the message payload:", e);
+		}
+    }
+    
+    /*
+     * 	Hook for subclasses so they can control what and where the payload
+     * 	is added to the ESB Message object.
+     */
+    protected Message packagePayload( final Object payload, Message message ) throws ActionProcessingException
+    {
+    	try
+		{
+			payloadProxy.setPayload( message, payload );
+            return message;
+		} 
+    	catch (MessageDeliverException e)
+		{
+    		throw new ActionProcessingException("MessgeDeliveryException while trying to retrieve the message payload:", e);
+			
+		}
+    }
+
+    /**
+     * Will return a Map containing only the Serializable objects 
+     * that exist in the passed-in Map if {@link #excludeNonSerializables} is true.
+     * 
+     * @param smooksAttribuesMap 	- Map containing attributes from the Smooks ExecutionContext
+     * @return Map	- Map containing only the Serializable objects from the passed-in map.
+     */
+    @SuppressWarnings( "unchecked" )
+	protected Map getSerializableObjectsMap( final Map smooksAttribuesMap )
+	{
+    	if ( !excludeNonSerializables )
+    		return smooksAttribuesMap;
+    	
+		Map smooksExecutionContextMap = new HashMap();
+		
+		Set<Map.Entry> s = smooksAttribuesMap.entrySet();
+		for (Map.Entry me : s) 
+		{
+			Object value = me.getValue();
+			if( value instanceof Serializable )
+			{
+				smooksExecutionContextMap.put( me.getKey(), value );
+			}
+		}
+		return smooksExecutionContextMap;
+	}
+    
+}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SmooksActionUnitTest.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SmooksActionUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SmooksActionUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,181 +0,0 @@
-/*
- * 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.actions.smooks;
-
-import static org.junit.Assert.*;
-
-import java.util.Hashtable;
-import java.util.Map;
-
-import org.jboss.soa.esb.ConfigurationException;
-import org.jboss.soa.esb.actions.ActionProcessingException;
-import org.jboss.soa.esb.helpers.ConfigTree;
-import org.jboss.soa.esb.message.Message;
-import org.jboss.soa.esb.message.MessagePayloadProxy;
-import org.jboss.soa.esb.message.format.MessageFactory;
-import org.junit.Before;
-import org.junit.Test;
-
-import junit.framework.JUnit4TestAdapter;
-
-/**
- * Unit test for {@link SmooksAction}
- * 
- * @author <a href="mailto:daniel.bevenius at gmail.com">Daniel Bevenius</a>			
- *
- */
-public class SmooksActionUnitTest
-{
-	private String expectedString = "<test></test>";
-	private ConfigTree config;
-	
-	@Test
-	public void process() throws ConfigurationException, ActionProcessingException
-	{
-		SmooksAction action = new SmooksAction( config );
-		Message message = MessageFactory.getInstance().getMessage();
-		message.getBody().add( expectedString );
-		
-		Message process = action.process( message );
-		
-		String actualString = (String)process.getBody().get();
-		assertEquals( expectedString, actualString );
-	}
-	
-	@Test
-	public void processWithPayloadLocation() throws ConfigurationException, ActionProcessingException
-	{
-		config.setAttribute( MessagePayloadProxy.GET_PAYLOAD_LOCATION, "input" );
-		SmooksAction action = new SmooksAction( config );
-		Message message = MessageFactory.getInstance().getMessage();
-		message.getBody().add( "input", expectedString );
-		
-		Message process = action.process( message );
-		
-		String actualString = (String)process.getBody().get();
-		assertEquals( expectedString, actualString );
-	}
-	
-	@Test
-	public void processWithOutLocation() throws ConfigurationException, ActionProcessingException
-	{
-		config.setAttribute( MessagePayloadProxy.SET_PAYLOAD_LOCATION, "output" );
-		SmooksAction action = new SmooksAction( config );
-		Message message = MessageFactory.getInstance().getMessage();
-		message.getBody().add( expectedString );
-		
-		Message process = action.process( message );
-		
-		String actualString = (String)process.getBody().get( "output" );
-		assertEquals( expectedString, actualString );
-	}
-	
-	@Test
-	public void getExecutionContextAttributes() throws ConfigurationException, ActionProcessingException
-	{
-		SmooksAction action = new SmooksAction( config );
-		Message message = MessageFactory.getInstance().getMessage();
-		message.getBody().add( expectedString );
-		
-		Message process = action.process( message );
-		
-		Object object = process.getBody().get( SmooksAction.EXECUTION_CONTEXT_ATTR_MAP_KEY );
-		assertTrue( object instanceof Map );
-	}
-	
-	@Test
-	@SuppressWarnings("unchecked")
-	public void getExecutionContextAttributesNonSerializable() throws ConfigurationException, ActionProcessingException
-	{
-		Map map = new Hashtable();
-		map.put( "test1", "testing" );
-		map.put( "test2", new NonSerializableClass() );
-		SmooksAction action = new SmooksAction( config );
-		
-		Map serializableObjects = action.getSerializableObjectsMap( map );
-		
-		assertTrue( serializableObjects.containsKey( "test1" ));
-		assertTrue( !serializableObjects.containsKey( "test2" ));
-	}
-	
-	@Test
-	@SuppressWarnings("unchecked")
-	public void getExecutionContextAttributesWithSerializable() throws ConfigurationException, ActionProcessingException
-	{
-		Map map = new Hashtable();
-		map.put( "test1", "testing" );
-		map.put( "test2", new NonSerializableClass() );
-		config.setAttribute( "excludeNonSerializables", "false" );
-		SmooksAction action = new SmooksAction( config );
-		
-		Map serializableObjects = action.getSerializableObjectsMap( map );
-		
-		assertTrue( serializableObjects.containsKey( "test1" ));
-		assertTrue( serializableObjects.containsKey( "test2" ));
-	}
-
-    @Test
-    public void ConstructorResultType() throws ConfigurationException, ActionProcessingException
-    {
-        config.setAttribute( "resultType", "STRING" );
-        new SmooksAction( config );
-        config.setAttribute( "resultType", "BYTES" );
-        new SmooksAction( config );
-        config.setAttribute( "resultType", "JAVA" );
-        new SmooksAction( config );
-        config.setAttribute( "resultType", "NORESULT" );
-        new SmooksAction( config );
-
-        config.setAttribute( "resultType", "BLAHHH" );
-        try {
-            new SmooksAction( config );
-            fail("Expected ConfigurationException");
-        } catch (ConfigurationException e) {
-            assertEquals("Invalid 'resultType' config value 'BLAHHH'.  Valid values are: [STRING, BYTES, JAVA, NORESULT]", e.getMessage());
-        }
-    }
-
-	@Before
-	public void setup()
-	{
-		config = createConfigTree();
-		
-	}
-	
-	public static junit.framework.Test suite()
-	{
-		return new JUnit4TestAdapter( SmooksActionUnitTest.class );
-	}
-	
-	private ConfigTree createConfigTree()
-	{
-		ConfigTree config = new ConfigTree( "SmooksActionTest" );
-		config.setAttribute( "smooksConfig", "/org/jboss/soa/esb/actions/smooks/smooks-config.xml" );
-		return config;
-	}
-	
-	private static class NonSerializableClass 
-	{
-		
-	}
-
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SmooksActionUnitTest.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SmooksActionUnitTest.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SmooksActionUnitTest.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SmooksActionUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,181 @@
+/*
+ * 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.actions.smooks;
+
+import static org.junit.Assert.*;
+
+import java.util.Hashtable;
+import java.util.Map;
+
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.actions.ActionProcessingException;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.MessagePayloadProxy;
+import org.jboss.soa.esb.message.format.MessageFactory;
+import org.junit.Before;
+import org.junit.Test;
+
+import junit.framework.JUnit4TestAdapter;
+
+/**
+ * Unit test for {@link SmooksAction}
+ * 
+ * @author <a href="mailto:daniel.bevenius at gmail.com">Daniel Bevenius</a>			
+ *
+ */
+public class SmooksActionUnitTest
+{
+	private String expectedString = "<test></test>";
+	private ConfigTree config;
+	
+	@Test
+	public void process() throws ConfigurationException, ActionProcessingException
+	{
+		SmooksAction action = new SmooksAction( config );
+		Message message = MessageFactory.getInstance().getMessage();
+		message.getBody().add( expectedString );
+		
+		Message process = action.process( message );
+		
+		String actualString = (String)process.getBody().get();
+		assertEquals( expectedString, actualString );
+	}
+	
+	@Test
+	public void processWithPayloadLocation() throws ConfigurationException, ActionProcessingException
+	{
+		config.setAttribute( MessagePayloadProxy.GET_PAYLOAD_LOCATION, "input" );
+		SmooksAction action = new SmooksAction( config );
+		Message message = MessageFactory.getInstance().getMessage();
+		message.getBody().add( "input", expectedString );
+		
+		Message process = action.process( message );
+		
+		String actualString = (String)process.getBody().get();
+		assertEquals( expectedString, actualString );
+	}
+	
+	@Test
+	public void processWithOutLocation() throws ConfigurationException, ActionProcessingException
+	{
+		config.setAttribute( MessagePayloadProxy.SET_PAYLOAD_LOCATION, "output" );
+		SmooksAction action = new SmooksAction( config );
+		Message message = MessageFactory.getInstance().getMessage();
+		message.getBody().add( expectedString );
+		
+		Message process = action.process( message );
+		
+		String actualString = (String)process.getBody().get( "output" );
+		assertEquals( expectedString, actualString );
+	}
+	
+	@Test
+	public void getExecutionContextAttributes() throws ConfigurationException, ActionProcessingException
+	{
+		SmooksAction action = new SmooksAction( config );
+		Message message = MessageFactory.getInstance().getMessage();
+		message.getBody().add( expectedString );
+		
+		Message process = action.process( message );
+		
+		Object object = process.getBody().get( SmooksAction.EXECUTION_CONTEXT_ATTR_MAP_KEY );
+		assertTrue( object instanceof Map );
+	}
+	
+	@Test
+	@SuppressWarnings("unchecked")
+	public void getExecutionContextAttributesNonSerializable() throws ConfigurationException, ActionProcessingException
+	{
+		Map map = new Hashtable();
+		map.put( "test1", "testing" );
+		map.put( "test2", new NonSerializableClass() );
+		SmooksAction action = new SmooksAction( config );
+		
+		Map serializableObjects = action.getSerializableObjectsMap( map );
+		
+		assertTrue( serializableObjects.containsKey( "test1" ));
+		assertTrue( !serializableObjects.containsKey( "test2" ));
+	}
+	
+	@Test
+	@SuppressWarnings("unchecked")
+	public void getExecutionContextAttributesWithSerializable() throws ConfigurationException, ActionProcessingException
+	{
+		Map map = new Hashtable();
+		map.put( "test1", "testing" );
+		map.put( "test2", new NonSerializableClass() );
+		config.setAttribute( "excludeNonSerializables", "false" );
+		SmooksAction action = new SmooksAction( config );
+		
+		Map serializableObjects = action.getSerializableObjectsMap( map );
+		
+		assertTrue( serializableObjects.containsKey( "test1" ));
+		assertTrue( serializableObjects.containsKey( "test2" ));
+	}
+
+    @Test
+    public void ConstructorResultType() throws ConfigurationException, ActionProcessingException
+    {
+        config.setAttribute( "resultType", "STRING" );
+        new SmooksAction( config );
+        config.setAttribute( "resultType", "BYTES" );
+        new SmooksAction( config );
+        config.setAttribute( "resultType", "JAVA" );
+        new SmooksAction( config );
+        config.setAttribute( "resultType", "NORESULT" );
+        new SmooksAction( config );
+
+        config.setAttribute( "resultType", "BLAHHH" );
+        try {
+            new SmooksAction( config );
+            fail("Expected ConfigurationException");
+        } catch (ConfigurationException e) {
+            assertEquals("Invalid 'resultType' config value 'BLAHHH'.  Valid values are: [STRING, BYTES, JAVA, NORESULT]", e.getMessage());
+        }
+    }
+
+	@Before
+	public void setup()
+	{
+		config = createConfigTree();
+		
+	}
+	
+	public static junit.framework.Test suite()
+	{
+		return new JUnit4TestAdapter( SmooksActionUnitTest.class );
+	}
+	
+	private ConfigTree createConfigTree()
+	{
+		ConfigTree config = new ConfigTree( "SmooksActionTest" );
+		config.setAttribute( "smooksConfig", "/org/jboss/soa/esb/actions/smooks/smooks-config.xml" );
+		return config;
+	}
+	
+	private static class NonSerializableClass 
+	{
+		
+	}
+
+}

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SourceResultUnitTest.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SourceResultUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SourceResultUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,149 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.actions.smooks;
-
-import junit.framework.TestCase;
-import org.jboss.internal.soa.esb.util.StreamUtils;
-import org.jboss.soa.esb.actions.smooks.message.Person1;
-import org.jboss.soa.esb.actions.smooks.message.Person2;
-import org.jboss.soa.esb.client.ServiceInvoker;
-import org.jboss.soa.esb.couriers.FaultMessageException;
-import org.jboss.soa.esb.listeners.message.MessageDeliverException;
-import org.jboss.soa.esb.message.Message;
-import org.jboss.soa.esb.message.format.MessageFactory;
-import org.jboss.soa.esb.services.registry.RegistryException;
-import org.jboss.soa.esb.testutils.ESBConfigUtil;
-import org.milyn.container.plugin.SourceResult;
-import org.milyn.payload.ByteSource;
-import org.milyn.payload.StringResult;
-
-import java.io.ByteArrayInputStream;
-import java.io.StringReader;
-
-/**
- * More SmooksAction unit tests.
- * 
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public class SourceResultUnitTest extends TestCase {
-    
-    private ESBConfigUtil esbConfig;
-    private byte[] personXmlBytes = StreamUtils.readStream(SourceResultUnitTest.class.getResourceAsStream("message/person.xml"));
-
-    protected void setUp() throws Exception {
-        esbConfig = new ESBConfigUtil(getClass().getResourceAsStream("source-result-esb.xml"));
-        esbConfig.setESBProperties(getClass().getResourceAsStream("jbossesb-properties.xml"));
-        esbConfig.installRegistry();
-        esbConfig.startController();
-    }
-
-    protected void tearDown() throws Exception {
-        esbConfig.stopController();
-        esbConfig.uninstallRegistry();
-        esbConfig.resetESBProperties();
-    }
-
-    public void test_String2String() throws MessageDeliverException, RegistryException, FaultMessageException {
-        ServiceInvoker invoker = new ServiceInvoker("Transform", "String");
-        Message message = MessageFactory.getInstance().getMessage();
-
-        message.getBody().add(new String(personXmlBytes));
-        message = invoker.deliverSync(message, 30000);
-
-        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", message.getBody().get());
-    }
-
-    public void test_bytes2String() throws MessageDeliverException, RegistryException, FaultMessageException {
-        ServiceInvoker invoker = new ServiceInvoker("Transform", "String");
-        Message message = MessageFactory.getInstance().getMessage();
-
-        message.getBody().add(personXmlBytes);
-        message = invoker.deliverSync(message, 30000);
-
-        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", message.getBody().get());
-    }
-
-    public void test_InputStream2String() throws MessageDeliverException, RegistryException, FaultMessageException {
-        ServiceInvoker invoker = new ServiceInvoker("Transform", "String");
-        Message message = MessageFactory.getInstance().getMessage();
-
-        message.getBody().add(new ByteArrayInputStream(personXmlBytes));
-        message = invoker.deliverSync(message, 30000);
-
-        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", message.getBody().get());
-    }
-
-    public void test_Reader2String() throws MessageDeliverException, RegistryException, FaultMessageException {
-        ServiceInvoker invoker = new ServiceInvoker("Transform", "String");
-        Message message = MessageFactory.getInstance().getMessage();
-
-        message.getBody().add(new StringReader(new String(personXmlBytes)));
-        message = invoker.deliverSync(message, 30000);
-
-        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", message.getBody().get());
-    }
-
-    public void test_String2Bytes() throws MessageDeliverException, RegistryException, FaultMessageException {
-        ServiceInvoker invoker = new ServiceInvoker("Transform", "Bytes");
-        Message message = MessageFactory.getInstance().getMessage();
-
-        message.getBody().add(new String(personXmlBytes));
-        message = invoker.deliverSync(message, 30000);
-
-        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", new String((byte[]) message.getBody().get()));
-    }
-
-    public void test_Object2String() throws MessageDeliverException, RegistryException, FaultMessageException {
-        ServiceInvoker invoker = new ServiceInvoker("Transform", "Person");
-        Message message = MessageFactory.getInstance().getMessage();
-
-        message.getBody().add(new Person1("Tom", 300));
-        message = invoker.deliverSync(message, 30000);
-
-        assertEquals("<someone called=\"Tom\" is=\"300\">", message.getBody().get());
-    }
-
-    public void test_Object2Object() throws MessageDeliverException, RegistryException, FaultMessageException {
-        ServiceInvoker invoker = new ServiceInvoker("Transform", "Person2Person");
-        Message message = MessageFactory.getInstance().getMessage();
-
-        message.getBody().add(new Person1("Tom", 300));
-        message = invoker.deliverSync(message, 30000);
-
-        Person2 person2 = (Person2) message.getBody().get();
-        assertEquals("Tom", person2.getName());
-        assertEquals(300, person2.getAge());
-    }
-
-    public void test_SourceResult() throws MessageDeliverException, RegistryException, FaultMessageException {
-        ServiceInvoker invoker = new ServiceInvoker("Transform", "String");
-        Message message = MessageFactory.getInstance().getMessage();
-        SourceResult sourceResult = new SourceResult();
-        StringResult result = new StringResult();
-
-        sourceResult.setSource(new ByteSource(personXmlBytes));
-        sourceResult.setResult(result);
-
-        message.getBody().add(sourceResult);
-        message = invoker.deliverSync(message, 30000);
-
-        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", result.getResult());
-    }
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SourceResultUnitTest.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SourceResultUnitTest.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SourceResultUnitTest.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/SourceResultUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,149 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.actions.smooks;
+
+import junit.framework.TestCase;
+import org.jboss.internal.soa.esb.util.StreamUtils;
+import org.jboss.soa.esb.actions.smooks.message.Person1;
+import org.jboss.soa.esb.actions.smooks.message.Person2;
+import org.jboss.soa.esb.client.ServiceInvoker;
+import org.jboss.soa.esb.couriers.FaultMessageException;
+import org.jboss.soa.esb.listeners.message.MessageDeliverException;
+import org.jboss.soa.esb.message.Message;
+import org.jboss.soa.esb.message.format.MessageFactory;
+import org.jboss.soa.esb.services.registry.RegistryException;
+import org.jboss.soa.esb.testutils.ESBConfigUtil;
+import org.milyn.container.plugin.SourceResult;
+import org.milyn.payload.ByteSource;
+import org.milyn.payload.StringResult;
+
+import java.io.ByteArrayInputStream;
+import java.io.StringReader;
+
+/**
+ * More SmooksAction unit tests.
+ * 
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class SourceResultUnitTest extends TestCase {
+    
+    private ESBConfigUtil esbConfig;
+    private byte[] personXmlBytes = StreamUtils.readStream(SourceResultUnitTest.class.getResourceAsStream("message/person.xml"));
+
+    protected void setUp() throws Exception {
+        esbConfig = new ESBConfigUtil(getClass().getResourceAsStream("source-result-esb.xml"));
+        esbConfig.setESBProperties(getClass().getResourceAsStream("jbossesb-properties.xml"));
+        esbConfig.installRegistry();
+        esbConfig.startController();
+    }
+
+    protected void tearDown() throws Exception {
+        esbConfig.stopController();
+        esbConfig.uninstallRegistry();
+        esbConfig.resetESBProperties();
+    }
+
+    public void test_String2String() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "String");
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add(new String(personXmlBytes));
+        message = invoker.deliverSync(message, 30000);
+
+        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", message.getBody().get());
+    }
+
+    public void test_bytes2String() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "String");
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add(personXmlBytes);
+        message = invoker.deliverSync(message, 30000);
+
+        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", message.getBody().get());
+    }
+
+    public void test_InputStream2String() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "String");
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add(new ByteArrayInputStream(personXmlBytes));
+        message = invoker.deliverSync(message, 30000);
+
+        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", message.getBody().get());
+    }
+
+    public void test_Reader2String() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "String");
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add(new StringReader(new String(personXmlBytes)));
+        message = invoker.deliverSync(message, 30000);
+
+        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", message.getBody().get());
+    }
+
+    public void test_String2Bytes() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "Bytes");
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add(new String(personXmlBytes));
+        message = invoker.deliverSync(message, 30000);
+
+        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", new String((byte[]) message.getBody().get()));
+    }
+
+    public void test_Object2String() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "Person");
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add(new Person1("Tom", 300));
+        message = invoker.deliverSync(message, 30000);
+
+        assertEquals("<someone called=\"Tom\" is=\"300\">", message.getBody().get());
+    }
+
+    public void test_Object2Object() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "Person2Person");
+        Message message = MessageFactory.getInstance().getMessage();
+
+        message.getBody().add(new Person1("Tom", 300));
+        message = invoker.deliverSync(message, 30000);
+
+        Person2 person2 = (Person2) message.getBody().get();
+        assertEquals("Tom", person2.getName());
+        assertEquals(300, person2.getAge());
+    }
+
+    public void test_SourceResult() throws MessageDeliverException, RegistryException, FaultMessageException {
+        ServiceInvoker invoker = new ServiceInvoker("Transform", "String");
+        Message message = MessageFactory.getInstance().getMessage();
+        SourceResult sourceResult = new SourceResult();
+        StringResult result = new StringResult();
+
+        sourceResult.setSource(new ByteSource(personXmlBytes));
+        sourceResult.setResult(result);
+
+        message.getBody().add(sourceResult);
+        message = invoker.deliverSync(message, 30000);
+
+        assertEquals("<someone called=\"Tom Fennelly\" is=\"21\">", result.getResult());
+    }
+}

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/jbossesb-properties.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/jbossesb-properties.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,86 +0,0 @@
-<?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"/>
-        <property name="jboss.esb.invm.scope.default" value="NONE"/>
-    </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.internal.soa.esb.persistence.manager.StandaloneConnectionManager"/>	    
-	    <!--  property name="org.jboss.soa.esb.persistence.db.conn.manager" value="org.jboss.internal.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/juddi"/>
-		<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>

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/jbossesb-properties.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/jbossesb-properties.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/jbossesb-properties.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/jbossesb-properties.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,86 @@
+<?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"/>
+        <property name="jboss.esb.invm.scope.default" value="NONE"/>
+    </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.internal.soa.esb.persistence.manager.StandaloneConnectionManager"/>	    
+	    <!--  property name="org.jboss.soa.esb.persistence.db.conn.manager" value="org.jboss.internal.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/juddi"/>
+		<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>

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person1.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person1.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person1.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,53 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.actions.smooks.message;
-
-/**
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public class Person1 {
-
-    private String name;
-    private int age;
-
-    public Person1() {
-    }
-
-    public Person1(String name, int age) {
-        this.name = name;
-        this.age = age;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-
-    public int getAge() {
-        return age;
-    }
-
-    public void setAge(int age) {
-        this.age = age;
-    }
-}

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person1.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person1.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person1.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person1.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,53 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.actions.smooks.message;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class Person1 {
+
+    private String name;
+    private int age;
+
+    public Person1() {
+    }
+
+    public Person1(String name, int age) {
+        this.name = name;
+        this.age = age;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public int getAge() {
+        return age;
+    }
+
+    public void setAge(int age) {
+        this.age = age;
+    }
+}

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person2.java
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person2.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person2.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,53 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2006, JBoss Inc., and others contributors as indicated
- * by the @authors tag. All rights reserved.
- * See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- * This copyrighted material is made available to anyone wishing to use,
- * modify, copy, or redistribute it subject to the terms and conditions
- * of the GNU Lesser General Public License, v. 2.1.
- * This program is distributed in the hope that it will be useful, but WITHOUT A
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
- * You should have received a copy of the GNU Lesser General Public License,
- * v.2.1 along with this distribution; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
- * MA  02110-1301, USA.
- *
- * (C) 2005-2006, JBoss Inc.
- */
-package org.jboss.soa.esb.actions.smooks.message;
-
-/**
- * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
- */
-public class Person2 {
-
-    private String name;
-    private int age;
-
-    public Person2() {
-    }
-
-    public Person2(String name, int age) {
-        this.name = name;
-        this.age = age;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-
-    public int getAge() {
-        return age;
-    }
-
-    public void setAge(int age) {
-        this.age = age;
-    }
-}
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person2.java (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person2.java)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person2.java	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/Person2.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,53 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA  02110-1301, USA.
+ *
+ * (C) 2005-2006, JBoss Inc.
+ */
+package org.jboss.soa.esb.actions.smooks.message;
+
+/**
+ * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
+ */
+public class Person2 {
+
+    private String name;
+    private int age;
+
+    public Person2() {
+    }
+
+    public Person2(String name, int age) {
+        this.name = name;
+        this.age = age;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public int getAge() {
+        return age;
+    }
+
+    public void setAge(int age) {
+        this.age = age;
+    }
+}
\ No newline at end of file

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/person.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/person.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/person.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,4 +0,0 @@
-<person>
-    <name>Tom Fennelly</name>
-    <age>21</age>
-</person>
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/person.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/person.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/person.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/message/person.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,4 @@
+<person>
+    <name>Tom Fennelly</name>
+    <age>21</age>
+</person>
\ No newline at end of file

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/smooks-config.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/smooks-config.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/smooks-config.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,8 +0,0 @@
-<?xml version="1.0"?>
-<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
-
-    <resource-config selector="global-parameters">
-        <param name="stream.filter.type">DOM</param>
-    </resource-config>
-	
-</smooks-resource-list>

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/smooks-config.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/smooks-config.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/smooks-config.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/smooks-config.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,8 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+
+    <resource-config selector="global-parameters">
+        <param name="stream.filter.type">DOM</param>
+    </resource-config>
+	
+</smooks-resource-list>

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-esb.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-esb.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-esb.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,42 +0,0 @@
-<?xml version = "1.0" encoding = "UTF-8"?>
-<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd">
-
-    <services>
-        <service category="Transform" name="String" description="StringTest" invmScope="GLOBAL">
-            <actions mep="RequestResponse">
-                <action name="action" class="org.jboss.soa.esb.actions.smooks.SmooksAction">
-                    <property name="smooksConfig" value="/org/jboss/soa/esb/actions/smooks/source-result-smooks-01.xml" />
-                </action>
-            </actions>			
-        </service>
-
-        <service category="Transform" name="Bytes" description="ObjectTest" invmScope="GLOBAL">
-            <actions mep="RequestResponse">
-                <action name="action" class="org.jboss.soa.esb.actions.smooks.SmooksAction">
-                    <property name="smooksConfig" value="/org/jboss/soa/esb/actions/smooks/source-result-smooks-01.xml" />
-                    <property name="resultType" value="BYTES" />
-                </action>
-            </actions>
-        </service>
-
-        <service category="Transform" name="Person" description="ObjectTest" invmScope="GLOBAL">
-            <actions mep="RequestResponse">
-                <action name="action" class="org.jboss.soa.esb.actions.smooks.SmooksAction">
-                    <property name="smooksConfig" value="/org/jboss/soa/esb/actions/smooks/source-result-smooks-02.xml" />
-                </action>
-            </actions>
-        </service>
-
-        <service category="Transform" name="Person2Person" description="ObjectTest" invmScope="GLOBAL">
-            <actions mep="RequestResponse">
-                <action name="action" class="org.jboss.soa.esb.actions.smooks.SmooksAction">
-                    <property name="smooksConfig" value="/org/jboss/soa/esb/actions/smooks/source-result-smooks-02.xml" />
-                    <property name="resultType" value="JAVA" />
-                    <property name="javaResultBeanId" value="person" />
-                </action>
-            </actions>
-        </service>
-
-    </services>
-
-</jbossesb>
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-esb.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-esb.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-esb.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-esb.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,42 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+<jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd">
+
+    <services>
+        <service category="Transform" name="String" description="StringTest" invmScope="GLOBAL">
+            <actions mep="RequestResponse">
+                <action name="action" class="org.jboss.soa.esb.actions.smooks.SmooksAction">
+                    <property name="smooksConfig" value="/org/jboss/soa/esb/actions/smooks/source-result-smooks-01.xml" />
+                </action>
+            </actions>			
+        </service>
+
+        <service category="Transform" name="Bytes" description="ObjectTest" invmScope="GLOBAL">
+            <actions mep="RequestResponse">
+                <action name="action" class="org.jboss.soa.esb.actions.smooks.SmooksAction">
+                    <property name="smooksConfig" value="/org/jboss/soa/esb/actions/smooks/source-result-smooks-01.xml" />
+                    <property name="resultType" value="BYTES" />
+                </action>
+            </actions>
+        </service>
+
+        <service category="Transform" name="Person" description="ObjectTest" invmScope="GLOBAL">
+            <actions mep="RequestResponse">
+                <action name="action" class="org.jboss.soa.esb.actions.smooks.SmooksAction">
+                    <property name="smooksConfig" value="/org/jboss/soa/esb/actions/smooks/source-result-smooks-02.xml" />
+                </action>
+            </actions>
+        </service>
+
+        <service category="Transform" name="Person2Person" description="ObjectTest" invmScope="GLOBAL">
+            <actions mep="RequestResponse">
+                <action name="action" class="org.jboss.soa.esb.actions.smooks.SmooksAction">
+                    <property name="smooksConfig" value="/org/jboss/soa/esb/actions/smooks/source-result-smooks-02.xml" />
+                    <property name="resultType" value="JAVA" />
+                    <property name="javaResultBeanId" value="person" />
+                </action>
+            </actions>
+        </service>
+
+    </services>
+
+</jbossesb>
\ No newline at end of file

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-01.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-01.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-01.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,18 +0,0 @@
-<?xml version="1.0"?>
-<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
-
-    <resource-config selector="person">
-        <resource>org.milyn.javabean.BeanPopulator</resource>
-        <param name="beanId">person</param>
-        <param name="beanClass">org.jboss.soa.esb.actions.smooks.message.Person1</param>
-        <param name="bindings">
-            <binding property="name" selector="person/name" />
-            <binding property="age" type="Integer" selector="person/age" />
-        </param>
-    </resource-config>
-
-    <resource-config selector="person">
-        <resource type="ftl"><!--<someone called="${person.name}" is="${person.age}">--></resource>
-    </resource-config>
-
-</smooks-resource-list>
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-01.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-01.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-01.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-01.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,18 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+
+    <resource-config selector="person">
+        <resource>org.milyn.javabean.BeanPopulator</resource>
+        <param name="beanId">person</param>
+        <param name="beanClass">org.jboss.soa.esb.actions.smooks.message.Person1</param>
+        <param name="bindings">
+            <binding property="name" selector="person/name" />
+            <binding property="age" type="Integer" selector="person/age" />
+        </param>
+    </resource-config>
+
+    <resource-config selector="person">
+        <resource type="ftl"><!--<someone called="${person.name}" is="${person.age}">--></resource>
+    </resource-config>
+
+</smooks-resource-list>
\ No newline at end of file

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-02.xml
===================================================================
--- labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-02.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-02.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,18 +0,0 @@
-<?xml version="1.0"?>
-<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
-
-    <resource-config selector="org.jboss.soa.esb.actions.smooks.message.Person1">
-        <resource>org.milyn.javabean.BeanPopulator</resource>
-        <param name="beanId">person</param>
-        <param name="beanClass">org.jboss.soa.esb.actions.smooks.message.Person2</param>
-        <param name="bindings">
-            <binding property="name" selector="org.jboss.soa.esb.actions.smooks.message.Person1/name" />
-            <binding property="age" type="Integer" selector="org.jboss.soa.esb.actions.smooks.message.Person1/age" />
-        </param>
-    </resource-config>
-
-    <resource-config selector="org.jboss.soa.esb.actions.smooks.message.Person1">
-        <resource type="ftl"><!--<someone called="${person.name}" is="${person.age}">--></resource>
-    </resource-config>
-
-</smooks-resource-list>
\ No newline at end of file

Copied: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-02.xml (from rev 19809, labs/jbossesb/branches/JBESB_4_2_1_GA_FP1/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-02.xml)
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-02.xml	                        (rev 0)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/smooks/src/test/java/org/jboss/soa/esb/actions/smooks/source-result-smooks-02.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -0,0 +1,18 @@
+<?xml version="1.0"?>
+<smooks-resource-list xmlns="http://www.milyn.org/xsd/smooks-1.0.xsd">
+
+    <resource-config selector="org.jboss.soa.esb.actions.smooks.message.Person1">
+        <resource>org.milyn.javabean.BeanPopulator</resource>
+        <param name="beanId">person</param>
+        <param name="beanClass">org.jboss.soa.esb.actions.smooks.message.Person2</param>
+        <param name="bindings">
+            <binding property="name" selector="org.jboss.soa.esb.actions.smooks.message.Person1/name" />
+            <binding property="age" type="Integer" selector="org.jboss.soa.esb.actions.smooks.message.Person1/age" />
+        </param>
+    </resource-config>
+
+    <resource-config selector="org.jboss.soa.esb.actions.smooks.message.Person1">
+        <resource type="ftl"><!--<someone called="${person.name}" is="${person.age}">--></resource>
+    </resource-config>
+
+</smooks-resource-list>
\ No newline at end of file

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soap/base-project-build.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soap/base-project-build.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soap/base-project-build.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -103,6 +103,7 @@
                 <pathelement location="src/test/java"/>
             </classpath>
             <sysproperty key="log4j.configuration" value="log4j.xml"/>
+            <sysproperty key="jboss.esb.invm.scope.default" value="NONE"/>
             <test name="${testcase}" if="testcase"/>
             <batchtest unless="testcase" todir="build/test/report">
                 <fileset dir="build/test/classes" includes="**/*Test.class"/>

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/WebserviceContractPublisher.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/WebserviceContractPublisher.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soap/src/main/java/org/jboss/soa/esb/actions/soap/WebserviceContractPublisher.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -29,7 +29,7 @@
 import org.jboss.soa.esb.listeners.config.xbeanmodel.PropertyDocument;
 import org.jboss.wsf.spi.deployment.Endpoint;
 import org.milyn.Smooks;
-import org.milyn.container.standalone.StandaloneExecutionContext;
+import org.milyn.container.ExecutionContext;
 import org.xml.sax.SAXException;
 
 import javax.servlet.http.HttpServletRequest;
@@ -163,7 +163,7 @@
 
         URI endpointURI = URI.create(epr.getAddr().getAddress());
         StringWriter writer = new StringWriter();
-        StandaloneExecutionContext execContext = transformer.createExecutionContext();
+        ExecutionContext execContext = transformer.createExecutionContext();
 
         execContext.setAttribute(WsdlTransformer.ENDPOINT_URI, endpointURI);
         execContext.setAttribute(WsdlTransformer.TARGET_CAT, targetServiceCat);

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/SOAPClientUnitTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/SOAPClientUnitTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soap/src/test/java/org/jboss/soa/esb/actions/soap/SOAPClientUnitTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -1,6 +1,7 @@
 package org.jboss.soa.esb.actions.soap;
 
 import java.util.Map;
+import java.io.IOException;
 
 import junit.framework.TestCase;
 
@@ -12,14 +13,19 @@
 import org.jboss.soa.esb.helpers.ConfigTree;
 import org.jboss.soa.esb.message.Message;
 import org.jboss.soa.esb.message.format.MessageFactory;
+import org.xml.sax.SAXException;
 
 /**
  * @author <a href="mailto:tom.fennelly at jboss.com">tom.fennelly at jboss.com</a>
  */
 public class SOAPClientUnitTest extends TestCase {
 
-    private ESBConfigUtil configUtil = new ESBConfigUtil(getClass().getResourceAsStream("soapclient-config-01.xml"));
+    private ESBConfigUtil configUtil;
 
+    public SOAPClientUnitTest() throws IOException, SAXException, ConfigurationException {
+        configUtil = new ESBConfigUtil(getClass().getResourceAsStream("soapclient-config-01.xml"));
+    }
+
     public void test_XStream_ResponseProcessing() throws ConfigurationException, ActionProcessingException {
         ConfigTree actionConfig = configUtil.getActionConfig("OrderNotificationService", "soapui-client-action-01");
         SOAPClient soapClient = new SOAPClient(actionConfig);

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soapui-client/build.xml
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soapui-client/build.xml	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/services/soapui-client/build.xml	2008-05-01 15:07:10 UTC (rev 19810)
@@ -89,6 +89,7 @@
     <target name="test" depends="junit-present, compile-tests" if="junit.present" description="Run the test cases">
         <mkdir dir="${maven.test.reports}"/>
         <junit printSummary="yes" haltonerror="true" showoutput="true" haltonfailure="true" fork="true" dir=".">
+            <sysproperty key="jboss.esb.invm.scope.default" value="NONE"/>
             <sysproperty key="basedir" value="."/>
 			<sysproperty key="java.awt.headless" value="true"/>
         	<sysproperty key="log4j.configuration" value="log4j.xml"/>

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/tools/console/src/org/jboss/soa/esb/admin/console/transform/SmooksUtils.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/tools/console/src/org/jboss/soa/esb/admin/console/transform/SmooksUtils.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/tools/console/src/org/jboss/soa/esb/admin/console/transform/SmooksUtils.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -31,7 +31,7 @@
 import org.milyn.Smooks;
 import org.milyn.SmooksUtil;
 import org.milyn.cdr.SmooksResourceConfiguration;
-import org.milyn.container.standalone.StandaloneExecutionContext;
+import org.milyn.container.ExecutionContext;
 import org.milyn.profile.DefaultProfileSet;
 import org.milyn.profile.ProfileStore;
 
@@ -60,7 +60,7 @@
 	public static List<TransformationResource> getMessageExchangeConfigs(MessageExchange messageExchange, List<TransformationResource> allResourceConfigs) {
 		Smooks smooks = new Smooks();
 		String messageProfileString = "JBossESBMessage"; // Doesn't really matter what this string is because of how we're using it here!
-		StandaloneExecutionContext execContext;
+		ExecutionContext execContext;
 		Map messageExchangeConfigsMap;
 		List<TransformationResource> messageExchangeConfigsList = new ArrayList<TransformationResource>();;
 		

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/tools/console/src/org/jboss/soa/esb/admin/console/transform/importexport/ResourceImportExport.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/tools/console/src/org/jboss/soa/esb/admin/console/transform/importexport/ResourceImportExport.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/tools/console/src/org/jboss/soa/esb/admin/console/transform/importexport/ResourceImportExport.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -141,7 +141,7 @@
 		resource.setPath(configuration.getResource());
 		resource.setNamespace(configuration.getSelectorNamespaceURI());
 		
-		List smooksParams = configuration.getParameters();
+		List smooksParams = configuration.getParameterList();
 		resource.setParameters(new ArrayList<TransformationResourceParameter>());
 		for(int i = 0; i < smooksParams.size(); i++) {
 			Object listEntry = smooksParams.get(i);

Modified: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/tools/console/test/org/jboss/soa/esb/admin/console/transform/SmooksUtilsTest.java
===================================================================
--- labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/tools/console/test/org/jboss/soa/esb/admin/console/transform/SmooksUtilsTest.java	2008-05-01 14:08:41 UTC (rev 19809)
+++ labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/product/tools/console/test/org/jboss/soa/esb/admin/console/transform/SmooksUtilsTest.java	2008-05-01 15:07:10 UTC (rev 19810)
@@ -39,7 +39,10 @@
 	/*
 	 * Test method for 'org.jboss.soa.esb.admin.console.transform.SmooksUtils.getMessageExchangeConfigs(MessageExchange, List<TransformationResource>)'
 	 */
-	@Test
+	//@Test
+	// Commented out this test at the code that it test is dead (Consulted TomF about this).
+	// will delete this test when the corresponding code as also be deleted from the codebase. 
+	// Daniel Bevenius 2008-04-16
 	public void test_getMessageExchangeConfigs() {
 		MessageExchange flow = new MessageExchange();
 		List<TransformationResource> allResources = new ArrayList<TransformationResource>();

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/qa/lib/ext/edtftpj-pro.jar
===================================================================
(Binary files differ)

Deleted: labs/jbossesb/workspace/platform/JBESB_4_2_1_SOA_4_2/qa/lib/ext/license.jar
===================================================================
(Binary files differ)




More information about the jboss-svn-commits mailing list