You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by na...@apache.org on 2006/12/05 06:40:20 UTC

svn commit: r482501 - in /webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp: BeanParamWriter.java ClientStubWriter.java ParmHeaderFileWriter.java literal/ClientStubWriter.java

Author: nadiramra
Date: Mon Dec  4 21:40:19 2006
New Revision: 482501

URL: http://svn.apache.org/viewvc?view=rev&rev=482501
Log:
AXISCPP-1009 - put the function prototypes for Axis_Deserializer_xxx, etc in the 
header files and do not generate them in the cpp files.

Modified:
    webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/BeanParamWriter.java
    webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ClientStubWriter.java
    webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ParmHeaderFileWriter.java
    webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java

Modified: webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/BeanParamWriter.java
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/BeanParamWriter.java?view=diff&rev=482501&r1=482500&r2=482501
==============================================================================
--- webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/BeanParamWriter.java (original)
+++ webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/BeanParamWriter.java Mon Dec  4 21:40:19 2006
@@ -70,50 +70,6 @@
     {
         try
         {
-            HashSet typeSet = new HashSet();
-            String typeName;
-            
-            for (int i = 0; i < attribs.length; i++)
-            {
-                if (!(attribs[i].isSimpleType() || attribs[i].isAnyType()))
-                    typeSet.add(attribs[i].getTypeName());
-            }
-            
-            Iterator itr = typeSet.iterator();
-            while (itr.hasNext())
-            {
-                /*
-                 * Needed for self referenced array. <xsd:complexType
-                 * name="Type1"> <xsd:sequence> <xsd:element name="followings"
-                 * maxOccurs="unbounded" minOccurs="0" type="tns:Type1" />
-                 * <xsd:element name="kind" type="xsd:string" /> <xsd:element
-                 * name="index" type="xsd:int" /> </xsd:sequence> <xsd:attribute
-                 * name="att_kind" type="tns:Kind" /> </xsd:complexType>
-                 */
-                typeName = itr.next().toString();
-                if (!typeName.equals(type.getName().getLocalPart()))
-                {
-                    writer.write("extern int Axis_DeSerialize_" + typeName
-                            + "(" + typeName + "* param, IWrapperSoapDeSerializer* pDZ);\n");
-                    writer.write("extern void* Axis_Create_" + typeName + "(int nSize);\n");
-                    writer.write("extern void Axis_Delete_" + typeName + "("
-                            + typeName + "* param, int nSize=0);\n");
-                    writer.write("extern int Axis_Serialize_" + typeName + "("
-                            + typeName + "* param, IWrapperSoapSerializer* pSZ, bool bArray = false);\n\n");
-                } 
-                else
-                {
-                    writer.write("int Axis_DeSerialize_" + typeName + "("
-                            + typeName + "* param, IWrapperSoapDeSerializer* pDZ);\n");
-                    writer.write("void* Axis_Create_" + typeName + "(int nSize);\n");
-                    writer.write("void Axis_Delete_" + typeName + "("
-                            + typeName + "* param, int nSize);\n");
-                    writer.write("int Axis_Serialize_" + typeName
-                                    + "(" + typeName
-                                    + "* param, IWrapperSoapSerializer* pSZ, bool bArray);\n\n");
-                }
-            }
-
             writeGetSetMethods();
             writeSerializeGlobalMethod();
             writeDeSerializeGlobalMethod();
@@ -140,7 +96,7 @@
         
         if (type.isArray())
             return;
-
+        
         try
         {
             for (int i = 0; i < attribs.length; i++)
@@ -165,7 +121,7 @@
                     String parameterTypeName = properParamName;
                     if (!parameterTypeName.endsWith("*"))
                         parameterTypeName += " *";
-
+                    
                     writer.write("\n" + parameterTypeName + " " + classname
                             + "::get" + methodName + "()\n{\n");
 
@@ -207,15 +163,11 @@
                     if(attribs[i].getAllElement() || attribs[i].getChoiceElement() )
                     {
                         if (isElementNillable(i))
-                        {
                             writer.write("\n" + properParamName + " * " + classname
                                 + "::get" + methodName + "()\n{\n");
-                        }
                         else 
-                        {
                             writer.write("\n" + properParamName + " " + classname
                                     + "::get" + methodName + "()\n{\n");
-                        }
                     }
                     else
                     {
@@ -228,17 +180,13 @@
                     if(attribs[i].getAllElement() || attribs[i].getChoiceElement())
                     {
                         if (isElementNillable(i))
-                        {
                             writer.write("\n" + "void " + classname + "::set"
                                     + methodName + "(" + properParamName
                                     + " * pInValue, bool deep)\n{\n");
-                        }
                         else
-                        {
                             writer.write("\n" + "void " + classname + "::set"
                                 + methodName + "(" + properParamName
                                 + " pInValue, bool deep)\n{\n");
-                        }
                     }
                     else
                     {
@@ -351,7 +299,7 @@
                         isPointerType = CUtils.isPointerType(CUtils.getclass4qname(attributeType.getBaseType())); 
                     else
                         isPointerType = CUtils.isPointerType(getCorrectParmNameConsideringArraysAndComplexTypes(attribs[i]));
-
+                    
                     if((attribs[i].isSimpleType() || attributeType.isSimpleType()) &&
                        (isPointerType || attribs[i].getAllElement() || attribs[i].getChoiceElement()))
                         writer.write(", bool deep");
@@ -451,7 +399,7 @@
         writer.write( " * This static method serialize a " + classname + " type of object\n");
         writer.write( " */\n");
         writer.write( "int Axis_Serialize_" + classname 
-                     + "( " + classname + "* param, IWrapperSoapSerializer* pSZ, bool bArray = false)\n");
+                     + "( " + classname + "* param, IWrapperSoapSerializer* pSZ, bool bArray)\n");
         writer.write( "{\n");
 
         if (attribs.length == 0) 
@@ -529,7 +477,7 @@
                         
                         for( int j = 0; j < vre.size(); j++)
                             writer.write("\t//\t\t " + vre.get( j) + "\n");
-                    }
+            }
                     
                     if( vrp != null)
                     {
@@ -563,8 +511,8 @@
                             }
                         }
                     }
