Author: veithen
Date: Sun Jun 12 11:35:08 2016
New Revision: 1747982

URL: http://svn.apache.org/viewvc?rev=1747982&view=rev
Log:
Eliminate _getBOFromReader because it's wrong to assume that conversion from OM 
to BO should always go through a reader.

Modified:
    
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/DataSourceBlockImpl.java
    
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/JAXBBlockImpl.java
    
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/OMBlockImpl.java
    
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/SOAPEnvelopeBlockImpl.java
    
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/SourceBlockImpl.java
    
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/XMLStringBlockImpl.java
    
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/BlockImpl.java

Modified: 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/DataSourceBlockImpl.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/DataSourceBlockImpl.java?rev=1747982&r1=1747981&r2=1747982&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/DataSourceBlockImpl.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/DataSourceBlockImpl.java
 Sun Jun 12 11:35:08 2016
@@ -32,7 +32,6 @@ import org.apache.axis2.jaxws.i18n.Messa
 import org.apache.axis2.jaxws.message.databinding.DataSourceBlock;
 import org.apache.axis2.jaxws.message.factory.BlockFactory;
 import org.apache.axis2.jaxws.message.impl.BlockImpl;
-import org.apache.axis2.jaxws.message.util.Reader2Writer;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
@@ -44,7 +43,6 @@ import javax.xml.stream.XMLStreamReader;
 import javax.xml.stream.XMLStreamWriter;
 import javax.xml.ws.WebServiceException;
 import java.io.ByteArrayOutputStream;
-import java.io.IOException;
 
 /**
  * SourceBlock
@@ -81,17 +79,6 @@ public class DataSourceBlockImpl extends
     }
 
     @Override
-    protected DataSource _getBOFromReader(XMLStreamReader reader, Void 
busContext) throws XMLStreamException, WebServiceException {
-        Reader2Writer r2w = new Reader2Writer(reader);
-        try {
-            return new ByteArrayDataSource(r2w.getAsString(), 
"application/octet-stream");
-        } catch (IOException e) {
-            throw new XMLStreamException(e);
-        }
-
-    }
-
-    @Override
     public OMElement getOMElement() throws XMLStreamException, 
WebServiceException {
         OMFactory factory = OMAbstractFactory.getOMFactory();
         OMNamespace ns = factory.createOMNamespace("", "");

Modified: 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/JAXBBlockImpl.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/JAXBBlockImpl.java?rev=1747982&r1=1747981&r2=1747982&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/JAXBBlockImpl.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/JAXBBlockImpl.java
 Sun Jun 12 11:35:08 2016
@@ -84,8 +84,7 @@ public class JAXBBlockImpl extends Block
         super(omElement, busContext, qName, factory);
     }
 
-    @Override
-    protected Object _getBOFromReader(XMLStreamReader reader, JAXBBlockContext 
busContext)
+    private Object _getBOFromReader(XMLStreamReader reader, JAXBBlockContext 
busContext)
         throws XMLStreamException, WebServiceException {
         // Get the JAXBBlockContext. All of the necessry information is 
recorded on it
         try {
@@ -129,7 +128,7 @@ public class JAXBBlockImpl extends Block
                 return ((JAXBBlockImpl) ds).getObject();
             }
         }
-        return super._getBOFromOM(omElement, busContext);
+        return _getBOFromReader(omElement.getXMLStreamReader(false), 
busContext);
     }
 
     /**

Modified: 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/OMBlockImpl.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/OMBlockImpl.java?rev=1747982&r1=1747981&r2=1747982&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/OMBlockImpl.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/OMBlockImpl.java
 Sun Jun 12 11:35:08 2016
@@ -48,13 +48,6 @@ public class OMBlockImpl extends BlockIm
     }
 
     @Override
-    protected OMElement _getBOFromReader(XMLStreamReader reader, Void 
busContext)
-            throws XMLStreamException, WebServiceException {
-        // Take a shortcut and return the OMElement
-        return this.getOMElement();
-    }
-
-    @Override
     protected XMLStreamReader _getReaderFromBO(OMElement busObj, Void 
busContext)
             throws XMLStreamException, WebServiceException {
         return busObj.getXMLStreamReader();

Modified: 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/SOAPEnvelopeBlockImpl.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/SOAPEnvelopeBlockImpl.java?rev=1747982&r1=1747981&r2=1747982&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/SOAPEnvelopeBlockImpl.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/SOAPEnvelopeBlockImpl.java
 Sun Jun 12 11:35:08 2016
@@ -74,14 +74,11 @@ public class SOAPEnvelopeBlockImpl exten
         super(omElement, null, qName, factory);
     }
 
-    /* (non-Javadoc)
-      * @see 
org.apache.axis2.jaxws.message.impl.BlockImpl#_getBOFromReader(javax.xml.stream.XMLStreamReader,
 java.lang.Object)
-      */
     @Override
