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 su...@apache.org on 2004/03/17 12:25:02 UTC

cvs commit: ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal ClientStubWriter.java

susantha    2004/03/17 03:25:02

  Modified:    c/src/wsdl/org/apache/axis/wsdl/wsdl2ws WSDL2Ws.java
               c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal
                        ClientStubWriter.java
  Log:
  Handling schema defined simpleTypes with enumerations - few fixes
  
  Revision  Changes    Path
  1.21      +13 -9     ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/WSDL2Ws.java
  
  Index: WSDL2Ws.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/WSDL2Ws.java,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- WSDL2Ws.java	17 Mar 2004 07:29:53 -0000	1.20
  +++ WSDL2Ws.java	17 Mar 2004 11:25:02 -0000	1.21
  @@ -554,19 +554,23 @@
   						for (int j=0; j<elements.size(); j++) {
   							ElementDecl elem = (ElementDecl)elements.get(j);
   							QName typeName = elem.getType().getQName();
  +							ElementInfo eleinfo = null;
   							if(typeName.getLocalPart().indexOf('[')>0){
   								String localpart = typeName.getLocalPart().substring(0,typeName.getLocalPart().indexOf('['));
   								typeName = new QName(typeName.getNamespaceURI(),localpart);
  -								ElementInfo eleinfo = new ElementInfo(elem.getName(),createTypeInfo(elem.getType(),targetLanguage));
  -								eleinfo.setMinOccurs(elem.getMinOccrs());
  -								eleinfo.setMaxOccurs(elem.getMaxOccurs());
  -								typedata.setTypeNameForElementName(eleinfo);
  -							}else{
  -								ElementInfo eleinfo = new ElementInfo(elem.getName(),createTypeInfo(typeName,targetLanguage));
  -								eleinfo.setMinOccurs(elem.getMinOccrs());
  -								eleinfo.setMaxOccurs(elem.getMaxOccurs());
  -								typedata.setTypeNameForElementName(eleinfo);
  +								if (CUtils.isBasicType(typeName)){
  +									eleinfo = new ElementInfo(elem.getName(),createTypeInfo(typeName,targetLanguage));
  +								}
  +								else{
  +									eleinfo = new ElementInfo(elem.getName(),createTypeInfo(elem.getType(),targetLanguage)); 
  +								}
   							}
  +							else{
  +								eleinfo = new ElementInfo(elem.getName(),createTypeInfo(typeName,targetLanguage));								
  +							}
  +							eleinfo.setMinOccurs(elem.getMinOccrs());
  +							eleinfo.setMaxOccurs(elem.getMaxOccurs());
  +							typedata.setTypeNameForElementName(eleinfo);
   						}			
   					}
   				}
  
  
  
  1.12      +5 -5      ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java
  
  Index: ClientStubWriter.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/literal/ClientStubWriter.java,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- ClientStubWriter.java	17 Mar 2004 07:29:53 -0000	1.11
  +++ ClientStubWriter.java	17 Mar 2004 11:25:02 -0000	1.12
  @@ -326,26 +326,26 @@
   				if (CUtils.isSimpleType(qname)){
   					containedType = CUtils.getclass4qname(qname);
   					writer.write("\tm_pCall->AddBasicArrayParameter(");			
  -					writer.write("(Axis_Array*)(&Value"+i+"), "+CUtils.getXSDTypeForBasicType(containedType)+", \""+((ParameterInfo)paramsB.get(i)).getParamName()+"\"");					
  +					writer.write("(Axis_Array*)(&Value"+i+"), "+CUtils.getXSDTypeForBasicType(containedType)+", \""+((ParameterInfo)paramsB.get(i)).getElementName().getLocalPart()+"\"");					
   				}
   				else if (arrayType.isSimpleType()){//SimpleType in the schema 
   					containedType = CUtils.getclass4qname(arrayType.getBaseType());
   					writer.write("\tm_pCall->AddBasicArrayParameter(");			
  -					writer.write("(Axis_Array*)(&Value"+i+"), "+CUtils.getXSDTypeForBasicType(containedType)+", \""+((ParameterInfo)paramsB.get(i)).getParamName()+"\"");					
  +					writer.write("(Axis_Array*)(&Value"+i+"), "+CUtils.getXSDTypeForBasicType(containedType)+", \""+((ParameterInfo)paramsB.get(i)).getElementName().getLocalPart()+"\"");					
   				}
   				else{
   					containedType = qname.getLocalPart();
   					writer.write("\tm_pCall->AddCmplxArrayParameter(");			
  -					writer.write("(Axis_Array*)(&Value"+i+"), (void*)Axis_Serialize_"+containedType+", (void*)Axis_Delete_"+containedType+", (void*) Axis_GetSize_"+containedType+", \""+((ParameterInfo)paramsB.get(i)).getParamName()+"\", Axis_URI_"+containedType);
  +					writer.write("(Axis_Array*)(&Value"+i+"), (void*)Axis_Serialize_"+containedType+", (void*)Axis_Delete_"+containedType+", (void*) Axis_GetSize_"+containedType+", \""+((ParameterInfo)paramsB.get(i)).getElementName().getLocalPart()+"\", Axis_URI_"+containedType);
   				}
   			}else if(typeissimple){
   				//for simple types	
   				writer.write("\tm_pCall->AddParameter(");			
  -				writer.write("(void*)&Value"+i+", \"" + ((ParameterInfo)paramsB.get(i)).getParamName()+"\", "+CUtils.getXSDTypeForBasicType(paraTypeName));
  +				writer.write("(void*)&Value"+i+", \"" + ((ParameterInfo)paramsB.get(i)).getElementName().getLocalPart()+"\", "+CUtils.getXSDTypeForBasicType(paraTypeName));
   			}else{
   				//for complex types 
   				writer.write("\tm_pCall->AddCmplxParameter(");			
  -				writer.write("Value"+i+", (void*)Axis_Serialize_"+paraTypeName+", (void*)Axis_Delete_"+paraTypeName+", \"" + ((ParameterInfo)paramsB.get(i)).getParamName()+"\", Axis_URI_"+paraTypeName);
  +				writer.write("Value"+i+", (void*)Axis_Serialize_"+paraTypeName+", (void*)Axis_Delete_"+paraTypeName+", \"" + ((ParameterInfo)paramsB.get(i)).getElementName().getLocalPart()+"\", Axis_URI_"+paraTypeName);
   			}
   			writer.write(");\n");
   		}