-                    else
-                    {
+            else
+            {
                         baseType = baseType.substring( baseType.lastIndexOf( "_") + 1);
                         
                         type.setBaseType( new QName( WrapperConstants.SCHEMA_NAMESPACE, baseType));
@@ -582,64 +530,64 @@
             // ^^^ FJP - 17667
             
             //Samisa
-            //remove _Ref sufix and _ prefix in SOAP tag name
+                //remove _Ref sufix and _ prefix in SOAP tag name
             String soapTagName = ai.getParamName();
-            if (soapTagName.lastIndexOf("_Ref") > -1)
-                soapTagName = soapTagName.substring(0, soapTagName.lastIndexOf("_Ref"));
-            
-            if (soapTagName.charAt(0) == '_')
-                soapTagName = soapTagName.substring(1, soapTagName.length());
+                if (soapTagName.lastIndexOf("_Ref") > -1)
+                    soapTagName = soapTagName.substring(0, soapTagName.lastIndexOf("_Ref"));
+                
+                if (soapTagName.charAt(0) == '_')
+                    soapTagName = soapTagName.substring(1, soapTagName.length());
 
             //end remove _Ref sufix and _ prefix in SOAP tag name
             boolean isPointerType = false;
-            String basicType = null;
-            
+                String basicType = null;
+                
             if (!ai.isSimpleType() && type.isSimpleType())
             {
-                basicType = CUtils.getclass4qname( type.getBaseType());
+                    basicType = CUtils.getclass4qname(type.getBaseType());
 
                 String    class4QName = CUtils.getclass4qname(type.getBaseType());
                 
                 isPointerType = CUtils.isPointerType( class4QName); 
             }
-            else
-            {
+                else
+                {
                 basicType = ai.getTypeName();
                 isPointerType = CUtils.isPointerType(ai.getTypeName());
-            }
-            
+                }
+                
             if (isPointerType)
-            {
+                {
                 writer.write("\tif (0 != param->"
                         + ai.getParamNameAsMember() + ")\n");
-                writer.write("\t\tpSZ->serializeAsAttribute(\""
+                    writer.write("\t\tpSZ->serializeAsAttribute(\""
                         + soapTagName
                         + "\", 0, (void*)(param->"
                         + ai.getParamNameAsMember()
                         + "), "
-                        + CUtils.getXSDTypeForBasicType(basicType) + ");\n");
-            }
-            else
-            {
-                writer.write("\t\tpSZ->serializeAsAttribute(\""
-                        + soapTagName
-                        + "\", 0, (void*)&(param->"
-                        + attribs[i].getParamNameAsMember()
-                        + "), "
-                        + CUtils.getXSDTypeForBasicType(attribs[i].getTypeName()) + ");\n");
-            }
-            
-            if (!attribs[i].isOptional())
-            {
-                /* This avoid segmentation fault at runtime */
-                /*
-                 * writer.write("\telse\n");
-                 * writer.write("\t\tAXISTRACE1(\"The mandatory attribute
-                 * "+attribs[i].getParamName()+" is not set\",
-                 * CRITICAL);\n");
-                 */
+                            + CUtils.getXSDTypeForBasicType(basicType) + ");\n");
+                }
+                else
+                {
+                    writer.write("\tpSZ->serializeAsAttribute(\""
+                            + soapTagName
+                            + "\", 0, (void*)&(param->"
+                            + attribs[i].getParamNameAsMember()
+                            + "), "
+                            + CUtils.getXSDTypeForBasicType(attribs[i].getTypeName()) + ");\n");
+                }
+                
+                if (!attribs[i].isOptional())
+                {
+                    /* This avoid segmentation fault at runtime */
+                    /*
+                     * writer.write("\telse\n");
+                     * writer.write("\t\tAXISTRACE1(\"The mandatory attribute
+                     * "+attribs[i].getParamName()+" is not set\",
+                     * CRITICAL);\n");
+                     */
+                }
             }
-        }
         
         if (type.isFault())
         {
@@ -1245,7 +1193,7 @@
         writer.write("/*\n");
         writer.write(" * This static method delete a " + classname + " type of object\n");
         writer.write(" */\n");
-        writer.write("void Axis_Delete_" + classname + "(" + classname + "* param, int nSize=0)\n");
+        writer.write("void Axis_Delete_" + classname + "(" + classname + "* param, int nSize)\n");
         writer.write("{\n");
         
         writer.write("\t/* If null just return */\n");
@@ -1569,7 +1517,7 @@
     protected void writeRestrictionCheckerFunction() throws WrapperFault
     {
         try
-        {
+        {            
             writer.write("int Check_Restrictions_" + classname + "(" + classname + " value)\n");
             
             //TODO write code to check the restrictions.  FJP - Begun, but untested.

Modified: webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ClientStubWriter.java
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ClientStubWriter.java?view=diff&rev=482501&r1=482500&r2=482501
==============================================================================
--- webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ClientStubWriter.java (original)
+++ webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ClientStubWriter.java Mon Dec  4 21:40:19 2006
@@ -859,39 +859,6 @@
      */
     protected void writeGlobalCodes() throws WrapperFault
     {
-        Iterator types = wscontext.getTypemap().getTypes().iterator();
-        HashSet typeSet = new HashSet();
-        String typeName;
-        Type type;
-        try
-        {
-            while (types.hasNext())
-            {
-                type = (Type) types.next();
-                if (type.isArray())
-                    continue;
 
-                if (type.isAnonymous() && !type.isExternalized())
-                    continue;
-                typeSet.add(type.getLanguageSpecificName());
-            }
-            Iterator itr = typeSet.iterator();
-            while (itr.hasNext())
-            {
-                typeName = itr.next().toString();
-                writer.write("extern int Axis_DeSerialize_" + typeName + "("
-                        + typeName + "* param, IWrapperSoapDeSerializer* pDZ);\n");
-                writer.write("extern void* Axis_Create_" + typeName + "(int nSize);\n");
-                writer.write("extern void Axis_Delete_" + typeName + "("
-                        + typeName  + "* param, int nSize=0);\n");
-                writer.write("extern int Axis_Serialize_" + typeName
-                                + "(" + typeName
-                                + "* param, IWrapperSoapSerializer* pSZ, bool bArray = false);\n\n");
-            }
-        } 
-        catch (IOException e)
-        {
-            throw new WrapperFault(e);
-        }
     }
 }

Modified: webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ParmHeaderFileWriter.java
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ParmHeaderFileWriter.java?view=diff&rev=482501&r1=482500&r2=482501
==============================================================================
--- webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ParmHeaderFileWriter.java (original)
+++ webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ParmHeaderFileWriter.java Mon Dec  4 21:40:19 2006
@@ -66,7 +66,7 @@
                 writeSimpleTypeWithEnumerations();
             }
             else
-            {
+                {
                 classname = CUtils.sanitiseClassName( classname);
 
                 // vvv FJP - 17667
@@ -76,7 +76,6 @@
                     String	baseType = type.getRestrictionBase();
 
                     baseType = baseType.substring( baseType.indexOf( ":") + 1);
-
                     writer.write( "#include \"" + baseType + ".hpp\"\n\n");
                     writer.write( "// " + classname + " is a restricted type (base=" + baseType + ").\n// The following restrictions need to be applied:-\n");
 
@@ -103,49 +102,35 @@
                         }
                     }
                     
-                    writer.write( "\ntypedef " + baseType + " " + classname + ";\n\n");
+                    writer.write( "\ntypedef " + baseType + " " + classname + ";\n\n");                    
                 }
                 // ^^^ FJP - 17667
                 else
-                {
-	                writePreprocessorStatements();
-	
-	                this.writer.write("class STORAGE_CLASS_INFO " + classname);
-	                
-	                if (this.type.isFault())
-	                {
-	                    this.writer.write(" : public SoapFaultException");
-	                }
-	                
-	                this.writer.write("\n{\n");
-	                
-	                writeAttributes();
-	
-	                /**
-	                 * Dushshantha: Call writeGetSetMethods() method.
-	                 */
-	
-	                writeGetSetMethods();
-	                //..................................
-	                writeConstructors();
-	                writeDestructors();
-	                writeDeepCopyFlags();
-	                
-	                this.writer.write("};\n\n");
-                }
+            {
+                writePreprocessorStatements();
+
+                this.writer.write("class STORAGE_CLASS_INFO " + classname);
+                if (this.type.isFault())
+                    this.writer.write(" : public SoapFaultException");
+                this.writer.write("\n{\n");
+                writeAttributes();
+                writeGetSetMethods();
+                writeConstructors();
+                writeDestructors();
+                writeDeepCopyFlags();
+                this.writer.write("};\n\n");
+                
+                writeFunctionPrototypes();
+            }
             }
             
             this.writer.write("#endif /* !defined(__" + classname.toUpperCase()
                     + "_" + getFileType().toUpperCase() + "_H__INCLUDED_)*/\n");
             writer.flush();
             writer.close();
-            
             if (WSDL2Ws.verbose)
-            {
-                System.out.println(getFilePath().getAbsolutePath()
-                        + " created.....");
-            }
-        }
+                System.out.println(getFilePath().getAbsolutePath() + " created.....");
+        } 
         catch (IOException e)
         {
             e.printStackTrace();
@@ -185,11 +170,9 @@
 			        else if( restBaseClass != null)
 				        isPointerType = CUtils.isPointerType( restBaseClass);
 			    } // ^^^ FJP - 17667
