sekken 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (176) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +13 -0
  3. data/.travis.yml +11 -0
  4. data/.yardopts +6 -0
  5. data/CONTRIBUTING.md +46 -0
  6. data/Gemfile +27 -0
  7. data/MIT-LICENSE +20 -0
  8. data/README.md +28 -0
  9. data/Rakefile +21 -0
  10. data/donate.png +0 -0
  11. data/lib/sekken.rb +75 -0
  12. data/lib/sekken/envelope.rb +92 -0
  13. data/lib/sekken/errors.rb +9 -0
  14. data/lib/sekken/example_message.rb +41 -0
  15. data/lib/sekken/httpclient.rb +35 -0
  16. data/lib/sekken/importer.rb +77 -0
  17. data/lib/sekken/message.rb +135 -0
  18. data/lib/sekken/operation.rb +100 -0
  19. data/lib/sekken/resolver.rb +20 -0
  20. data/lib/sekken/response.rb +50 -0
  21. data/lib/sekken/version.rb +5 -0
  22. data/lib/sekken/wsdl.rb +86 -0
  23. data/lib/sekken/wsdl/binding.rb +64 -0
  24. data/lib/sekken/wsdl/binding_operation.rb +85 -0
  25. data/lib/sekken/wsdl/document.rb +83 -0
  26. data/lib/sekken/wsdl/document_collection.rb +61 -0
  27. data/lib/sekken/wsdl/input_output.rb +84 -0
  28. data/lib/sekken/wsdl/message.rb +38 -0
  29. data/lib/sekken/wsdl/operation.rb +47 -0
  30. data/lib/sekken/wsdl/port.rb +29 -0
  31. data/lib/sekken/wsdl/port_type.rb +38 -0
  32. data/lib/sekken/wsdl/port_type_operation.rb +42 -0
  33. data/lib/sekken/wsdl/service.rb +55 -0
  34. data/lib/sekken/xml/attribute.rb +13 -0
  35. data/lib/sekken/xml/element.rb +82 -0
  36. data/lib/sekken/xml/element_builder.rb +220 -0
  37. data/lib/sekken/xs/schema.rb +57 -0
  38. data/lib/sekken/xs/schema_collection.rb +49 -0
  39. data/lib/sekken/xs/types.rb +272 -0
  40. data/sekken.gemspec +42 -0
  41. data/spec/fixtures/response/another_soap_fault.xml +14 -0
  42. data/spec/fixtures/response/authentication.xml +14 -0
  43. data/spec/fixtures/response/header.xml +13 -0
  44. data/spec/fixtures/response/list.xml +18 -0
  45. data/spec/fixtures/response/multi_ref.xml +39 -0
  46. data/spec/fixtures/response/soap_fault.xml +8 -0
  47. data/spec/fixtures/response/soap_fault12.xml +18 -0
  48. data/spec/fixtures/response/taxcloud.xml +1 -0
  49. data/spec/fixtures/wsdl/amazon.wsdl +1920 -0
  50. data/spec/fixtures/wsdl/arrays_with_attributes.wsdl +117 -0
  51. data/spec/fixtures/wsdl/authentication.wsdl +63 -0
  52. data/spec/fixtures/wsdl/awse.wsdl +1510 -0
  53. data/spec/fixtures/wsdl/betfair.wsdl +2981 -0
  54. data/spec/fixtures/wsdl/blz_service.wsdl +88 -0
  55. data/spec/fixtures/wsdl/bookt/bookt.wsdl +11 -0
  56. data/spec/fixtures/wsdl/bookt/bookt0.xsd +433 -0
  57. data/spec/fixtures/wsdl/bookt/bookt1.xsd +42 -0
  58. data/spec/fixtures/wsdl/bookt/bookt10.xsd +38 -0
  59. data/spec/fixtures/wsdl/bookt/bookt11.xsd +17 -0
  60. data/spec/fixtures/wsdl/bookt/bookt12.xsd +18 -0
  61. data/spec/fixtures/wsdl/bookt/bookt13.xsd +22 -0
  62. data/spec/fixtures/wsdl/bookt/bookt14.xsd +27 -0
  63. data/spec/fixtures/wsdl/bookt/bookt15.xsd +28 -0
  64. data/spec/fixtures/wsdl/bookt/bookt2.wsdl +243 -0
  65. data/spec/fixtures/wsdl/bookt/bookt2.xsd +81 -0
  66. data/spec/fixtures/wsdl/bookt/bookt3.wsdl +286 -0
  67. data/spec/fixtures/wsdl/bookt/bookt3.xsd +61 -0
  68. data/spec/fixtures/wsdl/bookt/bookt4.xsd +35 -0
  69. data/spec/fixtures/wsdl/bookt/bookt5.xsd +22 -0
  70. data/spec/fixtures/wsdl/bookt/bookt6.xsd +26 -0
  71. data/spec/fixtures/wsdl/bookt/bookt7.xsd +18 -0
  72. data/spec/fixtures/wsdl/bookt/bookt8.xsd +22 -0
  73. data/spec/fixtures/wsdl/bookt/bookt9.xsd +29 -0
  74. data/spec/fixtures/wsdl/bronto.wsdl +3285 -0
  75. data/spec/fixtures/wsdl/bydexchange/bydexchange.wsdl +104 -0
  76. data/spec/fixtures/wsdl/bydexchange/bydexchange0.xsd +1 -0
  77. data/spec/fixtures/wsdl/bydexchange/bydexchange1.xsd +1 -0
  78. data/spec/fixtures/wsdl/bydexchange/bydexchange2.wsdl +119 -0
  79. data/spec/fixtures/wsdl/bydexchange/bydexchange2.xsd +1 -0
  80. data/spec/fixtures/wsdl/bydexchange/bydexchange3.xsd +1 -0
  81. data/spec/fixtures/wsdl/bydexchange/bydexchange4.xsd +1 -0
  82. data/spec/fixtures/wsdl/bydexchange/bydexchange5.xsd +1 -0
  83. data/spec/fixtures/wsdl/bydexchange/bydexchange6.xsd +1 -0
  84. data/spec/fixtures/wsdl/bydexchange/bydexchange7.xsd +1 -0
  85. data/spec/fixtures/wsdl/bydexchange/bydexchange8.xsd +1 -0
  86. data/spec/fixtures/wsdl/crowd.wsdl +2437 -0
  87. data/spec/fixtures/wsdl/data_exchange.wsdl +98 -0
  88. data/spec/fixtures/wsdl/document_literal_wrapped.wsdl +153 -0
  89. data/spec/fixtures/wsdl/economic.wsdl +65660 -0
  90. data/spec/fixtures/wsdl/edialog.wsdl +13148 -0
  91. data/spec/fixtures/wsdl/email_verification.wsdl +394 -0
  92. data/spec/fixtures/wsdl/equifax.wsdl +794 -0
  93. data/spec/fixtures/wsdl/geotrust.wsdl +156 -0
  94. data/spec/fixtures/wsdl/interhome.wsdl +2137 -0
  95. data/spec/fixtures/wsdl/iws.wsdl +695 -0
  96. data/spec/fixtures/wsdl/jetairways.wsdl +156 -0
  97. data/spec/fixtures/wsdl/jira.wsdl +3890 -0
  98. data/spec/fixtures/wsdl/juniper.wsdl +215 -0
  99. data/spec/fixtures/wsdl/namespaced_actions.wsdl +307 -0
  100. data/spec/fixtures/wsdl/oracle.wsdl +3629 -0
  101. data/spec/fixtures/wsdl/ratp.wsdl +955 -0
  102. data/spec/fixtures/wsdl/rio2/rio2.wsdl +74 -0
  103. data/spec/fixtures/wsdl/rio2/rio2_0.wsdl +55 -0
  104. data/spec/fixtures/wsdl/rio2/rio2_0.xsd +58 -0
  105. data/spec/fixtures/wsdl/rio2/rio2_1.xsd +41 -0
  106. data/spec/fixtures/wsdl/rio2/rio2_2.xsd +222 -0
  107. data/spec/fixtures/wsdl/rio2/rio2_3.xsd +10 -0
  108. data/spec/fixtures/wsdl/rpc_literal.wsdl +105 -0
  109. data/spec/fixtures/wsdl/spyne.wsdl +70 -0
  110. data/spec/fixtures/wsdl/stockquote.wsdl +124 -0
  111. data/spec/fixtures/wsdl/taxcloud.wsdl +934 -0
  112. data/spec/fixtures/wsdl/team_software/team_software.wsdl +542 -0
  113. data/spec/fixtures/wsdl/team_software/team_software0.xsd +448 -0
  114. data/spec/fixtures/wsdl/team_software/team_software1.xsd +41 -0
  115. data/spec/fixtures/wsdl/team_software/team_software2.xsd +258 -0
  116. data/spec/fixtures/wsdl/team_software/team_software3.xsd +14 -0
  117. data/spec/fixtures/wsdl/telefonkatalogen.wsdl +45 -0
  118. data/spec/fixtures/wsdl/temperature.wsdl +136 -0
  119. data/spec/fixtures/wsdl/wasmuth/wasmuth.wsdl +157 -0
  120. data/spec/fixtures/wsdl/wasmuth/wasmuth1.xsd +210 -0
  121. data/spec/fixtures/wsdl/wasmuth/wasmuth2.xsd +549 -0
  122. data/spec/fixtures/wsdl/xignite.wsdl +3470 -0
  123. data/spec/fixtures/wsdl/yahoo.wsdl +2425 -0
  124. data/spec/fixtures/wsdl/zanox_export_service.xml +520 -0
  125. data/spec/integration/amazon_spec.rb +51 -0
  126. data/spec/integration/authentication_spec.rb +38 -0
  127. data/spec/integration/awse_spec.rb +95 -0
  128. data/spec/integration/betfair_spec.rb +179 -0
  129. data/spec/integration/blz_service_spec.rb +46 -0
  130. data/spec/integration/bookt_spec.rb +59 -0
  131. data/spec/integration/bronto_spec.rb +178 -0
  132. data/spec/integration/bydexchange_spec.rb +40 -0
  133. data/spec/integration/crowd_spec.rb +44 -0
  134. data/spec/integration/data_exchange_spec.rb +27 -0
  135. data/spec/integration/document_literal_spec.rb +104 -0
  136. data/spec/integration/economic_spec.rb +64 -0
  137. data/spec/integration/email_verification_spec.rb +82 -0
  138. data/spec/integration/equifax_spec.rb +216 -0
  139. data/spec/integration/geotrust_spec.rb +17 -0
  140. data/spec/integration/interhome_spec.rb +156 -0
  141. data/spec/integration/iws_spec.rb +27 -0
  142. data/spec/integration/jetairways_spec.rb +142 -0
  143. data/spec/integration/jira_spec.rb +27 -0
  144. data/spec/integration/juniper_spec.rb +20 -0
  145. data/spec/integration/namespaced_actions_spec.rb +37 -0
  146. data/spec/integration/oracle_spec.rb +61 -0
  147. data/spec/integration/ratp_spec.rb +178 -0
  148. data/spec/integration/rio2_spec.rb +56 -0
  149. data/spec/integration/rpc_literal_spec.rb +101 -0
  150. data/spec/integration/spyne_spec.rb +60 -0
  151. data/spec/integration/stockquote_spec.rb +46 -0
  152. data/spec/integration/taxcloud_spec.rb +45 -0
  153. data/spec/integration/team_software_spec.rb +51 -0
  154. data/spec/integration/telefonkatalogen_spec.rb +42 -0
  155. data/spec/integration/temperature_spec.rb +71 -0
  156. data/spec/integration/wasmuth_spec.rb +47 -0
  157. data/spec/integration/xignite_spec.rb +112 -0
  158. data/spec/integration/yahoo_spec.rb +116 -0
  159. data/spec/sekken/httpclient_spec.rb +41 -0
  160. data/spec/sekken/operation/build_spec.rb +308 -0
  161. data/spec/sekken/operation/document_literal_spec.rb +53 -0
  162. data/spec/sekken/operation/example_body_spec.rb +95 -0
  163. data/spec/sekken/operation/rpc_literal_spec.rb +50 -0
  164. data/spec/sekken/operation_spec.rb +169 -0
  165. data/spec/sekken/resolver_spec.rb +38 -0
  166. data/spec/sekken/response_spec.rb +17 -0
  167. data/spec/sekken/wsdl/document_spec.rb +191 -0
  168. data/spec/sekken/wsdl_spec.rb +46 -0
  169. data/spec/sekken/xs/complex_type_spec.rb +197 -0
  170. data/spec/sekken/xs/element_spec.rb +82 -0
  171. data/spec/sekken/xs/simple_type_spec.rb +39 -0
  172. data/spec/sekken_spec.rb +128 -0
  173. data/spec/spec_helper.rb +37 -0
  174. data/spec/support/fixture.rb +19 -0
  175. data/spec/support/http_mock.rb +43 -0
  176. metadata +344 -0
