inbox 0.4.2 → 0.4.3

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: f6f2a78a60edd5f2f42b94b8fa39d8b6bbaff7b2
4
- data.tar.gz: 5b15805b19e576bc3b89d703694e28ab90bcde20
3
+ metadata.gz: f923fbc7bcd0eb9230ebe10e73bdb9f0352082fe
4
+ data.tar.gz: 335cf713451134d52278f05af4204803838a131f
5
5
  SHA512:
6
- metadata.gz: c7232e9ac9ed49eb4cd3ff4992a5a71734b7d7ca718e701bf0ed320b057eeb382dc7e8e7dfa2035dd39ffb6221ebb6977b37d4c6f2894ec76610da77513501ac
7
- data.tar.gz: 9c8878c112a8c70bf14ffbf34b572d89ec3ce7f6222136d3ad12304b7bfbf5a6c55641270a5fd94dacc9d404b7da1e6bdab98679b08cadc50d448f6a31b90342
6
+ metadata.gz: 130c445e073dee8407d09ff5b04d1e265779703c1a6dcfd43a935c4af58d3c9c0cb0f1461d5fb2d449373e300ad4f957ddf3d1b3be120b0e88cf8307c9d50bce
7
+ data.tar.gz: 3413eaf764151b83eeb2bce2c5e65ae6bf5704d12bce1c5f0ea628030dfcb637d920b8b098369837f9f2f75f7f854ede5e21b6111f14a9c59488c23e1c501f82
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.2
1
+ 0.4.3
data/inbox.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "inbox"
8
- s.version = "0.4.2"
8
+ s.version = "0.4.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Ben Gotow"]
12
- s.date = "2014-09-09"
12
+ s.date = "2014-09-11"
13
13
  s.description = "Gem for interacting with the Inbox API that allows you to create and publish one-page websites, subscribe to web hooks and receive events when those pages are interacted with. Visit http://www.populr.me/ for more information. "
14
14
  s.email = "ben@inboxapp.com"
