Author: veithen
Date: Sun Dec 23 21:30:00 2018
New Revision: 1849664

URL: http://svn.apache.org/viewvc?rev=1849664&view=rev
Log:
Remove the getBytes method from MessageFormatter and always use writeTo.

Modified:
    
axis/axis2/java/core/trunk/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetMessageFormatter.java
    
axis/axis2/java/core/trunk/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetPOXMessageFormatter.java
    
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/utility/DataSourceFormatter.java
    
axis/axis2/java/core/trunk/modules/json/src/org/apache/axis2/json/AbstractJSONMessageFormatter.java
    
axis/axis2/java/core/trunk/modules/json/src/org/apache/axis2/json/gson/JsonFormatter.java
    
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/MessageFormatter.java
    
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/ApplicationXMLFormatter.java
    
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/MultipartFormDataFormatter.java
    
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/SOAPMessageFormatter.java
    
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/XFormURLEncodedFormatter.java
    
axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/transport/http/MultipartFormDataFormatterTest.java
    
axis/axis2/java/core/trunk/modules/transport/base/src/main/java/org/apache/axis2/format/BinaryFormatter.java
    
axis/axis2/java/core/trunk/modules/transport/base/src/main/java/org/apache/axis2/format/MessageFormatterExAdapter.java
    
axis/axis2/java/core/trunk/modules/transport/base/src/main/java/org/apache/axis2/format/PlainTextFormatter.java
    
axis/axis2/java/core/trunk/modules/transport/base/src/test/java/org/apache/axis2/format/PlainTextFormatterTest.java
    
axis/axis2/java/core/trunk/modules/transport/http/src/org/apache/axis2/transport/http/AbstractHTTPTransportSender.java
    
axis/axis2/java/core/trunk/modules/transport/tcp/src/org/apache/axis2/transport/tcp/TCPTransportSender.java
    
axis/axis2/java/core/trunk/modules/transport/udp/src/main/java/org/apache/axis2/transport/udp/UDPSender.java

Modified: 
axis/axis2/java/core/trunk/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetMessageFormatter.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetMessageFormatter.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetMessageFormatter.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetMessageFormatter.java
 Sun Dec 23 21:30:00 2018
@@ -31,7 +31,6 @@ import org.apache.commons.logging.LogFac
 
 import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamWriter;
-import java.io.ByteArrayOutputStream;
 import java.io.OutputStream;
 import java.net.MalformedURLException;
 import java.net.URL;