-			    else
-			    {
-				    isPointerType = CUtils.isPointerType(getCorrectParmNameConsideringArraysAndComplexTypes(attribs[i]));
-			    }
-				
+                else
+                    isPointerType = CUtils.isPointerType(getCorrectParmNameConsideringArraysAndComplexTypes(attribs[i]));
+
         	    if ((attribs[i].isSimpleType() || type.isSimpleType())
                         && !attribs[i].isArray() 
                         && (isElementNillable(i) 
@@ -434,7 +417,7 @@
 					    String  typeName = getCorrectParmNameConsideringArraysAndComplexTypes(attribs[i]);
 					    Type    baseType = CUtils.findBaseTypeOfRestriction( attribs[i].getType(), wscontext);
 					    boolean	isPointer = CUtils.isPointerType( CUtils.getBaseTypeOfRestrictionAsString( baseType));
-					  
+                    
 					    if( isPointer)
 					    {
 					        int	pointerPos = typeName.indexOf( "*");
@@ -448,13 +431,14 @@
 					    writer.write( "\t" + typeName + " " + attribs[i].getParamNameWithoutSymbols() + ";\n");
 					}
 			        // ^^^ FJP - 17667
-					else
-					{
-					    writer.write( "\t" +
-					                  getCorrectParmNameConsideringArraysAndComplexTypes(attribs[i]) +
-					                  " " + attribs[i].getParamNameWithoutSymbols() + ";\n");
-					}
-				}								
+                else
+                {
+                    writer.write("\t"
+                                + getCorrectParmNameConsideringArraysAndComplexTypes(attribs[i])
+                                + " " + attribs[i].getParamNameWithoutSymbols()
+                                + ";\n");
+                }
+            }
             }
             
             if (extensionBaseAttrib != null &&
@@ -599,7 +583,7 @@
                         isPointerType = CUtils.isPointerType(CUtils.getclass4qname(type.getBaseType())); 
                     else
                         isPointerType = CUtils.isPointerType(getCorrectParmNameConsideringArraysAndComplexTypes(attribs[i]));
-
+                    
                     if( type.isRestriction() && isPointerType)
                     {
                         int pointerLocation = typeName.indexOf( "*");
@@ -705,6 +689,38 @@
         return new File(fileName);
     }
 
+
+    protected void writeFunctionPrototypes() throws WrapperFault
+    {
+        try
+        {
+            if (type.isSimpleType() || type.isArray() || type.getName().equals(CUtils.anyTypeQname)
+                    || (type.isAnonymous() && !type.isExternalized()))
+                return;
+            
+            String typeName = classname;
+            
+            writer.write("\n");
+            writer.write("/* ********************************************************************* */\n");
+            writer.write("/* --- Functions to create/delete, serialize/deserialize custom type --- */\n");
+            writer.write("/* ********************************************************************* */\n");
+            writer.write("\n");  
+            
+            writer.write("extern int Axis_DeSerialize_" + typeName
+                    + "(" + typeName + "* param, IWrapperSoapDeSerializer* pDZ);\n");
+            writer.write("extern void* Axis_Create_" + typeName + "(int nSize);\n");
+            writer.write("extern void Axis_Delete_" + typeName + "("
+                    + typeName + "* param, int nSize=0);\n");
+            writer.write("extern int Axis_Serialize_" + typeName + "("
+                    + typeName + "* param, IWrapperSoapSerializer* pSZ, bool bArray = false);\n\n");
+
+        }
+        catch (IOException e)
+        {
+            throw new WrapperFault(e);
+        }
+    }
+    
     /*
      * (non-Javadoc)
      * 
@@ -716,6 +732,9 @@
         {
             writer.write("#include <axis/AxisUserAPI.hpp>\n");
             writer.write("#include <axis/AxisUserAPIArrays.hpp>\n");
+            writer.write("#include <axis/IWrapperSoapDeSerializer.hpp>\n");
+            writer.write("#include <axis/IWrapperSoapSerializer.hpp>\n");
+
             
             if (this.type.isFault())
             {
@@ -757,13 +776,13 @@
             typeSet = new HashSet();
             for (int i = 0; i < attribs.length; i++)
             {
-				if (!attribs[i].isArray() &&
+                if (!attribs[i].isArray() && 
 				    !(attribs[i].isSimpleType() || attribs[i].getType().isSimpleType()) &&
 					!attribs[i].isAnyType() &&
 					!attribs[i].getType().isRestriction())
 				{
                     typeSet.add(attribs[i].getTypeName());
-				}
+            }
             }
             
             itr = typeSet.iterator();

Modified: webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java
URL: http://svn.apache.org/viewvc/webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java?view=diff&rev=482501&r1=482500&r2=482501
==============================================================================
--- webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java (original)
+++ webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java Mon Dec  4 21:40:19 2006
@@ -119,11 +119,8 @@
                      + getServiceName () + "_" + classname + CUtils.CPP_HEADER_SUFFIX + "\"\n\n");
             }
             else
-	    {
-		writer.write ("#include \""
-			      + classname
-			      + CUtils.CPP_HEADER_SUFFIX + "\"\n\n");
-	    }
+                writer.write ("#include \"" + classname + CUtils.CPP_HEADER_SUFFIX + "\"\n\n");
+
             writer.write ("#include <axis/AxisWrapperAPI.hpp>\n");
             writer.write ("#include <axis/Axis.hpp>\n\n");
         }
@@ -157,22 +154,12 @@
         int noOfOutParams = minfo.getOutputParameterTypes().size();
         
         if (0 == noOfOutParams)
-	{
             returntype = null;
-	}
-	else
-	{
-	    if (1 == noOfOutParams)
-	    {
-		returntype =
-		    (ParameterInfo) minfo.getOutputParameterTypes ().
-		    iterator ().next ();
-	    }
+        else if (1 == noOfOutParams)
+            returntype = (ParameterInfo) minfo.getOutputParameterTypes().iterator().next();
         else
-	    {
             isAllTreatedAsOutParams = true;
-	    }
-	}
+      
         Collection params = minfo.getInputParameterTypes ();
         String methodName = minfo.getMethodname ();
         Type retType = null;
@@ -181,15 +168,12 @@
         String outparamType = null;
         
         if (returntype != null)
-	{
             retType = wscontext.getTypemap ().getType (returntype.getSchemaName ());
-	}
+        
         if (retType != null)
         {
             if (retType.isSimpleType ())
-	    {
                 outparamType = CUtils.getclass4qname (retType.getBaseType ());
-	    }
             else
             {
                 outparamType = WrapperUtils.getClassNameFromParamInfoConsideringArrays (returntype, wscontext);
@@ -198,17 +182,12 @@
             
             returntypeisarray |= retType.isArray ();
         }
-	else
-	{
-	    if (returntype != null)
-	    {
+        else if (returntype != null)
             outparamType = returntype.getLangName ();
-	    }
-	}
+        
         if (returntype != null)
-	{
             returntypeissimple = CUtils.isSimpleType (outparamType);
-	}
+
         writer.write ("\n/*\n");
         writer.write (" * This method wrap the service method" + methodName + "\n");
         writer.write (" */\n");
@@ -220,26 +199,16 @@
         Type type;
         
         if (returntype == null)
-	{
             writer.write ("void");
-	}
-	else
-	{
-	    if (returntypeissimple
+        else if (returntypeissimple
                     && (!(returntype.isNillable() || returntype.isOptional()) 
                             || CUtils.isPointerType(outparamType)))
-	    {
             writer.write (outparamType);
-	    }
         else if (outparamType.lastIndexOf ("*") > 0)
-	    {
             writer.write (outparamType);
-	    }
-	    else
-	    {			//for AnyType too
+        else //for AnyType too
             writer.write (outparamType + "*");
-	    }
-	}
+
         writer.write (" " + classname + "::" + methodName + "(");
         ArrayList paramsB = (ArrayList) params;
         ParameterInfo paramtype = null;
@@ -251,7 +220,7 @@
             if (type != null)
             {
                 if (type.isSimpleType ())
-			{		//schema defined simpleType
+                {        
                     baseTypeName = CUtils.getclass4qname (type.getBaseType ());
                     paraTypeName = WrapperUtils.getClassNameFromParamInfoConsideringArrays(paramtype, wscontext);
                 }
@@ -259,17 +228,12 @@
                 {
                     paraTypeName = type.getLanguageSpecificName ();
                     if (CUtils.isSimpleType (paraTypeName))
-			    {
-			        paraTypeName =
-				    WrapperUtils.
-				    getClassNameFromParamInfoConsideringArrays
-				    (paramtype, wscontext);
-			    }
+                        paraTypeName = WrapperUtils.getClassNameFromParamInfoConsideringArrays(paramtype, wscontext);
+
                     typeisarray = (paraTypeName.lastIndexOf ("_Array") > 0);
                     if (!typeisarray)
-			    {
                         paraTypeName = type.getLanguageSpecificName ();
-			    }
+
                     typeissimple = CUtils.isSimpleType (paraTypeName);
                 }
                 typeisarray |= type.isArray ();
@@ -282,14 +246,11 @@
             }
             
             if (baseTypeName == null)
-	    {
                 baseTypeName = paraTypeName;
-	    }
+
             typeissimple = CUtils.isSimpleType (baseTypeName);
             if (paramtype.getType().isAttachment())
-	    {
                 writer.write("ISoapAttachment *Value0");
-	    }
             else if (typeissimple
                     && (!(((ParameterInfo) paramsB.get (0)).isNillable () || ((ParameterInfo) paramsB.get (0)).isOptional())
                             || CUtils.isPointerType(baseTypeName)))
@@ -297,13 +258,10 @@
                 writer.write (paraTypeName + " Value0");
             }
             else if (paraTypeName.lastIndexOf ("*") > 0)
-	    {
                 writer.write (paraTypeName + " Value0");
-	    }
-	    else
-	    {			//for AnyType too
+            else //for AnyType too
                 writer.write (paraTypeName + "* Value0");
-	    }
+
             for (int i = 1; i < paramsB.size (); i++)
             {
                 baseTypeName = null;
@@ -320,20 +278,13 @@
                     {
                         paraTypeName = type.getLanguageSpecificName ();
                         if (CUtils.isSimpleType (paraTypeName))
-				{
-				    paraTypeName =
-					WrapperUtils.
-					getClassNameFromParamInfoConsideringArrays
-					(paramtype, wscontext);
-				}
-				typeisarray =
-				    (paraTypeName.lastIndexOf ("_Array") > 0);
+                            paraTypeName = WrapperUtils.getClassNameFromParamInfoConsideringArrays(paramtype, wscontext);
+
+                        typeisarray = (paraTypeName.lastIndexOf ("_Array") > 0);
                         if (!typeisarray)
-				{
                             paraTypeName = type.getLanguageSpecificName ();       
-				}
+                    }
                     
-			    }
                     typeisarray |= type.isArray ();
                     typeissimple = CUtils.isSimpleType (paraTypeName);
                 }
@@ -345,36 +296,26 @@
                 }
                 
                 if (baseTypeName == null)
