Author: jsdelfino
Date: Mon Nov 12 12:38:26 2007
New Revision: 594292

URL: http://svn.apache.org/viewvc?rev=594292&view=rev
Log:
Renamed JavaBean2XMLStreamReader to JavaBean2XMLStreamReaderTransformer to be 
consistent with the other transformers. Added it to the list of 
PullTransformers (commented out for now as it doesn't seem to work). Worked 
around a ClassCastException in XML2JavaBeanTransformer.

Added:
    
incubator/tuscany/java/sca/modules/databinding/src/main/java/org/apache/tuscany/sca/databinding/javabeans/JavaBean2XMLStreamReaderTransformer.java
      - copied, changed from r592156, 
incubator/tuscany/java/sca/modules/databinding/src/main/java/org/apache/tuscany/sca/databinding/javabeans/JavaBean2XMLStreamReader.java
Removed:
    
incubator/tuscany/java/sca/modules/databinding/src/main/java/org/apache/tuscany/sca/databinding/javabeans/JavaBean2XMLStreamReader.java
Modified:
    
incubator/tuscany/java/sca/modules/databinding/src/main/java/org/apache/tuscany/sca/databinding/javabeans/XML2JavaBeanTransformer.java
    
incubator/tuscany/java/sca/modules/databinding/src/main/resources/META-INF/services/org.apache.tuscany.sca.databinding.PullTransformer
    
incubator/tuscany/java/sca/modules/databinding/src/test/java/org/apache/tuscany/sca/databinding/xml/JavaBean2XMLStreamReaderTestCase.java

Copied: 
incubator/tuscany/java/sca/modules/databinding/src/main/java/org/apache/tuscany/sca/databinding/javabeans/JavaBean2XMLStreamReaderTransformer.java
 (from r592156, 
incubator/tuscany/java/sca/modules/databinding/src/main/java/org/apache/tuscany/sca/databinding/javabeans/JavaBean2XMLStreamReader.java)
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/databinding/src/main/java/org/apache/tuscany/sca/databinding/javabeans/JavaBean2XMLStreamReaderTransformer.java?p2=incubator/tuscany/java/sca/modules/databinding/src/main/java/org/apache/tuscany/sca/databinding/javabeans/JavaBean2XMLStreamReaderTransformer.java&p1=incubator/tuscany/java/sca/modules/databinding/src/main/java/org/apache/tuscany/sca/databinding/javabeans/JavaBean2XMLStreamReader.java&r1=592156&r2=594292&rev=594292&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/databinding/src/main/java/org/apache/tuscany/sca/databinding/javabeans/JavaBean2XMLStreamReader.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/databinding/src/main/java/org/apache/tuscany/sca/databinding/javabeans/JavaBean2XMLStreamReaderTransformer.java
 Mon Nov 12 12:38:26 2007
@@ -27,7 +27,7 @@
 import org.apache.tuscany.sca.databinding.xml.BeanXMLStreamReaderImpl;
 import org.apache.tuscany.sca.interfacedef.util.XMLType;
 
-public class JavaBean2XMLStreamReader extends BaseTransformer<Object, 
XMLStreamReader> implements
+public class JavaBean2XMLStreamReaderTransformer extends 
BaseTransformer<Object, XMLStreamReader> implements
     PullTransformer<Object, XMLStreamReader> {
 
     public XMLStreamReader transform(Object source, TransformationContext 
context) {

Modified: 
incubator/tuscany/java/sca/modules/databinding/src/main/java/org/apache/tuscany/sca/databinding/javabeans/XML2JavaBeanTransformer.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/databinding/src/main/java/org/apache/tuscany/sca/databinding/javabeans/XML2JavaBeanTransformer.java?rev=594292&r1=594291&r2=594292&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/databinding/src/main/java/org/apache/tuscany/sca/databinding/javabeans/XML2JavaBeanTransformer.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/databinding/src/main/java/org/apache/tuscany/sca/databinding/javabeans/XML2JavaBeanTransformer.java
 Mon Nov 12 12:38:26 2007
@@ -55,12 +55,17 @@
     }
     
     public Object transform(T source, TransformationContext context) {
-        XMLType xmlType = (XMLType) context.getSourceDataType().getLogical();
-        return toJavaObject(xmlType.getTypeName(), getRootElement(source), 
context);
+        //FIXME why is the logical type sometimes a Class instead of an 
XMLType?
+        if (context.getSourceDataType().getLogical() instanceof XMLType) {
+            XMLType xmlType = (XMLType) 
context.getSourceDataType().getLogical();
+            return toJavaObject(xmlType.getTypeName(), getRootElement(source), 
context);
+        } else {
+            return toJavaObject(null, getRootElement(source), context);
+        }
     }
 
     public Object toJavaObject(QName xmlType, T xmlElement, 
TransformationContext context) {
-        if (SimpleTypeMapperImpl.isSimpleXSDType(xmlType)) {
+        if (xmlType != null && SimpleTypeMapperImpl.isSimpleXSDType(xmlType)) {
             return mapper.toJavaObject(xmlType, getText(xmlElement), context);
         } else {
             Class<?> javaType = 
(Class<?>)context.getTargetDataType().getPhysical();

Modified: 
incubator/tuscany/java/sca/modules/databinding/src/main/resources/META-INF/services/org.apache.tuscany.sca.databinding.PullTransformer
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/databinding/src/main/resources/META-INF/services/org.apache.tuscany.sca.databinding.PullTransformer?rev=594292&r1=594291&r2=594292&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/databinding/src/main/resources/META-INF/services/org.apache.tuscany.sca.databinding.PullTransformer
 (original)
+++ 
incubator/tuscany/java/sca/modules/databinding/src/main/resources/META-INF/services/org.apache.tuscany.sca.databinding.PullTransformer
 Mon Nov 12 12:38:26 2007
@@ -22,6 +22,7 @@
 
org.apache.tuscany.sca.databinding.xml.Node2String;source=org.w3c.dom.Node,target=java.lang.String,weight=80
 
org.apache.tuscany.sca.databinding.xml.Node2XMLStreamReader;source=org.w3c.dom.Node,target=javax.xml.stream.XMLStreamReader,weight=80
 
org.apache.tuscany.sca.databinding.javabeans.JavaBean2DOMNodeTransformer;source=java:complexType,target=org.w3c.dom.Node,weight=80000
+#org.apache.tuscany.sca.databinding.javabeans.JavaBean2XMLStreamReaderTransformer;source=java:complexType,target=javax.xml.stream.XMLStreamReader,weight=79000
 
org.apache.tuscany.sca.databinding.xml.Reader2Node;source=java.io.Reader,target=org.w3c.dom.Node,weight=80
 
org.apache.tuscany.sca.databinding.xml.SAX2DOMPipe;source=org.xml.sax.ContentHandler,target=org.w3c.dom.Node,weight=70
 
org.apache.tuscany.sca.databinding.xml.StreamDataPipe;source=java.io.OutputStream,target=java.io.InputStream,weight=90

Modified: 
incubator/tuscany/java/sca/modules/databinding/src/test/java/org/apache/tuscany/sca/databinding/xml/JavaBean2XMLStreamReaderTestCase.java
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/databinding/src/test/java/org/apache/tuscany/sca/databinding/xml/JavaBean2XMLStreamReaderTestCase.java?rev=594292&r1=594291&r2=594292&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/databinding/src/test/java/org/apache/tuscany/sca/databinding/xml/JavaBean2XMLStreamReaderTestCase.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/databinding/src/test/java/org/apache/tuscany/sca/databinding/xml/JavaBean2XMLStreamReaderTestCase.java
 Mon Nov 12 12:38:26 2007
@@ -22,7 +22,7 @@
 
 import junit.framework.TestCase;
 
-import org.apache.tuscany.sca.databinding.javabeans.JavaBean2XMLStreamReader;
+import 
org.apache.tuscany.sca.databinding.javabeans.JavaBean2XMLStreamReaderTransformer;
 import org.custommonkey.xmlunit.XMLAssert;
 
 public class JavaBean2XMLStreamReaderTestCase extends TestCase {
@@ -41,7 +41,7 @@
     }
 
     public void testTransformation() throws Exception {
-        JavaBean2XMLStreamReader t2 = new JavaBean2XMLStreamReader();
+        JavaBean2XMLStreamReaderTransformer t2 = new 
JavaBean2XMLStreamReaderTransformer();
         MyBean bean = new MyBean();
         bean.str = "ABC";
         bean.i = 1;



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to