Author: veithen
Date: Sun May  6 08:39:02 2012
New Revision: 1334571

URL: http://svn.apache.org/viewvc?rev=1334571&view=rev
Log:
Let the ADB data sources implement QNameAwareOMDataSource so that one can use 
the OMFactory#createOMElement(OMDataSource) API.

Modified:
    
axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl
    
axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-helpermode.xsl
    
axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/AbstractADBDataSource.java

Modified: 
axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl?rev=1334571&r1=1334570&r2=1334571&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl
 (original)
+++ 
axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-bean.xsl
 Sun May  6 08:39:02 2012
@@ -642,14 +642,10 @@
 
         <xsl:choose>
             <xsl:when test="@type">
-               org.apache.axiom.om.OMDataSource dataSource =
-                       new 
org.apache.axis2.databinding.ADBDataSource(this,parentQName);
-               return factory.createOMElement(dataSource,parentQName);
+               return factory.createOMElement(new 
org.apache.axis2.databinding.ADBDataSource(this,parentQName));
             </xsl:when>
             <xsl:otherwise>
-               org.apache.axiom.om.OMDataSource dataSource =
-                       new 
org.apache.axis2.databinding.ADBDataSource(this,MY_QNAME);
-               return factory.createOMElement(dataSource,MY_QNAME);
+               return factory.createOMElement(new 
org.apache.axis2.databinding.ADBDataSource(this,MY_QNAME));
             </xsl:otherwise>
         </xsl:choose>
         }

Modified: 
axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-helpermode.xsl
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-helpermode.xsl?rev=1334571&r1=1334570&r2=1334571&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-helpermode.xsl
 (original)
+++ 
axis/axis2/java/core/trunk/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate-helpermode.xsl
 Sun May  6 08:39:02 2012
@@ -546,14 +546,10 @@ public <xsl:if test="not(@unwrapped) or 
 
         <xsl:choose>
             <xsl:when test="@type">
-               org.apache.axiom.om.OMDataSource dataSource =
-                       new 
org.apache.axis2.databinding.ADBHelperDataSource(bean,parentQName,this);
-               return factory.createOMElement(dataSource,parentQName);
+               return factory.createOMElement(new 
org.apache.axis2.databinding.ADBHelperDataSource(bean,parentQName,this));
             </xsl:when>
             <xsl:otherwise>
-               org.apache.axiom.om.OMDataSource dataSource =
-                       new 
org.apache.axis2.databinding.ADBHelperDataSource(bean,<xsl:value-of 
select="$fullyQualifiedName"/>.MY_QNAME,this);
-               return factory.createOMElement(dataSource,<xsl:value-of 
select="$fullyQualifiedName"/>.MY_QNAME);
+               return factory.createOMElement(new 
org.apache.axis2.databinding.ADBHelperDataSource(bean,<xsl:value-of 
select="$fullyQualifiedName"/>.MY_QNAME,this));
             </xsl:otherwise>
         </xsl:choose>
         }

Modified: 
axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/AbstractADBDataSource.java
URL: 
http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/AbstractADBDataSource.java?rev=1334571&r1=1334570&r2=1334571&view=diff
==============================================================================
--- 
axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/AbstractADBDataSource.java
 (original)
+++ 
axis/axis2/java/core/trunk/modules/adb/src/org/apache/axis2/databinding/AbstractADBDataSource.java
 Sun May  6 08:39:02 2012
@@ -35,10 +35,11 @@ import org.apache.axiom.om.OMDataSource;
 import org.apache.axiom.om.OMDataSourceExt;
 import org.apache.axiom.om.OMException;
 import org.apache.axiom.om.OMOutputFormat;
+import org.apache.axiom.om.QNameAwareOMDataSource;
 import org.apache.axiom.om.util.StAXUtils;
 import org.apache.axis2.databinding.utils.writer.MTOMAwareOMBuilder;
 
-public abstract class AbstractADBDataSource implements OMDataSourceExt {
+public abstract class AbstractADBDataSource implements OMDataSourceExt, 
QNameAwareOMDataSource {
     protected QName parentQName;
     
     HashMap map = null;  // Map of properties
@@ -47,6 +48,18 @@ public abstract class AbstractADBDataSou
         this.parentQName = parentQName;
     }
 
+    public final String getLocalName() {
+        return parentQName.getLocalPart();
+    }
+
+    public final String getNamespaceURI() {
+        return parentQName.getNamespaceURI();
+    }
+
+    public final String getPrefix() {
+        return parentQName.getPrefix();
+    }
+
     /**
      * @param output
      * @param format


Reply via email to