@@ -53,18 +52,6 @@ public class FastInfosetMessageFormatter
     }
 
     /**
-     * Retrieves the raw bytes from the SOAP envelop.
-     * 
-     * @see 
org.apache.axis2.transport.MessageFormatter#getBytes(org.apache.axis2.context.MessageContext,
 org.apache.axiom.om.OMOutputFormat)
-     */
-    public byte[] getBytes(MessageContext messageContext, OMOutputFormat 
format)
-            throws AxisFault {
-        ByteArrayOutputStream outStream = new ByteArrayOutputStream();
-        writeTo(messageContext, format, outStream, false);
-        return outStream.toByteArray();
-    }
-
-    /**
      * Returns the content type
      * 
      * @see 
org.apache.axis2.transport.MessageFormatter#getContentType(org.apache.axis2.context.MessageContext,
 org.apache.axiom.om.OMOutputFormat, java.lang.String)

Modified: 
axis/axis2/java/core/trunk/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetPOXMessageFormatter.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetPOXMessageFormatter.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetPOXMessageFormatter.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/fastinfoset/src/org/apache/axis2/fastinfoset/FastInfosetPOXMessageFormatter.java
 Sun Dec 23 21:30:00 2018
@@ -31,7 +31,6 @@ import org.apache.commons.logging.LogFac
 
 import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamWriter;
-import java.io.ByteArrayOutputStream;
 import java.io.OutputStream;
 import java.net.MalformedURLException;
 import java.net.URL;
@@ -53,18 +52,6 @@ public class FastInfosetPOXMessageFormat
     }
 
     /**
-     * Retrieves the raw bytes from the SOAP envelop.
-     * 
-     * @see 
org.apache.axis2.transport.MessageFormatter#getBytes(org.apache.axis2.context.MessageContext,
 org.apache.axiom.om.OMOutputFormat)
-     */
-    public byte[] getBytes(MessageContext messageContext, OMOutputFormat 
format)
-            throws AxisFault {
-        ByteArrayOutputStream outStream = new ByteArrayOutputStream();
-        writeTo(messageContext, format, outStream, false);
-        return outStream.toByteArray();
-    }
-
-    /**
      * Returns the content type
      * 
      * @see 
org.apache.axis2.transport.MessageFormatter#getContentType(org.apache.axis2.context.MessageContext,
 org.apache.axiom.om.OMOutputFormat, java.lang.String)

Modified: 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/utility/DataSourceFormatter.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/utility/DataSourceFormatter.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/utility/DataSourceFormatter.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/utility/DataSourceFormatter.java
 Sun Dec 23 21:30:00 2018
@@ -49,10 +49,6 @@ public class DataSourceFormatter impleme
         this.contentType = contentType;
     }
 
-    public byte[] getBytes(org.apache.axis2.context.MessageContext 
messageContext, OMOutputFormat format) throws AxisFault {
-        throw new UnsupportedOperationException("FIXME");
-    }
-
     public void writeTo(org.apache.axis2.context.MessageContext 
messageContext, OMOutputFormat format, OutputStream outputStream, boolean 
preserve) throws AxisFault {
         AttachmentsAdapter attachments = (AttachmentsAdapter) 
messageContext.getProperty(MessageContext.OUTBOUND_MESSAGE_ATTACHMENTS);
         try {

Modified: 
axis/axis2/java/core/trunk/modules/json/src/org/apache/axis2/json/AbstractJSONMessageFormatter.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/json/src/org/apache/axis2/json/AbstractJSONMessageFormatter.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/json/src/org/apache/axis2/json/AbstractJSONMessageFormatter.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/json/src/org/apache/axis2/json/AbstractJSONMessageFormatter.java
 Sun Dec 23 21:30:00 2018
@@ -31,10 +31,8 @@ import org.apache.axis2.description.WSDL
 import org.apache.axis2.transport.MessageFormatter;
 import org.apache.axis2.transport.http.util.URIEncoderDecoder;
 
-import javax.xml.stream.FactoryConfigurationError;
 import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamWriter;
-import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.io.OutputStreamWriter;
@@ -76,26 +74,6 @@ public abstract class AbstractJSONMessag
         return contentType;
     }
 
-    /**
-     * Gives the JSON message as an array of bytes. If the payload is an 
OMSourcedElement and
-     * it contains a JSONDataSource with a correctly formatted JSON String, 
gets it directly from
-     * the DataSource and returns as a byte array. If not, the OM tree is 
expanded and it is
-     * serialized into the output stream and byte array is returned.
-     *
-     * @param msgCtxt Message context which contains the soap envelope to be 
written
-     * @param format  format of the message, this is ignored
-     * @return the payload as a byte array
-     * @throws AxisFault if there is an error in writing the message using 
StAX writer or IF THE
-     *                   USER TRIES TO SEND A JSON MESSAGE WITH NAMESPACES 
USING THE "MAPPED"
-     *                   CONVENTION.
-     */
-
-    public byte[] getBytes(MessageContext msgCtxt, OMOutputFormat format) 
throws AxisFault {
-        ByteArrayOutputStream bytesOut = new ByteArrayOutputStream();
-        writeTo(msgCtxt, format, bytesOut, true);
-        return bytesOut.toByteArray();
-    }
-
     public String formatSOAPAction(MessageContext msgCtxt, OMOutputFormat 
format,
                                    String soapActionString) {
         return null;

Modified: 
axis/axis2/java/core/trunk/modules/json/src/org/apache/axis2/json/gson/JsonFormatter.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/json/src/org/apache/axis2/json/gson/JsonFormatter.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/json/src/org/apache/axis2/json/gson/JsonFormatter.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/json/src/org/apache/axis2/json/gson/JsonFormatter.java
 Sun Dec 23 21:30:00 2018
@@ -48,10 +48,6 @@ import java.util.Iterator;
 public class JsonFormatter implements MessageFormatter {
     private static final Log log = LogFactory.getLog(JsonFormatter.class);
 
-    public byte[] getBytes(MessageContext messageContext, OMOutputFormat 
omOutputFormat) throws AxisFault {
-        return new byte[0];
-    }
-
     public void writeTo(MessageContext outMsgCtxt, OMOutputFormat 
omOutputFormat, OutputStream outputStream, boolean preserve) throws AxisFault {
         String charSetEncoding = (String) 
outMsgCtxt.getProperty(Constants.Configuration.CHARACTER_SET_ENCODING);
         JsonWriter jsonWriter;

Modified: 
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/MessageFormatter.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/MessageFormatter.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/MessageFormatter.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/MessageFormatter.java
 Sun Dec 23 21:30:00 2018
@@ -43,14 +43,6 @@ import java.net.URL;
  * </p>
  */
 public interface MessageFormatter {
-
-    /**
-     * @return a byte array of the message formatted according to the given
-     *         message format.
-     */
-    public byte[] getBytes(MessageContext messageContext, OMOutputFormat 
format)
-            throws AxisFault;
-
     /**
      * To support deffered writing transports as in http chunking.. Axis2 was
      * doing this for some time..

Modified: 
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/ApplicationXMLFormatter.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/ApplicationXMLFormatter.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/ApplicationXMLFormatter.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/ApplicationXMLFormatter.java
 Sun Dec 23 21:30:00 2018
@@ -33,7 +33,6 @@ import org.apache.axis2.util.JavaUtils;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
-import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.net.URL;
@@ -44,27 +43,6 @@ import java.net.URL;
 public class ApplicationXMLFormatter implements MessageFormatter {
 
     private static final Log log = 
LogFactory.getLog(ApplicationXMLFormatter.class);
-    public byte[] getBytes(MessageContext 
-                           messageContext, 
-                           OMOutputFormat format) throws AxisFault {
-        return getBytes(messageContext, format, false);
-    }
-    
-    /**
-     * Get the bytes for this message
-     * @param messageContext
-     * @param format
-     * @param preserve (indicates if the OM should be preserved or consumed)
-     * @return
-     * @throws AxisFault
-     */
-    public byte[] getBytes(MessageContext messageContext, 
-                           OMOutputFormat format, 
-                           boolean preserve) throws AxisFault {
-        ByteArrayOutputStream bytesOut = new ByteArrayOutputStream();
-        writeTo(messageContext, format, bytesOut, preserve);
-        return bytesOut.toByteArray();
-    }
 
     public void writeTo(MessageContext messageContext, OMOutputFormat format,
                         OutputStream outputStream, boolean preserve) throws 
AxisFault {

Modified: 
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/MultipartFormDataFormatter.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/MultipartFormDataFormatter.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/MultipartFormDataFormatter.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/MultipartFormDataFormatter.java
 Sun Dec 23 21:30:00 2018
@@ -30,7 +30,6 @@ import org.apache.axis2.context.MessageC
 import org.apache.axis2.transport.MessageFormatter;
 import org.apache.axis2.transport.http.util.URLTemplatingUtil;
 
-import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.net.URL;
@@ -78,21 +77,6 @@ import java.util.Iterator;
  * @@@@-@@-@@ --AaB03x--
  */
 public class MultipartFormDataFormatter implements MessageFormatter {
-
-    /**
-     * @return a byte array of the message formatted according to the given
-     *         message format.
-     */
-    public byte[] getBytes(MessageContext messageContext, OMOutputFormat 
format) throws AxisFault {
-        ByteArrayOutputStream bytesOut = new ByteArrayOutputStream();
-        try {
-            writeTo(messageContext, format, bytesOut, true);
-            return bytesOut.toByteArray();
-        } catch (IOException e) {
-            throw new AxisFault(e.getMessage());
-        }     
-    }
-
     /**
      * Different message formats can set their own content types
      * Eg: JSONFormatter can set the content type as application/json

Modified: 
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/SOAPMessageFormatter.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/SOAPMessageFormatter.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/SOAPMessageFormatter.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/SOAPMessageFormatter.java
 Sun Dec 23 21:30:00 2018
@@ -39,7 +39,6 @@ import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
 import javax.xml.stream.XMLStreamException;
-import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.net.URL;
@@ -94,13 +93,6 @@ public class SOAPMessageFormatter implem
         }
     }
 
-    public byte[] getBytes(MessageContext msgCtxt, OMOutputFormat format)
-            throws AxisFault {
-        ByteArrayOutputStream out = new ByteArrayOutputStream();
-        writeTo(msgCtxt, format, out, true);
-        return out.toByteArray();
-    }
-
     public String getContentType(MessageContext msgCtxt, OMOutputFormat format,
                                  String soapActionString) {
         String encoding = format.getCharSetEncoding();

Modified: 
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/XFormURLEncodedFormatter.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/XFormURLEncodedFormatter.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/XFormURLEncodedFormatter.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/transport/http/XFormURLEncodedFormatter.java
 Sun Dec 23 21:30:00 2018
@@ -29,7 +29,6 @@ import org.apache.axis2.transport.Messag
 import org.apache.axis2.transport.http.util.URLTemplatingUtil;
 import org.apache.axis2.util.JavaUtils;
 
-import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.io.OutputStreamWriter;
@@ -40,13 +39,6 @@ import java.util.Iterator;
  * Formates the request message as application/x-www-form-urlencoded
  */
 public class XFormURLEncodedFormatter implements MessageFormatter {
-
-    public byte[] getBytes(MessageContext messageContext, OMOutputFormat 
format) throws AxisFault {
-        ByteArrayOutputStream baos = new ByteArrayOutputStream();
-        writeTo(messageContext, format, baos, true);
-        return baos.toByteArray();
-    }
-
     public void writeTo(MessageContext messageContext, OMOutputFormat format,
                         OutputStream outputStream, boolean preserve) throws 
AxisFault {
         OMElement omElement = 
messageContext.getEnvelope().getBody().getFirstElement();

Modified: 
axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/transport/http/MultipartFormDataFormatterTest.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/transport/http/MultipartFormDataFormatterTest.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/transport/http/MultipartFormDataFormatterTest.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/kernel/test/org/apache/axis2/transport/http/MultipartFormDataFormatterTest.java
 Sun Dec 23 21:30:00 2018
@@ -74,27 +74,6 @@ public class MultipartFormDataFormatterT
         return enp;
     }
 
-    public void testGetBytes() throws AxisFault {
-
-        OMOutputFormat omOutput = new OMOutputFormat();
-        String boundary = omOutput.getMimeBoundary();
-        byte[] bytes = formatter.getBytes(messageContext, omOutput);
-        String message = new String(bytes);
-        
-        assertNotNull("bytes can not be null", bytes);
-        assertTrue("Can not find the content", message.contains(boundary));
-        assertTrue("Can not find the content",
-                message.contains("Content-Disposition: form-data; 
name=\"part1\""));
-        assertTrue("Can not find the content",
-                message.contains("Content-Disposition: form-data; 
name=\"part2\""));
-        assertTrue("Can not find the content",
-                message.contains("Content-Type: text/plain; 
charset=US-ASCII"));
-        //assertTrue("Can not find the content", 
message.contains("Content-Transfer-Encoding: 8bit"));
-        assertTrue("Can not find the content", message.contains("sample data 
part 1"));
-        assertTrue("Can not find the content", message.contains("sample data 
part 2"));
-
-    }
-
     public void testWriteTo() throws AxisFault {
 
         OMOutputFormat omOutput = new OMOutputFormat();

Modified: 
axis/axis2/java/core/trunk/modules/transport/base/src/main/java/org/apache/axis2/format/BinaryFormatter.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/transport/base/src/main/java/org/apache/axis2/format/BinaryFormatter.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/transport/base/src/main/java/org/apache/axis2/format/BinaryFormatter.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/transport/base/src/main/java/org/apache/axis2/format/BinaryFormatter.java
 Sun Dec 23 21:30:00 2018
@@ -18,7 +18,6 @@
  */
 package org.apache.axis2.format;
 
-import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.net.URL;
@@ -36,12 +35,6 @@ import org.apache.axis2.transport.http.u
 import org.apache.axis2.transport.base.BaseConstants;
 
 public class BinaryFormatter implements MessageFormatterEx {
-    public byte[] getBytes(MessageContext messageContext, OMOutputFormat 
format) throws AxisFault {
-        ByteArrayOutputStream baos = new ByteArrayOutputStream();
-        writeTo(messageContext, format, baos, true);
-        return baos.toByteArray();
-    }
-
     private DataHandler getDataHandler(MessageContext messageContext) {
         OMElement firstChild = 
messageContext.getEnvelope().getBody().getFirstElement();
         if 
(BaseConstants.DEFAULT_BINARY_WRAPPER.equals(firstChild.getQName())) {

Modified: 
axis/axis2/java/core/trunk/modules/transport/base/src/main/java/org/apache/axis2/format/MessageFormatterExAdapter.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/transport/base/src/main/java/org/apache/axis2/format/MessageFormatterExAdapter.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/transport/base/src/main/java/org/apache/axis2/format/MessageFormatterExAdapter.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/transport/base/src/main/java/org/apache/axis2/format/MessageFormatterExAdapter.java
 Sun Dec 23 21:30:00 2018
@@ -23,7 +23,10 @@ import java.net.URL;
 
 import javax.activation.DataSource;
 
-import org.apache.axiom.attachments.ByteArrayDataSource;
+import org.apache.axiom.blob.BlobDataSource;
+import org.apache.axiom.blob.Blobs;
+import org.apache.axiom.blob.MemoryBlob;
+import org.apache.axiom.blob.MemoryBlobOutputStream;
 import org.apache.axiom.om.OMOutputFormat;
 import org.apache.axis2.AxisFault;
 import org.apache.axis2.context.MessageContext;
@@ -33,7 +36,7 @@ import org.apache.axis2.transport.Messag
  * Adapter to add the {@link MessageFormatterEx} interface to an
  * existing {@link MessageFormatter}.
  * It implements the {@link MessageFormatterEx#getDataSource(MessageContext, 
OMOutputFormat, String)} method
- * using {@link MessageFormatter#getBytes(MessageContext, OMOutputFormat)} and
+ * using {@link MessageFormatter#writeTo(MessageContext, OMOutputFormat, 
OutputStream, boolean)} and
  * {@link MessageFormatter#getContentType(MessageContext, OMOutputFormat, 
String)}.
  */
 public class MessageFormatterExAdapter implements MessageFormatterEx {
@@ -46,9 +49,11 @@ public class MessageFormatterExAdapter i
     public DataSource getDataSource(MessageContext messageContext,
                                     OMOutputFormat format,
                                     String soapAction) throws AxisFault {
-        return new ByteArrayDataSource(
-                getBytes(messageContext, format),
-                getContentType(messageContext, format, soapAction));
+        MemoryBlob blob = Blobs.createMemoryBlob();
+        MemoryBlobOutputStream out = blob.getOutputStream();
+        writeTo(messageContext, format, out, false);
+        out.close();
+        return new BlobDataSource(blob, getContentType(messageContext, format, 
soapAction));
     }
 
     public String formatSOAPAction(MessageContext messageContext,
@@ -57,11 +62,6 @@ public class MessageFormatterExAdapter i
         return messageFormatter.formatSOAPAction(messageContext, format, 
soapAction);
     }
 
-    public byte[] getBytes(MessageContext messageContext,
-                           OMOutputFormat format) throws AxisFault {
-        return messageFormatter.getBytes(messageContext, format);
-    }
-
     public String getContentType(MessageContext messageContext,
                                  OMOutputFormat format,
                                  String soapAction) {

Modified: 
axis/axis2/java/core/trunk/modules/transport/base/src/main/java/org/apache/axis2/format/PlainTextFormatter.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/transport/base/src/main/java/org/apache/axis2/format/PlainTextFormatter.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/transport/base/src/main/java/org/apache/axis2/format/PlainTextFormatter.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/transport/base/src/main/java/org/apache/axis2/format/PlainTextFormatter.java
 Sun Dec 23 21:30:00 2018
@@ -26,7 +26,6 @@ import org.apache.axiom.om.OMOutputForma
 import org.apache.axiom.om.OMElement;
 import org.apache.axis2.transport.base.BaseConstants;
 
-import java.io.ByteArrayOutputStream;
 import java.io.OutputStream;
 import java.io.IOException;
 import java.io.OutputStreamWriter;
@@ -36,13 +35,6 @@ import java.net.URL;
 import javax.activation.DataSource;
 
 public class PlainTextFormatter implements MessageFormatterEx {
-
-    public byte[] getBytes(MessageContext messageContext, OMOutputFormat 
format) throws AxisFault {
-        ByteArrayOutputStream baos = new ByteArrayOutputStream();
-        writeTo(messageContext, format, baos, true);
-        return baos.toByteArray();
-    }
-
     public void writeTo(MessageContext messageContext, OMOutputFormat format, 
OutputStream outputStream, boolean preserve) throws AxisFault {
         OMElement textElt = 
messageContext.getEnvelope().getBody().getFirstElement();
         if (BaseConstants.DEFAULT_TEXT_WRAPPER.equals(textElt.getQName())) {

Modified: 
axis/axis2/java/core/trunk/modules/transport/base/src/test/java/org/apache/axis2/format/PlainTextFormatterTest.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/transport/base/src/test/java/org/apache/axis2/format/PlainTextFormatterTest.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/transport/base/src/test/java/org/apache/axis2/format/PlainTextFormatterTest.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/transport/base/src/test/java/org/apache/axis2/format/PlainTextFormatterTest.java
 Sun Dec 23 21:30:00 2018
@@ -46,22 +46,6 @@ public class PlainTextFormatterTest exte
                return messageContext;
        }
        
-       private void testGetBytes(String encoding) throws Exception {
-               MessageContext messageContext = 
createMessageContext(testString);
-        OMOutputFormat format = new OMOutputFormat();
-        format.setCharSetEncoding(encoding);
-        byte[] bytes = new PlainTextFormatter().getBytes(messageContext, 
format);
-        assertEquals(testString, new String(bytes, encoding));
-       }
-       
-       public void testGetBytesUTF8() throws Exception {
-               testGetBytes("UTF-8");
-       }
-       
-       public void testGetBytesLatin1() throws Exception {
-               testGetBytes("ISO-8859-1");
-       }
-       
        private void testWriteTo(String encoding) throws Exception {
                MessageContext messageContext = 
createMessageContext(testString);
         OMOutputFormat format = new OMOutputFormat();

Modified: 
axis/axis2/java/core/trunk/modules/transport/http/src/org/apache/axis2/transport/http/AbstractHTTPTransportSender.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/transport/http/src/org/apache/axis2/transport/http/AbstractHTTPTransportSender.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/transport/http/src/org/apache/axis2/transport/http/AbstractHTTPTransportSender.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/transport/http/src/org/apache/axis2/transport/http/AbstractHTTPTransportSender.java
 Sun Dec 23 21:30:00 2018
@@ -334,7 +334,7 @@ public abstract class AbstractHTTPTransp
                                                            
HTTPConstants.COMPRESSION_GZIP);
                 try {
                     out = new GZIPOutputStream(out);
-                    out.write(messageFormatter.getBytes(msgContext, format));
+                    messageFormatter.writeTo(msgContext, format, out, false);
                     ((GZIPOutputStream) out).finish();
                     out.flush();
                 } catch (IOException e) {

Modified: 
axis/axis2/java/core/trunk/modules/transport/tcp/src/org/apache/axis2/transport/tcp/TCPTransportSender.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/transport/tcp/src/org/apache/axis2/transport/tcp/TCPTransportSender.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/transport/tcp/src/org/apache/axis2/transport/tcp/TCPTransportSender.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/transport/tcp/src/org/apache/axis2/transport/tcp/TCPTransportSender.java
 Sun Dec 23 21:30:00 2018
@@ -88,9 +88,8 @@ public class TCPTransportSender extends
         MessageFormatter messageFormatter = 
MessageProcessorSelector.getMessageFormatter(msgContext);
         OMOutputFormat format = BaseUtils.getOMOutputFormat(msgContext);
         format.setContentType(contentType);
-        byte[] payload = messageFormatter.getBytes(msgContext, format);
         OutputStream out = socket.getOutputStream();
-        out.write(payload);
+        messageFormatter.writeTo(msgContext, format, out, false);
         out.flush();
     }
 

Modified: 
axis/axis2/java/core/trunk/modules/transport/udp/src/main/java/org/apache/axis2/transport/udp/UDPSender.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/transport/udp/src/main/java/org/apache/axis2/transport/udp/UDPSender.java?rev=1849664&r1=1849663&r2=1849664&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/transport/udp/src/main/java/org/apache/axis2/transport/udp/UDPSender.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/transport/udp/src/main/java/org/apache/axis2/transport/udp/UDPSender.java
 Sun Dec 23 21:30:00 2018
@@ -38,6 +38,7 @@ import org.apache.axis2.transport.Transp
 import org.apache.axis2.transport.base.AbstractTransportSender;
 import org.apache.axis2.transport.base.BaseUtils;
 import org.apache.axis2.util.MessageProcessorSelector;
+import org.apache.commons.io.output.ByteArrayOutputStream;
 import org.apache.commons.logging.LogFactory;
 
 import javax.xml.stream.XMLStreamException;
@@ -71,7 +72,9 @@ public class UDPSender extends AbstractT
         MessageFormatter messageFormatter = 
MessageProcessorSelector.getMessageFormatter(msgContext);
         OMOutputFormat format = BaseUtils.getOMOutputFormat(msgContext);
         format.setContentType(udpOutInfo.getContentType());
-        byte[] payload = messageFormatter.getBytes(msgContext, format);
+        ByteArrayOutputStream out = new ByteArrayOutputStream();
+        messageFormatter.writeTo(msgContext, format, out, false);
+        byte[] payload = out.toByteArray();
         try {
             DatagramSocket socket = new DatagramSocket();
             if (log.isDebugEnabled()) {


Reply via email to