-			{
                     baseTypeName = paraTypeName;
-			}
+
                 typeissimple = CUtils.isSimpleType (baseTypeName);
                 if (paramtype.getType().isAttachment())
-	            {
                        writer.write(", ISoapAttachment *Value" + i);
-	            }
                 else if (typeissimple
                             && (!(((ParameterInfo) paramsB.get (i)).isNillable () 
                                     || ((ParameterInfo) paramsB.get (i)).isOptional())
                                         || CUtils.isPointerType(baseTypeName)))
-			{
                     writer.write (", " + paraTypeName + " Value" + i);
-			}
                 else if (paraTypeName.lastIndexOf ("*") > 0)
-			{
                     writer.write (", " + paraTypeName + " Value" + i);
-			}
-			else
-			{		//for AnyType too
+                else //for AnyType too
                     writer.write (", " + paraTypeName + "* Value" + i);
             } // end for loop
         } // end if (0 < paramsB.size ())
-	}
     
         // Multiples parameters so fill the methods prototype
         ArrayList paramsC = (ArrayList) minfo.getOutputParameterTypes ();
         if (isAllTreatedAsOutParams)
-	{
             for (int i = 0; i < paramsC.size (); i++)
             {
                 String baseTypeName = null;
@@ -383,20 +324,14 @@
                 ParameterInfo param = (ParameterInfo) paramsC.get (i);
                 String    paramType = WrapperUtils.getClassNameFromParamInfoConsideringArrays (param, wscontext);
                 if (type.isSimpleType())
-            {
                     baseTypeName = CUtils.getclass4qname(type.getBaseType());
-            }
                 else
-            {
                     baseTypeName = paramType;
-            }
                 
                 boolean bTypeHasStar = paramType.endsWith("*");
                 
                 if (paramsB.size()!=0 || 0!=i)
-            {
                     writer.write(", ");
-            }
                 
                 writer.write("AXIS_OUT_PARAM " + paramType);
                 if (CUtils.isSimpleType(baseTypeName))
@@ -404,31 +339,20 @@
                     if ((param.isOptional() || param.isNillable()) && !CUtils.isPointerType(baseTypeName))
                     {
                         if (bTypeHasStar)
-                    {
                             writer.write(" *");
-                    }
                         else
-                    {
                             writer.write(" **");
                     }
-                }
                     else if (CUtils.isPointerType(baseTypeName) || !bTypeHasStar)
-                {
                         writer.write(" *");
                 }
-                // Else we don't need to anymore '*'
-            }
                 else if(bTypeHasStar)
-            {
                     writer.write(" *");
-            }
                 else
-            {
                     writer.write(" **");
-            }
+                
                 writer.write(" OutValue" + i);
             } // end for-loop
