public static CppType FromParticle(ProxyWriter pw, MSXML2.ISchemaParticle p) { MSXML2.ISchemaElement e = p as MSXML2.ISchemaElement; wsdlParser.qname ptype = new wsdlParser.qnameClass(); ptype.localname = e.type.name; ptype.@namespace = e.type.namespaceURI; CppType itemType = pw.mapType(ptype); int minOccurs = int.Parse(p.minOccurs.ToString()); int maxOccurs = int.Parse(p.maxOccurs.ToString()); if ((maxOccurs == 1) && (minOccurs == 0)) { itemType.Optional = true; } else if ((maxOccurs != 1) || (minOccurs != 1)) { itemType.Array = ArrayType.Literal; } else if (e != null && e.isNillable) { itemType.Optional = true; } return(itemType); }
public void StartProxy(wsdlParser.port port, wsdlParser.binding binding, wsdlParser.portType portType) { m_currentproxy = new ProxyWriter(m_wsdlUrl, m_wsdl, port, binding, portType, m_project); }