You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by pr...@apache.org on 2007/10/06 16:53:12 UTC

svn commit: r582501 [1/7] - in /webservices/axis2/branches/java/jaxws21/modules: adb-codegen/src/org/apache/axis2/schema/ adb-codegen/src/org/apache/axis2/schema/template/ adb-codegen/src/org/apache/axis2/schema/writer/ adb-codegen/test-resources/tests...

Author: pradine
Date: Sat Oct  6 07:53:06 2007
New Revision: 582501

URL: http://svn.apache.org/viewvc?rev=582501&view=rev
Log:
Sync with trunk to revision 582144.

Added:
    webservices/axis2/branches/java/jaxws21/modules/kernel/resources/smtpfault-module.xml
      - copied unchanged from r582144, webservices/axis2/trunk/java/modules/kernel/resources/smtpfault-module.xml
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/externalize/
      - copied from r582144, webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/externalize/
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/externalize/ActivateUtils.java
      - copied unchanged from r582144, webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/externalize/ActivateUtils.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/externalize/DebugObjectInput.java
      - copied unchanged from r582144, webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/externalize/DebugObjectInput.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/externalize/DebugObjectOutputStream.java
      - copied unchanged from r582144, webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/externalize/DebugObjectOutputStream.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/externalize/ExternalizeConstants.java
      - copied unchanged from r582144, webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/externalize/ExternalizeConstants.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/externalize/MessageExternalizeUtils.java
      - copied unchanged from r582144, webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/externalize/MessageExternalizeUtils.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/externalize/ObjectInputStreamWithCL.java
      - copied unchanged from r582144, webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/externalize/ObjectInputStreamWithCL.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/externalize/SafeObjectInputStream.java
      - copied unchanged from r582144, webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/externalize/SafeObjectInputStream.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/externalize/SafeObjectOutputStream.java
      - copied unchanged from r582144, webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/externalize/SafeObjectOutputStream.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/externalize/SafeSerializable.java
      - copied unchanged from r582144, webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/externalize/SafeSerializable.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/transport/mail/server/SMTPFaultHandler.java
      - copied unchanged from r582144, webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/mail/server/SMTPFaultHandler.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/test/org/apache/axis2/engine/ObjectSave2Test.java
      - copied unchanged from r582144, webservices/axis2/trunk/java/modules/kernel/test/org/apache/axis2/engine/ObjectSave2Test.java
