Author: veithen
Date: Wed Sep  3 14:40:40 2008
New Revision: 691796

URL: http://svn.apache.org/viewvc?rev=691796&view=rev
Log:
Transport tests: Fixed SwA unit tests which were broken during one of the 
previous refactorings.

Modified:
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/jms/JMSListenerTest.java
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/mail/MailTransportListenerTest.java
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/nhttp/HttpCoreNIOListenerTest.java
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/TransportTestSuite.java
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/AsyncTestClientAdapter.java
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/ClientOptions.java
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/RequestResponseTestClientAdapter.java
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/TestClient.java
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/AxisMessage.java
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/MessageDecoder.java
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/MessageEncoder.java
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/XMLMessage.java
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisAsyncEndpoint.java
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/ContentTypeServiceConfigurator.java
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/SwATestCase.java
    
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSMockAsyncEndpoint.java

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/jms/JMSListenerTest.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/jms/JMSListenerTest.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/jms/JMSListenerTest.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/jms/JMSListenerTest.java
 Wed Sep  3 14:40:40 2008
@@ -81,7 +81,7 @@
                         }
                     }
                     if (contentTypeMode == ContentTypeMode.TRANSPORT) {
-                        suite.addSwATests(channel, bytesMessageClient, 
asyncEndpoint, env, tdf);
+                        suite.addSwATests(channel, adapt(bytesMessageClient, 
MessageEncoder.XML_TO_BYTE), adapt(asyncEndpoint, MessageDecoder.AXIS_TO_XML), 
env, tdf);
                         suite.addBinaryTest(channel, bytesMessageClient, 
adapt(asyncEndpoint, MessageDecoder.AXIS_TO_BYTE), env, tdf);
                     } else {
                         suite.addBinaryTest(channel, bytesMessageClient, 
adapt(asyncEndpoint, MessageDecoder.AXIS_TO_BYTE), env, tdf, cfgtr);

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/mail/MailTransportListenerTest.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/mail/MailTransportListenerTest.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/mail/MailTransportListenerTest.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/mail/MailTransportListenerTest.java
 Wed Sep  3 14:40:40 2008
@@ -66,7 +66,7 @@
             AsyncTestClient<XMLMessage> xmlClient = adapt(client, 
MessageEncoder.XML_TO_BYTE);
             suite.addSOAPTests(channel, xmlClient, adapt(new 
AxisAsyncEndpoint(), MessageDecoder.AXIS_TO_XML), env);
             suite.addPOXTests(channel, xmlClient, adapt(new 
AxisAsyncEndpoint(), MessageDecoder.AXIS_TO_XML), env);
-            suite.addSwATests(channel, client, asyncEndpoint, env);
+            suite.addSwATests(channel, xmlClient, adapt(asyncEndpoint, 
MessageDecoder.AXIS_TO_XML), env);
             suite.addTextPlainTests(channel, adapt(client, 
MessageEncoder.STRING_TO_BYTE), AdapterUtils.adapt(asyncEndpoint, 
MessageDecoder.AXIS_TO_STRING), env);
             suite.addBinaryTest(channel, client, adapt(asyncEndpoint, 
MessageDecoder.AXIS_TO_BYTE), env);
         }

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/nhttp/HttpCoreNIOListenerTest.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/nhttp/HttpCoreNIOListenerTest.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/nhttp/HttpCoreNIOListenerTest.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/nhttp/HttpCoreNIOListenerTest.java
 Wed Sep  3 14:40:40 2008
@@ -84,7 +84,7 @@
             suite.addPOXTests(channel, client, adapt(jettyAsyncEndpoint, 
MessageDecoder.BYTE_TO_XML), tdf);
         }
 //        suite.addPOXTests(channel, adapt(new 
