wasabi-ng-1.6 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +8 -0
  3. data/.rspec +1 -0
  4. data/.travis.yml +9 -0
  5. data/CHANGELOG.md +90 -0
  6. data/Gemfile +6 -0
  7. data/LICENSE +20 -0
  8. data/README.md +60 -0
  9. data/Rakefile +7 -0
  10. data/lib/wasabi.rb +12 -0
  11. data/lib/wasabi/core_ext/string.rb +21 -0
  12. data/lib/wasabi/document.rb +166 -0
  13. data/lib/wasabi/parser.rb +304 -0
  14. data/lib/wasabi/resolver.rb +54 -0
  15. data/lib/wasabi/version.rb +5 -0
  16. data/spec/fixtures/authentication.wsdl +63 -0
  17. data/spec/fixtures/economic.wsdl +65660 -0
  18. data/spec/fixtures/encoded_endpoint.wsdl +52 -0
  19. data/spec/fixtures/geotrust.wsdl +156 -0
  20. data/spec/fixtures/import_port_types.wsdl +86 -0
  21. data/spec/fixtures/inherited.wsdl +46 -0
  22. data/spec/fixtures/juniper.wsdl +215 -0
  23. data/spec/fixtures/lower_camel.wsdl +52 -0
  24. data/spec/fixtures/multiple_namespaces.wsdl +61 -0
  25. data/spec/fixtures/multiple_types.wsdl +60 -0
  26. data/spec/fixtures/namespaced_actions.wsdl +307 -0
  27. data/spec/fixtures/no_message_parts.wsdl +59 -0
  28. data/spec/fixtures/no_namespace.wsdl +115 -0
  29. data/spec/fixtures/savon295.wsdl +52 -0
  30. data/spec/fixtures/soap12.wsdl +11 -0
  31. data/spec/fixtures/symbolic_endpoint.wsdl +190 -0
  32. data/spec/fixtures/two_bindings.wsdl +24 -0
  33. data/spec/spec_helper.rb +19 -0
  34. data/spec/support/fixture.rb +40 -0
  35. data/spec/support/profiling.rb +18 -0
  36. data/spec/wasabi/core_ext/string_spec.rb +37 -0
  37. data/spec/wasabi/document/authentication_spec.rb +23 -0
  38. data/spec/wasabi/document/economic_spec.rb +13 -0
  39. data/spec/wasabi/document/encoded_endpoint_spec.rb +11 -0
  40. data/spec/wasabi/document/geotrust_spec.rb +24 -0
  41. data/spec/wasabi/document/inherited_spec.rb +38 -0
  42. data/spec/wasabi/document/multiple_namespaces_spec.rb +35 -0
  43. data/spec/wasabi/document/namespaced_actions_spec.rb +25 -0
  44. data/spec/wasabi/document/no_namespace_spec.rb +25 -0
  45. data/spec/wasabi/document/savon295_spec.rb +15 -0
  46. data/spec/wasabi/document/soap12_spec.rb +11 -0
  47. data/spec/wasabi/document/two_bindings_spec.rb +21 -0
  48. data/spec/wasabi/document_spec.rb +58 -0
  49. data/spec/wasabi/parser/get_servicename_spec.rb +19 -0
  50. data/spec/wasabi/parser/import_port_types_spec.rb +22 -0
  51. data/spec/wasabi/parser/juniper_spec.rb +23 -0
  52. data/spec/wasabi/parser/multiple_namespaces_spec.rb +40 -0
  53. data/spec/wasabi/parser/no_message_parts_spec.rb +26 -0
  54. data/spec/wasabi/parser/no_namespace_spec.rb +26 -0
  55. data/spec/wasabi/parser/no_target_namespace_spec.rb +36 -0
  56. data/spec/wasabi/parser/symbolic_endpoint_spec.rb +24 -0
  57. data/spec/wasabi/resolver_spec.rb +40 -0
  58. data/spec/wasabi/wasabi_spec.rb +12 -0
  59. data/wasabi.gemspec +27 -0
  60. metadata +159 -0