-	}
     
         writer.write (")\n{\n");
         
@@ -437,40 +361,24 @@
             writer.write ("\t");
             
             if (returntypeisarray)
-	    {
-	        //for arrays
                 writer.write (outparamType + " * RetArray = new " + outparamType + "();\n");
-	    }
-	    else
-	    {
-		if (!returntypeissimple)
-		{		//for AnyType too
+            else if (!returntypeissimple)
+            {        
+                //for AnyType too
                 if (outparamType.lastIndexOf ("*") > 0)
-		    {
                     writer.write (outparamType + " pReturn = NULL;\n");
-		    }
                 else
                     writer.write (outparamType + "* pReturn = NULL;\n");
-		    //for complex types
             }
-		else
-		{
-		    //for simple types
-		    if ((returntype.isNillable () || returntype.isOptional())
+            else if ((returntype.isNillable () || returntype.isOptional())
                         && !(CUtils.isPointerType(outparamType)))
-		    {
                 writer.write (outparamType + "* Ret = NULL;\n");
-		    }
             else
             {
                 String initValue = CUtils.getInitValue (outparamType);
                 if (initValue != null)
-			{
                     writer.write (outparamType + " Ret = " + initValue + ";\n");
-			}
-			else
-			{
-				if (outparamType.equals ("xsd__dateTime")
+                else if (outparamType.equals ("xsd__dateTime")
                             || outparamType.equals ("xsd__date")
                             || outparamType.equals ("xsd__time"))
                 {
@@ -478,30 +386,19 @@
                     writer.write ("\tmemset(&Ret,0,sizeof(" + outparamType + "));\n");
                 }
                 else
-				{
                     writer.write (outparamType + " Ret;\n");
-				}
-			}
-		    }
-		}
+            }
             //TODO initialize return parameter appropriately.
         }
-	}
+        
         writer.write ("\tconst char* pcCmplxFaultName = NULL;\n");
         writer.write ("\ttry\n\t{\n");
     
         writer.write("\tif (AXIS_SUCCESS != m_pCall->initialize(CPP_DOC_PROVIDER" + ")) return ");
         if (returntype != null)
-	{
-	    writer.write ((returntypeisarray
-			   ? "RetArray"
-			   : returntypeissimple
-			   ? "Ret" : "pReturn") + ";\n\t");
-	}
+            writer.write ((returntypeisarray ? "RetArray" : returntypeissimple ? "Ret" : "pReturn") + ";\n");
         else
-	{
             writer.write (";\n");
-	}
         writer.write ("\n");
         
         writer.write ("\tif (NULL==m_pCall->getTransportProperty(\"SOAPAction\",false))\n");
@@ -746,9 +643,8 @@
                 }
                 
                 if (baseTypeName == null)