Removed:
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/util/MessageExternalizeUtils.java
Modified:
    webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/BeanWriterMetaInfoHolder.java
    webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java
    webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl
    webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/template/CADBBeanTemplateHeader.xsl
    webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/template/CADBBeanTemplateSource.xsl
    webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/writer/JavaBeanWriter.java
    webservices/axis2/branches/java/jaxws21/modules/adb-codegen/test-resources/testsuite/base64binary.xsd
    webservices/axis2/branches/java/jaxws21/modules/adb-codegen/test-resources/testsuite/extensions.xsd
    webservices/axis2/branches/java/jaxws21/modules/adb-codegen/test-resources/testsuite/testattribute.xsd
    webservices/axis2/branches/java/jaxws21/modules/adb-codegen/test/org/apache/axis2/schema/base64binary/Base64BinaryTest.java
    webservices/axis2/branches/java/jaxws21/modules/adb-codegen/test/org/apache/axis2/schema/populate/simple/SimpleTypeDatePopulateTest.java
    webservices/axis2/branches/java/jaxws21/modules/adb/src/org/apache/axis2/databinding/utils/ConverterUtil.java
    webservices/axis2/branches/java/jaxws21/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingInHandler.java
    webservices/axis2/branches/java/jaxws21/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingOutHandler.java
    webservices/axis2/branches/java/jaxws21/modules/addressing/src/org/apache/axis2/handlers/addressing/AddressingValidationHandler.java
    webservices/axis2/branches/java/jaxws21/modules/codegen/src/org/apache/axis2/wsdl/WSDL2Code.java
    webservices/axis2/branches/java/jaxws21/modules/codegen/src/org/apache/axis2/wsdl/codegen/emitter/AxisServiceBasedMultiLanguageEmitter.java
    webservices/axis2/branches/java/jaxws21/modules/codegen/src/org/apache/axis2/wsdl/i18n/resource.properties
    webservices/axis2/branches/java/jaxws21/modules/codegen/src/org/apache/axis2/wsdl/template/c/ServiceSkeleton.xsl
    webservices/axis2/branches/java/jaxws21/modules/codegen/src/org/apache/axis2/wsdl/template/c/StubSourceTemplate.xsl
    webservices/axis2/branches/java/jaxws21/modules/codegen/src/org/apache/axis2/wsdl/template/java/InterfaceImplementationTemplate.xsl
    webservices/axis2/branches/java/jaxws21/modules/codegen/src/org/apache/axis2/wsdl/template/java/InterfaceTemplate.xsl
    webservices/axis2/branches/java/jaxws21/modules/codegen/src/org/apache/axis2/wsdl/template/java/SkeletonInterfaceTemplate.xsl
    webservices/axis2/branches/java/jaxws21/modules/codegen/src/org/apache/axis2/wsdl/template/java/SkeletonTemplate.xsl
    webservices/axis2/branches/java/jaxws21/modules/codegen/src/org/apache/axis2/wsdl/template/java/TestClassTemplate.xsl
    webservices/axis2/branches/java/jaxws21/modules/codegen/src/org/apache/axis2/wsdl/template/java/TestObjectCreationTemplate.xsl
    webservices/axis2/branches/java/jaxws21/modules/distribution/pom.xml
    webservices/axis2/branches/java/jaxws21/modules/jaxbri/src/org/apache/axis2/jaxbri/CodeGenerationUtility.java
    webservices/axis2/branches/java/jaxws21/modules/jaxws/src/org/apache/axis2/jaxws/client/PropertyMigrator.java
    webservices/axis2/branches/java/jaxws21/modules/jaxws/src/org/apache/axis2/jaxws/handler/MEPContext.java
    webservices/axis2/branches/java/jaxws21/modules/jaxws/src/org/apache/axis2/jaxws/message/util/MessageUtils.java
    webservices/axis2/branches/java/jaxws21/modules/jaxws/src/org/apache/axis2/jaxws/spi/migrator/ApplicationContextMigratorUtil.java
    webservices/axis2/branches/java/jaxws21/modules/jaxws/test/org/apache/ws/axis2/tests/EchoServiceImplWithSEI.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/pom.xml
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/addressing/AddressingConstants.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/addressing/AddressingHelper.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/addressing/EndpointReference.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/addressing/RelatesTo.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/client/Options.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/ConfigurationContext.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/MessageContext.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/OperationContext.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/ServiceContext.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/ServiceGroupContext.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/context/SessionContext.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/description/Parameter.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/description/ParameterIncludeImpl.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/description/WSDL11ToAxisServiceBuilder.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/engine/AxisConfiguration.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/engine/AxisEngine.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/modules/Module.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/transport/http/HTTPWorker.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/util/MetaDataEntry.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/util/ObjectStateUtils.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/src/org/apache/axis2/util/PrettyPrinter.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/test/org/apache/axis2/engine/MessageContextChangeTest.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/test/org/apache/axis2/engine/MessageContextSaveATest.java
    webservices/axis2/branches/java/jaxws21/modules/kernel/test/org/apache/axis2/engine/MessageContextSaveBTest.java
    webservices/axis2/branches/java/jaxws21/modules/metadata/pom.xml
    webservices/axis2/branches/java/jaxws21/modules/metadata/src/org/apache/axis2/jaxws/description/builder/converter/JavaClassToDBCConverter.java
    webservices/axis2/branches/java/jaxws21/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java
    webservices/axis2/branches/java/jaxws21/modules/metadata/test-resources/log4j.properties
    webservices/axis2/branches/java/jaxws21/modules/metadata/test/org/apache/axis2/jaxws/description/AnnotationServiceImplDescriptionTests.java
    webservices/axis2/branches/java/jaxws21/modules/metadata/test/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImplValidationTests.java
    webservices/axis2/branches/java/jaxws21/modules/parent/pom.xml
    webservices/axis2/branches/java/jaxws21/modules/saaj-api/pom.xml
    webservices/axis2/branches/java/jaxws21/modules/saaj/pom.xml
    webservices/axis2/branches/java/jaxws21/modules/saaj/src/org/apache/axis2/saaj/SOAPBodyImpl.java
    webservices/axis2/branches/java/jaxws21/modules/samples/version/pom.xml
    webservices/axis2/branches/java/jaxws21/modules/xmlbeans/src/org/apache/axis2/xmlbeans/CodeGenerationUtility.java
    webservices/axis2/branches/java/jaxws21/modules/xmlbeans/src/org/apache/axis2/xmlbeans/template/XmlbeansDatabindingTemplate.xsl