@@ -0,0 +1,215 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <definitions name="SystemService" targetNamespace="http://juniper.net/webproxy/systemservice" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:ns="http://schemas.xmlsoap.org/soap/encoding/" xmlns:impl="http://juniper.net/webproxy/systemservice" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:core="http://juniper.net/core" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
3
+ <types>
4
+ <xs:schema elementFormDefault="qualified" targetNamespace="http://juniper.net/webproxy/systemservice" version="1.0" xmlns="http://juniper.net/webproxy/systemservice" xmlns:core="http://juniper.net/core" xmlns:impl="http://juniper.net/webproxy/systemservice">
5
+ <xs:import namespace="http://juniper.net/core" schemaLocation="SystemService?xsd=xsd0.xsd"/>
6
+ <xs:simpleType name="LoginStatusCodeType">
7
+ <xs:restriction base="xs:token">
8
+ <xs:enumeration value="Success"/>
9
+ <xs:enumeration value="Failure"/>
10
+ <xs:enumeration value="Challenge"/>
11
+ </xs:restriction>
12
+ </xs:simpleType>
13
+ <xs:complexType name="LoginStatus">
14
+ <xs:sequence>
15
+ <xs:element name="status" type="impl:LoginStatusCodeType"/>
16
+ <xs:element minOccurs="0" name="challenge" type="xs:string"/>
17
+ </xs:sequence>
18
+ </xs:complexType>
19
+ <xs:element name="LoginRequest">
20
+ <xs:annotation>
21
+ <xs:documentation>Login into the system
22
+
23
+ domainName: the domain to login
24
+ userName: the user name
25
+ password: the password
26
+ </xs:documentation>
27
+ </xs:annotation>
28
+ <xs:complexType>
29
+ <xs:complexContent>
30
+ <xs:extension base="core:SimpleRequestType">
31
+ <xs:sequence>
32
+ <xs:element name="domainName" type="xs:string"/>
33
+ <xs:element name="userName" type="xs:string"/>
34
+ <xs:element name="password" type="xs:string"/>
35
+ </xs:sequence>
36
+ </xs:extension>
37
+ </xs:complexContent>
38
+ </xs:complexType>
39
+ </xs:element>
40
+ <xs:complexType name="LoginResponseType">
41
+ <xs:annotation>
42
+ <xs:documentation>The response of the login request
43
+
44
+ loginStatus: if the status is Success, a valid token is returned for requests followed, if the status is Challenge, the response to the challenge shall be sent
45
+ authToken: the token used by the further requests
46
+ </xs:documentation>
47
+ </xs:annotation>
48
+ <xs:complexContent>
49
+ <xs:extension base="core:SimpleResponseType">
50
+ <xs:sequence>
51
+ <xs:element name="loginStatus" type="impl:LoginStatus"/>
52
+ <xs:element minOccurs="0" name="authToken" type="core:AuthTokenType"/>
53
+ </xs:sequence>
54
+ </xs:extension>
55
+ </xs:complexContent>
56
+ </xs:complexType>
57
+ <xs:element name="LoginResponse" type="impl:LoginResponseType"/>
58
+ <xs:element name="RespondToChallengeRequest">
59
+ <xs:annotation>
60
+ <xs:documentation>Send the response to the challenge
61
+ </xs:documentation>
62
+ </xs:annotation>
63
+ <xs:complexType>
64
+ <xs:complexContent>
65
+ <xs:extension base="core:SimpleRequestType">
66
+ <xs:sequence>
67
+ <xs:element name="challengeResponse" type="xs:string"/>
68
+ </xs:sequence>
69
+ </xs:extension>
70
+ </xs:complexContent>
71
+ </xs:complexType>
72
+ </xs:element>
73
+ <xs:element name="RespondToChallengeResponse" type="impl:LoginResponseType"/>
74
+ <xs:element name="LogoutRequest">
75
+ <xs:complexType>
76
+ <xs:complexContent>
77
+ <xs:extension base="core:SimpleRequestType"/>
78
+ </xs:complexContent>
79
+ </xs:complexType>
80
+ </xs:element>
81
+ <xs:complexType name="ServiceDescType">
82
+ <xs:sequence>
83
+ <xs:element name="name" type="xs:string"/>
84
+ <xs:element name="version" type="xs:string"/>
85
+ <xs:element name="definition" type="xs:string"/>
86
+ </xs:sequence>
87
+ </xs:complexType>
88
+ <xs:element name="GetSystemInfoRequest">
89
+ <xs:complexType>
90
+ <xs:annotation>
91
+ <xs:documentation>Get the system informations: the service description and all the accessible domain ids and names. If no service name is specified, return the service description of all services
92
+ </xs:documentation>
93
+ </xs:annotation>
94
+ <xs:complexContent>
95
+ <xs:extension base="core:SimpleRequestType">
96
+ <xs:sequence>
97
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="serviceName" type="xs:string"/>
98
+ </xs:sequence>
99
+ </xs:extension>
100
+ </xs:complexContent>
101
+ </xs:complexType>
102
+ </xs:element>
103
+ <xs:element name="GetSystemInfoResponse">
104
+ <xs:complexType>
105
+ <xs:annotation>
106
+ <xs:documentation>Return the service list and all the accessible domain ids and names
107
+ </xs:documentation>
108
+ </xs:annotation>
109
+ <xs:complexContent>
110
+ <xs:extension base="core:SimpleResponseType">
111
+ <xs:sequence>
112
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="serviceDesc" type="impl:ServiceDescType"/>
113
+ <xs:element maxOccurs="unbounded" name="domainName" type="xs:string"/>
114
+ <xs:element maxOccurs="unbounded" name="domainId" type="xs:unsignedInt"/>
115
+ </xs:sequence>
116
+ </xs:extension>
117
+ </xs:complexContent>
118
+ </xs:complexType>
119
+ </xs:element>
120
+ </xs:schema>
121
+ </types>
122
+ <message name="LoginRequest">
123
+ <part name="LoginRequest" element="impl:LoginRequest">
124
+ </part>
125
+ </message>
126
+ <message name="RespondToChallengeRequest">
127
+ <part name="RespondToChallengeRequest" element="impl:RespondToChallengeRequest">
128
+ </part>
129
+ </message>
130
+ <message name="LoginResponse">
131
+ <part name="LoginRequest" element="impl:LoginResponse">
132
+ </part>
133
+ </message>
134
+ <message name="LogoutRequest">
135
+ <part name="LogoutRequest" element="impl:LogoutRequest">
136
+ </part>
137
+ </message>
138
+ <message name="RespondToChallengeResponse">
139
+ <part name="RespondToChallengeResponse" element="impl:RespondToChallengeResponse">
140
+ </part>
141
+ </message>
142
+ <message name="GetSystemInfoResponse">
143
+ <part name="GetSystemInfoResponse" element="impl:GetSystemInfoResponse">
144
+ </part>
145
+ </message>
146
+ <message name="GetSystemInfoRequest">
147
+ <part name="GetSystemInfoRequest" element="impl:GetSystemInfoRequest">
148
+ </part>
149
+ </message>
150
+ <portType name="SystemPortType">
151
+ <operation name="LoginRequest">
152
+ <input message="impl:LoginRequest">
153
+ </input>
154
+ <output message="impl:LoginResponse">
155
+ </output>
156
+ </operation>
157
+ <operation name="RespondToChallengeRequest">
158
+ <input message="impl:RespondToChallengeRequest">
159
+ </input>
160
+ <output message="impl:RespondToChallengeResponse">
161
+ </output>
162
+ </operation>
163
+ <operation name="LogoutRequest">
164
+ <input message="impl:LogoutRequest">
165
+ </input>
166
+ </operation>
167
+ <operation name="GetSystemInfoRequest">
168
+ <input message="impl:GetSystemInfoRequest">
169
+ </input>
170
+ <output message="impl:GetSystemInfoResponse">
171
+ </output>
172
+ </operation>
173
+ </portType>
174
+ <binding name="SystemSoapBinding" type="impl:SystemPortType">
175
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
176
+ <operation name="LoginRequest">
177
+ <soap:operation soapAction="urn:#LoginRequest"/>
178
+ <input>
179
+ <soap:body use="literal"/>
180
+ </input>
181
+ <output>
182
+ <soap:body use="literal"/>
183
+ </output>
184
+ </operation>
185
+ <operation name="RespondToChallengeRequest">
186
+ <soap:operation soapAction="urn:#RespondToChallengeRequest"/>
187
+ <input>
188
+ <soap:body use="literal"/>
189
+ </input>
190
+ <output>
191
+ <soap:body use="literal"/>
192
+ </output>
193
+ </operation>
194
+ <operation name="LogoutRequest">
195
+ <soap:operation soapAction="urn:#LogoutRequest"/>
196
+ <input>
197
+ <soap:body use="literal"/>
198
+ </input>
199
+ </operation>
200
+ <operation name="GetSystemInfoRequest">
201
+ <soap:operation soapAction="urn:#GetSystemInfoRequest"/>
202
+ <input>
203
+ <soap:body use="literal"/>
204
+ </input>
205
+ <output>
206
+ <soap:body use="literal"/>
207
+ </output>
208
+ </operation>
209
+ </binding>
210
+ <service name="SystemService">
211
+ <port name="System" binding="impl:SystemSoapBinding">
212
+ <soap:address location="https://10.1.1.1:8443/axis2/services/SystemService"/>
213
+ </port>
214
+ </service>
215
+ </definitions>
@@ -0,0 +1,307 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://api.example.com/api/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://api.example.com/api/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
3
+ <wsdl:types>
4
+ <s:schema elementFormDefault="qualified" targetNamespace="http://api.example.com/api/">
5
+ <s:element name="User.GetApiKey">
6
+ <s:complexType>
7
+ <s:sequence>
8
+ <s:element minOccurs="0" maxOccurs="1" name="SiteUrl" type="s:string"/>
9
+ <s:element minOccurs="0" maxOccurs="1" name="Username" type="s:string"/>
10
+ <s:element minOccurs="0" maxOccurs="1" name="Password" type="s:string"/>
11
+ </s:sequence>
12
+ </s:complexType>
13
+ </s:element>
14
+ <s:element name="User.GetApiKeyResponse">
15
+ <s:complexType>
16
+ <s:sequence>
17
+ <s:element minOccurs="0" maxOccurs="1" name="User.GetApiKeyResult"/>
18
+ </s:sequence>
19
+ </s:complexType>
20
+ </s:element>
21
+ <s:complexType name="Result">
22
+ <s:sequence>
23
+ <s:element minOccurs="1" maxOccurs="1" name="Code" type="s:int"/>
24
+ <s:element minOccurs="0" maxOccurs="1" name="Message" type="s:string"/>
25
+ </s:sequence>
26
+ </s:complexType>
27
+ <s:complexType name="Client">
28
+ <s:sequence>
29
+ <s:element minOccurs="0" maxOccurs="1" name="ClientID" type="s:string"/>
30
+ <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string"/>
31
+ </s:sequence>
32
+ </s:complexType>
33
+ <s:complexType name="ArrayOfClient">
34
+ <s:sequence>
35
+ <s:element minOccurs="0" maxOccurs="unbounded" name="Client" nillable="true" type="tns:Client"/>
36
+ </s:sequence>
37
+ </s:complexType>
38
+ <s:element name="Client.Delete">
39
+ <s:complexType>
40
+ <s:sequence>
41
+ <s:element minOccurs="0" maxOccurs="1" name="ApiKey" type="s:string"/>
42
+ <s:element minOccurs="0" maxOccurs="1" name="ClientID" type="s:string"/>
43
+ </s:sequence>
44
+ </s:complexType>
45
+ </s:element>
46
+ <s:element name="Client.DeleteResponse">
47
+ <s:complexType>
48
+ <s:sequence>
49
+ <s:element minOccurs="0" maxOccurs="1" name="Client.DeleteResult" type="tns:Result"/>
50
+ </s:sequence>
51
+ </s:complexType>
52
+ </s:element>
53
+ <s:element name="User.GetClients">
54
+ <s:complexType>
55
+ <s:sequence>
56
+ <s:element minOccurs="0" maxOccurs="1" name="ApiKey" type="s:string"/>
57
+ </s:sequence>
58
+ </s:complexType>
59
+ </s:element>
60
+ <s:element name="User.GetClientsResponse">
61
+ <s:complexType>
62
+ <s:sequence>
63
+ <s:element minOccurs="0" maxOccurs="1" name="User.GetClientsResult"/>
64
+ </s:sequence>
65
+ </s:complexType>
66
+ </s:element>
67
+ <s:element name="anyType" nillable="true"/>
68
+ <s:element name="Result" nillable="true" type="tns:Result"/>
69
+ </s:schema>
70
+ </wsdl:types>
71
+ <wsdl:message name="User.GetApiKeySoapIn">
72
+ <wsdl:part name="parameters" element="tns:User.GetApiKey"/>
73
+ </wsdl:message>
74
+ <wsdl:message name="User.GetApiKeySoapOut">
75
+ <wsdl:part name="parameters" element="tns:User.GetApiKeyResponse"/>
76
+ </wsdl:message>
77
+ <wsdl:message name="Client.DeleteSoapIn">
78
+ <wsdl:part name="parameters" element="tns:Client.Delete"/>
79
+ </wsdl:message>
80
+ <wsdl:message name="Client.DeleteSoapOut">
81
+ <wsdl:part name="parameters" element="tns:Client.DeleteResponse"/>
82
+ </wsdl:message>
83
+ <wsdl:message name="User.GetClientsSoapIn">
84
+ <wsdl:part name="parameters" element="tns:User.GetClients"/>
85
+ </wsdl:message>
86
+ <wsdl:message name="User.GetClientsSoapOut">
87
+ <wsdl:part name="parameters" element="tns:User.GetClientsResponse"/>
88
+ </wsdl:message>
89
+ <wsdl:message name="User.GetApiKeyHttpGetIn">
90
+ <wsdl:part name="SiteUrl" type="s:string"/>
91
+ <wsdl:part name="Username" type="s:string"/>
92
+ <wsdl:part name="Password" type="s:string"/>
93
+ </wsdl:message>
94
+ <wsdl:message name="User.GetApiKeyHttpGetOut">
95
+ <wsdl:part name="Body" element="tns:anyType"/>
96
+ </wsdl:message>
97
+ <wsdl:message name="Client.DeleteHttpGetIn">
98
+ <wsdl:part name="ApiKey" type="s:string"/>
99
+ <wsdl:part name="ClientID" type="s:string"/>
100
+ </wsdl:message>
101
+ <wsdl:message name="Client.DeleteHttpGetOut">
102
+ <wsdl:part name="Body" element="tns:Result"/>
103
+ </wsdl:message>
104
+ <wsdl:message name="User.GetClientsHttpGetIn">
105
+ <wsdl:part name="ApiKey" type="s:string"/>
106
+ </wsdl:message>
107
+ <wsdl:message name="User.GetClientsHttpGetOut">
108
+ <wsdl:part name="Body" element="tns:anyType"/>
109
+ </wsdl:message>
110
+ <wsdl:message name="User.GetApiKeyHttpPostIn">
111
+ <wsdl:part name="SiteUrl" type="s:string"/>
112
+ <wsdl:part name="Username" type="s:string"/>
113
+ <wsdl:part name="Password" type="s:string"/>
114
+ </wsdl:message>
115
+ <wsdl:message name="User.GetApiKeyHttpPostOut">
116
+ <wsdl:part name="Body" element="tns:anyType"/>
117
+ </wsdl:message>
118
+ <wsdl:message name="Client.DeleteHttpPostIn">
119
+ <wsdl:part name="ApiKey" type="s:string"/>
120
+ <wsdl:part name="ClientID" type="s:string"/>
121
+ </wsdl:message>
122
+ <wsdl:message name="Client.DeleteHttpPostOut">
123
+ <wsdl:part name="Body" element="tns:Result"/>
124
+ </wsdl:message>
125
+ <wsdl:message name="User.GetClientsHttpPostIn">
126
+ <wsdl:part name="ApiKey" type="s:string"/>
127
+ </wsdl:message>
128
+ <wsdl:message name="User.GetClientsHttpPostOut">
129
+ <wsdl:part name="Body" element="tns:anyType"/>
130
+ </wsdl:message>
131
+ <wsdl:portType name="apiSoap">
132
+ <wsdl:operation name="GetApiKey">
133
+ <wsdl:input name="User.GetApiKey" message="tns:User.GetApiKeySoapIn"/>
134
+ <wsdl:output name="User.GetApiKey" message="tns:User.GetApiKeySoapOut"/>
135
+ </wsdl:operation>
136
+ <wsdl:operation name="DeleteClient">
137
+ <wsdl:input name="Client.Delete" message="tns:Client.DeleteSoapIn"/>
138
+ <wsdl:output name="Client.Delete" message="tns:Client.DeleteSoapOut"/>
139
+ </wsdl:operation>
140
+ <wsdl:operation name="GetClients">
141
+ <wsdl:input name="User.GetClients" message="tns:User.GetClientsSoapIn"/>
142
+ <wsdl:output name="User.GetClients" message="tns:User.GetClientsSoapOut"/>
143
+ </wsdl:operation>
144
+ </wsdl:portType>
145
+ <wsdl:portType name="apiHttpGet">
146
+ <wsdl:operation name="GetApiKey">
147
+ <wsdl:input name="User.GetApiKey" message="tns:User.GetApiKeyHttpGetIn"/>
148
+ <wsdl:output name="User.GetApiKey" message="tns:User.GetApiKeyHttpGetOut"/>
149
+ </wsdl:operation>
150
+ <wsdl:operation name="DeleteClient">
151
+ <wsdl:input name="Client.Delete" message="tns:Client.DeleteHttpGetIn"/>
152
+ <wsdl:output name="Client.Delete" message="tns:Client.DeleteHttpGetOut"/>
153
+ </wsdl:operation>
154
+ <wsdl:operation name="GetClients">
155
+ <wsdl:input name="User.GetClients" message="tns:User.GetClientsHttpGetIn"/>
156
+ <wsdl:output name="User.GetClients" message="tns:User.GetClientsHttpGetOut"/>
157
+ </wsdl:operation>
158
+ </wsdl:portType>
159
+ <wsdl:portType name="apiHttpPost">
160
+ <wsdl:operation name="GetApiKey">
161
+ <wsdl:input name="User.GetApiKey" message="tns:User.GetApiKeyHttpPostIn"/>
162
+ <wsdl:output name="User.GetApiKey" message="tns:User.GetApiKeyHttpPostOut"/>
163
+ </wsdl:operation>
164
+ <wsdl:operation name="DeleteClient">
165
+ <wsdl:input name="Client.Delete" message="tns:Client.DeleteHttpPostIn"/>
166
+ <wsdl:output name="Client.Delete" message="tns:Client.DeleteHttpPostOut"/>
167
+ </wsdl:operation>
168
+ <wsdl:operation name="GetClients">
169
+ <wsdl:input name="User.GetClients" message="tns:User.GetClientsHttpPostIn"/>
170
+ <wsdl:output name="User.GetClients" message="tns:User.GetClientsHttpPostOut"/>
171
+ </wsdl:operation>
172
+ </wsdl:portType>
173
+ <wsdl:binding name="apiSoap" type="tns:apiSoap">
174
+ <soap:binding transport="http://schemas.xmlsoap.org/soap/http"/>
175
+ <wsdl:operation name="GetApiKey">
176
+ <soap:operation soapAction="http://api.example.com/api/User.GetApiKey" style="document"/>
177
+ <wsdl:input name="User.GetApiKey">
178
+ <soap:body use="literal"/>
179
+ </wsdl:input>
180
+ <wsdl:output name="User.GetApiKey">
181
+ <soap:body use="literal"/>
182
+ </wsdl:output>
183
+ </wsdl:operation>
184
+ <wsdl:operation name="DeleteClient">
185
+ <soap:operation soapAction="http://api.example.com/api/Client.Delete" style="document"/>
186
+ <wsdl:input name="Client.Delete">
187
+ <soap:body use="literal"/>
188
+ </wsdl:input>
189
+ <wsdl:output name="Client.Delete">
190
+ <soap:body use="literal"/>
191
+ </wsdl:output>
192
+ </wsdl:operation>
193
+ <wsdl:operation name="GetClients">
194
+ <soap:operation soapAction="http://api.example.com/api/User.GetClients" style="document"/>
195
+ <wsdl:input name="User.GetClients">
196
+ <soap:body use="literal"/>
197
+ </wsdl:input>
198
+ <wsdl:output name="User.GetClients">
199
+ <soap:body use="literal"/>
200
+ </wsdl:output>
201
+ </wsdl:operation>
202
+ </wsdl:binding>
203
+ <wsdl:binding name="apiSoap12" type="tns:apiSoap">
204
+ <soap12:binding transport="http://schemas.xmlsoap.org/soap/http"/>
205
+ <wsdl:operation name="GetApiKey">
206
+ <soap12:operation soapAction="http://api.example.com/api/User.GetApiKey" style="document"/>
207
+ <wsdl:input name="User.GetApiKey">
208
+ <soap12:body use="literal"/>
209
+ </wsdl:input>
210
+ <wsdl:output name="User.GetApiKey">
211
+ <soap12:body use="literal"/>
212
+ </wsdl:output>
213
+ </wsdl:operation>
214
+ <wsdl:operation name="DeleteClient">
215
+ <soap12:operation soapAction="http://api.example.com/api/Client.Delete" style="document"/>
216
+ <wsdl:input name="Client.Delete">
217
+ <soap12:body use="literal"/>
218
+ </wsdl:input>
219
+ <wsdl:output name="Client.Delete">
220
+ <soap12:body use="literal"/>
221
+ </wsdl:output>
222
+ </wsdl:operation>
223
+ <wsdl:operation name="GetClients">
224
+ <soap12:operation soapAction="http://api.example.com/api/User.GetClients" style="document"/>
225
+ <wsdl:input name="User.GetClients">
226
+ <soap12:body use="literal"/>
227
+ </wsdl:input>
228
+ <wsdl:output name="User.GetClients">
229
+ <soap12:body use="literal"/>
230
+ </wsdl:output>
231
+ </wsdl:operation>
232
+ </wsdl:binding>
233
+ <wsdl:binding name="apiHttpGet" type="tns:apiHttpGet">
234
+ <http:binding verb="GET"/>
235
+ <wsdl:operation name="GetApiKey">
236
+ <http:operation location="/User.GetApiKey"/>
237
+ <wsdl:input name="User.GetApiKey">
238
+ <http:urlEncoded/>
239
+ </wsdl:input>
240
+ <wsdl:output name="User.GetApiKey">
241
+ <mime:mimeXml part="Body"/>
242
+ </wsdl:output>
243
+ </wsdl:operation>
244
+ <wsdl:operation name="DeleteClient">
245
+ <http:operation location="/Client.Delete"/>
246
+ <wsdl:input name="Client.Delete">
247
+ <http:urlEncoded/>
248
+ </wsdl:input>
249
+ <wsdl:output name="Client.Delete">
250
+ <mime:mimeXml part="Body"/>
251
+ </wsdl:output>
252
+ </wsdl:operation>
253
+ <wsdl:operation name="GetClients">
254
+ <http:operation location="/User.GetClients"/>
255
+ <wsdl:input name="User.GetClients">
256
+ <http:urlEncoded/>
257
+ </wsdl:input>
258
+ <wsdl:output name="User.GetClients">
259
+ <mime:mimeXml part="Body"/>
260
+ </wsdl:output>
261
+ </wsdl:operation>
262
+ </wsdl:binding>
263
+ <wsdl:binding name="apiHttpPost" type="tns:apiHttpPost">
264
+ <http:binding verb="POST"/>
265
+ <wsdl:operation name="GetApiKey">
266
+ <http:operation location="/User.GetApiKey"/>
267
+ <wsdl:input name="User.GetApiKey">
268
+ <mime:content type="application/x-www-form-urlencoded"/>
269
+ </wsdl:input>
270
+ <wsdl:output name="User.GetApiKey">
271
+ <mime:mimeXml part="Body"/>
272
+ </wsdl:output>
273
+ </wsdl:operation>
274
+ <wsdl:operation name="DeleteClient">
275
+ <http:operation location="/Client.Delete"/>
276
+ <wsdl:input name="Client.Delete">
277
+ <mime:content type="application/x-www-form-urlencoded"/>
278
+ </wsdl:input>
279
+ <wsdl:output name="Client.Delete">
280
+ <mime:mimeXml part="Body"/>
281
+ </wsdl:output>
282
+ </wsdl:operation>
283
+ <wsdl:operation name="GetClients">
284
+ <http:operation location="/User.GetClients"/>
285
+ <wsdl:input name="User.GetClients">
286
+ <mime:content type="application/x-www-form-urlencoded"/>
287
+ </wsdl:input>
288
+ <wsdl:output name="User.GetClients">
289
+ <mime:mimeXml part="Body"/>
290
+ </wsdl:output>
291
+ </wsdl:operation>
292
+ </wsdl:binding>
293
+ <wsdl:service name="api">
294
+ <wsdl:port name="apiSoap" binding="tns:apiSoap">
295
+ <soap:address location="https://api.example.com/api/api.asmx"/>
296
+ </wsdl:port>
297
+ <wsdl:port name="apiSoap12" binding="tns:apiSoap12">
298
+ <soap12:address location="https://api.example.com/api/api.asmx"/>
299
+ </wsdl:port>
300
+ <wsdl:port name="apiHttpGet" binding="tns:apiHttpGet">
301
+ <http:address location="https://api.example.com/api/api.asmx"/>
302
+ </wsdl:port>
303
+ <wsdl:port name="apiHttpPost" binding="tns:apiHttpPost">
304
+ <http:address location="https://api.example.com/api/api.asmx"/>
305
+ </wsdl:port>
306
+ </wsdl:service>
307
+ </wsdl:definitions>