wasabi-ng-1.6 3.3.0

Sign up to get free protection for your applications and to get access to all the features.
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>