Modified: webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/BeanWriterMetaInfoHolder.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/BeanWriterMetaInfoHolder.java?rev=582501&r1=582500&r2=582501&view=diff
==============================================================================
--- webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/BeanWriterMetaInfoHolder.java (original)
+++ webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/BeanWriterMetaInfoHolder.java Sat Oct  6 07:53:06 2007
@@ -61,6 +61,7 @@
     protected String minInclusiveFacet = null;
 
     protected Map memberTypes = new HashMap();
+    protected Map xmlNameJavaNameMap = new HashMap();
     protected List memberTypesKeys = new ArrayList();
 
     protected QName itemTypeQName;
@@ -862,6 +863,18 @@
 
     public void setHasParticleType(boolean hasParticleType) {
         this.hasParticleType = hasParticleType;
+    }
+
+    public void addXmlNameJavaNameMapping(String xmlName,String javaName){
+        this.xmlNameJavaNameMap.put(xmlName,javaName);
+    }
+
+    public boolean isJavaNameMappingAvailable(String xmlName){
+        return this.xmlNameJavaNameMap.containsKey(xmlName);
+    }
+
+    public String getJavaName(String xmlName){
+        return (String) this.xmlNameJavaNameMap.get(xmlName);
     }
 
 }

Modified: webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java?rev=582501&r1=582500&r2=582501&view=diff
==============================================================================
--- webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java (original)
+++ webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/SchemaCompiler.java Sat Oct  6 07:53:06 2007
@@ -2453,6 +2453,7 @@
             } else {
                 fakeQname = qname;
                 simpleType.setName(fakeQname.getLocalPart());
+                changedSimpleTypeSet.add(simpleType);
                 simpleType.setSourceURI(fakeQname.getNamespaceURI());
             }
             simpleTypesMap.put(fakeQname, fullyQualifiedClassName);
@@ -2488,7 +2489,9 @@
 
                     processSimpleRestrictionBaseType(parentSimpleTypeQname, restriction.getBaseTypeName(), metaInfHolder, parentSchema);
                     //process facets