-    protected SOAPEnvelope _getBOFromReader(XMLStreamReader reader, Void 
busContext)
+    protected SOAPEnvelope _getBOFromOM(OMElement omElement, Void busContext)
             throws XMLStreamException, WebServiceException {
         MessageFactory mf = 
(MessageFactory)FactoryRegistry.getFactory(MessageFactory.class);
-        Message message = mf.createFrom(reader, null);
+        Message message = mf.createFrom(omElement.getXMLStreamReader(false), 
null);
         SOAPEnvelope env = message.getAsSOAPEnvelope();
         this.setQName(getQName(env));
         return env;

Modified: 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/SourceBlockImpl.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/SourceBlockImpl.java?rev=1747982&r1=1747981&r2=1747982&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/SourceBlockImpl.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/SourceBlockImpl.java
 Sun Jun 12 11:35:08 2016
@@ -131,8 +131,7 @@ public class SourceBlockImpl extends Blo
         super(omElement, null, qName, factory);
     }
 
-    @Override
-    protected Source _getBOFromReader(XMLStreamReader reader, Void busContext)
+    private Source _getBOFromReader(XMLStreamReader reader, Void busContext)
             throws XMLStreamException {
 
         // Best solution is to use a StAXSource
@@ -181,7 +180,7 @@ public class SourceBlockImpl extends Blo
         
         // Transform reader into business object
         if (!hasFault) {
-            busObject = super._getBOFromOM(omElement, busContext);
+            busObject = _getBOFromReader(omElement.getXMLStreamReader(false), 
busContext);
         }
         else {
             ByteArrayOutputStream baos = new ByteArrayOutputStream();

Modified: 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/XMLStringBlockImpl.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/XMLStringBlockImpl.java?rev=1747982&r1=1747981&r2=1747982&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/XMLStringBlockImpl.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/databinding/impl/XMLStringBlockImpl.java
 Sun Jun 12 11:35:08 2016
@@ -69,8 +69,7 @@ public class XMLStringBlockImpl extends
         super(omElement, null, qName, factory);
     }
 
-    @Override
-    protected String _getBOFromReader(XMLStreamReader reader, Void busContext)
+    private String _getBOFromReader(XMLStreamReader reader, Void busContext)
             throws XMLStreamException {
         // Create a Reader2Writer converter and get the output as a String
         Reader2Writer r2w;
@@ -93,7 +92,7 @@ public class XMLStringBlockImpl extends
                 return ((StringOMDataSource) ds).getObject();
             }
         }
-        return super._getBOFromOM(omElement, busContext);
+        return _getBOFromReader(omElement.getXMLStreamReader(false), 
busContext);
     }
 
     @Override

Modified: 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/BlockImpl.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/BlockImpl.java?rev=1747982&r1=1747981&r2=1747982&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/BlockImpl.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/jaxws/src/org/apache/axis2/jaxws/message/impl/BlockImpl.java
 Sun Jun 12 11:35:08 2016
@@ -424,19 +424,6 @@ public abstract class BlockImpl<T,C> ext
         return busObject;
     }
 
-
-    /**
-     * The derived class must provide an implementation that builds the 
business object from the
-     * reader
-     *
-     * @param reader     XMLStreamReader, which is consumed
-     * @param busContext
-     * @return
-     */
-    protected abstract T _getBOFromReader(XMLStreamReader reader, C busContext)
-            throws XMLStreamException, WebServiceException;
-
-    
     /**
      * Default method for getting business object from OM.
      * Derived classes may override this method to get the business object 
from a
@@ -448,10 +435,8 @@ public abstract class BlockImpl<T,C> ext
      * @throws XMLStreamException
      * @throws WebServiceException
      */
-    protected T _getBOFromOM(OMElement omElement, C busContext)
-            throws XMLStreamException, WebServiceException {
-        return _getBOFromReader(omElement.getXMLStreamReader(false), 
busContext);
-    }
+    protected abstract T _getBOFromOM(OMElement omElement, C busContext)
+            throws XMLStreamException, WebServiceException;
     
     /**
      * Get an XMLStreamReader for the BusinessObject The derived Block must 
implement this method


Reply via email to