tbg_api_consumer 0.0.8.pre → 0.2.0

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: 048990067e37362ce4278dd9a42fb62f8e22b1de
4
- data.tar.gz: 6c47bff8bc938dc84ec0c4c9b3967d4cbbbbea5f
3
+ metadata.gz: 1308b1706566e11b571683b652c46003300e6c58
4
+ data.tar.gz: f3383e510501c31b0855478a25cd520e7e6ff605
5
5
  SHA512:
6
- metadata.gz: 4841679d47f539e32774164d8a51327e721bb303c2a228ee9db653d87acf6cba5815e35c7a2a1ea021bc2e715af9d4692651a017922d9353ec4238e14e177af9
7
- data.tar.gz: b802701a3f35c56c41f221fbec76d159c5861b9da353e28c108244773dee4e7b0b3968de4c1f52e21e9c9e56035532116d1ec8a9858951bb84c06ffd8111a6d4
6
+ metadata.gz: bd9a270370b2e3c2de86679f26a024ad2b9ff005d84385e7a6e6ed66a5202a3820ca1fa28466338c2795918b182891e8731b4e46b6a5358bc9977cd52f183f8d
7
+ data.tar.gz: 020c48fd871de271cb98d59dcbb5e0b565379d11781f014bf5e2cdd9170cc2fa8caa53e21675ea9ac3bcbdcd978a72af8dbc2cab762473f57418388991383699
data/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ ## Next
2
+
3
+ ## 0.2.0
4
+ - Added has_more to pagination
5
+
6
+ ## 0.1.0
7
+ - Added a error handler.
8
+
1
9
  ## 0.0.8.pre
2
10
  - Fixed overridden initializer bug that always required an attributes hash
3
11
  present in the arguments
data/lib/api_consumer.rb CHANGED
@@ -11,6 +11,7 @@ require 'api_consumer/elements/pagination'
11
11
  require 'api_consumer/elements/order'
12
12
  require 'api_consumer/elements/meta'
13
13
  require 'api_consumer/attributes/base'
14
+ require 'api_consumer/error_handler'
14
15
  require 'api_consumer/railtie' if defined?(Rails)
15
16
 
16
17
  module ApiConsumer
@@ -30,19 +31,23 @@ module ApiConsumer
30
31
  if Attributes::Base.new(attributes).standardized?
31
32
  attributes = attributes.fetch('data')
32
33
  end
33
-
34
34
  super attributes, persisted
35
35
  end
36
36
  end
37
37
 
38
+ module ClassMethods
39
+ include ErrorHandler
40
+ end
41
+
38
42
  mattr_accessor :parser_registry
43
+
39
44
  def self.included(base)
45
+ base.extend(ClassMethods)
40
46
  base.class_eval do
41
47
  base.collection_parser = Parsers::Collection
42
48
  base.send :prepend, Initializer
43
49
  end
44
50
  end
45
-
46
51
  end
47
52
 
48
53
  class Configuration
@@ -1,6 +1,6 @@
1
1
  module ApiConsumer
2
2
  module Elements
3
- Pagination = Struct.new(:page, :limit) do
3
+ Pagination = Struct.new(:page, :limit, :has_more) do
4
4
 
5
5
  def initialize(attributes)
6
6
  attributes.each { |k, v| send("#{k}=", v) if respond_to?("#{k}=") }
@@ -0,0 +1,16 @@
1
+ module ApiConsumer
2
+ module ErrorHandler
3
+ def find(*attributes)
4
+ scope = attributes.slice(0)
5
+ if scope == :all
6
+ begin
7
+ super(*attributes)
8
+ rescue ActiveResource::ConnectionError, ActiveResource::ClientError
9
+ []
10
+ end
11
+ else
12
+ super(*attributes)
13
+ end
14
+ end
15
+ end
16
+ end
@@ -1,3 +1,3 @@
1
1
  module ApiConsumer
2
- VERSION = "0.0.8.pre"
2
+ VERSION = "0.2.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tbg_api_consumer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8.pre
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - luxerama
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-26 00:00:00.000000000 Z
11
+ date: 2015-04-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activeresource
@@ -130,6 +130,7 @@ files:
130
130
  - lib/api_consumer/elements/order.rb
131
131
  - lib/api_consumer/elements/pagination.rb
132
132
  - lib/api_consumer/elements/response.rb
133
+ - lib/api_consumer/error_handler.rb
133
134
  - lib/api_consumer/parser.rb
134
135
  - lib/api_consumer/parser_registry.rb
135
136
  - lib/api_consumer/parsers/base.rb
@@ -155,9 +156,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
155
156
  version: 2.0.0
156
157
  required_rubygems_version: !ruby/object:Gem::Requirement
157
158
  requirements:
158
- - - ">"
159
+ - - ">="
159
160
  - !ruby/object:Gem::Version
160
- version: 1.3.1
161
+ version: '0'
161
162
  requirements: []
162
163
  rubyforge_project:
163
164
  rubygems_version: 2.2.2