uber-s3 0.1.8 → 0.1.9

Sign up to get free protection for your applications and to get access to all the features.
@@ -32,22 +32,17 @@ class UberS3
32
32
  end
33
33
 
34
34
  def head
35
- bucket.connection.head(key)
35
+ self.response = bucket.connection.head(key)
36
+
37
+ parse_response_header!
38
+ self
36
39
  end
37
40
 
38
41
  def fetch
39
42
  self.response = bucket.connection.get(key)
40
43
  self.value = response.body
41
44
 
42
- # Meta..
43
- self.meta ||= {}
44
- response.header.keys.sort.select {|k| k =~ /^x-amz-meta-/ }.each do |amz_key|
45
- # TODO.. value is an array.. meaning a meta attribute can have multiple values
46
- meta[amz_key.gsub(/^x-amz-meta-/, '')] = response.header[amz_key].first
47
-
48
- # TODO.. em-http adapters return headers that look like X_AMZ_META_ .. very annoying.
49
- end
50
-
45
+ parse_response_header!
51
46
  self
52
47
  end
53
48
 
@@ -131,5 +126,18 @@ class UberS3
131
126
  # TODO..
132
127
  # Add callback support so Operations can hook into that ... cleaner. ie. on_save { ... }
133
128
 
129
+ private
130
+
131
+ def parse_response_header!
132
+ # Meta..
133
+ self.meta ||= {}
134
+ response.header.keys.sort.select {|k| k =~ /^x-amz-meta-/ }.each do |amz_key|
135
+ # TODO.. value is an array.. meaning a meta attribute can have multiple values
136
+ meta[amz_key.gsub(/^x-amz-meta-/, '')] = response.header[amz_key].first
137
+
138
+ # TODO.. em-http adapters return headers that look like X_AMZ_META_ .. very annoying.
139
+ end
140
+ end
141
+
134
142
  end
135
143
  end
@@ -1,3 +1,3 @@
1
1
  class UberS3
2
- VERSION = '0.1.8'
2
+ VERSION = '0.1.9'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uber-s3
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.1.9
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-03-21 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: mime-types
16
- requirement: &70252802210360 !ruby/object:Gem::Requirement
16
+ requirement: &70281335651220 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '1.17'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70252802210360
24
+ version_requirements: *70281335651220
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: net-http-persistent
27
- requirement: &70252802209240 !ruby/object:Gem::Requirement
27
+ requirement: &70281335650160 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ~>
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '2.5'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *70252802209240
35
+ version_requirements: *70281335650160
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rake
38
- requirement: &70252802208760 !ruby/object:Gem::Requirement
38
+ requirement: &70281335649600 !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: :development
45
45
  prerelease: false
46
- version_requirements: *70252802208760
46
+ version_requirements: *70281335649600
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rspec
49
- requirement: &70252802207340 !ruby/object:Gem::Requirement
49
+ requirement: &70281335648100 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
@@ -54,7 +54,7 @@ dependencies:
54
54
  version: 2.7.0
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *70252802207340
57
+ version_requirements: *70281335648100
58
58
  description: A simple & very fast S3 client supporting sync / async HTTP adapters
59
59
  email:
60
60
  - peter@nulayer.com