AxisRequestResponseTestClient(), MessageConverter.XML_TO_AXIS, 
MessageConverter.AXIS_TO_XML), echoEndpointFactory, env, axisServer, tdf);
-        suite.addSwATests(channel, javaNetClient, asyncEndpoint, tdf);
+        suite.addSwATests(channel, adapt(javaNetClient, 
MessageEncoder.XML_TO_BYTE), adapt(asyncEndpoint, MessageDecoder.AXIS_TO_XML), 
tdf);
         suite.addTextPlainTests(channel, adapt(javaNetClient, 
MessageEncoder.STRING_TO_BYTE), adapt(asyncEndpoint, 
MessageDecoder.AXIS_TO_STRING), tdf);
         suite.addBinaryTest(channel, javaNetClient, adapt(asyncEndpoint, 
MessageDecoder.AXIS_TO_BYTE), tdf);
         suite.addRESTTests(channel, new JavaNetRESTClient(), asyncEndpoint, 
tdf);

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/TransportTestSuite.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/TransportTestSuite.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/TransportTestSuite.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/TransportTestSuite.java
 Wed Sep  3 14:40:40 2008
@@ -46,6 +46,7 @@
 import org.apache.synapse.transport.testkit.tests.TransportTestCase;
 import org.apache.synapse.transport.testkit.tests.async.BinaryTestCase;
 import org.apache.synapse.transport.testkit.tests.async.RESTTestCase;
+import org.apache.synapse.transport.testkit.tests.async.SwATestCase;
 import org.apache.synapse.transport.testkit.tests.async.TextPlainTestCase;
 import 
org.apache.synapse.transport.testkit.tests.async.XMLAsyncMessageTestCase;
 import 
org.apache.synapse.transport.testkit.tests.echo.XMLRequestResponseMessageTestCase;
@@ -129,8 +130,8 @@
     }
     
     // TODO: this test actually only makes sense if the transport supports a 