-                    processFacets(restriction, metaInfHolder, parentSchema);
+                    if (!SchemaConstants.XSD_BOOLEAN.equals(baseTypeName)){
+                        processFacets(restriction, metaInfHolder, parentSchema);
+                    }
                 } else {
                     //recurse
                     // this must be a xmlschema bug

Modified: webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl?rev=582501&r1=582500&r2=582501&view=diff
==============================================================================
--- webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl (original)
+++ webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/template/ADBBeanTemplate.xsl Sat Oct  6 07:53:06 2007
@@ -524,7 +524,7 @@
                                     <xsl:when test="(@restrictionBaseType)">
                                        <xsl:choose>
                                         <xsl:when test="(@patternFacet)">
-                                            if (java.lang.String.valueOf(param).matches("<xsl:value-of select="$patternFacet"/>")) {
+                                            if (org.apache.axis2.databinding.utils.ConverterUtil.convertToString(param).matches("<xsl:value-of select="$patternFacet"/>")) {
                                                 this.<xsl:value-of select="$varName"/>=param;
                                             }
                                             else {
@@ -532,7 +532,7 @@
                                             }
                                         </xsl:when>
                                         <xsl:when test="(@lenFacet)">
-                                            if ( java.lang.String.valueOf(param).length() == <xsl:value-of select="@lenFacet"/> ) {
+                                            if (org.apache.axis2.databinding.utils.ConverterUtil.convertToString(param).length() == <xsl:value-of select="@lenFacet"/> ) {
                                                 this.<xsl:value-of select="$varName"/>=param;
                                             }
                                             else {
@@ -843,7 +843,7 @@
                     prefix = parentQName.getPrefix();
                     namespace = parentQName.getNamespaceURI();
 
-                    if (namespace != null) {
+                    if ((namespace != null) &amp;&amp; (namespace.trim().length() > 0)) {
                         java.lang.String writerPrefix = xmlWriter.getPrefix(namespace);
                         if (writerPrefix != null) {
                             xmlWriter.writeStartElement(namespace, parentQName.getLocalPart());

Modified: webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/template/CADBBeanTemplateHeader.xsl
URL: http://svn.apache.org/viewvc/webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/template/CADBBeanTemplateHeader.xsl?rev=582501&r1=582500&r2=582501&view=diff
==============================================================================
--- webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/template/CADBBeanTemplateHeader.xsl (original)
+++ webservices/axis2/branches/java/jaxws21/modules/adb-codegen/src/org/apache/axis2/schema/template/CADBBeanTemplateHeader.xsl Sat Oct  6 07:53:06 2007
@@ -2,7 +2,7 @@
     <xsl:output method="text"/>
 
      <!-- cater for the multiple classes - wrappped mode -->
-    <xsl:template match="/classs">
+    <xsl:template match="/beans">
         <xsl:variable name="name"><xsl:value-of select="@name"/></xsl:variable>
         <xsl:variable name="axis2_name">adb_<xsl:value-of select="@name"/></xsl:variable>
         <xsl:variable name="caps_axis2_name">ADB_<xsl:value-of select="@caps-name"/></xsl:variable>
@@ -13,14 +13,8 @@
         * <xsl:value-of select="$axis2_name"/>.h
         *
         * This file was auto-generated from WSDL
-        * by the Apache Axis2 Java version: #axisVersion# #today#
+        * by the Apache Axis2/Java version: #axisVersion# #today#
         */
-        <xsl:for-each select="property">
-          <xsl:if test="@ours">
-          <xsl:variable name="propertyType"><xsl:if test="@ours">adb_</xsl:if><xsl:value-of select="@type"></xsl:value-of></xsl:variable>
-          #include "<xsl:value-of select="$propertyType"/>.h"
-          </xsl:if>
-        </xsl:for-each>
 
         #include &lt;stdio.h&gt;
         #include &lt;axiom.h&gt;
@@ -67,7 +61,7 @@
         * <xsl:value-of select="$axis2_name"/>.h
         *
         * This file was auto-generated from WSDL
-        * by the Apache Axis2 version: #axisVersion# #today#
+        * by the Apache Axis2/Java version: #axisVersion# #today#
         */
 
         <xsl:for-each select="property">
@@ -96,20 +90,37 @@
         #endif
 
         #define AXIS2_DEFAULT_DIGIT_LIMIT 64
-        /**
-        *  <xsl:value-of select="$axis2_name"/> class class
+       /**
+        *  <xsl:value-of select="$axis2_name"/> class
         */
         typedef struct <xsl:value-of select="$axis2_name"/><xsl:text> </xsl:text><xsl:value-of select="$axis2_name"/>_t;
 
+        /**
+         * Constructor for creating <xsl:value-of select="$axis2_name"/>_t
+         * @param env pointer to environment struct
+         * @return newly created <xsl:value-of select="$axis2_name"/>_t object
+         */
         AXIS2_EXTERN <xsl:value-of select="$axis2_name"/>_t* AXIS2_CALL
         <xsl:value-of select="$axis2_name"/>_create(
             const axutil_env_t *env );
 
+        /**
+         * Free <xsl:value-of select="$axis2_name"/>_t object
+         * @param <xsl:text> _</xsl:text><xsl:value-of select="$name"/> <xsl:value-of select="$axis2_name"/>_t object to free
+         * @param env pointer to environment struct
+         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+         */
         axis2_status_t AXIS2_CALL
         <xsl:value-of select="$axis2_name"/>_free (
             <xsl:value-of select="$axis2_name"/>_t*<xsl:text> _</xsl:text><xsl:value-of select="$name"/>,
             const axutil_env_t *env);
 
+        /**
+         * Getter for the qname of the element or the type referred in the header
+         * @param <xsl:text> _</xsl:text><xsl:value-of select="$name"/> <xsl:value-of select="$axis2_name"/>_t object
+         * @param env pointer to environment struct
+         * @return the qname of the element or the type
+         */
         <xsl:if test="not(@type)">
         axutil_qname_t* AXIS2_CALL
         <xsl:value-of select="$axis2_name"/>_get_qname (
@@ -117,17 +128,62 @@
             const axutil_env_t *env);
         </xsl:if>
 
-        axiom_node_t* AXIS2_CALL
-        <xsl:value-of select="$axis2_name"/>_serialize(
-            <xsl:value-of select="$axis2_name"/>_t*<xsl:text> _</xsl:text><xsl:value-of select="$name"/>,
-            const axutil_env_t *env,
-            axiom_node_t* <xsl:value-of select="$name"/>_om_node, int has_parent);
+        <xsl:if test="@simple">
+            /**
+             * Deserialize the content from a string to adb objects
+             * @param <xsl:text> _</xsl:text><xsl:value-of select="$name"/> <xsl:value-of select="$axis2_name"/>_t object
+             * @param env pointer to environment struct
+             * @param node_value to deserialize
+             * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+             */
+            axis2_status_t AXIS2_CALL
+            <xsl:value-of select="$axis2_name"/>_deserialize_from_string(
+                            <xsl:value-of select="$axis2_name"/>_t*<xsl:text> </xsl:text><xsl:value-of select="$name"/>,
+                                            const axutil_env_t *env,
+                                            axis2_char_t *node_value);
+        </xsl:if>
 
+        /**
+         * Deserialize an XML to adb objects
+         * @param <xsl:text> _</xsl:text><xsl:value-of select="$name"/> <xsl:value-of select="$axis2_name"/>_t object
+         * @param env pointer to environment struct
+         * @param parent to deserialize
+         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+         */
         axis2_status_t AXIS2_CALL
         <xsl:value-of select="$axis2_name"/>_deserialize(
             <xsl:value-of select="$axis2_name"/>_t*<xsl:text> _</xsl:text><xsl:value-of select="$name"/>,
             const axutil_env_t *env, axiom_node_t* parent);
 
+        /**
+         * Serialize to a String from the adb objects
+         * @param <xsl:text> _</xsl:text><xsl:value-of select="$name"/> <xsl:value-of select="$axis2_name"/>_t object
+         * @param env pointer to environment struct
+         * @return serialized string
+         */
+        <xsl:if test="@simple">
+            axis2_char_t* AXIS2_CALL
+            <xsl:value-of select="$axis2_name"/>_serialize_to_string(
+                    <xsl:value-of select="$axis2_name"/>_t*<xsl:text> </xsl:text><xsl:value-of select="$name"/>,
+                    const axutil_env_t *env);
+        </xsl:if>
+
+        /**
+         * Serialize to an XML from the adb objects
+         * @param <xsl:text> _</xsl:text><xsl:value-of select="$name"/> <xsl:value-of select="$axis2_name"/>_t object
+         * @param env pointer to environment struct
+         * @param <xsl:value-of select="$name"/>_om_node node to serialize from
+         * @param has_parent is the element has a parent
+         * @param tag_closed whether the parent tag is closed or not
+         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+         */
+        axiom_node_t* AXIS2_CALL
+        <xsl:value-of select="$axis2_name"/>_serialize(
+            <xsl:value-of select="$axis2_name"/>_t*<xsl:text> _</xsl:text><xsl:value-of select="$name"/>,
+            const axutil_env_t *env,
+            axiom_node_t* <xsl:value-of select="$name"/>_om_node, int has_parent, int tag_closed);
+
+
         <xsl:for-each select="property">
             <xsl:variable name="propertyType">
             <xsl:choose>
@@ -147,8 +203,57 @@
             <xsl:variable name="propertyName"><xsl:value-of select="@name"></xsl:value-of></xsl:variable>
             <xsl:variable name="CName"><xsl:value-of select="@cname"></xsl:value-of></xsl:variable>
 
+            <xsl:variable name="nativePropertyType"> <!--these are used in arrays to take the native type-->
+               <xsl:choose>
+                 <xsl:when test="not(@type)">axiom_node_t*</xsl:when> <!-- these are anonymous -->
+                 <xsl:when test="@ours"><xsl:choose>
+                  <xsl:when test="not(@type='char' or @type='bool' or @type='date_time' or @type='duration')">
+                  adb_<xsl:value-of select="@type"/>_t*</xsl:when>
+                  <xsl:when test="@type='duration' or @type='date_time' or @type='uri' or @type='qname' or @type='base64_binary'">axutil_<xsl:value-of select="@type"/>_t*</xsl:when>
+                  <xsl:otherwise>
+                  axis2_<xsl:value-of select="@type"/>_t*</xsl:otherwise>
+              </xsl:choose></xsl:when>
+                 <xsl:otherwise><xsl:value-of select="@type"/></xsl:otherwise>
+               </xsl:choose>
+            </xsl:variable>
+              <xsl:variable name="PropertyTypeArrayParam"> <!--these are used in arrays to take the type stored in the arraylist-->
+                 <xsl:choose>
+                   <xsl:when test="not(@type)">axiom_node_t*</xsl:when> <!-- these are anonymous -->
+                   <xsl:when test="@ours">
+                    <xsl:choose>
+                    <xsl:when test="not(@type='char' or @type='bool' or @type='date_time' or @type='duration')">
+                     adb_<xsl:value-of select="@type"/>_t*</xsl:when>
+                    <xsl:when test="@type='duration' or @type='date_time' or @type='uri' or @type='qname' or @type='base64_binary'">
+                     axutil_<xsl:value-of select="@type"/>_t*
+                    </xsl:when>
+                    <xsl:otherwise>
+                     axis2_<xsl:value-of select="@type"/>_t*
+                    </xsl:otherwise>
+                    </xsl:choose>
+                   </xsl:when>
+                   <xsl:when test="@type='short' or @type='char' or @type='int' or @type='float' or @type='double' or @type='long'">
+                    <xsl:value-of select="@type"/><xsl:text>*</xsl:text>
+                   </xsl:when>
+                   <xsl:otherwise>
+                    <xsl:value-of select="@type"/>
+                   </xsl:otherwise>
+                 </xsl:choose>
+              </xsl:variable>
+            <xsl:variable name="paramComment">
+                <xsl:choose>
+                    <xsl:when test="@isarray">
+                        <xsl:text>Array of </xsl:text><xsl:value-of select="$PropertyTypeArrayParam"/><xsl:text>s.</xsl:text>
+                    </xsl:when>
+                    <xsl:otherwise>
+                        <xsl:value-of select="$nativePropertyType"/>
+                    </xsl:otherwise>
+                </xsl:choose>
+            </xsl:variable>
         /**
-         * getter for <xsl:value-of select="$propertyName"/>.
+         * Getter for <xsl:value-of select="$propertyName"/>.
+         * @param <xsl:text> _</xsl:text><xsl:value-of select="$name"/> <xsl:value-of select="$axis2_name"/>_t object
+         * @param env pointer to environment struct
+         * @return <xsl:value-of select="$paramComment"/>
          */
         <xsl:value-of select="$propertyType"/> AXIS2_CALL
         <xsl:value-of select="$axis2_name"/>_get_<xsl:value-of select="$CName"/>(
@@ -156,7 +261,11 @@
             const axutil_env_t *env);
 
         /**
-         * setter for <xsl:value-of select="$propertyName"/>
+         * Setter for <xsl:value-of select="$propertyName"/>.
+         * @param <xsl:text> _</xsl:text><xsl:value-of select="$name"/> <xsl:value-of select="$axis2_name"/>_t object
+         * @param env pointer to environment struct
+         * @param param_<xsl:value-of select="$CName"/><xsl:text> </xsl:text> <xsl:value-of select="$paramComment"/>
+         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
          */
         axis2_status_t AXIS2_CALL
         <xsl:value-of select="$axis2_name"/>_set_<xsl:value-of select="$CName"/>(
@@ -166,14 +275,54 @@
 
         <xsl:if test="@isarray">
         /**
-        * resetter for <xsl:value-of select="$propertyName"/>
-        */
+         * Resetter for <xsl:value-of select="$propertyName"/>
+         * @param <xsl:text> _</xsl:text><xsl:value-of select="$name"/> <xsl:value-of select="$axis2_name"/>_t object
+         * @param env pointer to environment struct
+         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+         */
         axis2_status_t AXIS2_CALL
         <xsl:value-of select="$axis2_name"/>_reset_<xsl:value-of select="$CName"/>(
             <xsl:value-of select="$axis2_name"/>_t*<xsl:text> _</xsl:text><xsl:value-of select="$name"/>,
             const axutil_env_t *env);
+
+        /**
+         * Get ith element of <xsl:value-of select="$propertyName"/>.
+         * @param <xsl:text> _</xsl:text><xsl:value-of select="$name"/> <xsl:value-of select="$axis2_name"/>_t object
+         * @param env pointer to environment struct
+         * @param i index of the item to return
+         * @return ith <xsl:value-of select="$nativePropertyType"/> of the array
+         */
+        <xsl:value-of select="$nativePropertyType"/> AXIS2_CALL
+        <xsl:value-of select="$axis2_name"/>_get_<xsl:value-of select="$CName"/>_at(
+                <xsl:value-of select="$axis2_name"/>_t*<xsl:text>_</xsl:text><xsl:value-of select="$name"/>,
+                const axutil_env_t *env, int i);
+
+        /**
+         * Add to <xsl:value-of select="$propertyName"/>.
+         * @param <xsl:text> _</xsl:text><xsl:value-of select="$name"/> <xsl:value-of select="$axis2_name"/>_t object
+         * @param env pointer to environment struct
+         * @param <xsl:text>param_</xsl:text> <xsl:value-of select="$CName"/> element to add <xsl:value-of select="$nativePropertyType"/> to the array
+         * @return AXIS2_SUCCESS on success, else AXIS2_FAILURE
+         */
+        axis2_status_t AXIS2_CALL
+        <xsl:value-of select="$axis2_name"/>_add_<xsl:value-of select="$CName"/>(
+                <xsl:value-of select="$axis2_name"/>_t*<xsl:text> </xsl:text><xsl:value-of select="$name"/>,
+                const axutil_env_t *env,
+                <xsl:value-of select="$nativePropertyType"/><xsl:text> param_</xsl:text> <xsl:value-of select="$CName"/>);
+
+        /**
+         * Get the size of the <xsl:value-of select="$propertyName"/> array.
+         * @param <xsl:text> _</xsl:text><xsl:value-of select="$name"/> <xsl:value-of select="$axis2_name"/>_t object
+         * @param env pointer to environment struct.
+         * @return the size of the <xsl:value-of select="$propertyName"/> array.
+         */
+        int AXIS2_CALL
+        <xsl:value-of select="$axis2_name"/>_sizeof_<xsl:value-of select="$CName"/>(
+                    <xsl:value-of select="$axis2_name"/>_t*<xsl:text> </xsl:text><xsl:value-of select="$name"/>,
+                    const axutil_env_t *env);
+
         </xsl:if>
-        </xsl:for-each>
+       </xsl:for-each>
 
      #ifdef __cplusplus
      }



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