You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by an...@apache.org on 2008/04/21 12:42:04 UTC

svn commit: r650091 - in /incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo: helper/ util/ util/resource/

Author: antelder
Date: Mon Apr 21 03:41:57 2008
New Revision: 650091

URL: http://svn.apache.org/viewvc?rev=650091&view=rev
Log:
TUSCANY-2240: Merge fix from trunk to fix Creation of SDO object out of XML (read from an JMS message) is taking too long

Modified:
    incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/helper/XMLStreamHelperImpl.java
    incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/util/DataObjectUtil.java
    incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/util/resource/DataObjectXMLStreamReader.java
    incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/util/resource/SDOURIConverterImpl.java

Modified: incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/helper/XMLStreamHelperImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/helper/XMLStreamHelperImpl.java?rev=650091&r1=650090&r2=650091&view=diff
==============================================================================
--- incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/helper/XMLStreamHelperImpl.java (original)
+++ incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/helper/XMLStreamHelperImpl.java Mon Apr 21 03:41:57 2008
@@ -19,11 +19,8 @@
  */
 package org.apache.tuscany.sdo.helper;
 
-import java.io.IOException;
-import java.util.Iterator;
 import java.util.Map;
-import java.util.Set;
-import javax.xml.namespace.QName;
+
 import javax.xml.stream.XMLStreamConstants;
 import javax.xml.stream.XMLStreamException;
 import javax.xml.stream.XMLStreamReader;
@@ -32,7 +29,6 @@
 import org.apache.tuscany.sdo.util.resource.DataObjectXMLStreamReader;
 import org.apache.tuscany.sdo.util.resource.XMLDocumentStreamReader;
 import org.apache.tuscany.sdo.util.resource.XMLStreamSerializer;
-//import org.apache.tuscany.sdo.api.XMLStreamHelper;
 import org.eclipse.emf.ecore.resource.Resource;
 
 import commonj.sdo.DataObject;
@@ -114,6 +110,9 @@
     }
 
     public XMLStreamReader createXMLStreamReader(DataObject dataObject) {
+        if (dataObject == null) {
+            return null;
+        }
         String rootElementURI;
         String rootElementName;
 

Modified: incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/util/DataObjectUtil.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/util/DataObjectUtil.java?rev=650091&r1=650090&r2=650091&view=diff
==============================================================================
--- incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/util/DataObjectUtil.java (original)
+++ incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/util/DataObjectUtil.java Mon Apr 21 03:41:57 2008
@@ -44,6 +44,7 @@
 import org.apache.tuscany.sdo.impl.DataGraphImpl;
 import org.apache.tuscany.sdo.model.ModelFactory;
 import org.apache.tuscany.sdo.model.impl.ModelFactoryImpl;
+import org.apache.tuscany.sdo.util.resource.SDOURIConverterImpl;
 import org.apache.tuscany.sdo.util.resource.SDOXMLResourceFactoryImpl;
 import org.eclipse.emf.common.util.BasicEList;
 import org.eclipse.emf.common.util.URI;
@@ -2591,7 +2592,7 @@
   {
     resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap().putAll(getRegistrations());
     resourceSet.setPackageRegistry(new EPackageRegistryImpl(HelperContextImpl.getBuiltInModelRegistry()));      
-//    resourceSet.setURIConverter(new SDOURIConverterImpl());
+    resourceSet.setURIConverter(new SDOURIConverterImpl());
   }
   
   public static EClass createDocumentRoot()

Modified: incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/util/resource/DataObjectXMLStreamReader.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/util/resource/DataObjectXMLStreamReader.java?rev=650091&r1=650090&r2=650091&view=diff
==============================================================================
--- incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/util/resource/DataObjectXMLStreamReader.java (original)
+++ incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/util/resource/DataObjectXMLStreamReader.java Mon Apr 21 03:41:57 2008
@@ -273,6 +273,9 @@
 
         List elementList = new ArrayList();
         List attributeList = new ArrayList();
+        if (dataObject == null) {
+            return;
+        }
         Type type = dataObject.getType();
         
         // Add xsi:type if rootElement doesn't exist or the type is different

Modified: incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/util/resource/SDOURIConverterImpl.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/util/resource/SDOURIConverterImpl.java?rev=650091&r1=650090&r2=650091&view=diff
==============================================================================
--- incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/util/resource/SDOURIConverterImpl.java (original)
+++ incubator/tuscany/branches/sdo-1.1.1-incubating/impl/src/main/java/org/apache/tuscany/sdo/util/resource/SDOURIConverterImpl.java Mon Apr 21 03:41:57 2008
@@ -27,29 +27,34 @@
 import org.eclipse.emf.ecore.resource.Resource;
 import org.eclipse.emf.ecore.resource.impl.URIConverterImpl;
 
-public class SDOURIConverterImpl extends URIConverterImpl
-{
-  /**
-   * Disable going out to the wire.
-   */
-  protected InputStream createURLInputStream(URI uri) throws IOException {
-      String scheme = uri.scheme();
-      if ("http".equalsIgnoreCase(scheme) || "https".equalsIgnoreCase(scheme)) {
-          throw new Resource.IOWrappedException(
-              new RuntimeException("Reading remote URL not supported."));
-      }
-      return super.createURLInputStream(uri);
-  }
-  
-  /**
-   * Disable going out to the wire.
-   */
-  protected OutputStream createURLOutputStream(URI uri) throws IOException {
-      String scheme = uri.scheme();
-      if ("http".equalsIgnoreCase(scheme) || "https".equalsIgnoreCase(scheme)) {
-          throw new Resource.IOWrappedException(
-              new RuntimeException("Writing remote URL not supported."));
-      }
-      return super.createURLOutputStream(uri);
-  }
+public class SDOURIConverterImpl extends URIConverterImpl {
+    /**
+     * Disable going out to the wire.
+     */
+    protected InputStream createURLInputStream(URI uri) throws IOException {
+        String scheme = uri.scheme();
+        if ("http".equals(scheme) || "https".equals(scheme)) {
+            // TUSCANY 2240: We need to compromise if the remote loading is allowed or not
+            String ext = uri.fileExtension();
+            if (!"wsdl".equalsIgnoreCase(ext) && !"xsd".equalsIgnoreCase(ext)) {
+                throw new Resource.IOWrappedException(new RuntimeException("Reading remote URL not supported: " + uri));
+            }
+        }
+        return super.createURLInputStream(uri);
+    }
+
+    /**
+     * Disable going out to the wire.
+     */
+    protected OutputStream createURLOutputStream(URI uri) throws IOException {
+        String scheme = uri.scheme();
+        if ("http".equals(scheme) || "https".equals(scheme)) {
+            // TUSCANY 2240: We need to compromise if the remote loading is allowed or not
+            String ext = uri.fileExtension();
+            if (!"wsdl".equalsIgnoreCase(ext) && !"xsd".equalsIgnoreCase(ext)) {
+                throw new Resource.IOWrappedException(new RuntimeException("Reading remote URL not supported: " + uri));
+            }
+        }
+        return super.createURLOutputStream(uri);
+    }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org