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 na...@apache.org on 2006/03/17 02:39:26 UTC
svn commit: r386503 - in
/webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal:
ParmHeaderFileWriter.java WrapWriter.java
Author: nadiramra
Date: Thu Mar 16 17:39:22 2006
New Revision: 386503
URL: http://svn.apache.org/viewcvs?rev=386503&view=rev
Log:
Format code so more readable - align braces, etc.
Modified:
webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/ParmHeaderFileWriter.java
webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/WrapWriter.java
Modified: webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/ParmHeaderFileWriter.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/ParmHeaderFileWriter.java?rev=386503&r1=386502&r2=386503&view=diff
==============================================================================
--- webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/ParmHeaderFileWriter.java (original)
+++ webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/ParmHeaderFileWriter.java Thu Mar 16 17:39:22 2006
@@ -47,8 +47,7 @@
* @param type
* @throws WrapperFault
*/
- public ParmHeaderFileWriter(WebServiceContext wscontext, Type type)
- throws WrapperFault
+ public ParmHeaderFileWriter(WebServiceContext wscontext, Type type) throws WrapperFault
{
super(wscontext, type);
}
@@ -60,20 +59,15 @@
{
try
{
- this.writer =
- new BufferedWriter(new FileWriter(getFilePath(), false));
+ this.writer = new BufferedWriter(new FileWriter(getFilePath(), false));
writeClassComment();
+
// if this headerfile not defined define it
- this.writer.write(
- "#if !defined(__"
- + classname.toUpperCase()
- + "_H__INCLUDED_)\n");
- this.writer.write(
- "#define __" + classname.toUpperCase() + "_H__INCLUDED_\n\n");
+ this.writer.write("#if !defined(__" + classname.toUpperCase() + "_H__INCLUDED_)\n");
+ this.writer.write("#define __" + classname.toUpperCase() + "_H__INCLUDED_\n\n");
+
if (type.isSimpleType())
- {
writeSimpleTypeWithEnumerations();
- }
else
{
writePreprocessorStatements();
@@ -81,15 +75,12 @@
writeAttributes();
this.writer.write("} " + classname + ";\n\n");
}
- this.writer.write(
- "#endif /* !defined(__"
- + classname.toUpperCase()
- + "_H__INCLUDED_)*/\n");
+
+ this.writer.write("#endif /* !defined(__" + classname.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)
{
@@ -108,10 +99,12 @@
Vector restrictionData = type.getEnumerationdata();
if (restrictionData == null)
return;
+
TypeEntry baseEType = (TypeEntry) restrictionData.firstElement();
QName baseType = baseEType.getQName();
if (!CUtils.isSimpleType(baseType))
return;
+
String langTypeName = CUtils.getclass4qname(baseType);
writer.write("typedef ");
if ("string".equals(baseType.getLocalPart()))
@@ -123,131 +116,98 @@
if ("enumeration".equals(value.getLocalPart()))
{
writer.write(
- "static const "
- + classname
- + " "
- + classname
- + "_"
- + value.getNamespaceURI()
- + " = \""
- + value.getNamespaceURI()
- + "\";\n");
+ "static const " + classname + " "
+ + classname + "_"
+ + value.getNamespaceURI() + " = \""
+ + value.getNamespaceURI() + "\";\n");
+ }
+ else if ("maxLength".equals(value.getLocalPart()))
+ {
+ writer.write(
+ "static const " + classname + "_MaxLength = "
+ + value.getNamespaceURI() + ";\n");
+ }
+ else if ("minLength".equals(value.getLocalPart()))
+ {
+ writer.write(
+ "static const " + classname + "_MinLength = "
+ + value.getNamespaceURI() + ";\n");
}
- else
- if ("maxLength".equals(value.getLocalPart()))
- {
- writer.write(
- "static const "
- + classname
- + "_MaxLength = "
- + value.getNamespaceURI()
- + ";\n");
- }
- else
- if ("minLength".equals(value.getLocalPart()))
- {
- writer.write(
- "static const "
- + classname
- + "_MinLength = "
- + value.getNamespaceURI()
- + ";\n");
- }
}
}
- else
- if ("int".equals(baseType.getLocalPart()))
- {
- if (restrictionData.size() > 1)
- { //there are enumerations or [min|max]Inclusive
- boolean isEnum = false;
- boolean hasRestrictionItems = false;
- for (int i = 1; i < restrictionData.size(); i++)
+ else if ("int".equals(baseType.getLocalPart()))
+ {
+ if (restrictionData.size() > 1)
+ {
+ //there are enumerations or [min|max]Inclusive
+ boolean isEnum = false;
+ boolean hasRestrictionItems = false;
+
+ for (int i = 1; i < restrictionData.size(); i++)
+ {
+ QName value = (QName) restrictionData.elementAt(i);
+ if ("enumeration".equals(value.getLocalPart()))
{
- QName value = (QName) restrictionData.elementAt(i);
- if ("enumeration".equals(value.getLocalPart()))
- {
- isEnum = true;
- if (i > 1)
- writer.write(", ");
- else
- writer.write(" enum { ");
- writer.write(
- "ENUM"
- + classname.toUpperCase()
- + "_"
- + value.getNamespaceURI()
- + "="
- + value.getNamespaceURI());
- }
+ isEnum = true;
+
+ if (i > 1)
+ writer.write(", ");
else
- if ("minInclusive"
- .equals(value.getLocalPart()))
- {
- hasRestrictionItems = true;
- if (i <= 1)
- writer.write(
- langTypeName
- + " "
- + classname
- + ";\n");
- writer.write(
- "static const int "
- + classname
- + "_MinInclusive = "
- + value.getNamespaceURI()
- + ";\n");
- }
- else
- if ("maxInclusive"
- .equals(value.getLocalPart()))
- {
- hasRestrictionItems = true;
- if (i <= 1)
- writer.write(
- langTypeName
- + " "
- + classname
- + ";\n");
- writer.write(
- "static const int "
- + classname
- + "_MaxInclusive = "
- + value.getNamespaceURI()
- + ";\n");
- }
+ writer.write(" enum { ");
+
+ writer.write(
+ "ENUM"
+ + classname.toUpperCase() + "_" + value.getNamespaceURI()
+ + "=" + value.getNamespaceURI());
+ }
+ else if ("minInclusive".equals(value.getLocalPart()))
+ {
+ hasRestrictionItems = true;
+
+ if (i <= 1)
+ writer.write(langTypeName + " " + classname + ";\n");
+
+ writer.write(
+ "static const int "
+ + classname + "_MinInclusive = " + value.getNamespaceURI() + ";\n");
+ }
+ else if ("maxInclusive".equals(value.getLocalPart()))
+ {
+ hasRestrictionItems = true;
+
+ if (i <= 1)
+ writer.write(langTypeName + " " + classname + ";\n");
+
+ writer.write(
+ "static const int "
+ + classname + "_MaxInclusive = " + value.getNamespaceURI() + ";\n");
}
- if (isEnum)
- writer.write("} " + classname + ";\n");
- else
- if (!hasRestrictionItems)
- writer.write(
- langTypeName + " " + classname + ";\n");
}
- else
+
+ if (isEnum)
+ writer.write("} " + classname + ";\n");
+ else if (!hasRestrictionItems)
writer.write(langTypeName + " " + classname + ";\n");
}
else
- {
writer.write(langTypeName + " " + classname + ";\n");
- for (int i = 1; i < restrictionData.size(); i++)
+ }
+ else
+ {
+ writer.write(langTypeName + " " + classname + ";\n");
+ for (int i = 1; i < restrictionData.size(); i++)
+ {
+ QName value = (QName) restrictionData.elementAt(i);
+ if ("enumeration".equals(value.getLocalPart()))
{
- QName value = (QName) restrictionData.elementAt(i);
- if ("enumeration".equals(value.getLocalPart()))
- {
- writer.write(
- "static const "
- + classname
- + " "
- + classname
- + "_"
- + value.getNamespaceURI()
- + " = "
- + value.getNamespaceURI()
- + ";\n");
- }
+ writer.write(
+ "static const "
+ + classname + " " + classname
+ + "_" + value.getNamespaceURI()
+ + " = " + value.getNamespaceURI() + ";\n");
}
}
+ }
}
catch (IOException e)
{
@@ -264,10 +224,13 @@
{
Type atype;
Iterator types = this.wscontext.getTypemap().getTypes().iterator();
+
writer.write("#include <axis/GDefine.h>\n");
writer.write("#include <axis/AxisUserAPI.h>\n");
+
Vector typeSet = new Vector();
String typeName = null;
+
while (types.hasNext())
{
atype = (Type) types.next();
@@ -287,28 +250,23 @@
}
}
}
+
Iterator itr = typeSet.iterator();
while (itr.hasNext())
{
writer.write(
- "#include \""
- + itr.next().toString()
- + CUtils.C_HEADER_SUFFIX
- + "\"\n");
+ "#include \"" + itr.next().toString() + CUtils.C_HEADER_SUFFIX + "\"\n");
}
+
writer.write("/*Local name and the URI for the type*/\n");
writer.write(
"static const char* Axis_URI_"
- + classname
- + " = \""
- + type.getName().getNamespaceURI()
- + "\";\n");
+ + classname + " = \""
+ + type.getName().getNamespaceURI() + "\";\n");
writer.write(
"static const char* Axis_TypeName_"
- + classname
- + " = \""
- + type.getName().getLocalPart()
- + "\";\n\n");
+ + classname + " = \""
+ + type.getName().getLocalPart() + "\";\n\n");
}
catch (IOException e)
Modified: webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/WrapWriter.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/WrapWriter.java?rev=386503&r1=386502&r2=386503&view=diff
==============================================================================
--- webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/WrapWriter.java (original)
+++ webservices/axis/trunk/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/c/literal/WrapWriter.java Thu Mar 16 17:39:22 2006
@@ -57,8 +57,7 @@
{
try
{
- writer.write(
- "#include \"" + classname + CUtils.C_HEADER_SUFFIX + "\"\n");
+ writer.write("#include \"" + classname + CUtils.C_HEADER_SUFFIX + "\"\n");
//As there is no service header file for C the header files for types should be included here itself
Type atype;
Iterator types = this.wscontext.getTypemap().getTypes().iterator();
@@ -68,10 +67,7 @@
if (atype.getLanguageSpecificName().startsWith(">"))
continue;
writer.write(
- "#include \""
- + atype.getLanguageSpecificName()
- + CUtils.C_HEADER_SUFFIX
- + "\"\n");
+ "#include \"" + atype.getLanguageSpecificName() + CUtils.C_HEADER_SUFFIX + "\"\n");
}
writer.write("\n");
}
@@ -94,37 +90,29 @@
boolean isAllTreatedAsOutParams = false;
ParameterInfo returntype = null;
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;
- }
+ isAllTreatedAsOutParams = true;
+
String methodName = minfo.getMethodname();
Collection params = minfo.getInputParameterTypes();
Type retType = null;
String outparamType = null;
boolean returntypeissimple = false;
boolean returntypeisarray = false;
+
if (returntype != null)
{
- retType =
- wscontext.getTypemap().getType(returntype.getSchemaName());
+ retType = wscontext.getTypemap().getType(returntype.getSchemaName());
if (retType != null)
{
if (retType.isSimpleType())
- { //schema defined simpleType possibly with restrictions
+ {
+ //schema defined simpleType possibly with restrictions
returntypeissimple = true;
outparamType = CUtils.getclass4qname(retType.getBaseType());
}
@@ -141,66 +129,48 @@
returntypeissimple = CUtils.isSimpleType(outparamType);
}
}
+
String paraTypeName;
ArrayList paramsB = new ArrayList(params);
Type type;
- writer.write(
- "\n/*forward declaration for the c method " + methodName + " */\n");
+ writer.write("\n/*forward declaration for the c method " + methodName + " */\n");
//TODO forward declaration writing logic should be changed when arrays come into picture
if (returntype == null)
- {
writer.write("extern void " + methodName + "(");
- }
else
{
writer.write(
- "extern "
- + outparamType
+ "extern " + outparamType
+ ((returntypeissimple || returntypeisarray) ? " " : "* ")
- + methodName
- + "(");
+ + methodName + "(");
}
for (int i = 0; i < paramsB.size(); i++)
{
if (i > 0)
writer.write(",");
- type =
- this.wscontext.getTypemap().getType(
- ((ParameterInfo) paramsB.get(i)).getSchemaName());
+
+ type = this.wscontext.getTypemap().getType(((ParameterInfo) paramsB.get(i)).getSchemaName());
paraTypeName = ((ParameterInfo) paramsB.get(i)).getLangName();
- if ((CUtils.isSimpleType(paraTypeName))
- || (type != null && type.isSimpleType()))
- {
- //for simple types
+ if ((CUtils.isSimpleType(paraTypeName)) || (type != null && type.isSimpleType()))
+ writer.write(paraTypeName);
+ else if (type != null && type.isArray())
writer.write(paraTypeName);
- }
else
- if (type != null && type.isArray())
- {
- writer.write(paraTypeName);
- }
- else
- {
- writer.write(paraTypeName + "*");
- }
+ writer.write(paraTypeName + "*");
}
+
if (isAllTreatedAsOutParams)
{
ArrayList paramsC = (ArrayList) minfo.getOutputParameterTypes();
for (int i = 0; i < paramsC.size(); i++)
{
- type =
- wscontext.getTypemap().getType(
- ((ParameterInfo) paramsC.get(i)).getSchemaName());
+ type = wscontext.getTypemap().getType(((ParameterInfo) paramsC.get(i)).getSchemaName());
writer.write(
", AXIS_OUT_PARAM "
- + WrapperUtils
- .getClassNameFromParamInfoConsideringArrays(
- (ParameterInfo) paramsC.get(i),
- wscontext)
- + "*");
+ + WrapperUtils.getClassNameFromParamInfoConsideringArrays((ParameterInfo) paramsC.get(i),wscontext)
+ + "*");
}
}
writer.write(");\n");
@@ -209,10 +179,8 @@
writer.write(" */\n");
//method signature
writer.write(
- "int "
- + methodName
- + CUtils.WRAPPER_METHOD_APPENDER
- + "(IWrapperSoapDeSerializer DZ, IWrapperSoapSerializer SZ)\n{\n");
+ "int " + methodName + CUtils.WRAPPER_METHOD_APPENDER
+ + "(IWrapperSoapDeSerializer DZ, IWrapperSoapSerializer SZ)\n{\n");
writer.write("\tint nStatus;\n");
boolean aretherearrayparams = false;
String elementName;
@@ -222,57 +190,42 @@
ParameterInfo param = (ParameterInfo) paramsB.get(i);
type = this.wscontext.getTypemap().getType(param.getSchemaName());
paraTypeName = param.getLangName();
- if ((CUtils.isSimpleType(paraTypeName))
- || (type != null && type.isSimpleType()))
+ if ((CUtils.isSimpleType(paraTypeName)) || (type != null && type.isSimpleType()))
+ writer.write("\t" + paraTypeName + " v" + i + ";\n");
+ else if (type != null && type.isArray())
{
- //for simple types
+ aretherearrayparams = true;
writer.write("\t" + paraTypeName + " v" + i + ";\n");
}
- else
- if (type != null && type.isArray())
- {
- //for arrays
- aretherearrayparams = true;
- writer.write("\t" + paraTypeName + " v" + i + ";\n");
- }
- else
- {
- //for complex types
- writer.write("\t" + paraTypeName + "* v" + i + ";\n");
- }
+ else // for complex types
+ writer.write("\t" + paraTypeName + "* v" + i + ";\n");
}
+
if (returntype != null)
{
writer.write(
- "\t"
- + outparamType
+ "\t" + outparamType
+ ((returntypeisarray || returntypeissimple) ? " " : "* ")
+ "ret;\n");
}
+
if (aretherearrayparams)
- {
writer.write("\tAxis_Array array;\n");
- }
+
// Multiples parameters so fill the methods prototype
if (isAllTreatedAsOutParams)
{
ArrayList paramsC = (ArrayList) minfo.getOutputParameterTypes();
for (int i = 0; i < paramsC.size(); i++)
{
- type =
- wscontext.getTypemap().getType(
- ((ParameterInfo) paramsC.get(i)).getSchemaName());
+ type = wscontext.getTypemap().getType(((ParameterInfo) paramsC.get(i)).getSchemaName());
writer.write(
"\t"
- + WrapperUtils
- .getClassNameFromParamInfoConsideringArrays(
- (ParameterInfo) paramsC.get(i),
- wscontext)
- + " out"
- + i
- + ";\n");
+ + WrapperUtils.getClassNameFromParamInfoConsideringArrays((ParameterInfo) paramsC.get(i),wscontext)
+ + " out" + i + ";\n");
}
}
+
writer.write(
"\tif (AXIS_SUCCESS != DZ._functions->checkMessageBody(DZ._object, \""
+ minfo.getInputMessage().getLocalPart()
@@ -285,126 +238,95 @@
+ "\", \""
+ minfo.getOutputMessage().getNamespaceURI()
+ "\");\n");
+
//create and populate variables for each parameter
for (int i = 0; i < paramsB.size(); i++)
{
ParameterInfo param = (ParameterInfo) paramsB.get(i);
type = this.wscontext.getTypemap().getType(param.getSchemaName());
+
if (type != null && type.isSimpleType())
- { //schema defined simpleType possibly with restrictions
paraTypeName = CUtils.getclass4qname(type.getBaseType());
- ;
- }
else
- {
paraTypeName = param.getLangName();
- }
+
elementName = param.getElementName().getLocalPart();
if (type != null && type.isSimpleType())
- { //schema defined simpleType possibly with restrictions
+ {
writer.write(
"\tv"
+ i
+ " = DZ._functions->"
- + CUtils.getParameterGetValueMethodName(
- paraTypeName,
- false)
+ + CUtils.getParameterGetValueMethodName(paraTypeName,false)
+ "(DZ._object,\""
+ elementName
+ "\", 0);\n");
}
- else
- if ((CUtils.isSimpleType(param.getLangName())))
+ else if ((CUtils.isSimpleType(param.getLangName())))
+ {
+ //for simple types
+ writer.write(
+ "\tv"
+ + i
+ + " = DZ._functions->"
+ + CUtils.getParameterGetValueMethodName(paraTypeName,false)
+ + "(DZ._object,\""
+ + elementName
+ + "\", 0);\n");
+ }
+ else if (type != null && type.isArray())
+ {
+ QName qname = WrapperUtils.getArrayType(type).getName();
+ String containedType = null;
+ if (CUtils.isSimpleType(qname))
{
- //for simple types
+ containedType = CUtils.getclass4qname(qname);
writer.write(
- "\tv"
- + i
- + " = DZ._functions->"
- + CUtils.getParameterGetValueMethodName(
- paraTypeName,
- false)
- + "(DZ._object,\""
- + elementName
- + "\", 0);\n");
+ "\tarray = DZ._functions->getBasicArray(DZ._object, "
+ + CUtils.getXSDTypeForBasicType(containedType)
+ + ", \"" + elementName + "\", 0);\n");
+ writer.write("\tmemcpy(&v" + i + ", &array, sizeof(Axis_Array));\n");
}
else
- if (type != null && type.isArray())
- {
- QName qname = WrapperUtils.getArrayType(type).getName();
- String containedType = null;
- if (CUtils.isSimpleType(qname))
- {
- containedType = CUtils.getclass4qname(qname);
- writer.write(
- "\tarray = DZ._functions->getBasicArray(DZ._object, "
- + CUtils.getXSDTypeForBasicType(
- containedType)
- + ", \""
- + elementName
- + "\", 0);\n");
- writer.write(
- "\tmemcpy(&v"
- + i
- + ", &array, sizeof(Axis_Array));\n");
- }
- else
- {
- containedType = qname.getLocalPart();
- writer.write(
- "\tarray = DZ._functions->getCmplxArray(DZ._object, (void*)Axis_DeSerialize_"
- + containedType
- + "\n\t\t, (void*)Axis_Create_"
- + containedType
- + ", (void*)Axis_Delete_"
- + containedType
- + "\n\t\t, (void*)Axis_GetSize_"
- + containedType
- + ", \""
- + elementName
- + "\", Axis_URI_"
- + containedType
- + ");\n");
- writer.write(
- "\tmemcpy(&v"
- + i
- + ", &array, sizeof(Axis_Array));\n");
- }
- }
- else
- if (param.isAnyType())
- {
- //for anyType
- writer.write(
- "\tv"
- + i
- + " = ("
- + paraTypeName
- + "*)DZ._functions->getAnyObject(DZ._object);\n");
- }
- else
- {
- //for complex types
- writer.write(
- "\tv"
- + i
- + " = ("
- + paraTypeName
- + "*)DZ._functions->getCmplxObject(DZ._object, (void*)Axis_DeSerialize_"
- + paraTypeName
- + "\n\t\t, (void*)Axis_Create_"
- + paraTypeName
- + ", (void*)Axis_Delete_"
- + paraTypeName
- + "\n\t\t,\""
- + elementName
- + "\", Axis_URI_"
- + paraTypeName
- + ");\n");
- }
+ {
+ containedType = qname.getLocalPart();
+ writer.write(
+ "\tarray = DZ._functions->getCmplxArray(DZ._object, (void*)Axis_DeSerialize_"
+ + containedType
+ + "\n\t\t, (void*)Axis_Create_" + containedType
+ + ", (void*)Axis_Delete_" + containedType
+ + "\n\t\t, (void*)Axis_GetSize_" + containedType
+ + ", \""
+ + elementName
+ + "\", Axis_URI_" + containedType
+ + ");\n");
+ writer.write("\tmemcpy(&v" + i + ", &array, sizeof(Axis_Array));\n");
+ }
+ }
+ else if (param.isAnyType())
+ {
+ writer.write(
+ "\tv" + i + " = (" + paraTypeName + "*)DZ._functions->getAnyObject(DZ._object);\n");
+ }
+ else
+ {
+ //for complex types
+ writer.write(
+ "\tv"
+ + i + " = (" + paraTypeName
+ + "*)DZ._functions->getCmplxObject(DZ._object, (void*)Axis_DeSerialize_" + paraTypeName
+ + "\n\t\t, (void*)Axis_Create_" + paraTypeName
+ + ", (void*)Axis_Delete_" + paraTypeName
+ + "\n\t\t,\""
+ + elementName
+ + "\", Axis_URI_" + paraTypeName
+ + ");\n");
+ }
}
+
writer.write(
"\tif (AXIS_SUCCESS != (nStatus = DZ._functions->getStatus(DZ._object))) return nStatus;\n");
+
if (returntype != null)
{
returnParamName = returntype.getElementName().getLocalPart();
@@ -413,9 +335,8 @@
if (0 < paramsB.size())
{
for (int i = 0; i < paramsB.size() - 1; i++)
- {
writer.write("v" + i + ",");
- }
+
writer.write("v" + (paramsB.size() - 1));
}
writer.write(");\n");
@@ -429,212 +350,172 @@
+ CUtils.getXSDTypeForBasicType(outparamType)
+ ");\n");
}
- else
- if (returntypeisarray)
+ else if (returntypeisarray)
+ {
+ Type arrayType = WrapperUtils.getArrayType(retType);
+ QName qname = arrayType.getName();
+ String containedType = null;
+ if (CUtils.isSimpleType(qname))
{
- Type arrayType = WrapperUtils.getArrayType(retType);
- QName qname = arrayType.getName();
- String containedType = null;
- if (CUtils.isSimpleType(qname))
- {
- containedType = CUtils.getclass4qname(qname);
- writer.write(
- "\treturn SZ._functions->addOutputBasicArrayParam(SZ._object, (Axis_Array*)(&ret),"
- + CUtils.getXSDTypeForBasicType(containedType)
- + ", \""
- + returnParamName
- + "\");\n");
- }
- else
- if (arrayType.isSimpleType())
- { //SimpleType in the schema
- containedType =
- CUtils.getclass4qname(arrayType.getBaseType());
- writer.write(
- "\treturn SZ._functions->addOutputBasicArrayParam(SZ._object, (Axis_Array*)(&ret),"
- + CUtils.getXSDTypeForBasicType(
- containedType)
- + ", \""
- + returnParamName
- + "\");\n");
- }
- else
- {
- containedType = qname.getLocalPart();
- writer.write(
- "\treturn SZ._functions->addOutputCmplxArrayParam(SZ._object, (Axis_Array*)(&ret), (void*) Axis_Serialize_"
- + containedType
- + ", (void*) Axis_Delete_"
- + containedType
- + ", (void*) Axis_GetSize_"
- + containedType
- + ", \""
- + returnParamName
- + "\", Axis_URI_"
- + containedType
- + ");\n");
- }
+ containedType = CUtils.getclass4qname(qname);
+ writer.write(
+ "\treturn SZ._functions->addOutputBasicArrayParam(SZ._object, (Axis_Array*)(&ret),"
+ + CUtils.getXSDTypeForBasicType(containedType)
+ + ", \""
+ + returnParamName
+ + "\");\n");
+ }
+ else if (arrayType.isSimpleType())
+ {
+ containedType = CUtils.getclass4qname(arrayType.getBaseType());
+ writer.write(
+ "\treturn SZ._functions->addOutputBasicArrayParam(SZ._object, (Axis_Array*)(&ret),"
+ + CUtils.getXSDTypeForBasicType(containedType)
+ + ", \""
+ + returnParamName
+ + "\");\n");
}
else
- if (returntype.isAnyType())
+ {
+ containedType = qname.getLocalPart();
+ writer.write(
+ "\treturn SZ._functions->addOutputCmplxArrayParam(SZ._object, (Axis_Array*)(&ret), (void*) Axis_Serialize_"
+ + containedType
+ + ", (void*) Axis_Delete_" + containedType
+ + ", (void*) Axis_GetSize_" + containedType
+ + ", \""
+ + returnParamName
+ + "\", Axis_URI_" + containedType
+ + ");\n");
+ }
+ }
+ else if (returntype.isAnyType())
+ writer.write("\treturn SZ._functions->addOutputAnyObject(SZ._object, ret);\n");
+ else
+ {
+ //complex type
+ writer.write(
+ "\treturn SZ._functions->addOutputCmplxParam(SZ._object, ret, (void*)Axis_Serialize_"
+ + outparamType
+ + ", (void*)Axis_Delete_" + outparamType
+ + ", \""
+ + returnParamName
+ + "\", Axis_URI_" + outparamType
+ + ");\n");
+ }
+ }
+ else if (isAllTreatedAsOutParams)
+ {
+ writer.write("\t" + methodName + "(");
+ if (0 < paramsB.size())
+ for (int i = 0; i < paramsB.size(); i++)
+ writer.write("v" + i + ",");
+
+ ArrayList paramsC = (ArrayList) minfo.getOutputParameterTypes();
+ for (int i = 0; i < paramsC.size() - 1; i++)
+ writer.write("&out" + i + ",");
+
+ writer.write("&out" + (paramsC.size() - 1));
+ writer.write(");\n");
+ paramsC = (ArrayList) minfo.getOutputParameterTypes();
+ for (int i = 0; i < paramsC.size(); i++)
+ {
+ ParameterInfo param = (ParameterInfo) paramsC.get(i);
+ retType = wscontext.getTypemap().getType(param.getSchemaName());
+ if (retType != null)
+ {
+ if (retType.isSimpleType())
{
- writer.write(
- "\treturn SZ._functions->addOutputAnyObject(SZ._object, ret);\n");
+ returntypeissimple = true;
+ outparamType = CUtils.getclass4qname(retType.getBaseType());
}
else
{
- //complex type
- writer.write(
- "\treturn SZ._functions->addOutputCmplxParam(SZ._object, ret, (void*)Axis_Serialize_"
- + outparamType
- + ", (void*)Axis_Delete_"
- + outparamType
- + ", \""
- + returnParamName
- + "\", Axis_URI_"
- + outparamType
- + ");\n");
+ outparamType = retType.getLanguageSpecificName();
+ returntypeisarray = retType.isArray();
+ returntypeissimple = CUtils.isSimpleType(outparamType);
}
- }
- else
- if (isAllTreatedAsOutParams)
- {
- writer.write("\t" + methodName + "(");
- if (0 < paramsB.size())
+ }
+ else
{
- for (int i = 0; i < paramsB.size(); i++)
- {
- writer.write("v" + i + ",");
- }
+ outparamType = param.getLangName();
+ returntypeissimple = CUtils.isSimpleType(outparamType);
}
- ArrayList paramsC = (ArrayList) minfo.getOutputParameterTypes();
- for (int i = 0; i < paramsC.size() - 1; i++)
+
+ returnParamName = param.getElementName().getLocalPart();
+
+ if (returntypeissimple)
{
- writer.write("&out" + i + ",");
+ writer.write(
+ "\tSZ._functions->addOutputParam(SZ._object, \""
+ + returnParamName
+ + "\", (void*)&out" + i + ", "
+ + CUtils.getXSDTypeForBasicType(outparamType)
+ + ");\n");
}
- writer.write("&out" + (paramsC.size() - 1));
- writer.write(");\n");
- paramsC = (ArrayList) minfo.getOutputParameterTypes();
- for (int i = 0; i < paramsC.size(); i++)
+ else if (returntypeisarray)
{
- ParameterInfo param = (ParameterInfo) paramsC.get(i);
- retType =
- wscontext.getTypemap().getType(param.getSchemaName());
- if (retType != null)
+ QName qname = WrapperUtils.getArrayType(retType).getName();
+ String containedType = null;
+ if (CUtils.isSimpleType(qname))
{
- if (retType.isSimpleType())
- {
- returntypeissimple = true;
- outparamType =
- CUtils.getclass4qname(retType.getBaseType());
- }
- else
- {
- outparamType = retType.getLanguageSpecificName();
- returntypeisarray = retType.isArray();
- returntypeissimple =
- CUtils.isSimpleType(outparamType);
- }
+ containedType = CUtils.getclass4qname(qname);
+ writer.write(
+ "\tSZ._functions->addOutputBasicArrayParam(SZ._object, (Axis_Array*)(&out"
+ + i + "), "
+ + CUtils.getXSDTypeForBasicType(containedType)
+ + ", \""
+ + returnParamName
+ + "\");\n");
}
else
{
- outparamType = param.getLangName();
- returntypeissimple = CUtils.isSimpleType(outparamType);
- }
- returnParamName = param.getElementName().getLocalPart();
- if (returntypeissimple)
- {
+ containedType = qname.getLocalPart();
writer.write(
- "\tSZ._functions->addOutputParam(SZ._object, \""
+ "\tSZ._functions->addOutputCmplxArrayParam(SZ._object, (Axis_Array*)(&out"
+ + i + "),"
+ + "(void*) Axis_Serialize_" + containedType
+ + ", (void*) Axis_Delete_" + containedType
+ + ", (void*) Axis_GetSize_" + containedType
+ + ", \""
+ returnParamName
- + "\", (void*)&out"
- + i
- + ", "
- + CUtils.getXSDTypeForBasicType(outparamType)
+ + "\", Axis_URI_" + containedType
+ ");\n");
}
- else
- if (returntypeisarray)
- {
- QName qname =
- WrapperUtils.getArrayType(retType).getName();
- String containedType = null;
- if (CUtils.isSimpleType(qname))
- {
- containedType = CUtils.getclass4qname(qname);
- writer.write(
- "\tSZ._functions->addOutputBasicArrayParam(SZ._object, (Axis_Array*)(&out"
- + i
- + "), "
- + CUtils.getXSDTypeForBasicType(
- containedType)
- + ", \""
- + returnParamName
- + "\");\n");
- }
- else
- {
- containedType = qname.getLocalPart();
- writer.write(
- "\tSZ._functions->addOutputCmplxArrayParam(SZ._object, (Axis_Array*)(&out"
- + i
- + "),"
- + "(void*) Axis_Serialize_"
- + containedType
- + ", (void*) Axis_Delete_"
- + containedType
- + ", (void*) Axis_GetSize_"
- + containedType
- + ", \""
- + returnParamName
- + "\", Axis_URI_"
- + containedType
- + ");\n");
- }
- }
- else
- if (param.isAnyType())
- {
- //anyType
- writer.write(
- "\tSZ._functions->addOutputAnyObject(SZ._object, out"
- + i
- + ");\n");
- }
- else
- {
- //complex type
- writer.write(
- "\tSZ._functions->addOutputCmplxParam(SZ._object, out"
- + i
- + ", (void*)Axis_Serialize_"
- + outparamType
- + ", (void*)Axis_Delete_"
- + outparamType
- + ", \""
- + returnParamName
- + "\", Axis_URI_"
- + outparamType
- + ");\n");
- }
}
- writer.write("\treturn AXIS_SUCCESS;\n");
- }
- else
- { //method does not return anything
- /* Invoke the service when return type is void */
- writer.write("\t" + methodName + "(");
- if (0 < paramsB.size())
+ else if (param.isAnyType())
+ writer.write("\tSZ._functions->addOutputAnyObject(SZ._object, out" + i + ");\n");
+ else
{
- for (int i = 0; i < paramsB.size() - 1; i++)
- {
- writer.write("v" + i + ",");
- }
- writer.write("v" + (paramsB.size() - 1));
+ //complex type
+ writer.write(
+ "\tSZ._functions->addOutputCmplxParam(SZ._object, out"
+ + i
+ + ", (void*)Axis_Serialize_" + outparamType
+ + ", (void*)Axis_Delete_" + outparamType
+ + ", \""
+ + returnParamName
+ + "\", Axis_URI_" + outparamType
+ + ");\n");
}
- writer.write(");\n");
- writer.write("\treturn AXIS_SUCCESS;\n");
}
+ writer.write("\treturn AXIS_SUCCESS;\n");
+ }
+ else
+ {
+ //method does not return anything
+ /* Invoke the service when return type is void */
+ writer.write("\t" + methodName + "(");
+ if (0 < paramsB.size())
+ {
+ for (int i = 0; i < paramsB.size() - 1; i++)
+ writer.write("v" + i + ",");
+
+ writer.write("v" + (paramsB.size() - 1));
+ }
+ writer.write(");\n");
+ writer.write("\treturn AXIS_SUCCESS;\n");
+ }
//write end of method
writer.write("}\n");
}
@@ -653,43 +534,36 @@
while (types.hasNext())
{
type = (Type) types.next();
+
if (type.isSimpleType())
continue;
+
if (type.isArray())
continue;
+
typeName = type.getLanguageSpecificName();
if (typeName.startsWith(">"))
continue;
+
typeSet.add(typeName);
}
+
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
- + "("
- + typeName
- + "* Obj, bool bArray, int nSize);\n");
- writer.write(
- "extern void Axis_Delete_"
- + typeName
- + "("
- + typeName
- + "* param, bool bArray, int nSize);\n");
- writer.write(
- "extern int Axis_Serialize_"
- + typeName
- + "("
- + typeName
- + "* param, IWrapperSoapSerializer* pSZ, bool bArray);\n");
+ "extern int Axis_DeSerialize_" + typeName
+ + "(" + typeName + "* param, IWrapperSoapDeSerializer* pDZ);\n");
+ writer.write(
+ "extern void* Axis_Create_" + typeName
+ + "(" + typeName + "* Obj, bool bArray, int nSize);\n");
+ writer.write(
+ "extern void Axis_Delete_" + typeName
+ + "(" + typeName + "* param, bool bArray, int nSize);\n");
+ writer.write(
+ "extern int Axis_Serialize_" + typeName
+ + "(" + typeName + "* param, IWrapperSoapSerializer* pSZ, bool bArray);\n");
writer.write("extern int Axis_GetSize_" + typeName + "();\n\n");
}
}