binding->name = sdl_deserialize_string(&in);
binding->location = sdl_deserialize_string(&in);
WSDL_CACHE_GET_1(binding->bindingType,sdlBindingType,&in);
- if (binding->bindingType == BINDING_SOAP) {
- if (*in != 0) {
- sdlSoapBindingPtr soap_binding = binding->bindingAttributes = emalloc(sizeof(sdlSoapBinding));
- WSDL_CACHE_GET_1(soap_binding->style,sdlEncodingStyle,&in);
- WSDL_CACHE_GET_1(soap_binding->transport,sdlTransport,&in);
- } else {
- WSDL_CACHE_SKIP(1,&in);
- }
+ if (binding->bindingType == BINDING_SOAP && *in != 0) {
+ sdlSoapBindingPtr soap_binding = binding->bindingAttributes = emalloc(sizeof(sdlSoapBinding));
+ WSDL_CACHE_GET_1(soap_binding->style,sdlEncodingStyle,&in);
+ WSDL_CACHE_GET_1(soap_binding->transport,sdlTransport,&in);
+ } else {
+ WSDL_CACHE_SKIP(1,&in);
}
bindings[i] = binding;
}
} else {
func->binding = bindings[binding_num-1];
}
- if (func->binding && func->binding->bindingType == BINDING_SOAP) {
- if (*in != 0) {
- sdlSoapBindingFunctionPtr binding = func->bindingAttributes = emalloc(sizeof(sdlSoapBindingFunction));
- memset(binding, 0, sizeof(sdlSoapBindingFunction));
- WSDL_CACHE_GET_1(binding->style,sdlEncodingStyle,&in);
- binding->soapAction = sdl_deserialize_string(&in);
- sdl_deserialize_soap_body(&binding->input, encoders, types, &in);
- sdl_deserialize_soap_body(&binding->output, encoders, types, &in);
- } else {
- WSDL_CACHE_SKIP(1, &in);
- func->bindingAttributes = NULL;
- }
+ if (func->binding && func->binding->bindingType == BINDING_SOAP && *in != 0) {
+ sdlSoapBindingFunctionPtr binding = func->bindingAttributes = emalloc(sizeof(sdlSoapBindingFunction));
+ memset(binding, 0, sizeof(sdlSoapBindingFunction));
+ WSDL_CACHE_GET_1(binding->style,sdlEncodingStyle,&in);
+ binding->soapAction = sdl_deserialize_string(&in);
+ sdl_deserialize_soap_body(&binding->input, encoders, types, &in);
+ sdl_deserialize_soap_body(&binding->output, encoders, types, &in);
+ } else {
+ WSDL_CACHE_SKIP(1, &in);
+ func->bindingAttributes = NULL;
}
func->requestParameters = sdl_deserialize_parameters(encoders, types, &in);
--- /dev/null
+<?xml version="1.0" encoding="windows-1257"?>\r
+<definitions xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"\r
+xmlns:s0="http://tempuri.org/"\r
+xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"\r
+xmlns:s="http://www.w3.org/2001/XMLSchema"\r
+xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"\r
+xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"\r
+xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" name="test"\r
+targetNamespace="http://tempuri.org/"\r
+xmlns="http://schemas.xmlsoap.org/wsdl/">\r
+ <types>\r
+ <xs:schema elementFormDefault="qualified"\r
+targetNamespace="http://tempuri.org/"\r
+xmlns:xs="http://www.w3.org/2001/XMLSchema">\r
+ <xs:element name="HelloWorld">\r
+ <xs:complexType />\r
+ </xs:element>\r
+ <xs:element name="HelloWorldResponse">\r
+ <xs:complexType>\r
+ <xs:sequence>\r
+\r
+ <xs:element minOccurs="0" maxOccurs="1"\r
+name="HelloWorldResult" type="xs:string" />\r
+ </xs:sequence>\r
+ </xs:complexType>\r
+ </xs:element>\r
+ <xs:element name="string" type="xs:string" />\r
+ </xs:schema>\r
+ </types>\r
+ <message name="HelloWorldSoapIn">\r
+ <part name="parameters" element="s0:HelloWorld" />\r
+\r
+ </message>\r
+ <message name="HelloWorldSoapOut">\r
+ <part name="parameters" element="s0:HelloWorldResponse" />\r
+ </message>\r
+ <message name="HelloWorldHttpGetIn" />\r
+ <message name="HelloWorldHttpGetOut">\r
+ <part name="Body" element="s0:string" />\r
+ </message>\r
+ <message name="HelloWorldHttpPostIn" />\r
+\r
+ <message name="HelloWorldHttpPostOut">\r
+ <part name="Body" element="s0:string" />\r
+ </message>\r
+ <portType name="testSoap">\r
+ <operation name="HelloWorld">\r
+ <input message="s0:HelloWorldSoapIn" />\r
+ <output message="s0:HelloWorldSoapOut" />\r
+ </operation>\r
+ </portType>\r
+\r
+ <portType name="testHttpGet">\r
+ <operation name="HelloWorld">\r
+ <input message="s0:HelloWorldHttpGetIn" />\r
+ <output message="s0:HelloWorldHttpGetOut" />\r
+ </operation>\r
+ </portType>\r
+ <portType name="testHttpPost">\r
+ <operation name="HelloWorld">\r
+ <input message="s0:HelloWorldHttpPostIn" />\r
+\r
+ <output message="s0:HelloWorldHttpPostOut" />\r
+ </operation>\r
+ </portType>\r
+ <binding name="testSoap" type="s0:testSoap">\r
+ <soap:binding style="document"\r
+transport="http://schemas.xmlsoap.org/soap/http" />\r
+ <operation name="HelloWorld">\r
+ <soap:operation soapAction="http://tempuri.org/HelloWorld"\r
+style="document" />\r
+ <input>\r
+ <soap:body use="literal" />\r
+\r
+ </input>\r
+ <output>\r
+ <soap:body use="literal" />\r
+ </output>\r
+ </operation>\r
+ </binding>\r
+ <binding name="testHttpGet" type="s0:testHttpGet">\r
+ <http:binding verb="GET" />\r
+ <operation name="HelloWorld">\r
+\r
+ <http:operation location="/HelloWorld" />\r
+ <input>\r
+ <http:urlEncoded />\r
+ </input>\r
+ <output>\r
+ <mime:mimeXml part="Body" />\r
+ </output>\r
+ </operation>\r
+ </binding>\r
+\r
+ <binding name="testHttpPost" type="s0:testHttpPost">\r
+ <http:binding verb="POST" />\r
+ <operation name="HelloWorld">\r
+ <http:operation location="/HelloWorld" />\r
+ <input>\r
+ <mime:content part="" type="application/x-www-form-urlencoded"\r
+/>\r
+ </input>\r
+ <output>\r
+ <mime:mimeXml part="Body" />\r
+\r
+ </output>\r
+ </operation>\r
+ </binding>\r
+ <service name="test">\r
+ <port name="testSoap" binding="s0:testSoap">\r
+ <soap:address location="http://localhost:81/test.asmx" />\r
+ </port>\r
+ <port name="testHttpGet" binding="s0:testHttpGet">\r
+ <http:address location="http://localhost:81/test.asmx" />\r
+\r
+ </port>\r
+ <port name="testHttpPost" binding="s0:testHttpPost">\r
+ <http:address location="http://localhost:81/test.asmx" />\r
+ </port>\r
+ </service>\r
+</definitions>\r
--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>\r
+<definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://isis.ais.ucla.edu/ws/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="http://isis.ais.ucla.edu/ws/" xmlns="http://schemas.xmlsoap.org/wsdl/">\r
+ <types>\r
+ <s:schema elementFormDefault="qualified" targetNamespace="http://isis.ais.ucla.edu/ws/">\r
+ <s:element name="StartSession">\r
+ <s:complexType>\r
+ <s:sequence>\r
+ <s:element minOccurs="0" maxOccurs="1" name="uclaId" type="s:string" />\r
+ <s:element minOccurs="0" maxOccurs="1" name="userIpAddr" type="s:string" />\r
+ </s:sequence>\r
+ </s:complexType>\r
+ </s:element>\r
+ <s:element name="StartSessionResponse">\r
+ <s:complexType>\r
+ <s:sequence>\r
+ <s:element minOccurs="1" maxOccurs="1" name="iwsResponse" nillable="true" type="s0:IwsResponse" />\r
+ </s:sequence>\r
+ </s:complexType>\r
+ </s:element>\r
+ <s:complexType name="IwsResponse">\r
+ <s:sequence>\r
+ <s:element minOccurs="1" maxOccurs="1" name="sessionInfo" nillable="true" type="s0:IwsSession" />\r
+ <s:element minOccurs="1" maxOccurs="1" name="errorInfo" nillable="true" type="s0:IwsErrorCollection" />\r
+ </s:sequence>\r
+ <s:attribute name="action" type="s0:ActionEnum" />\r
+ <s:attribute name="hasErrors" type="s:boolean" />\r
+ <s:attribute name="transactionId" type="s:long" />\r
+ </s:complexType>\r
+ <s:complexType name="IwsSession">\r
+ <s:sequence>\r
+ <s:element minOccurs="0" maxOccurs="1" name="userAttributes" type="s0:ArrayOfIwsUserAttribute" />\r
+ <s:element minOccurs="0" maxOccurs="1" name="accounts" type="s0:ArrayOfIwsAccount" />\r
+ <s:element minOccurs="1" maxOccurs="1" name="ticket" nillable="true" type="s:string" />\r
+ <s:element minOccurs="1" maxOccurs="1" name="uclaId" nillable="true" type="s:string" />\r
+ </s:sequence>\r
+ <s:attribute name="status" type="s0:SessionStatus" />\r
+ </s:complexType>\r
+ <s:complexType name="ArrayOfIwsUserAttribute">\r
+ <s:sequence>\r
+ <s:element minOccurs="0" maxOccurs="unbounded" name="attribute" type="s0:IwsUserAttribute" />\r
+ </s:sequence>\r
+ </s:complexType>\r
+ <s:complexType name="IwsUserAttribute">\r
+ <s:attribute name="name" type="s:string" />\r
+ <s:attribute name="value" type="s:string" />\r
+ </s:complexType>\r
+ <s:complexType name="ArrayOfIwsAccount">\r
+ <s:sequence>\r
+ <s:element minOccurs="0" maxOccurs="unbounded" name="account" type="s0:IwsAccount" />\r
+ </s:sequence>\r
+ </s:complexType>\r
+ <s:complexType name="IwsAccount">\r
+ <s:attribute name="loginId" type="s:string" />\r
+ <s:attribute name="type" type="s0:LoginType" />\r
+ <s:attribute name="status" type="s0:AccountStatus" />\r
+ </s:complexType>\r
+ <s:simpleType name="LoginType">\r
+ <s:restriction base="s:string">\r
+ <s:enumeration value="BruinOnline" />\r
+ <s:enumeration value="ACF2" />\r
+ <s:enumeration value="QDB" />\r
+ <s:enumeration value="UID" />\r
+ <s:enumeration value="CommonLogon" />\r
+ <s:enumeration value="RACF" />\r
+ </s:restriction>\r
+ </s:simpleType>\r
+ <s:simpleType name="AccountStatus">\r
+ <s:restriction base="s:string">\r
+ <s:enumeration value="Unknown" />\r
+ <s:enumeration value="Active" />\r
+ <s:enumeration value="Authenticated" />\r
+ <s:enumeration value="AuthenticatedWithCachedCredential" />\r
+ <s:enumeration value="NotAuthenticated" />\r
+ <s:enumeration value="PermmanentlySuspended" />\r
+ <s:enumeration value="TemporarilySuspended" />\r
+ <s:enumeration value="PasswordResetRequired" />\r
+ <s:enumeration value="InvalidID" />\r
+ </s:restriction>\r
+ </s:simpleType>\r
+ <s:simpleType name="SessionStatus">\r
+ <s:restriction base="s:string">\r
+ <s:enumeration value="Uninitialized" />\r
+ <s:enumeration value="Active" />\r
+ <s:enumeration value="ActiveWithCachedCredential" />\r
+ <s:enumeration value="ActiveWithMultipleCredentials" />\r
+ <s:enumeration value="Expired" />\r
+ </s:restriction>\r
+ </s:simpleType>\r
+ <s:complexType name="IwsErrorCollection">\r
+ <s:sequence>\r
+ <s:element minOccurs="0" maxOccurs="1" name="errors" type="s0:ArrayOfIwsError" />\r
+ </s:sequence>\r
+ <s:attribute name="count" type="s:int" />\r
+ </s:complexType>\r
+ <s:complexType name="ArrayOfIwsError">\r
+ <s:sequence>\r
+ <s:element minOccurs="0" maxOccurs="unbounded" name="error" type="s0:IwsError" />\r
+ </s:sequence>\r
+ </s:complexType>\r
+ <s:complexType name="IwsError">\r
+ <s:attribute name="errorCode" type="s:int" />\r
+ <s:attribute name="detail" type="s:string" />\r
+ </s:complexType>\r
+ <s:simpleType name="ActionEnum">\r
+ <s:restriction base="s:string">\r
+ <s:enumeration value="GetInfo" />\r
+ <s:enumeration value="Start" />\r
+ <s:enumeration value="Verify" />\r
+ <s:enumeration value="Logout" />\r
+ </s:restriction>\r
+ </s:simpleType>\r
+ <s:element name="wsConsumerCredential" type="s0:WsConsumerCredential" />\r
+ <s:complexType name="WsConsumerCredential">\r
+ <s:sequence>\r
+ <s:element minOccurs="0" maxOccurs="1" name="id" type="s:string" />\r
+ <s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />\r
+ </s:sequence>\r
+ </s:complexType>\r
+ <s:element name="VerifySession">\r
+ <s:complexType>\r
+ <s:sequence>\r
+ <s:element minOccurs="0" maxOccurs="1" name="ticket" type="s:string" />\r
+ <s:element minOccurs="0" maxOccurs="1" name="userIpAddr" type="s:string" />\r
+ <s:element minOccurs="1" maxOccurs="1" name="returnExtendedAttributes" type="s:boolean" />\r
+ </s:sequence>\r
+ </s:complexType>\r
+ </s:element>\r
+ <s:element name="VerifySessionResponse">\r
+ <s:complexType>\r
+ <s:sequence>\r
+ <s:element minOccurs="1" maxOccurs="1" name="iwsResponse" nillable="true" type="s0:IwsResponse" />\r
+ </s:sequence>\r
+ </s:complexType>\r
+ </s:element>\r
+ <s:element name="Logout">\r
+ <s:complexType>\r
+ <s:sequence>\r
+ <s:element minOccurs="0" maxOccurs="1" name="ticket" type="s:string" />\r
+ <s:element minOccurs="0" maxOccurs="1" name="userIpAddr" type="s:string" />\r
+ </s:sequence>\r
+ </s:complexType>\r
+ </s:element>\r
+ <s:element name="LogoutResponse">\r
+ <s:complexType>\r
+ <s:sequence>\r
+ <s:element minOccurs="1" maxOccurs="1" name="iwsResponse" nillable="true" type="s0:IwsResponse" />\r
+ </s:sequence>\r
+ </s:complexType>\r
+ </s:element>\r
+ <s:element name="GetSystemInfo">\r
+ <s:complexType />\r
+ </s:element>\r
+ <s:element name="GetSystemInfoResponse">\r
+ <s:complexType>\r
+ <s:sequence>\r
+ <s:element minOccurs="0" maxOccurs="1" name="GetSystemInfoResult" type="s0:ArrayOfIwsAttribute" />\r
+ </s:sequence>\r
+ </s:complexType>\r
+ </s:element>\r
+ <s:complexType name="ArrayOfIwsAttribute">\r
+ <s:sequence>\r
+ <s:element minOccurs="0" maxOccurs="unbounded" name="IwsAttribute" type="s0:IwsAttribute" />\r
+ </s:sequence>\r
+ </s:complexType>\r
+ <s:complexType name="IwsAttribute">\r
+ <s:attribute name="name" type="s:string" />\r
+ <s:attribute name="value" type="s:string" />\r
+ </s:complexType>\r
+ </s:schema>\r
+ </types>\r
+ <message name="StartSessionSoapIn">\r
+ <part name="parameters" element="s0:StartSession" />\r
+ </message>\r
+ <message name="StartSessionSoapOut">\r
+ <part name="parameters" element="s0:StartSessionResponse" />\r
+ </message>\r
+ <message name="StartSessionwsConsumerCredential">\r
+ <part name="wsConsumerCredential" element="s0:wsConsumerCredential" />\r
+ </message>\r
+ <message name="VerifySessionSoapIn">\r
+ <part name="parameters" element="s0:VerifySession" />\r
+ </message>\r
+ <message name="VerifySessionSoapOut">\r
+ <part name="parameters" element="s0:VerifySessionResponse" />\r
+ </message>\r
+ <message name="VerifySessionwsConsumerCredential">\r
+ <part name="wsConsumerCredential" element="s0:wsConsumerCredential" />\r
+ </message>\r
+ <message name="LogoutSoapIn">\r
+ <part name="parameters" element="s0:Logout" />\r
+ </message>\r
+ <message name="LogoutSoapOut">\r
+ <part name="parameters" element="s0:LogoutResponse" />\r
+ </message>\r
+ <message name="LogoutwsConsumerCredential">\r
+ <part name="wsConsumerCredential" element="s0:wsConsumerCredential" />\r
+ </message>\r
+ <message name="GetSystemInfoSoapIn">\r
+ <part name="parameters" element="s0:GetSystemInfo" />\r
+ </message>\r
+ <message name="GetSystemInfoSoapOut">\r
+ <part name="parameters" element="s0:GetSystemInfoResponse" />\r
+ </message>\r
+ <message name="GetSystemInfowsConsumerCredential">\r
+ <part name="wsConsumerCredential" element="s0:wsConsumerCredential" />\r
+ </message>\r
+ <portType name="IsisSoap">\r
+ <operation name="StartSession">\r
+ <input message="s0:StartSessionSoapIn" />\r
+ <output message="s0:StartSessionSoapOut" />\r
+ </operation>\r
+ <operation name="VerifySession">\r
+ <input message="s0:VerifySessionSoapIn" />\r
+ <output message="s0:VerifySessionSoapOut" />\r
+ </operation>\r
+ <operation name="Logout">\r
+ <input message="s0:LogoutSoapIn" />\r
+ <output message="s0:LogoutSoapOut" />\r
+ </operation>\r
+ <operation name="GetSystemInfo">\r
+ <input message="s0:GetSystemInfoSoapIn" />\r
+ <output message="s0:GetSystemInfoSoapOut" />\r
+ </operation>\r
+ </portType>\r
+ <portType name="IsisHttpGet" />\r
+ <portType name="IsisHttpPost" />\r
+ <binding name="IsisSoap" type="s0:IsisSoap">\r
+ <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />\r
+ <operation name="StartSession">\r
+ <soap:operation soapAction="http://isis.ais.ucla.edu/ws/StartSession" style="document" />\r
+ <input>\r
+ <soap:body use="literal" />\r
+ <soap:header d5p1:required="true" message="s0:StartSessionwsConsumerCredential" part="wsConsumerCredential" use="literal" xmlns:d5p1="http://schemas.xmlsoap.org/wsdl/" />\r
+ </input>\r
+ <output>\r
+ <soap:body use="literal" />\r
+ </output>\r
+ </operation>\r
+ <operation name="VerifySession">\r
+ <soap:operation soapAction="http://isis.ais.ucla.edu/ws/VerifySession" style="document" />\r
+ <input>\r
+ <soap:body use="literal" />\r
+ <soap:header d5p1:required="true" message="s0:VerifySessionwsConsumerCredential" part="wsConsumerCredential" use="literal" xmlns:d5p1="http://schemas.xmlsoap.org/wsdl/" />\r
+ </input>\r
+ <output>\r
+ <soap:body use="literal" />\r
+ </output>\r
+ </operation>\r
+ <operation name="Logout">\r
+ <soap:operation soapAction="http://isis.ais.ucla.edu/ws/Logout" style="document" />\r
+ <input>\r
+ <soap:body use="literal" />\r
+ <soap:header d5p1:required="true" message="s0:LogoutwsConsumerCredential" part="wsConsumerCredential" use="literal" xmlns:d5p1="http://schemas.xmlsoap.org/wsdl/" />\r
+ </input>\r
+ <output>\r
+ <soap:body use="literal" />\r
+ </output>\r
+ </operation>\r
+ <operation name="GetSystemInfo">\r
+ <soap:operation soapAction="http://isis.ais.ucla.edu/ws/GetSystemInfo" style="document" />\r
+ <input>\r
+ <soap:body use="literal" />\r
+ <soap:header d5p1:required="true" message="s0:GetSystemInfowsConsumerCredential" part="wsConsumerCredential" use="literal" xmlns:d5p1="http://schemas.xmlsoap.org/wsdl/" />\r
+ </input>\r
+ <output>\r
+ <soap:body use="literal" />\r
+ </output>\r
+ </operation>\r
+ </binding>\r
+ <binding name="IsisHttpGet" type="s0:IsisHttpGet">\r
+ <http:binding verb="GET" />\r
+ </binding>\r
+ <binding name="IsisHttpPost" type="s0:IsisHttpPost">\r
+ <http:binding verb="POST" />\r
+ </binding>\r
+ <service name="Isis">\r
+ <port name="IsisSoap" binding="s0:IsisSoap">\r
+ <soap:address location="http://isisdev1.tig.ucla.edu/iws/v4.asmx" />\r
+ </port>\r
+ <port name="IsisHttpGet" binding="s0:IsisHttpGet">\r
+ <http:address location="http://isisdev1.tig.ucla.edu/iws/v4.asmx" />\r
+ </port>\r
+ <port name="IsisHttpPost" binding="s0:IsisHttpPost">\r
+ <http:address location="http://isisdev1.tig.ucla.edu/iws/v4.asmx" />\r
+ </port>\r
+ </service>\r
+</definitions>
\ No newline at end of file