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 sa...@apache.org on 2005/02/21 07:19:22 UTC
cvs commit: ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp BeanParamWriter.java ClientStubWriter.java WrapWriter.java
samisa 2005/02/20 22:19:21
Modified: c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp
BeanParamWriter.java ClientStubWriter.java
WrapWriter.java
Log:
Fixed the compilation problems for RPC style code generated.
AXISCPP-459
Revision Changes Path
1.33 +15 -3 ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/BeanParamWriter.java
Index: BeanParamWriter.java
===================================================================
RCS file: /home/cvs/ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/BeanParamWriter.java,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -r1.32 -r1.33
--- BeanParamWriter.java 18 Feb 2005 12:09:48 -0000 1.32
+++ BeanParamWriter.java 21 Feb 2005 06:19:21 -0000 1.33
@@ -431,7 +431,6 @@
if (attribs[i].isSimpleType())
{
if (attribs[i].isNillable()
- || attribs[i].getTypeName().equals("xsd__string")
|| attribs[i].getTypeName().equals("xsd__anyURI")
|| attribs[i].getTypeName().equals("xsd__QName")
|| attribs[i].getTypeName().equals("xsd__notation"))
@@ -448,19 +447,32 @@
+ attribs[i].getParamName()
+ "\",0));\n");
}
+ else if(attribs[i].getTypeName().equals("xsd__string"))
+ {
+ writer.write(
+ "\tparam->"
+ + attribs[i].getParamNameAsMember()
+ + " = pIWSDZ->"
+ + CUtils.getParameterGetValueMethodName(
+ attribs[i].getTypeName(),
+ attribs[i].isAttribute())
+ + "(\""
+ + attribs[i].getParamName()
+ + "\",0);\n");
+ }
else
{
//TODO handle optional attributes
writer.write(
"\tparam->"
+ attribs[i].getParamNameAsMember()
- + " = pIWSDZ->"
+ + " = *(pIWSDZ->"
+ CUtils.getParameterGetValueMethodName(
attribs[i].getTypeName(),
attribs[i].isAttribute())
+ "(\""
+ attribs[i].getParamName()
- + "\",0);\n");
+ + "\",0));\n");
}
}
else
1.72 +18 -8 ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ClientStubWriter.java
Index: ClientStubWriter.java
===================================================================
RCS file: /home/cvs/ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ClientStubWriter.java,v
retrieving revision 1.71
retrieving revision 1.72
diff -u -r1.71 -r1.72
--- ClientStubWriter.java 18 Feb 2005 12:24:25 -0000 1.71
+++ ClientStubWriter.java 21 Feb 2005 06:19:21 -0000 1.72
@@ -349,27 +349,31 @@
{
writer.write(outparamTypeName + "* Ret = NULL;\n");
}
+ else if (outparamTypeName.equals("xsd__string"))
+ {
+ writer.write(outparamTypeName + " Ret;\n");
+ }
else
{
String initValue = CUtils.getInitValue(outparamTypeName);
if (initValue != null)
{
writer.write(
- outparamTypeName + " Ret = " + initValue + ";\n");
+ outparamTypeName + "* Ret = NULL;\n");//" + initValue + ";\n");
}
else
{
if (outparamTypeName.equals("xsd__base64Binary")
|| outparamTypeName.equals("xsd__hexBinary"))
{
- writer.write(outparamTypeName + " Ret;\n");
- writer.write("\tRet.__ptr = NULL;\n");
- writer.write("\tRet.__size = 0;\n");
+ writer.write(outparamTypeName + "* Ret;\n");
+ //writer.write("\tRet->__ptr = NULL;\n");
+ //writer.write("\tRet->__size = 0;\n");
}
else
{
- writer.write(outparamTypeName + " Ret;\n");
+ writer.write(outparamTypeName + "* Ret;\n");
}
}
//TODO initialize return parameter appropriately.
@@ -389,11 +393,14 @@
//damitha
if (returntype != null)
{
- writer.write(
+ if (outparamTypeName.equals("xsd__string") && returntypeissimple)
+ writer.write("Ret;\n");
+ else
+ writer.write(
(returntypeisarray
? "RetArray"
: returntypeissimple
- ? "Ret"
+ ? "*Ret"
: "pReturn")
+ ";\n");
}
@@ -696,7 +703,10 @@
writer.write("\t\t}\n");
writer.write("\tm_pCall->unInitialize();\n");
// writer.write("\t\t}\n\t\tm_pCall->unInitialize();\n");
- writer.write("\t\treturn Ret;\n");
+ if (outparamTypeName.equals("xsd__string") )
+ writer.write("\t\treturn Ret;\n");
+ else
+ writer.write("\t\treturn *Ret;\n");
}
else
{
1.39 +11 -1 ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/WrapWriter.java
Index: WrapWriter.java
===================================================================
RCS file: /home/cvs/ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/WrapWriter.java,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -r1.38 -r1.39
--- WrapWriter.java 18 Feb 2005 11:11:20 -0000 1.38
+++ WrapWriter.java 21 Feb 2005 06:19:21 -0000 1.39
@@ -343,7 +343,17 @@
}
else
{
- writer.write("\t"
+ if (param.getLangName().equals("xsd__string"))
+ writer.write("\t"
+ + paraTypeName
+ + " v"
+ + i
+ + " = pIWSDZ->"
+ + CUtils.getParameterGetValueMethodName(paraTypeName, false)
+ + "(\""
+ + parameterName + "\",0);\n");
+ else
+ writer.write("\t"
+ paraTypeName
+ " v"
+ i