@@ -0,0 +1,52 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <definitions
3
+ xmlns="http://schemas.xmlsoap.org/wsdl/"
4
+ xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
5
+ xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
6
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
7
+ xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
8
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
9
+ xmlns:s="http://www.w3.org/2001/XMLSchema"
10
+ xmlns:actions="http://example.com/actions"
11
+ targetNamespace="http://example.com/topLevelNamespace">
12
+ <types>
13
+ <s:schema elementFormDefault="qualified" targetNamespace="http://example.com/actions">
14
+ <s:element name="SomeRequest">
15
+ <s:complexType>
16
+ <s:sequence>
17
+ <s:element name="status" type="s:string"/>
18
+ </s:sequence>
19
+ </s:complexType>
20
+ </s:element>
21
+ </s:schema>
22
+ </types>
23
+ <message name="SomeInput">
24
+ <part name="parameters" element="actions:SomeRequest"/>
25
+ </message>
26
+ <message name="SomeOutput">
27
+ <part name="parameters" element="actions:SomeResponse"/>
28
+ </message>
29
+ <portType name="ExamplePortType">
30
+ <operation name="SomeOperation">
31
+ <input message="actions:SomeInput"/>
32
+ <output message="actions:SomeOutput"/>
33
+ </operation>
34
+ </portType>
35
+ <binding name="ExampleBinding" type="actions:ExamplePortType">
36
+ <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
37
+ <operation name="SomeOperation">
38
+ <soap:operation soapAction="http://example.com/actions.SomeOperation" style="document"/>
39
+ <input>
40
+ <soap:body use="literal"/>
41
+ </input>
42
+ <output>
43
+ <soap:body use="literal"/>
44
+ </output>
45
+ </operation>
46
+ </binding>
47
+ <service name="ExampleService">
48
+ <port name="ExamplePort" binding="actions:ExampleBinding">
49
+ <soap:address location="http://localhost/soapservice/execute?path=%2Fbase%2Fincludes%2FTest+Soap%2FReturn+Rows"/>
50
+ </port>
51
+ </service>
52
+ </definitions>
@@ -0,0 +1,156 @@
1
+ <?xml version='1.0' encoding='UTF-8'?>
2
+ <s0:definitions name="queryDefinitions" targetNamespace="http://api.geotrust.com/webtrust/query" xmlns="" xmlns:s0="http://schemas.xmlsoap.org/wsdl/" xmlns:s1="http://api.geotrust.com/webtrust/query" xmlns:s2="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s3="http://www.openuri.org/2006/12/wsdl/upgradedJWS">
3
+ <s0:types>
4
+ <xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://api.geotrust.com/webtrust/query" xmlns:s0="http://schemas.xmlsoap.org/wsdl/" xmlns:s1="http://api.geotrust.com/webtrust/query" xmlns:s2="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s3="http://www.openuri.org/2006/12/wsdl/upgradedJWS" xmlns:xs="http://www.w3.org/2001/XMLSchema">
5
+ <xs:complexType name="GetQuickApproverListInput">
6
+ <xs:sequence>
7
+ <xs:element minOccurs="0" name="QueryRequestHeader" type="quer:queryRequestHeader" xmlns:quer="http://api.geotrust.com/webtrust/query"/>
8
+ <xs:element minOccurs="0" name="Domain" type="xs:string"/>
9
+ <xs:element minOccurs="0" name="IncludeUserAgreement" type="quer:includeUserAgreement" xmlns:quer="http://api.geotrust.com/webtrust/query"/>
10
+ </xs:sequence>
11
+ </xs:complexType>
12
+ <xs:complexType name="queryRequestHeader">
13
+ <xs:sequence>
14
+ <xs:element minOccurs="0" name="PartnerCode" type="xs:string"/>
15
+ <xs:element minOccurs="0" name="AuthToken" type="quer:authToken" xmlns:quer="http://api.geotrust.com/webtrust/query"/>
16
+ <xs:element minOccurs="0" name="ReplayToken" type="xs:string"/>
17
+ <xs:element minOccurs="0" name="UseReplayToken" type="xs:boolean"/>
18
+ </xs:sequence>
19
+ </xs:complexType>
20
+ <xs:complexType name="authToken">
21
+ <xs:sequence>
22
+ <xs:element minOccurs="0" name="UserName" type="xs:string"/>
23
+ <xs:element minOccurs="0" name="Password" type="xs:string"/>
24
+ </xs:sequence>
25
+ </xs:complexType>
26
+ <xs:complexType name="includeUserAgreement">
27
+ <xs:sequence>
28
+ <xs:element minOccurs="0" name="UserAgreementProductCode" type="xs:string"/>
29
+ </xs:sequence>
30
+ </xs:complexType>
31
+ <xs:complexType name="GetUserAgreementInput">
32
+ <xs:sequence>
33
+ <xs:element minOccurs="0" name="QueryRequestHeader" type="quer:queryRequestHeader" xmlns:quer="http://api.geotrust.com/webtrust/query"/>
34
+ <xs:element minOccurs="0" name="UserAgreementProductCode" type="xs:string"/>
35
+ </xs:sequence>
36
+ </xs:complexType>
37
+ <xs:complexType name="GetQuickApproverListOutput">
38
+ <xs:sequence>
39
+ <xs:element minOccurs="0" name="QueryResponseHeader" type="quer:queryResponseHeader" xmlns:quer="http://api.geotrust.com/webtrust/query"/>
40
+ <xs:element minOccurs="0" name="ApproverList" type="quer:ArrayOfApprover" xmlns:quer="http://api.geotrust.com/webtrust/query"/>
41
+ <xs:element minOccurs="0" name="UserAgreement" type="xs:string"/>
42
+ </xs:sequence>
43
+ </xs:complexType>
44
+ <xs:complexType name="queryResponseHeader">
45
+ <xs:sequence>
46
+ <xs:element name="SuccessCode" type="xs:int"/>
47
+ <xs:element minOccurs="0" name="Errors" type="quer:ArrayOfError" xmlns:quer="http://api.geotrust.com/webtrust/query"/>
48
+ <xs:element minOccurs="0" name="Timestamp" type="xs:dateTime"/>
49
+ <xs:element name="ReturnCount" type="xs:int"/>
50
+ </xs:sequence>
51
+ </xs:complexType>
52
+ <xs:complexType name="Error">
53
+ <xs:sequence>
54
+ <xs:element name="ErrorCode" type="xs:int"/>
55
+ <xs:element minOccurs="0" name="ErrorField" type="xs:string"/>
56
+ <xs:element minOccurs="0" name="ErrorMessage" type="xs:string"/>
57
+ </xs:sequence>
58
+ </xs:complexType>
59
+ <xs:complexType name="ArrayOfError">
60
+ <xs:sequence>
61
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="Error" type="quer:Error" xmlns:quer="http://api.geotrust.com/webtrust/query"/>
62
+ </xs:sequence>
63
+ </xs:complexType>
64
+ <xs:element name="ArrayOfError" type="quer:ArrayOfError" xmlns:quer="http://api.geotrust.com/webtrust/query"/>
65
+ <xs:complexType name="Approver">
66
+ <xs:sequence>
67
+ <xs:element minOccurs="0" name="ApproverType" type="xs:string"/>
68
+ <xs:element minOccurs="0" name="ApproverEmail" type="xs:string"/>
69
+ </xs:sequence>
70
+ </xs:complexType>
71
+ <xs:complexType name="ArrayOfApprover">
72
+ <xs:sequence>
73
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="Approver" type="quer:Approver" xmlns:quer="http://api.geotrust.com/webtrust/query"/>
74
+ </xs:sequence>
75
+ </xs:complexType>
76
+ <xs:element name="ArrayOfApprover" type="quer:ArrayOfApprover" xmlns:quer="http://api.geotrust.com/webtrust/query"/>
77
+ <xs:complexType name="ArrayOfString">
78
+ <xs:sequence>
79
+ <xs:element maxOccurs="unbounded" minOccurs="0" name="String" type="xs:string"/>
80
+ </xs:sequence>
81
+ </xs:complexType>
82
+ <xs:element name="ArrayOfString" type="quer:ArrayOfString" xmlns:quer="http://api.geotrust.com/webtrust/query"/>
83
+ <xs:element name="GetQuickApproverList">
84
+ <xs:complexType>
85
+ <xs:sequence>
86
+ <xs:element minOccurs="0" name="Request" type="quer:GetQuickApproverListInput" xmlns:quer="http://api.geotrust.com/webtrust/query"/>
87
+ </xs:sequence>
88
+ </xs:complexType>
89
+ </xs:element>
90
+ <xs:element name="GetQuickApproverListResponse">
91
+ <xs:complexType>
92
+ <xs:sequence>
93
+ <xs:element minOccurs="0" name="GetQuickApproverListResult" type="quer:GetQuickApproverListOutput" xmlns:quer="http://api.geotrust.com/webtrust/query"/>
94
+ </xs:sequence>
95
+ </xs:complexType>
96
+ </xs:element>
97
+ <xs:element name="hello">
98
+ <xs:complexType>
99
+ <xs:sequence>
100
+ <xs:element minOccurs="0" name="Input" type="xs:string"/>
101
+ </xs:sequence>
102
+ </xs:complexType>
103
+ </xs:element>
104
+ <xs:element name="helloResponse">
105
+ <xs:complexType>
106
+ <xs:sequence>
107
+ <xs:element minOccurs="0" name="helloResult" type="xs:string"/>
108
+ </xs:sequence>
109
+ </xs:complexType>
110
+ </xs:element>
111
+ </xs:schema>
112
+ </s0:types>
113
+ <s0:message name="hello">
114
+ <s0:part element="s1:hello" name="parameters"/>
115
+ </s0:message>
116
+ <s0:message name="helloResponse">
117
+ <s0:part element="s1:helloResponse" name="helloResultPart"/>
118
+ </s0:message>
119
+ <s0:portType name="querySoap">
120
+ <s0:operation name="GetQuickApproverList" parameterOrder="parameters">
121
+ <s0:input message="s1:GetQuickApproverList"/>
122
+ <s0:output message="s1:GetQuickApproverListResponse"/>
123
+ </s0:operation>
124
+ <s0:operation name="hello" parameterOrder="parameters">
125
+ <s0:input message="s1:hello"/>
126
+ <s0:output message="s1:helloResponse"/>
127
+ </s0:operation>
128
+ </s0:portType>
129
+ <s0:binding name="querySoapBinding" type="s1:querySoap">
130
+ <s2:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
131
+ <s0:operation name="GetQuickApproverList">
132
+ <s2:operation style="document"/>
133
+ <s0:input>
134
+ <s2:body parts="parameters" use="literal"/>
135
+ </s0:input>
136
+ <s0:output>
137
+ <s2:body parts="GetQuickApproverListResultPart" use="literal"/>
138
+ </s0:output>
139
+ </s0:operation>
140
+ <s0:operation name="hello">
141
+ <s2:operation style="document"/>
142
+ <s0:input>
143
+ <s2:body parts="parameters" use="literal"/>
144
+ </s0:input>
145
+ <s0:output>
146
+ <s2:body parts="helloResultPart" use="literal"/>
147
+ </s0:output>
148
+ </s0:operation>
149
+ </s0:binding>
150
+ <s0:service name="query">
151
+ <s3:upgraded81/>
152
+ <s0:port binding="s1:querySoapBinding" name="querySoap">
153
+ <s2:address location="https://test-api.geotrust.com:443/webtrust/query.jws"/>
154
+ </s0:port>
155
+ </s0:service>
156
+ </s0:definitions>
@@ -0,0 +1,86 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <!-- reference: savon issue #313 -->
3
+ <wsdl:definitions name="BYDExchangeServer" targetNamespace="http://tempuri.org/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:tns="http://tempuri.org/" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:i0="http://bydexchange.nbs-us.com" xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata">
4
+ <wsdl:import namespace="http://bydexchange.nbs-us.com" location="http://bydexchange.nbs-us.com/BYDExchangeServer.svc?wsdl=wsdl0"/>
5
+ <wsdl:types/>
6
+ <wsdl:binding name="BasicHttpBinding_IBYDExchangeServer" type="i0:IBYDExchangeServer">
7
+ <soap:binding transport="http://schemas.xmlsoap.org/soap/http"/>
8
+ <wsdl:operation name="ProductAvail">
9
+ <soap:operation soapAction="http://bydexchange.nbs-us.com/IBYDExchangeServer/ProductAvail" style="document"/>
10
+ <wsdl:input>
11
+ <soap:body use="literal"/>
12
+ </wsdl:input>
13
+ <wsdl:output>
14
+ <soap:body use="literal"/>
15
+ </wsdl:output>
16
+ </wsdl:operation>
17
+ <wsdl:operation name="listcustomers">
18
+ <soap:operation soapAction="http://bydexchange.nbs-us.com/IBYDExchangeServer/listcustomers" style="document"/>
19
+ <wsdl:input>
20
+ <soap:body use="literal"/>
21
+ </wsdl:input>
22
+ <wsdl:output>
23
+ <soap:body use="literal"/>
24
+ </wsdl:output>
25
+ </wsdl:operation>
26
+ <wsdl:operation name="ParseCSV">
27
+ <soap:operation soapAction="http://bydexchange.nbs-us.com/IBYDExchangeServer/ParseCSV" style="document"/>
28
+ <wsdl:input>
29
+ <soap:body use="literal"/>
30
+ </wsdl:input>
31
+ <wsdl:output>
32
+ <soap:body use="literal"/>
33
+ </wsdl:output>
34
+ </wsdl:operation>
35
+ <wsdl:operation name="AddOrder">
36
+ <soap:operation soapAction="http://bydexchange.nbs-us.com/IBYDExchangeServer/AddOrder" style="document"/>
37
+ <wsdl:input>
38
+ <soap:body use="literal"/>
39
+ </wsdl:input>
40
+ <wsdl:output>
41
+ <soap:body use="literal"/>
42
+ </wsdl:output>
43
+ </wsdl:operation>
44
+ <wsdl:operation name="GetOrder">
45
+ <soap:operation soapAction="http://bydexchange.nbs-us.com/IBYDExchangeServer/GetOrder" style="document"/>
46
+ <wsdl:input>
47
+ <soap:body use="literal"/>
48
+ </wsdl:input>
49
+ <wsdl:output>
50
+ <soap:body use="literal"/>
51
+ </wsdl:output>
52
+ </wsdl:operation>
53
+ <wsdl:operation name="AddCustomer">
54
+ <soap:operation soapAction="http://bydexchange.nbs-us.com/IBYDExchangeServer/AddCustomer" style="document"/>
55
+ <wsdl:input>
56
+ <soap:body use="literal"/>
57
+ </wsdl:input>
58
+ <wsdl:output>
59
+ <soap:body use="literal"/>
60
+ </wsdl:output>
61
+ </wsdl:operation>
62
+ <wsdl:operation name="GetCustomer">
63
+ <soap:operation soapAction="http://bydexchange.nbs-us.com/IBYDExchangeServer/GetCustomer" style="document"/>
64
+ <wsdl:input>
65
+ <soap:body use="literal"/>
66
+ </wsdl:input>
67
+ <wsdl:output>
68
+ <soap:body use="literal"/>
69
+ </wsdl:output>
70
+ </wsdl:operation>
71
+ <wsdl:operation name="Authenticate">
72
+ <soap:operation soapAction="http://bydexchange.nbs-us.com/IBYDExchangeServer/Authenticate" style="document"/>
73
+ <wsdl:input>
74
+ <soap:body use="literal"/>
75
+ </wsdl:input>
76
+ <wsdl:output>
77
+ <soap:body use="literal"/>
78
+ </wsdl:output>
79
+ </wsdl:operation>
80
+ </wsdl:binding>
81
+ <wsdl:service name="BYDExchangeServer">
82
+ <wsdl:port name="BasicHttpBinding_IBYDExchangeServer" binding="tns:BasicHttpBinding_IBYDExchangeServer">
83
+ <soap:address location="http://bydexchange.nbs-us.com/BYDExchangeServer.svc"/>
84
+ </wsdl:port>
85
+ </wsdl:service>
86
+ </wsdl:definitions>
@@ -0,0 +1,46 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
3
+ xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
4
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
5
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
6
+ xmlns:ens="http://api.example.com/"
7
+ xmlns:ons="http://object.api.example.com/"
8
+ xmlns:fns="http://fault.api.example.com/"
9
+ targetNamespace="http://api.example.com/">
10
+ <types>
11
+ <schema attributeFormDefault="qualified" elementFormDefault="qualified" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://object.api.example.com/">
12
+ <complexType name="Account">
13
+ <complexContent>
14
+ <extension base="ons:baseObject">
15
+ <sequence>
16
+ <element minOccurs="0" name="Description" nillable="true" type="string" />
17
+ <element minOccurs="0" name="ProcessId" nillable="true" type="ens:ID" />
18
+ <element minOccurs="0" name="CreatedDate" nillable="true" type="dateTime" />
19
+ </sequence>
20
+ </extension>
21
+ </complexContent>
22
+ </complexType>
23
+ <complexType name="baseObject">
24
+ <sequence>
25
+ <element minOccurs="0" maxOccurs="unbounded" name="fieldsToNull" nillable="true" type="string" />
26
+ <element minOccurs="0" maxOccurs="1" name="Id" nillable="true" type="ens:ID" />
27
+ </sequence>
28
+ </complexType>
29
+ </schema>
30
+
31
+ <schema attributeFormDefault="qualified" elementFormDefault="qualified" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://api.example.com/">
32
+ <simpleType name="ID">
33
+ <restriction base="xs:string">
34
+ <pattern value='[a-zA-Z0-9]{32}|\d+' />
35
+ </restriction>
36
+ </simpleType>
37
+ <element name="DummyHeader">
38
+ <complexType>
39
+ <sequence>
40
+ <element minOccurs="0" name="Account" nillable="true" type="ons:Account" />
41
+ </sequence>
42
+ </complexType>
43
+ </element>
44
+ </schema>
45
+ </types>
46
+ </definitions>
@@ -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>