Content-Type header
-    public void addSwATests(AsyncChannel channel, AsyncTestClient<byte[]> 
client, AsyncEndpoint<AxisMessage> endpoint, Object... resources) {
-//        addTest(new SwATestCase(channel, client, endpoint, resources));
+    public void addSwATests(AsyncChannel channel, AsyncTestClient<XMLMessage> 
client, AsyncEndpoint<XMLMessage> endpoint, Object... resources) {
+        addTest(new SwATestCase(channel, client, endpoint, resources));
     }
     
     public void addTextPlainTest(AsyncChannel channel, AsyncTestClient<String> 
client, AsyncEndpoint<String> endpoint, MessageTestData data, Object... 
resources) {

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/AsyncTestClientAdapter.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/AsyncTestClientAdapter.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/AsyncTestClientAdapter.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/AsyncTestClientAdapter.java
 Wed Sep  3 14:40:40 2008
@@ -37,7 +37,7 @@
         return target;
     }
 
-    public ContentType getContentType(ClientOptions options, ContentType 
contentType) {
+    public ContentType getContentType(ClientOptions options, ContentType 
contentType) throws Exception {
         return target.getContentType(options, encoder.getContentType(options, 
contentType));
     }
 

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/ClientOptions.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/ClientOptions.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/ClientOptions.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/ClientOptions.java
 Wed Sep  3 14:40:40 2008
@@ -21,9 +21,13 @@
 
 import javax.mail.internet.ContentType;
 
+import org.apache.axiom.om.util.UUIDGenerator;
+
 public class ClientOptions {
     private final ContentType baseContentType;
     private final String charset;
+    private String mimeBoundary;
+    private String rootContentId;
 
     public ClientOptions(ContentType baseContentType, String charset) {
         this.baseContentType = baseContentType;
@@ -37,4 +41,24 @@
     public String getCharset() {
         return charset;
     }
+    
+    public String getMimeBoundary() {
+        if (mimeBoundary == null) {
+            mimeBoundary =
+                    "MIMEBoundary"
+                            + UUIDGenerator.getUUID().replace(':', '_');
+
+        }
+        return mimeBoundary;
+    }
+
+    public String getRootContentId() {
+        if (rootContentId == null) {
+            rootContentId =
+                    "0."
+                            + UUIDGenerator.getUUID()
+                            + "@apache.org";
+        }
+        return rootContentId;
+    }
 }

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/RequestResponseTestClientAdapter.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/RequestResponseTestClientAdapter.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/RequestResponseTestClientAdapter.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/RequestResponseTestClientAdapter.java
 Wed Sep  3 14:40:40 2008
@@ -43,7 +43,7 @@
         return target;
     }
 
-    public ContentType getContentType(ClientOptions options, ContentType 
contentType) {
+    public ContentType getContentType(ClientOptions options, ContentType 
contentType) throws Exception {
         return target.getContentType(options, encoder.getContentType(options, 
contentType));
     }
 

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/TestClient.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/TestClient.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/TestClient.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/client/TestClient.java
 Wed Sep  3 14:40:40 2008
@@ -25,5 +25,5 @@
 
 @Key("client")
 public interface TestClient {
-    ContentType getContentType(ClientOptions options, ContentType contentType);
+    ContentType getContentType(ClientOptions options, ContentType contentType) 
throws Exception;
 }
\ No newline at end of file

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/AxisMessage.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/AxisMessage.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/AxisMessage.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/AxisMessage.java
 Wed Sep  3 14:40:40 2008
@@ -37,13 +37,14 @@
     public AxisMessage() {
     }
     
-    public AxisMessage(MessageContext msgContext) {
+    public AxisMessage(MessageContext msgContext) throws Exception {
         envelope = msgContext.getEnvelope();
         envelope.build();
-        attachments = msgContext.getAttachmentMap();
-        // Make sure that all attachments are read
-        attachments.getAllContentIDs();
-        setAttachments(attachments);
+        if (msgContext.isDoingSwA()) {
+            // Make sure that all attachments are read
+            attachments = msgContext.getAttachmentMap();
+            attachments.getAllContentIDs();
+        }
         messageType = 
(String)msgContext.getProperty(Constants.Configuration.MESSAGE_TYPE);
     }
     

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/MessageDecoder.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/MessageDecoder.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/MessageDecoder.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/MessageDecoder.java
 Wed Sep  3 14:40:40 2008
@@ -28,6 +28,7 @@
 
 import junit.framework.Assert;
 
+import org.apache.axiom.attachments.Attachments;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMNode;
 import org.apache.axiom.om.OMText;
@@ -68,19 +69,25 @@
         new MessageDecoder<AxisMessage,XMLMessage>() {
 
         public XMLMessage decode(ContentType contentType, AxisMessage message) 
throws Exception {
-            XMLMessage.Type type = null;
-            for (XMLMessage.Type candidate : XMLMessage.Type.values()) {
-                if 
(candidate.getContentType().equals(message.getMessageType())) {
-                    type = candidate;
-                    break;
+            Attachments attachments = message.getAttachments();
+            XMLMessage.Type type;
+            if (attachments != null) {
+                type = XMLMessage.Type.SWA;
+            } else {
+                type = null;
+                for (XMLMessage.Type candidate : XMLMessage.Type.values()) {
+                    if 
(candidate.getContentType().equals(message.getMessageType())) {
+                        type = candidate;
+                        break;
+                    }
+                }
+                if (type == null) {
+                    // TODO: make this an error later
+                    type = XMLMessage.Type.POX;
+    //                throw new UnsupportedOperationException("Content type " 
+ message.getMessageType() + " not supported");
                 }
             }
-            if (type == null) {
-                // TODO: make this an error later
-                type = XMLMessage.Type.POX;
-//                throw new UnsupportedOperationException("Content type " + 
message.getMessageType() + " not supported");
-            }
-            return new 
XMLMessage(message.getEnvelope().getBody().getFirstElement(), type);
+            return new 
XMLMessage(message.getEnvelope().getBody().getFirstElement(), type, 
attachments);
         }
     };
 

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/MessageEncoder.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/MessageEncoder.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/MessageEncoder.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/MessageEncoder.java
 Wed Sep  3 14:40:40 2008
@@ -25,11 +25,12 @@
 import javax.activation.DataHandler;
 import javax.mail.internet.ContentType;
 
-
 import org.apache.axiom.attachments.ByteArrayDataSource;
 import org.apache.axiom.om.OMAbstractFactory;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.om.OMOutputFormat;
+import org.apache.axiom.om.impl.MIMEOutputUtils;
+import org.apache.axiom.soap.SOAP12Constants;
 import org.apache.axiom.soap.SOAPEnvelope;
 import org.apache.axiom.soap.SOAPFactory;
 import org.apache.synapse.transport.base.BaseConstants;
@@ -64,8 +65,15 @@
     MessageEncoder<XMLMessage,byte[]> XML_TO_BYTE =
         new MessageEncoder<XMLMessage,byte[]>() {
 
-        public ContentType getContentType(ClientOptions options, ContentType 
contentType) {
-            return ContentTypeUtil.addCharset(contentType, 
options.getCharset());
+        public ContentType getContentType(ClientOptions options, ContentType 
contentType) throws Exception {
+            if 
(contentType.getBaseType().equals(XMLMessage.Type.SWA.getContentType().getBaseType()))
 {
+                OMOutputFormat outputFormat = new OMOutputFormat();
+                outputFormat.setMimeBoundary(options.getMimeBoundary());
+                outputFormat.setRootContentId(options.getRootContentId());
+                return new 
ContentType(outputFormat.getContentTypeForSwA(SOAP12Constants.SOAP_12_CONTENT_TYPE));
+            } else {
+                return ContentTypeUtil.addCharset(contentType, 
options.getCharset());
+            }
         }
 
         public byte[] encode(ClientOptions options, XMLMessage message) throws 
Exception {
@@ -73,7 +81,15 @@
             OMOutputFormat outputFormat = new OMOutputFormat();
             outputFormat.setCharSetEncoding(options.getCharset());
             outputFormat.setIgnoreXMLDeclaration(true);
-            message.getMessageElement().serializeAndConsume(baos, 
outputFormat);
+            if (message.getType() == XMLMessage.Type.SWA) {
+                outputFormat.setMimeBoundary(options.getMimeBoundary());
+                outputFormat.setRootContentId(options.getRootContentId());
+                StringWriter writer = new StringWriter();
+                message.getMessageElement().serializeAndConsume(writer);
+                MIMEOutputUtils.writeSOAPWithAttachmentsMessage(writer, baos, 
message.getAttachments(), outputFormat);
+            } else {
+                message.getMessageElement().serializeAndConsume(baos, 
outputFormat);
+            }
             return baos.toByteArray();
         }
     };
@@ -86,6 +102,9 @@
         }
 
         public String encode(ClientOptions options, XMLMessage message) throws 
Exception {
+            if (message.getType() == XMLMessage.Type.SWA) {
+                throw new UnsupportedOperationException();
+            }
             OMOutputFormat format = new OMOutputFormat();
             format.setIgnoreXMLDeclaration(true);
             StringWriter sw = new StringWriter();
@@ -147,6 +166,6 @@
         }
     };
     
-    ContentType getContentType(ClientOptions options, ContentType contentType);
+    ContentType getContentType(ClientOptions options, ContentType contentType) 
throws Exception;
     U encode(ClientOptions options, T message) throws Exception;
 }

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/XMLMessage.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/XMLMessage.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/XMLMessage.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/message/XMLMessage.java
 Wed Sep  3 14:40:40 2008
@@ -22,18 +22,21 @@
 import javax.mail.internet.ContentType;
 import javax.mail.internet.ParseException;
 
+import org.apache.axiom.attachments.Attachments;
 import org.apache.axiom.om.OMAbstractFactory;
 import org.apache.axiom.om.OMElement;
 import org.apache.axiom.soap.SOAP11Constants;
 import org.apache.axiom.soap.SOAP12Constants;
 import org.apache.axiom.soap.SOAPEnvelope;
 import org.apache.axiom.soap.SOAPFactory;
+import org.apache.axis2.transport.http.HTTPConstants;
 
 public class XMLMessage {
     public enum Type {
         SOAP11(SOAP11Constants.SOAP_11_CONTENT_TYPE),
         SOAP12(SOAP12Constants.SOAP_12_CONTENT_TYPE),
-        POX("application/xml");
+        POX("application/xml"),
+        SWA(HTTPConstants.MEDIA_TYPE_MULTIPART_RELATED);
         
         private final String contentType;
         
@@ -52,12 +55,18 @@
     
     private final Type type;
     private final OMElement payload;
+    private final Attachments attachments;
     
-    public XMLMessage(OMElement payload, Type type) {
+    public XMLMessage(OMElement payload, Type type, Attachments attachments) {
         this.payload = payload;
         this.type = type;
+        this.attachments = attachments;
     }
 
+    public XMLMessage(OMElement payload, Type type) {
+        this(payload, type, null);
+    }
+    
     public Type getType() {
         return type;
     }
@@ -71,14 +80,18 @@
             return payload;
         } else {
             SOAPFactory factory;
-            if (type == Type.SOAP12) {
-                factory = OMAbstractFactory.getSOAP12Factory();
-            } else {
+            if (type == Type.SOAP11) {
                 factory = OMAbstractFactory.getSOAP11Factory();
+            } else {
+                factory = OMAbstractFactory.getSOAP12Factory();
             }
             SOAPEnvelope envelope = factory.getDefaultEnvelope();
             envelope.getBody().addChild(payload);
             return envelope;
         }
     }
+
+    public Attachments getAttachments() {
+        return attachments;
+    }
 }

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisAsyncEndpoint.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisAsyncEndpoint.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisAsyncEndpoint.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/AxisAsyncEndpoint.java
 Wed Sep  3 14:40:40 2008
@@ -54,7 +54,18 @@
     }
 
     public void receive(MessageContext messageCtx) throws AxisFault {
-        final AxisMessage messageData = new AxisMessage(messageCtx);
+        final AxisMessage messageData;
+        try {
+            messageData = new AxisMessage(messageCtx);
+        }
+        catch (final Throwable ex) {
+            queue.add(new Event() {
+                public IncomingMessage<AxisMessage> process() throws Throwable 
{
+                    throw ex;
+                }
+            });
+            return;
+        }
         queue.add(new Event() {
             public IncomingMessage<AxisMessage> process() throws Throwable {
                 return new IncomingMessage<AxisMessage>(null, messageData);

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/ContentTypeServiceConfigurator.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/ContentTypeServiceConfigurator.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/ContentTypeServiceConfigurator.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/server/axis2/ContentTypeServiceConfigurator.java
 Wed Sep  3 14:40:40 2008
@@ -34,7 +34,7 @@
     }
 
     @SuppressWarnings("unused")
-    private void setUp(TestClient client, ClientOptions options) {
+    private void setUp(TestClient client, ClientOptions options) throws 
Exception {
         contentType = client.getContentType(options, 
options.getBaseContentType());
     }
 

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/SwATestCase.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/SwATestCase.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/SwATestCase.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/testkit/tests/async/SwATestCase.java
 Wed Sep  3 14:40:40 2008
@@ -20,7 +20,6 @@
 package org.apache.synapse.transport.testkit.tests.async;
 
 import java.io.ByteArrayOutputStream;
-import java.io.StringWriter;
 import java.util.Arrays;
 import java.util.Random;
 
@@ -31,27 +30,23 @@
 import org.apache.axiom.attachments.ByteArrayDataSource;
 import org.apache.axiom.om.OMAbstractFactory;
 import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMOutputFormat;
-import org.apache.axiom.om.impl.MIMEOutputUtils;
+import org.apache.axiom.om.OMFactory;
 import org.apache.axiom.om.util.UUIDGenerator;
-import org.apache.axiom.soap.SOAPBody;
-import org.apache.axiom.soap.SOAPEnvelope;
-import org.apache.axiom.soap.SOAPFactory;
 import org.apache.synapse.transport.testkit.client.AsyncTestClient;
 import org.apache.synapse.transport.testkit.listener.AsyncChannel;
-import org.apache.synapse.transport.testkit.message.AxisMessage;
+import org.apache.synapse.transport.testkit.message.XMLMessage;
 import org.apache.synapse.transport.testkit.name.Name;
 import org.apache.synapse.transport.testkit.server.AsyncEndpoint;
 
 @Name("AsyncSwA")
-public class SwATestCase extends AsyncMessageTestCase<byte[],AxisMessage> {
+public class SwATestCase extends AsyncMessageTestCase<XMLMessage,XMLMessage> {
     private static final Random random = new Random();
     
     private byte[] attachmentContent;
     private String contentID;
     
-    public SwATestCase(AsyncChannel channel, AsyncTestClient<byte[]> client, 
AsyncEndpoint<AxisMessage> endpoint, Object... resources) {
-        super(channel, client, endpoint, null, null, resources);
+    public SwATestCase(AsyncChannel channel, AsyncTestClient<XMLMessage> 
client, AsyncEndpoint<XMLMessage> endpoint, Object... resources) {
+        super(channel, client, endpoint, XMLMessage.Type.SWA.getContentType(), 
"UTF-8", resources);
     }
     
     @Override
@@ -63,28 +58,16 @@
     }
 
     @Override
-    protected byte[] prepareMessage() throws Exception {
-        SOAPFactory factory = OMAbstractFactory.getSOAP12Factory();
-        SOAPEnvelope orgEnvelope = factory.createSOAPEnvelope();
-        SOAPBody orgBody = factory.createSOAPBody();
-        OMElement orgElement = factory.createOMElement(new QName("root"));
-        orgBody.addChild(orgElement);
-        orgEnvelope.addChild(orgBody);
-        OMOutputFormat outputFormat = new OMOutputFormat();
-        outputFormat.setCharSetEncoding("UTF-8");
-        outputFormat.setIgnoreXMLDeclaration(true);
-        StringWriter writer = new StringWriter();
-        orgEnvelope.serializeAndConsume(writer);
-        Attachments orgAttachments = new Attachments();
-        orgAttachments.addDataHandler(contentID, new DataHandler(new 
ByteArrayDataSource(attachmentContent, "application/octet-stream")));
-        ByteArrayOutputStream baos = new ByteArrayOutputStream();
-        MIMEOutputUtils.writeSOAPWithAttachmentsMessage(writer, baos, 
orgAttachments, outputFormat);
-//        return new ByteArrayMessage(new 
ContentType(outputFormat.getContentTypeForSwA(SOAP12Constants.SOAP_12_CONTENT_TYPE)),
 baos.toByteArray());
-        return baos.toByteArray();
+    protected XMLMessage prepareMessage() throws Exception {
+        OMFactory factory = OMAbstractFactory.getOMFactory();
+        OMElement payload = factory.createOMElement(new QName("root"));
+        Attachments attachments = new Attachments();
+        attachments.addDataHandler(contentID, new DataHandler(new 
ByteArrayDataSource(attachmentContent, "application/octet-stream")));
+        return new XMLMessage(payload, XMLMessage.Type.SWA, attachments);
     }
 
     @Override
-    protected void checkMessageData(byte[] message, AxisMessage messageData) 
throws Exception {
+    protected void checkMessageData(XMLMessage message, XMLMessage 
messageData) throws Exception {
         ByteArrayOutputStream baos = new ByteArrayOutputStream();
         Attachments attachments = messageData.getAttachments();
         DataHandler dataHandler = attachments.getDataHandler(contentID);

Modified: 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSMockAsyncEndpoint.java
URL: 
http://svn.apache.org/viewvc/synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSMockAsyncEndpoint.java?rev=691796&r1=691795&r2=691796&view=diff
==============================================================================
--- 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSMockAsyncEndpoint.java
 (original)
+++ 
synapse/trunk/java/modules/transports/src/test/java/org/apache/synapse/transport/vfs/VFSMockAsyncEndpoint.java
 Wed Sep  3 14:40:40 2008
@@ -39,7 +39,7 @@
     private ContentType contentType;
     
     @SuppressWarnings("unused")
-    private void setUp(VFSFileChannel channel, TestClient client, 
ClientOptions options) {
+    private void setUp(VFSFileChannel channel, TestClient client, 
ClientOptions options) throws Exception {
         this.channel = channel;
         contentType = client.getContentType(options, 
options.getBaseContentType());
     }


Reply via email to