clashinator 1.0 → 1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ed4851e0beea8740bebd70663cb2bbedf1a89ab8
4
- data.tar.gz: a831cbf6903981ae591e0509d1dca692d0fa341c
3
+ metadata.gz: e7b7ad615075eb6142f8eb9c18ae20e246142205
4
+ data.tar.gz: 9e1e8c5d821903f2fbe100c1658089cd5d9752eb
5
5
  SHA512:
6
- metadata.gz: 3bfbc1ab8d0057c15277dcd373580505d360df36db1914d9d28b66ebffa14b7b2ba75394b18aa6f1566f7dea50188430d2c0efbdc40f2d2a817a2bd7c7cf3d03
7
- data.tar.gz: 2b840f99c50a0e4dbb403a6f12b7535ebe65d27586d4b484fcd550ecc06ff483d55711a8b2daae4968117f58033348e05772d49581a1823ce1d27ddd2cdf827a
6
+ metadata.gz: 1e291d702bcca0d24ce2f1389f21e64e45e4d30892bc35f1e8da77469c7cf790911caa1a2cd5794d90236ef41fd416d6825979b2e430ec095ae3c0dd23048d09
7
+ data.tar.gz: 2138b2d895f23b689e93bc9a42f20392b73a9ed4f44ba90dd84edcf35b4139c46d066a03c84bce1618d9e9641f4ae921e7f0b5f076d9b93ab6e0f1a42fb7415b
@@ -6,14 +6,12 @@ module Clashinator
6
6
  class ArrayResource
7
7
  attr_accessor :items, :paging, :model
8
8
 
9
- def initialize(model, items, paging = {})
10
- # if after and before are equal, it means it's end of pagination
9
+ def initialize(model, items, paging = { 'cursors' => {} })
11
10
  @model = model
12
11
  @items = as_array_of_model(items)
13
12
  @paging = Clashinator::ArrayResource::Cursor.new(
14
- paging['cursors']['after'],
15
- paging['cursors']['before']
16
- ) if paging.key?('cursors')
13
+ paging['cursors']
14
+ )
17
15
  end
18
16
 
19
17
  private def as_array_of_model(array)
@@ -27,16 +25,14 @@ module Clashinator
27
25
  end
28
26
 
29
27
  # This class represent the cursor model
30
- # that contains an after & before attribute
31
- # for properly paging array resources
28
+ # that contains an after attribute, a before attribute
29
+ # or neither, for properly paging array resources
32
30
  class Cursor
33
31
  attr_accessor :after, :before
34
32
 
35
- def initialize(after, before)
36
- # can't be both specified
37
- # at the same time
38
- @after = after
39
- @before = before
33
+ def initialize(cursor_hash)
34
+ @after = cursor_hash['after'] if cursor_hash.key?('after')
35
+ @before = cursor_hash['before'] if cursor_hash.key?('before')
40
36
  end
41
37
  end
42
38
  end
@@ -1,3 +1,3 @@
1
1
  module Clashinator
2
- VERSION = '1.0'.freeze
2
+ VERSION = '1.1'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: clashinator
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.0'
4
+ version: '1.1'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Leonardo Cabeza
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-11-27 00:00:00.000000000 Z
11
+ date: 2016-12-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler