savon 0.7.4 → 0.7.5
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +6 -0
- data/README.rdoc +62 -0
- data/Rakefile +13 -9
- data/lib/savon.rb +16 -16
- data/lib/savon/client.rb +8 -21
- data/lib/savon/core_ext.rb +8 -2
- data/lib/savon/core_ext/array.rb +17 -0
- data/lib/savon/core_ext/datetime.rb +1 -1
- data/lib/savon/core_ext/hash.rb +51 -48
- data/lib/savon/core_ext/string.rb +15 -3
- data/lib/savon/core_ext/uri.rb +1 -1
- data/lib/savon/request.rb +2 -6
- data/lib/savon/response.rb +6 -3
- data/lib/savon/soap.rb +25 -8
- data/lib/savon/wsdl.rb +10 -3
- data/lib/savon/wsdl_stream.rb +5 -8
- data/lib/savon/wsse.rb +9 -13
- data/readme/client.rdoc +18 -0
- data/readme/errors.rdoc +11 -0
- data/readme/logging.rdoc +11 -0
- data/readme/participate.rdoc +21 -0
- data/readme/request.rdoc +37 -0
- data/readme/response.rdoc +46 -0
- data/readme/soap.rdoc +71 -0
- data/readme/value_mapping.rdoc +49 -0
- data/readme/wsdl.rdoc +39 -0
- data/readme/wsse.rdoc +28 -0
- data/spec/basic_spec_helper.rb +0 -1
- data/spec/savon/client_spec.rb +1 -1
- data/spec/savon/core_ext/array_spec.rb +19 -0
- data/spec/savon/core_ext/hash_spec.rb +94 -63
- data/spec/savon/core_ext/string_spec.rb +15 -0
- data/spec/savon/request_spec.rb +2 -2
- data/spec/savon/soap_spec.rb +40 -16
- metadata +17 -6
- data/README.textile +0 -71
- data/spec/savon/savon_spec.rb +0 -23
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: savon
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Daniel Harrington
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2010-02-
|
12
|
+
date: 2010-02-19 00:00:00 +01:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -69,12 +69,13 @@ executables: []
|
|
69
69
|
extensions: []
|
70
70
|
|
71
71
|
extra_rdoc_files:
|
72
|
-
- README.
|
72
|
+
- README.rdoc
|
73
73
|
files:
|
74
74
|
- CHANGELOG
|
75
75
|
- Rakefile
|
76
|
-
- README.
|
76
|
+
- README.rdoc
|
77
77
|
- lib/savon/client.rb
|
78
|
+
- lib/savon/core_ext/array.rb
|
78
79
|
- lib/savon/core_ext/datetime.rb
|
79
80
|
- lib/savon/core_ext/hash.rb
|
80
81
|
- lib/savon/core_ext/net_http.rb
|
@@ -98,6 +99,7 @@ files:
|
|
98
99
|
- spec/integration/http_basic_auth_spec.rb
|
99
100
|
- spec/integration/server.rb
|
100
101
|
- spec/savon/client_spec.rb
|
102
|
+
- spec/savon/core_ext/array_spec.rb
|
101
103
|
- spec/savon/core_ext/datetime_spec.rb
|
102
104
|
- spec/savon/core_ext/hash_spec.rb
|
103
105
|
- spec/savon/core_ext/net_http_spec.rb
|
@@ -107,7 +109,6 @@ files:
|
|
107
109
|
- spec/savon/core_ext/uri_spec.rb
|
108
110
|
- spec/savon/request_spec.rb
|
109
111
|
- spec/savon/response_spec.rb
|
110
|
-
- spec/savon/savon_spec.rb
|
111
112
|
- spec/savon/soap_spec.rb
|
112
113
|
- spec/savon/wsdl_spec.rb
|
113
114
|
- spec/savon/wsse_spec.rb
|
@@ -120,6 +121,16 @@ files:
|
|
120
121
|
- spec/fixtures/wsdl/xml/geotrust.xml
|
121
122
|
- spec/fixtures/wsdl/xml/namespaced_actions.xml
|
122
123
|
- spec/fixtures/wsdl/xml/no_namespace.xml
|
124
|
+
- readme/client.rdoc
|
125
|
+
- readme/errors.rdoc
|
126
|
+
- readme/logging.rdoc
|
127
|
+
- readme/participate.rdoc
|
128
|
+
- readme/request.rdoc
|
129
|
+
- readme/response.rdoc
|
130
|
+
- readme/soap.rdoc
|
131
|
+
- readme/value_mapping.rdoc
|
132
|
+
- readme/wsdl.rdoc
|
133
|
+
- readme/wsse.rdoc
|
123
134
|
has_rdoc: true
|
124
135
|
homepage: http://github.com/rubiii/savon
|
125
136
|
licenses: []
|
@@ -161,6 +172,7 @@ test_files:
|
|
161
172
|
- spec/integration/http_basic_auth_spec.rb
|
162
173
|
- spec/integration/server.rb
|
163
174
|
- spec/savon/client_spec.rb
|
175
|
+
- spec/savon/core_ext/array_spec.rb
|
164
176
|
- spec/savon/core_ext/datetime_spec.rb
|
165
177
|
- spec/savon/core_ext/hash_spec.rb
|
166
178
|
- spec/savon/core_ext/net_http_spec.rb
|
@@ -170,7 +182,6 @@ test_files:
|
|
170
182
|
- spec/savon/core_ext/uri_spec.rb
|
171
183
|
- spec/savon/request_spec.rb
|
172
184
|
- spec/savon/response_spec.rb
|
173
|
-
- spec/savon/savon_spec.rb
|
174
185
|
- spec/savon/soap_spec.rb
|
175
186
|
- spec/savon/wsdl_spec.rb
|
176
187
|
- spec/savon/wsse_spec.rb
|
data/README.textile
DELETED
@@ -1,71 +0,0 @@
|
|
1
|
-
h1. Savon
|
2
|
-
|
3
|
-
h4. Heavy metal Ruby SOAP client library
|
4
|
-
|
5
|
-
p. "RDoc":http://rdoc.info/projects/rubiii/savon | "Wiki":http://wiki.github.com/rubiii/savon | "Metrics":http://getcaliper.com/caliper/project?repo=git://github.com/rubiii/savon.git
|
6
|
-
|
7
|
-
h2. Installation
|
8
|
-
|
9
|
-
bc. $ gem install savon
|
10
|
-
|
11
|
-
p. Savon expects you to be familiar with SOAP, WSDL and tools like soapUI.
|
12
|
-
|
13
|
-
h2. Instantiate a client
|
14
|
-
|
15
|
-
p. Instantiate Savon::Client, passing in the WSDL of your service.
|
16
|
-
|
17
|
-
bc. client = Savon::Client.new "http://example.com/UserService?wsdl"
|
18
|
-
|
19
|
-
p. More information: "Client":http://wiki.github.com/rubiii/savon/client
|
20
|
-
|
21
|
-
h2. Calling a SOAP action
|
22
|
-
|
23
|
-
p. Assuming your service applies to the defaults, you can now call any available SOAP action.
|
24
|
-
|
25
|
-
bc. response = client.get_all_users
|
26
|
-
|
27
|
-
p. Savon lets you call SOAP actions using snake_case, because even though they will propably be written in lowerCamelCase or CamelCase, it just feels much more natural.
|
28
|
-
|
29
|
-
h2. The WSDL object
|
30
|
-
|
31
|
-
p. Savon::WSDL represents the WSDL of your service, including information like the namespace URI and available SOAP actions.
|
32
|
-
|
33
|
-
bc. client.wsdl.soap_actions
|
34
|
-
=> [:get_all_users, :get_user_by_id, :user_magic]
|
35
|
-
|
36
|
-
p. More information: "WSDL":http://wiki.github.com/rubiii/savon/wsdl
|
37
|
-
|
38
|
-
h2. The SOAP object
|
39
|
-
|
40
|
-
p. Savon::SOAP represents the SOAP request. Pass a block to your SOAP call and the SOAP object is passed to it as the first argument. The object allows setting the SOAP version, header, body and namespaces per request.
|
41
|
-
|
42
|
-
bc. response = client.get_user_by_id { |soap| soap.body = { :id => 666 } }
|
43
|
-
|
44
|
-
p. More information: "SOAP":http://wiki.github.com/rubiii/savon/soap
|
45
|
-
|
46
|
-
h2. The WSSE object
|
47
|
-
|
48
|
-
p. Savon::WSSE represents WSSE authentication. Pass a block to your SOAP call and the WSSE object is passed to it as the second argument. The object allows setting the WSSE username, password and whether to use digest authentication.
|
49
|
-
|
50
|
-
bc. response = client.get_user_by_id do |soap, wsse|
|
51
|
-
wsse.username = "gorilla"
|
52
|
-
wsse.password = "secret"
|
53
|
-
soap.body = { :id => 666 }
|
54
|
-
end
|
55
|
-
|
56
|
-
p. More information: "WSSE":http://wiki.github.com/rubiii/savon/wsse
|
57
|
-
|
58
|
-
h2. The Response object
|
59
|
-
|
60
|
-
p. Savon::Response represents the HTTP and SOAP response. It contains and raises errors in case of an HTTP error or SOAP fault (unless disabled). Also you can get the response as XML (for parsing it with an XML library) or translated into a Hash.
|
61
|
-
More information: "Response":http://wiki.github.com/rubiii/savon/response
|
62
|
-
|
63
|
-
h2. HTTP errors and SOAP faults
|
64
|
-
|
65
|
-
p. Savon raises a Savon::SOAPFault in case of a SOAP fault and a Savon::HTTPError in case of an HTTP error.
|
66
|
-
More information: "Errors":http://wiki.github.com/rubiii/savon/errors
|
67
|
-
|
68
|
-
h2. Logging
|
69
|
-
|
70
|
-
p. Savon logs each request and response to STDOUT. But there are a couple of options to change the default behavior.
|
71
|
-
More information: "Logging":http://wiki.github.com/rubiii/savon/logging
|
data/spec/savon/savon_spec.rb
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
require "spec_helper"
|
2
|
-
|
3
|
-
describe Savon do
|
4
|
-
|
5
|
-
it "contains an Array of supported SOAP versions" do
|
6
|
-
Savon::SOAPVersions.should be_an(Array)
|
7
|
-
Savon::SOAPVersions.should_not be_empty
|
8
|
-
end
|
9
|
-
|
10
|
-
it "contains the xs:dateTime format" do
|
11
|
-
Savon::SOAPDateTimeFormat.should be_a(String)
|
12
|
-
Savon::SOAPDateTimeFormat.should_not be_empty
|
13
|
-
|
14
|
-
DateTime.new(2012, 03, 22, 16, 22, 33).strftime(Savon::SOAPDateTimeFormat).
|
15
|
-
should == "2012-03-22T16:22:33Z"
|
16
|
-
end
|
17
|
-
|
18
|
-
it "contains a Regexp matching the xs:dateTime format" do
|
19
|
-
Savon::SOAPDateTimeRegexp.should be_a(Regexp)
|
20
|
-
(Savon::SOAPDateTimeRegexp === "2012-03-22T16:22:33").should be_true
|
21
|
-
end
|
22
|
-
|
23
|
-
end
|