15
15
  s.extra_rdoc_files = [
@@ -36,6 +36,7 @@ Gem::Specification.new do |s|
36
36
  "lib/restful_model_collection.rb",
37
37
  "lib/tag.rb",
38
38
  "lib/thread.rb",
39
+ "lib/time_attr_accessor.rb",
39
40
  "lib/version.rb",
40
41
  "spec/inbox_spec.rb",
41
42
  "spec/restful_model_spec.rb",
@@ -52,6 +53,7 @@ Gem::Specification.new do |s|
52
53
  s.specification_version = 4
53
54
 
54
55
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
56
+ s.add_runtime_dependency(%q<inbox>, [">= 0"])
55
57
  s.add_runtime_dependency(%q<rest-client>, ["~> 1.6"])
56
58
  s.add_development_dependency(%q<rspec>, [">= 0"])
57
59
  s.add_development_dependency(%q<shoulda>, [">= 0"])
@@ -61,7 +63,16 @@ Gem::Specification.new do |s|
61
63
  s.add_development_dependency(%q<pry>, [">= 0"])
62
64
  s.add_development_dependency(%q<pry-nav>, [">= 0"])
63
65
  s.add_development_dependency(%q<pry-stack_explorer>, [">= 0"])
66
+ s.add_development_dependency(%q<rspec>, [">= 0"])
67
+ s.add_development_dependency(%q<shoulda>, [">= 0"])
68
+ s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
69
+ s.add_development_dependency(%q<bundler>, [">= 1.3.5"])
70
+ s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
71
+ s.add_development_dependency(%q<pry>, [">= 0"])
72
+ s.add_development_dependency(%q<pry-nav>, [">= 0"])
73
+ s.add_development_dependency(%q<pry-stack_explorer>, [">= 0"])
64
74
  else
75
+ s.add_dependency(%q<inbox>, [">= 0"])
65
76
  s.add_dependency(%q<rest-client>, ["~> 1.6"])
66
77
  s.add_dependency(%q<rspec>, [">= 0"])
67
78
  s.add_dependency(%q<shoulda>, [">= 0"])
@@ -71,8 +82,17 @@ Gem::Specification.new do |s|
71
82
  s.add_dependency(%q<pry>, [">= 0"])
72
83
  s.add_dependency(%q<pry-nav>, [">= 0"])
73
84
  s.add_dependency(%q<pry-stack_explorer>, [">= 0"])
85
+ s.add_dependency(%q<rspec>, [">= 0"])
86
+ s.add_dependency(%q<shoulda>, [">= 0"])
87
+ s.add_dependency(%q<rdoc>, ["~> 3.12"])
88
+ s.add_dependency(%q<bundler>, [">= 1.3.5"])
89
+ s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
90
+ s.add_dependency(%q<pry>, [">= 0"])
91
+ s.add_dependency(%q<pry-nav>, [">= 0"])
92
+ s.add_dependency(%q<pry-stack_explorer>, [">= 0"])
74
93
  end
75
94
  else
95
+ s.add_dependency(%q<inbox>, [">= 0"])
76
96
  s.add_dependency(%q<rest-client>, ["~> 1.6"])
77
97
  s.add_dependency(%q<rspec>, [">= 0"])
78
98
  s.add_dependency(%q<shoulda>, [">= 0"])
@@ -82,6 +102,14 @@ Gem::Specification.new do |s|
82
102
  s.add_dependency(%q<pry>, [">= 0"])
83
103
  s.add_dependency(%q<pry-nav>, [">= 0"])
84
104
  s.add_dependency(%q<pry-stack_explorer>, [">= 0"])
105
+ s.add_dependency(%q<rspec>, [">= 0"])
106
+ s.add_dependency(%q<shoulda>, [">= 0"])
107
+ s.add_dependency(%q<rdoc>, ["~> 3.12"])
108
+ s.add_dependency(%q<bundler>, [">= 1.3.5"])
109
+ s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
110
+ s.add_dependency(%q<pry>, [">= 0"])
111
+ s.add_dependency(%q<pry-nav>, [">= 0"])
112
+ s.add_dependency(%q<pry-stack_explorer>, [">= 0"])
85
113
  end
86
114
  end
87
115
 
data/lib/restful_model.rb CHANGED
@@ -1,9 +1,12 @@
1
+ require 'time_attr_accessor'
2
+
1
3
  module Inbox
2
4
  class RestfulModel
5
+ extend Inbox::TimeAttrAccessor
3
6
 
4
7
  attr_accessor :id
5
8
  attr_accessor :namespace_id
6
- attr_accessor :created_at
9
+ time_attr_accessor :created_at
7
10
 
8
11
  def self.collection_name
9
12
  "#{self.to_s.downcase}s".split('::').last
@@ -15,14 +15,15 @@ module Inbox
15
15
 
16
16
  def each
17
17
  offset = 0
18
+ chunk_size = 50
18
19
  finished = false
19
20
  while (!finished) do
20
- items = get_model_collection(offset)
21
- break if items.length == 0
22
- items.each { |item|
21
+ results = get_model_collection(offset, chunk_size)
22
+ results.each { |item|
23
23
  yield item
24
24
  }
25
- offset += items.length
25
+ offset += results.length
26
+ finished = results.length < chunk_size
26
27
  end
27
28
  end
28
29
 
data/lib/thread.rb CHANGED
@@ -1,16 +1,18 @@
1
1
  require 'restful_model'
2
+ require 'time_attr_accessor'
2
3
 
3
4
  module Inbox
4
5
  class Thread < RestfulModel
6
+ extend TimeAttrAccessor
5
7
 
6
8
  attr_accessor :subject
7
9
  attr_accessor :participants
8
- attr_accessor :last_message_timestamp
9
- attr_accessor :first_message_timestamp
10
10
  attr_accessor :snippet
11
11
  attr_accessor :tags
12
12
  attr_accessor :message_ids
13
13
  attr_accessor :draft_ids
14
+ time_attr_accessor :last_message_timestamp
15
+ time_attr_accessor :first_message_timestamp
14
16
 
15
17
  def messages
16
18
  @messages ||= RestfulModelCollection.new(Message, @_api, @namespace_id, {:thread_id=>@id})
@@ -0,0 +1,10 @@
1
+ module Inbox
2
+ module TimeAttrAccessor
3
+ def time_attr_accessor(attr)
4
+ attr_reader attr
5
+ define_method "#{attr}=" do |value|
6
+ instance_variable_set "@#{attr}", Time.at(value).utc
7
+ end
8
+ end
9
+ end
10
+ end
metadata CHANGED
@@ -1,139 +1,265 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: inbox
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.2
4
+ version: 0.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ben Gotow
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-09 00:00:00.000000000 Z
11
+ date: 2014-09-11 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: inbox
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: rest-client
15
29
  requirement: !ruby/object:Gem::Requirement
16
30
  requirements:
17
- - - "~>"
31
+ - - ~>
18
32
  - !ruby/object:Gem::Version
19
33
  version: '1.6'
20
34
  type: :runtime
21
35
  prerelease: false
22
36
  version_requirements: !ruby/object:Gem::Requirement
23
37
  requirements:
24
- - - "~>"
38
+ - - ~>
25
39
  - !ruby/object:Gem::Version
26
40
  version: '1.6'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: rspec
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
- - - ">="
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: shoulda
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rdoc
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ~>
74
+ - !ruby/object:Gem::Version
75
+ version: '3.12'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ~>
81
+ - !ruby/object:Gem::Version
82
+ version: '3.12'
83
+ - !ruby/object:Gem::Dependency
84
+ name: bundler
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: 1.3.5
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - '>='
95
+ - !ruby/object:Gem::Version
96
+ version: 1.3.5
97
+ - !ruby/object:Gem::Dependency
98
+ name: jeweler
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ~>
102
+ - !ruby/object:Gem::Version
103
+ version: 1.8.4
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ~>
109
+ - !ruby/object:Gem::Version
110
+ version: 1.8.4
111
+ - !ruby/object:Gem::Dependency
112
+ name: pry
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - '>='
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: pry-nav
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - '>='
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - '>='
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: pry-stack_explorer
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - '>='
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - '>='
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: rspec
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - '>='
32
158
  - !ruby/object:Gem::Version
33
159
  version: '0'
34
160
  type: :development
35
161
  prerelease: false
36
162
  version_requirements: !ruby/object:Gem::Requirement
37
163
  requirements:
38
- - - ">="
164
+ - - '>='
39
165
  - !ruby/object:Gem::Version
40
166
  version: '0'
41
167
  - !ruby/object:Gem::Dependency
42
168
  name: shoulda
43
169
  requirement: !ruby/object:Gem::Requirement
44
170
  requirements:
45
- - - ">="
171
+ - - '>='
46
172
  - !ruby/object:Gem::Version
47
173
  version: '0'
48
174
  type: :development
49
175
  prerelease: false
50
176
  version_requirements: !ruby/object:Gem::Requirement
51
177
  requirements:
52
- - - ">="
178
+ - - '>='
53
179
  - !ruby/object:Gem::Version
54
180
  version: '0'
55
181
  - !ruby/object:Gem::Dependency
56
182
  name: rdoc
57
183
  requirement: !ruby/object:Gem::Requirement
58
184
  requirements:
59
- - - "~>"
185
+ - - ~>
60
186
  - !ruby/object:Gem::Version
61
187
  version: '3.12'
62
188
  type: :development
63
189
  prerelease: false
64
190
  version_requirements: !ruby/object:Gem::Requirement
65
191
  requirements:
66
- - - "~>"
192
+ - - ~>
67
193
  - !ruby/object:Gem::Version
68
194
  version: '3.12'
69
195
  - !ruby/object:Gem::Dependency
70
196
  name: bundler
71
197
  requirement: !ruby/object:Gem::Requirement
72
198
  requirements:
73
- - - ">="
199
+ - - '>='
74
200
  - !ruby/object:Gem::Version
75
201
  version: 1.3.5
76
202
  type: :development
77
203
  prerelease: false
78
204
  version_requirements: !ruby/object:Gem::Requirement
79
205
  requirements:
80
- - - ">="
206
+ - - '>='
81
207
  - !ruby/object:Gem::Version
82
208
  version: 1.3.5
83
209
  - !ruby/object:Gem::Dependency
84
210
  name: jeweler
85
211
  requirement: !ruby/object:Gem::Requirement
86
212
  requirements:
87
- - - "~>"
213
+ - - ~>
88
214
  - !ruby/object:Gem::Version
89
215
  version: 1.8.4
90
216
  type: :development
91
217
  prerelease: false
92
218
  version_requirements: !ruby/object:Gem::Requirement
93
219
  requirements:
94
- - - "~>"
220
+ - - ~>
95
221
  - !ruby/object:Gem::Version
96
222
  version: 1.8.4
97
223
  - !ruby/object:Gem::Dependency
98
224
  name: pry
99
225
  requirement: !ruby/object:Gem::Requirement
100
226
  requirements:
101
- - - ">="
227
+ - - '>='
102
228
  - !ruby/object:Gem::Version
103
229
  version: '0'
104
230
  type: :development
105
231
  prerelease: false
106
232
  version_requirements: !ruby/object:Gem::Requirement
107
233
  requirements:
108
- - - ">="
234
+ - - '>='
109
235
  - !ruby/object:Gem::Version
110
236
  version: '0'
111
237
  - !ruby/object:Gem::Dependency
112
238
  name: pry-nav
113
239
  requirement: !ruby/object:Gem::Requirement
114
240
  requirements:
115
- - - ">="
241
+ - - '>='
116
242
  - !ruby/object:Gem::Version
117
243
  version: '0'
118
244
  type: :development
119
245
  prerelease: false
120
246
  version_requirements: !ruby/object:Gem::Requirement
121
247
  requirements:
122
- - - ">="
248
+ - - '>='
123
249
  - !ruby/object:Gem::Version
124
250
  version: '0'
125
251
  - !ruby/object:Gem::Dependency
126
252
  name: pry-stack_explorer
127
253
  requirement: !ruby/object:Gem::Requirement
128
254
  requirements:
129
- - - ">="
255
+ - - '>='
130
256
  - !ruby/object:Gem::Version
131
257
  version: '0'
132
258
  type: :development
133
259
  prerelease: false
134
260
  version_requirements: !ruby/object:Gem::Requirement
135
261
  requirements:
136
- - - ">="
262
+ - - '>='
137
263
  - !ruby/object:Gem::Version
138
264
  version: '0'
139
265
  description: 'Gem for interacting with the Inbox API that allows you to create and
@@ -165,6 +291,7 @@ files:
165
291
  - lib/restful_model_collection.rb
166
292
  - lib/tag.rb
167
293
  - lib/thread.rb
294
+ - lib/time_attr_accessor.rb
168
295
  - lib/version.rb
169
296
  - spec/inbox_spec.rb
170
297
  - spec/restful_model_spec.rb
@@ -180,17 +307,17 @@ require_paths:
180
307
  - lib
181
308
  required_ruby_version: !ruby/object:Gem::Requirement
182
309
  requirements:
183
- - - ">="
310
+ - - '>='
184
311
  - !ruby/object:Gem::Version
185
312
  version: '0'
186
313
  required_rubygems_version: !ruby/object:Gem::Requirement
187
314
  requirements:
188
- - - ">="
315
+ - - '>='
189
316
  - !ruby/object:Gem::Version
190
317
  version: '0'
191
318
  requirements: []
192
319
  rubyforge_project:
193
- rubygems_version: 2.2.2
320
+ rubygems_version: 2.0.14
194
321
  signing_key:
195
322
  specification_version: 4
196
323
  summary: Gem for interacting with the Inbox API