-			{
                     baseTypeName = currentParaType;
-			}
+
                 typeissimple = CUtils.isSimpleType (baseTypeName);
                 currentParamName = "*OutValue" + i;
                 
@@ -757,13 +653,10 @@
                 {
                     QName qname = null;
                     if (WrapperUtils.getArrayType (type) != null)
-			    {
                         qname = WrapperUtils.getArrayType (type).getName ();
-			    }
                     else
-			    {
                         qname = type.getName ();
-			    }
+                    
                     String containedType = null;
                     
                     if (CUtils.isSimpleType (qname))
@@ -822,9 +715,7 @@
                 else if (typeissimple)
                 {
                     if( i > 0)
-			        {
                         writer.write( "\n");
-			        }
                     
                     if (CUtils.isPointerType(baseTypeName))
                     {
@@ -833,9 +724,8 @@
                         if( !CUtils.isPointerType(baseTypeName))
                         {
                             if (!baseTypeName.equals(currentParaType))
-					        {
                                 xsdType = currentParaType;
-					        }
+
                             xsdType += " *";
                         }
                         
@@ -899,9 +789,8 @@
                 {
                     int lastIndexOfStar = currentParaType.lastIndexOf("*");
                     if (lastIndexOfStar > 0)
-				    {
                         currentParaType = currentParaType.substring(0, lastIndexOfStar);
-				    }
+
                     writer.write ("\n\t\t\t"
                               + currentParamName + " = (" + currentParaType
                               + "*)m_pCall->getCmplxObject((void*) Axis_DeSerialize_" + currentParaType 
@@ -918,9 +807,8 @@
         else if (returntype == null)
         {
             if (minfo.getOutputMessage () != null)
-		{
                 writer.write ("\t\t\t/*not successful*/\n\t\t}\n");
-		}
+
             writer.write ("\t}\n");
             writer.write ("\tm_pCall->unInitialize();\n");
         }
@@ -1243,46 +1131,5 @@
      */
     protected void writeGlobalCodes () throws WrapperFault
     {
-        Iterator types = wscontext.getTypemap().getTypes().iterator();
-        HashSet typeSet = new HashSet();
-        String typeName;
-        Type type;
-        try
-        {
-            while (types.hasNext())
-            {
-                type = (Type) types.next();
-                if (type.isSimpleType())
-		{
-                    continue;
-		}
-                if (type.isArray())
-		{
-                    continue;
-		}
-                if (type.isAnonymous() && !type.isExternalized())
-		{
-                    continue;
-		}
-                typeSet.add(type.getLanguageSpecificName());
-            }
-            
-            Iterator itr = typeSet.iterator();
-            while (itr.hasNext())
-            {
-                typeName = itr.next ().toString ();
-                writer.write ("extern int Axis_DeSerialize_" + typeName
-                          + "(" + typeName + "* param, IWrapperSoapDeSerializer* pDZ);\n");
-                writer.write ("extern void* Axis_Create_" + typeName + "(int nSize);\n");
-                writer.write ("extern void Axis_Delete_" + typeName + "(" +
-                          typeName + "* param, int nSize=0);\n");
-                writer.write ("extern int Axis_Serialize_" + typeName + "(" +
-                          typeName + "* param, IWrapperSoapSerializer* pSZ, bool bArray = false);\n\n");
-            }
-        }
-        catch (IOException e)
-        {
-            throw new WrapperFault (e);
-        }
     }
 }



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