em_aws 0.1.3 → 0.1.4
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.
- data/Gemfile.lock +11 -4
- data/em_aws.gemspec +1 -0
- data/lib/aws/core/http/em_http_handler.rb +2 -4
- data/lib/em_aws.rb +3 -0
- data/lib/em_aws/core/session_signer.rb +14 -0
- data/lib/em_aws/version.rb +1 -1
- data/spec/session_signer_spec.rb +8 -1
- metadata +22 -11
- data/lib/aws/core/session_signer.rb +0 -8
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
em_aws (0.1.
|
|
4
|
+
em_aws (0.1.4)
|
|
5
5
|
aws-sdk
|
|
6
6
|
em-http-request
|
|
7
7
|
em-synchrony
|
|
@@ -15,6 +15,7 @@ GEM
|
|
|
15
15
|
json (~> 1.4)
|
|
16
16
|
nokogiri (>= 1.4.4)
|
|
17
17
|
uuidtools (~> 2.1)
|
|
18
|
+
builder (3.0.0)
|
|
18
19
|
cookiejar (0.3.0)
|
|
19
20
|
diff-lcs (1.1.3)
|
|
20
21
|
em-http-request (1.0.2)
|
|
@@ -28,27 +29,33 @@ GEM
|
|
|
28
29
|
em-synchrony (1.0.1)
|
|
29
30
|
eventmachine (>= 1.0.0.beta.1)
|
|
30
31
|
eventmachine (1.0.0.beta.4)
|
|
32
|
+
eventmachine (1.0.0.beta.4-java)
|
|
31
33
|
http_parser.rb (0.5.3)
|
|
34
|
+
http_parser.rb (0.5.3-java)
|
|
32
35
|
httparty (0.8.3)
|
|
33
36
|
multi_json (~> 1.0)
|
|
34
37
|
multi_xml
|
|
35
38
|
json (1.7.3)
|
|
36
|
-
|
|
39
|
+
json (1.7.3-java)
|
|
40
|
+
multi_json (1.3.6)
|
|
37
41
|
multi_xml (0.5.1)
|
|
38
|
-
nokogiri (1.5.
|
|
42
|
+
nokogiri (1.5.3)
|
|
43
|
+
nokogiri (1.5.3-java)
|
|
39
44
|
rspec (2.10.0)
|
|
40
45
|
rspec-core (~> 2.10.0)
|
|
41
46
|
rspec-expectations (~> 2.10.0)
|
|
42
47
|
rspec-mocks (~> 2.10.0)
|
|
43
|
-
rspec-core (2.10.
|
|
48
|
+
rspec-core (2.10.1)
|
|
44
49
|
rspec-expectations (2.10.0)
|
|
45
50
|
diff-lcs (~> 1.1.3)
|
|
46
51
|
rspec-mocks (2.10.1)
|
|
47
52
|
uuidtools (2.1.2)
|
|
48
53
|
|
|
49
54
|
PLATFORMS
|
|
55
|
+
java
|
|
50
56
|
ruby
|
|
51
57
|
|
|
52
58
|
DEPENDENCIES
|
|
59
|
+
builder
|
|
53
60
|
em_aws!
|
|
54
61
|
rspec
|
data/em_aws.gemspec
CHANGED
|
@@ -18,6 +18,7 @@ Gem::Specification.new do |s|
|
|
|
18
18
|
s.add_runtime_dependency "em-synchrony"
|
|
19
19
|
s.add_runtime_dependency "em-http-request"
|
|
20
20
|
s.add_development_dependency "rspec"
|
|
21
|
+
s.add_development_dependency "builder"
|
|
21
22
|
|
|
22
23
|
s.files = `git ls-files`.split("\n")
|
|
23
24
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
|
@@ -88,8 +88,6 @@ module AWS
|
|
|
88
88
|
merge(fetch_ssl(request))
|
|
89
89
|
end
|
|
90
90
|
|
|
91
|
-
# We get AWS::S3::SignatureDoesNotMatch when path is used to fetch an s3 object
|
|
92
|
-
# so for now we won't use the pool for requests where the path is more than just '/'
|
|
93
91
|
def fetch_response(url,method,opts={})
|
|
94
92
|
return EM::HttpRequest.new("#{url}").send(method, opts)
|
|
95
93
|
end
|
|
@@ -110,8 +108,8 @@ module AWS
|
|
|
110
108
|
# get, post, put, delete, head
|
|
111
109
|
method = request.http_method.downcase.to_sym
|
|
112
110
|
|
|
113
|
-
opts = default_request_options.
|
|
114
|
-
|
|
111
|
+
opts = default_request_options.merge(request_options(request))
|
|
112
|
+
|
|
115
113
|
if (method == :get)
|
|
116
114
|
opts[:query] = request.body
|
|
117
115
|
else
|
data/lib/em_aws.rb
CHANGED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
require 'em-synchrony/thread'
|
|
2
|
+
module AWS
|
|
3
|
+
module Core
|
|
4
|
+
class SessionSigner
|
|
5
|
+
@create_mutex = EM::Synchrony::Thread::Mutex.new
|
|
6
|
+
|
|
7
|
+
# Monkey patch to use EM::Synchrony::Thread::Mutex instead of ::Mutex
|
|
8
|
+
def initialize config
|
|
9
|
+
@config = config
|
|
10
|
+
@session_mutex = EM::Synchrony::Thread::Mutex.new
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
data/lib/em_aws/version.rb
CHANGED
data/spec/session_signer_spec.rb
CHANGED
|
@@ -6,5 +6,12 @@ describe AWS::Core::SessionSigner do
|
|
|
6
6
|
AWS::Core::SessionSigner.instance_variable_get(:@create_mutex).should be_kind_of(EM::Synchrony::Thread::Mutex)
|
|
7
7
|
end
|
|
8
8
|
end
|
|
9
|
-
end
|
|
10
9
|
|
|
10
|
+
context '@session_mutex' do
|
|
11
|
+
let(:config) { double("config").as_null_object }
|
|
12
|
+
it "should be a fiber safe mutex" do
|
|
13
|
+
session_signer = AWS::Core::SessionSigner.new(config)
|
|
14
|
+
session_signer.instance_variable_get(:@session_mutex).should be_kind_of(EM::Synchrony::Thread::Mutex)
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: em_aws
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.4
|
|
5
5
|
prerelease:
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
@@ -9,11 +9,11 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2012-
|
|
12
|
+
date: 2012-06-08 00:00:00.000000000Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: aws-sdk
|
|
16
|
-
requirement: &
|
|
16
|
+
requirement: &70341995956080 !ruby/object:Gem::Requirement
|
|
17
17
|
none: false
|
|
18
18
|
requirements:
|
|
19
19
|
- - ! '>='
|
|
@@ -21,10 +21,10 @@ dependencies:
|
|
|
21
21
|
version: '0'
|
|
22
22
|
type: :runtime
|
|
23
23
|
prerelease: false
|
|
24
|
-
version_requirements: *
|
|
24
|
+
version_requirements: *70341995956080
|
|
25
25
|
- !ruby/object:Gem::Dependency
|
|
26
26
|
name: em-synchrony
|
|
27
|
-
requirement: &
|
|
27
|
+
requirement: &70341995955620 !ruby/object:Gem::Requirement
|
|
28
28
|
none: false
|
|
29
29
|
requirements:
|
|
30
30
|
- - ! '>='
|
|
@@ -32,10 +32,10 @@ dependencies:
|
|
|
32
32
|
version: '0'
|
|
33
33
|
type: :runtime
|
|
34
34
|
prerelease: false
|
|
35
|
-
version_requirements: *
|
|
35
|
+
version_requirements: *70341995955620
|
|
36
36
|
- !ruby/object:Gem::Dependency
|
|
37
37
|
name: em-http-request
|
|
38
|
-
requirement: &
|
|
38
|
+
requirement: &70341995955200 !ruby/object:Gem::Requirement
|
|
39
39
|
none: false
|
|
40
40
|
requirements:
|
|
41
41
|
- - ! '>='
|
|
@@ -43,10 +43,10 @@ dependencies:
|
|
|
43
43
|
version: '0'
|
|
44
44
|
type: :runtime
|
|
45
45
|
prerelease: false
|
|
46
|
-
version_requirements: *
|
|
46
|
+
version_requirements: *70341995955200
|
|
47
47
|
- !ruby/object:Gem::Dependency
|
|
48
48
|
name: rspec
|
|
49
|
-
requirement: &
|
|
49
|
+
requirement: &70341995954780 !ruby/object:Gem::Requirement
|
|
50
50
|
none: false
|
|
51
51
|
requirements:
|
|
52
52
|
- - ! '>='
|
|
@@ -54,7 +54,18 @@ dependencies:
|
|
|
54
54
|
version: '0'
|
|
55
55
|
type: :development
|
|
56
56
|
prerelease: false
|
|
57
|
-
version_requirements: *
|
|
57
|
+
version_requirements: *70341995954780
|
|
58
|
+
- !ruby/object:Gem::Dependency
|
|
59
|
+
name: builder
|
|
60
|
+
requirement: &70341995954240 !ruby/object:Gem::Requirement
|
|
61
|
+
none: false
|
|
62
|
+
requirements:
|
|
63
|
+
- - ! '>='
|
|
64
|
+
- !ruby/object:Gem::Version
|
|
65
|
+
version: '0'
|
|
66
|
+
type: :development
|
|
67
|
+
prerelease: false
|
|
68
|
+
version_requirements: *70341995954240
|
|
58
69
|
description: Adds EM-Synchrony support to AWS-SDK gem
|
|
59
70
|
email:
|
|
60
71
|
- joshmckin@gmail.com
|
|
@@ -71,8 +82,8 @@ files:
|
|
|
71
82
|
- Rakefile
|
|
72
83
|
- em_aws.gemspec
|
|
73
84
|
- lib/aws/core/http/em_http_handler.rb
|
|
74
|
-
- lib/aws/core/session_signer.rb
|
|
75
85
|
- lib/em_aws.rb
|
|
86
|
+
- lib/em_aws/core/session_signer.rb
|
|
76
87
|
- lib/em_aws/version.rb
|
|
77
88
|
- spec/em_http_handler_spec.rb
|
|
78
89
|
- spec/session_signer_spec.rb
|