embark-journey 0.0.18 → 0.0.19

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e3998c199ed52d9b9c1c18b8a232a3448588b039
4
- data.tar.gz: 837e0d85bf8f77bc7dac887f43143ff38580ef8d
3
+ metadata.gz: 38fb94a63607831e3d56e03bbb6edfd5f0e89b60
4
+ data.tar.gz: 159256956082415247d7665146873a892b5cd708
5
5
  SHA512:
6
- metadata.gz: 50afca97c3f70db7b65c98599441f5c7566e051511a39771228dde204e3c26b08ddb82bea5dc852a75a17e9069597a5a7b0d9c6fd4b2eecd438b4aa708d5ab5e
7
- data.tar.gz: 77efa8e28f9da152bdcccea89fd400df1cd15f1f1687901aa7528cd6c67cafe7e77f5c1b3d1b9415fbfa0e167b640c1f1df743bc158c683c888b960d58a51670
6
+ metadata.gz: cd02d82934a789add381c50e8811294afa29702a245f848a6737f952120658bfd0ee686f62bf4ad13d87be17a4d7e656d2c9c7e983bbd9187ad7bca801cc9d9b
7
+ data.tar.gz: 05f573d69c2747f135d250634928014dfae62d00178c323bf003b4dc4efcf3ca4d99a579211b628a1fb588eff1dc0065e8276f2b478f837ec20e2882f04bbcc9
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ v0.0.18
2
+ - forces gzip compression (gargantuan performance boost on embedded queries)
3
+
1
4
  v0.0.17
2
5
  - implements Oplog
3
6
 
@@ -1,2 +1,3 @@
1
1
  require 'active_resource'
2
2
  require_relative 'associations'
3
+ require_relative 'connection'
@@ -0,0 +1,46 @@
1
+ require 'active_resource/connection'
2
+
3
+ module ActiveResource
4
+ class Connection
5
+
6
+ def handle_response(response)
7
+ if response.respond_to?(:header) && (response.header["content-encoding"] == 'gzip')
8
+ begin
9
+ response.instance_variable_set('@body', ActiveSupport::Gzip.decompress(response.body))
10
+ rescue Exception => e
11
+ raise(BadRequest.new(response))
12
+ end
13
+ end
14
+
15
+ case response.code.to_i
16
+ when 301, 302, 303, 307
17
+ raise(Redirection.new(response))
18
+ when 200...400
19
+ response
20
+ when 400
21
+ raise(BadRequest.new(response))
22
+ when 401
23
+ raise(UnauthorizedAccess.new(response))
24
+ when 403
25
+ raise(ForbiddenAccess.new(response))
26
+ when 404
27
+ raise(ResourceNotFound.new(response))
28
+ when 405
29
+ raise(MethodNotAllowed.new(response))
30
+ when 409
31
+ raise(ResourceConflict.new(response))
32
+ when 410
33
+ raise(ResourceGone.new(response))
34
+ when 422
35
+ raise(ResourceInvalid.new(response))
36
+ when 401...500
37
+ raise(ClientError.new(response))
38
+ when 500...600
39
+ raise(ServerError.new(response))
40
+ else
41
+ raise(ConnectionError.new(response, "Unknown response code: #{response.code}"))
42
+ end
43
+ end
44
+
45
+ end
46
+ end
@@ -6,8 +6,6 @@ module Journey::Resource::API
6
6
  included do
7
7
  self.format = :json
8
8
  self.include_root_in_json = true
9
- # self.site = ENV['JOURNEY_API_ENDPOINT']
10
- # self.user = ENV['JOURNEY_API_USERNAME']
11
- # self.password = ENV['JOURNEY_API_KEY']
9
+ self.headers['accept-encoding'] = 'gzip'
12
10
  end
13
11
  end
@@ -2,7 +2,7 @@ module Journey
2
2
  module VERSION
3
3
  MAJOR = 0
4
4
  MINOR = 0
5
- TINY = 18
5
+ TINY = 19
6
6
  PRE = nil
7
7
  STRING = [MAJOR, MINOR, TINY, PRE].compact.join('.')
8
8
  end
@@ -7,6 +7,12 @@ describe Journey::Resource do
7
7
  end
8
8
  end
9
9
 
10
+ context 'gzip performance patch' do
11
+ it 'automatically enables gzip' do
12
+ expect(klass.headers['accept-encoding']).to eq 'gzip'
13
+ end
14
+ end
15
+
10
16
  describe '::Enums' do
11
17
  describe '.enum' do
12
18
  let(:statuses) { %w(Active Inactive) }
@@ -0,0 +1,3 @@
1
+ active_resource_logger = Logger.new('tmp/active_resource.log', 'daily')
2
+ active_resource_logger.level = Logger::DEBUG
3
+ ActiveResource::Base.logger = active_resource_logger
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: embark-journey
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.18
4
+ version: 0.0.19
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dan Davey
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-30 00:00:00.000000000 Z
11
+ date: 2014-07-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: active_attr
@@ -143,6 +143,7 @@ files:
143
143
  - lib/active_resource/active_resource.rb
144
144
  - lib/active_resource/associations.rb
145
145
  - lib/active_resource/associations/builder/belongs_to.rb
146
+ - lib/active_resource/connection.rb
146
147
  - lib/journey.rb
147
148
  - lib/journey/configurable.rb
148
149
  - lib/journey/configuration.rb
@@ -165,6 +166,7 @@ files:
165
166
  - spec/models/journey/resource_spec.rb
166
167
  - spec/spec_helper.rb
167
168
  - spec/support/configuration_cache.rb
169
+ - spec/support/logger.rb
168
170
  - spec/support/test_configuration.rb
169
171
  homepage: ''
170
172
  licenses:
@@ -198,4 +200,5 @@ test_files:
198
200
  - spec/models/journey/resource_spec.rb
199
201
  - spec/spec_helper.rb
200
202
  - spec/support/configuration_cache.rb
203
+ - spec/support/logger.rb
201
204
  - spec/support/test_configuration.rb