api_resource 0.3.8 → 0.3.10

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.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.8
1
+ 0.3.10
data/api_resource.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "api_resource"
8
- s.version = "0.3.8"
8
+ s.version = "0.3.10"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Ethan Langevin"]
12
- s.date = "2012-07-31"
12
+ s.date = "2012-08-22"
13
13
  s.description = "A replacement for ActiveResource for RESTful APIs that handles associated object and multiple data sources"
14
14
  s.email = "ejl6266@gmail.com"
15
15
  s.extra_rdoc_files = [
@@ -83,7 +83,7 @@ Gem::Specification.new do |s|
83
83
  s.homepage = "http://github.com/ejlangev/resource"
84
84
  s.licenses = ["MIT"]
85
85
  s.require_paths = ["lib"]
86
- s.rubygems_version = "1.8.23"
86
+ s.rubygems_version = "1.8.17"
87
87
  s.summary = "A replacement for ActiveResource for RESTful APIs that handles associated object and multiple data sources"
88
88
 
89
89
  if s.respond_to? :specification_version then
@@ -60,6 +60,7 @@ module ApiResource
60
60
 
61
61
  def reload
62
62
  remove_instance_variable(:@internal_object) if instance_variable_defined?(:@internal_object)
63
+ self.load(self.load_from_remote({}))
63
64
  self
64
65
  end
65
66
 
@@ -30,6 +30,38 @@ module ApiResource
30
30
  end
31
31
  @attributes
32
32
  end
33
+
34
+
35
+ # This method is important for reloading an object. If the
36
+ # object has already been loaded, its associations will trip
37
+ # up the load method unless we pass in the internal objects.
38
+
39
+ define_method(:attributes_without_proxies) do
40
+ attributes = @attributes
41
+
42
+ if attributes.nil?
43
+ attributes = self.class.attribute_names.each do |attr|
44
+ attributes[attr] = self.send("#{attr}")
45
+ end
46
+ end
47
+
48
+ attributes.each do |k,v|
49
+ if v.respond_to?(:internal_object)
50
+ if v.internal_object.present?
51
+ internal = v.internal_object
52
+ if internal.is_a?(Array)
53
+ attributes[k] = internal.collect{|item| item.attributes}
54
+ else
55
+ attributes[k] = internal.attributes
56
+ end
57
+ else
58
+ attributes[k] = nil
59
+ end
60
+ end
61
+ end
62
+
63
+ attributes
64
+ end
33
65
 
34
66
  end
35
67
 
@@ -112,6 +112,16 @@ module ApiResource
112
112
  def reset_connection
113
113
  remove_instance_variable(:@connection) if @connection.present?
114
114
  end
115
+
116
+ # load our resource definition to make sure we know what this class
117
+ # responds to
118
+ def respond_to?(*args)
119
+ unless self.instance_variable_defined?(:@class_data)
120
+ self.instance_variable_set(:@class_data, true)
121
+ self.set_class_attributes_upon_load
122
+ end
123
+ super
124
+ end
115
125
 
116
126
  def reload_class_attributes
117
127
  # clear the public_attribute_names, protected_attribute_names
@@ -473,7 +483,8 @@ module ApiResource
473
483
  end
474
484
 
475
485
  def reload
476
- self.load(self.class.find(to_param, :params => @prefix_options).attributes)
486
+ remove_instance_variable(:@assoc_attributes) if instance_variable_defined?(:@assoc_attributes)
487
+ self.load(self.class.find(to_param, :params => @prefix_options).attributes_without_proxies)
477
488
  end
478
489
 
479
490
  def to_param
@@ -411,6 +411,35 @@ describe "Associations" do
411
411
  end
412
412
 
413
413
  end
414
+
415
+ it "should be able to reload a single-object association" do
416
+ ap = Associations::SingleObjectProxy.new("TestResource",{:service_uri => '/single_object_association', :active => {:active => true}, :scopes_only => true})
417
+
418
+ old_name = ap.name
419
+
420
+ str = "krdflkjsd"
421
+
422
+ ap.name = str
423
+ ap.name.should eql str
424
+ ap.reload
425
+
426
+ ap.name.should eql old_name
427
+ end
428
+
429
+ it "should be able to reload a multi-object association" do
430
+ ap = Associations::MultiObjectProxy.new("TestResource",{:service_uri => '/multi_object_association', :active => {:active => false}, :inactive => {:active => false}, :with_birthday => {:birthday => true}})
431
+
432
+ old_name = ap.first.name
433
+
434
+ str = "krdflkjsd"
435
+
436
+ ap.first.name = str
437
+ ap.first.name.should eql str
438
+
439
+ ap.reload
440
+
441
+ ap.first.name.should eql old_name
442
+ end
414
443
 
415
444
  context "Multi Object" do
416
445
 
@@ -547,10 +576,22 @@ describe "Associations" do
547
576
  tr.belongs_to_object.internal_object.should be_instance_of BelongsToObject
548
577
  end
549
578
 
579
+ it "should be able to reload a single-object association" do
580
+ ApiResource::Associations::SingleObjectProxy.any_instance.stubs(:remote_path => "/has_one_objects")
581
+ HasOneObject.connection.stubs(:get => nil)
582
+
583
+ tr = TestResource.new()
584
+
585
+ tr.has_one_object = {:color => "Blue"}
586
+
587
+ tr.has_one_object.reload
588
+
589
+ tr.has_one_object.should be_blank
590
+ end
550
591
 
551
592
  end
552
593
 
553
- context "Single Object Association" do
594
+ context "Multi Object Association" do
554
595
  before(:all) do
555
596
  TestResource.has_many(:has_many_objects)
556
597
  end
@@ -570,7 +611,17 @@ describe "Associations" do
570
611
  tr.has_many_objects.internal_object.first.should be_instance_of HasManyObject
571
612
  end
572
613
 
573
-
614
+ it "should be able to reload a multi-object association" do
615
+ ApiResource::Associations::MultiObjectProxy.any_instance.stubs(:remote_path => "/has_many_objects")
616
+ ApiResource::Connection.any_instance.stubs(:get => [])
617
+
618
+ tr = TestResource.new(:has_many_objects => [{:color => "blue"}])
619
+
620
+ tr.has_many_objects.reload
621
+
622
+ tr.has_many_objects.should be_blank
623
+ end
624
+
574
625
  end
575
626
 
576
627
  context "ActiveModel" do
@@ -51,6 +51,14 @@ describe "Attributes" do
51
51
  tst.scope?(:active).should be_true
52
52
  end
53
53
 
54
+ it "should provide attributes without proxies if attributes_without_proxies is called" do
55
+ tst = TestResource.new({:has_many_objects => []})
56
+ tst.attributes_without_proxies.each do |k,v|
57
+ [ApiResource::Associations::SingleObjectProxy, ApiResource::Associations::MultiObjectProxy]
58
+ .include?(v.class).should be_false
59
+ end
60
+ end
61
+
54
62
  end
55
63
 
56
64
  context "Attributes" do
@@ -549,6 +549,33 @@ describe "Base" do
549
549
  tr = TestResource.new(:name => "Ethan")
550
550
  tr.persisted?.should be_false
551
551
  end
552
+
553
+ it "should know how to reload attributes" do
554
+ tr = TestResource.find(1)
555
+
556
+ tr.age = 47
557
+ tr.name = "Ethan"
558
+
559
+ tr.reload
560
+
561
+ tr.age.should eql "age"
562
+ tr.name.should eql "name"
563
+ end
564
+
565
+ it "should know how to reload associations" do
566
+ tr = TestResource.find(1)
567
+
568
+ tr.has_one_object.size = "small"
569
+ tr.has_many_objects.first.name = "Ethan"
570
+
571
+ tr.has_one_object.size.should eql "small"
572
+ tr.has_many_objects.first.name.should eql "Ethan"
573
+
574
+ tr.reload
575
+
576
+ tr.has_one_object.size.should eql "large"
577
+ tr.has_many_objects.first.name.should eql "name"
578
+ end
552
579
 
553
580
  end
554
581
 
@@ -597,5 +624,21 @@ describe "Base" do
597
624
  end
598
625
 
599
626
  end
627
+
628
+ context ".respond_to?" do
629
+
630
+ it "should load the resouce definition when respond_to? is called" do
631
+ # remove our attribute that denotes that the definition was loaded
632
+ TestResource.send(:remove_instance_variable, :@class_data)
633
+ TestResource.expects(:set_class_attributes_upon_load)
634
+ TestResource.respond_to?(:test)
635
+ end
636
+
637
+ it "should not load the resource definition when respond_to? is called
638
+ if the definition has already been loaded"
639
+
640
+ end
641
+
642
+
600
643
 
601
644
  end
@@ -14,7 +14,7 @@ Mocks.define do
14
14
  end
15
15
 
16
16
  endpoint("/test_resources/:id") do
17
- get(HashDealer.roll(:test_resource)) do |params|
17
+ get(HashDealer.roll(:test_resource_with_proxies)) do |params|
18
18
  self.merge(params)
19
19
  end
20
20
  delete({})
@@ -11,4 +11,13 @@ end
11
11
 
12
12
  HashDealer.define(:active_birthday_test_association_resource, :parent => :active_test_association_resource) do
13
13
  birthday{Date.today}
14
+ end
15
+
16
+ HashDealer.define(:has_one_object) do
17
+ size("large")
18
+ color("blue")
19
+ end
20
+
21
+ HashDealer.define(:has_many_object) do
22
+ name("name")
14
23
  end
@@ -25,6 +25,11 @@ HashDealer.define(:test_resource_with_roles) do
25
25
  roles([])
26
26
  end
27
27
 
28
+ HashDealer.define(:test_resource_with_proxies, :parent => :test_resource) do
29
+ has_one_object{HashDealer.roll(:has_one_object)}
30
+ has_many_objects{(0..4).to_a.collect{HashDealer.roll(:has_many_object)}}
31
+ end
32
+
28
33
  HashDealer.define(:test_resource_errors) do
29
34
  errors({
30
35
  :name => ["can't be blank"],
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: api_resource
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.8
4
+ version: 0.3.10
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-07-31 00:00:00.000000000 Z
12
+ date: 2012-08-22 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
16
- requirement: !ruby/object:Gem::Requirement
16
+ requirement: &70140337780380 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,15 +21,10 @@ dependencies:
21
21
  version: '3'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ~>
28
- - !ruby/object:Gem::Version
29
- version: '3'
24
+ version_requirements: *70140337780380
30
25
  - !ruby/object:Gem::Dependency
31
26
  name: hash_dealer
32
- requirement: !ruby/object:Gem::Requirement
27
+ requirement: &70140337778740 !ruby/object:Gem::Requirement
33
28
  none: false
34
29
  requirements:
35
30
  - - ! '>='
@@ -37,15 +32,10 @@ dependencies:
37
32
  version: '0'
38
33
  type: :runtime
39
34
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ! '>='
44
- - !ruby/object:Gem::Version
45
- version: '0'
35
+ version_requirements: *70140337778740
46
36
  - !ruby/object:Gem::Dependency
47
37
  name: rest-client
48
- requirement: !ruby/object:Gem::Requirement
38
+ requirement: &70140337777260 !ruby/object:Gem::Requirement
49
39
  none: false
50
40
  requirements:
51
41
  - - ! '>='
@@ -53,15 +43,10 @@ dependencies:
53
43
  version: '0'
54
44
  type: :runtime
55
45
  prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ! '>='
60
- - !ruby/object:Gem::Version
61
- version: '0'
46
+ version_requirements: *70140337777260
62
47
  - !ruby/object:Gem::Dependency
63
48
  name: log4r
64
- requirement: !ruby/object:Gem::Requirement
49
+ requirement: &70140337776140 !ruby/object:Gem::Requirement
65
50
  none: false
66
51
  requirements:
67
52
  - - ! '>='
@@ -69,15 +54,10 @@ dependencies:
69
54
  version: '0'
70
55
  type: :runtime
71
56
  prerelease: false
72
- version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
- requirements:
75
- - - ! '>='
76
- - !ruby/object:Gem::Version
77
- version: '0'
57
+ version_requirements: *70140337776140
78
58
  - !ruby/object:Gem::Dependency
79
59
  name: differ
80
- requirement: !ruby/object:Gem::Requirement
60
+ requirement: &70140337774520 !ruby/object:Gem::Requirement
81
61
  none: false
82
62
  requirements:
83
63
  - - ! '>='
@@ -85,15 +65,10 @@ dependencies:
85
65
  version: '0'
86
66
  type: :runtime
87
67
  prerelease: false
88
- version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
- requirements:
91
- - - ! '>='
92
- - !ruby/object:Gem::Version
93
- version: '0'
68
+ version_requirements: *70140337774520
94
69
  - !ruby/object:Gem::Dependency
95
70
  name: colorize
96
- requirement: !ruby/object:Gem::Requirement
71
+ requirement: &70140337772480 !ruby/object:Gem::Requirement
97
72
  none: false
98
73
  requirements:
99
74
  - - ! '>='
@@ -101,15 +76,10 @@ dependencies:
101
76
  version: '0'
102
77
  type: :runtime
103
78
  prerelease: false
104
- version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
- requirements:
107
- - - ! '>='
108
- - !ruby/object:Gem::Version
109
- version: '0'
79
+ version_requirements: *70140337772480
110
80
  - !ruby/object:Gem::Dependency
111
81
  name: json
112
- requirement: !ruby/object:Gem::Requirement
82
+ requirement: &70140337771460 !ruby/object:Gem::Requirement
113
83
  none: false
114
84
  requirements:
115
85
  - - ! '>='
@@ -117,15 +87,10 @@ dependencies:
117
87
  version: '0'
118
88
  type: :runtime
119
89
  prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
- requirements:
123
- - - ! '>='
124
- - !ruby/object:Gem::Version
125
- version: '0'
90
+ version_requirements: *70140337771460
126
91
  - !ruby/object:Gem::Dependency
127
92
  name: pry
128
- requirement: !ruby/object:Gem::Requirement
93
+ requirement: &70140337767900 !ruby/object:Gem::Requirement
129
94
  none: false
130
95
  requirements:
131
96
  - - ! '>='
@@ -133,15 +98,10 @@ dependencies:
133
98
  version: '0'
134
99
  type: :development
135
100
  prerelease: false
136
- version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
- requirements:
139
- - - ! '>='
140
- - !ruby/object:Gem::Version
141
- version: '0'
101
+ version_requirements: *70140337767900
142
102
  - !ruby/object:Gem::Dependency
143
103
  name: pry-doc
144
- requirement: !ruby/object:Gem::Requirement
104
+ requirement: &70140337763860 !ruby/object:Gem::Requirement
145
105
  none: false
146
106
  requirements:
147
107
  - - ! '>='
@@ -149,15 +109,10 @@ dependencies:
149
109
  version: '0'
150
110
  type: :development
151
111
  prerelease: false
152
- version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
- requirements:
155
- - - ! '>='
156
- - !ruby/object:Gem::Version
157
- version: '0'
112
+ version_requirements: *70140337763860
158
113
  - !ruby/object:Gem::Dependency
159
114
  name: pry-nav
160
- requirement: !ruby/object:Gem::Requirement
115
+ requirement: &70140337760840 !ruby/object:Gem::Requirement
161
116
  none: false
162
117
  requirements:
163
118
  - - ! '>='
@@ -165,15 +120,10 @@ dependencies:
165
120
  version: '0'
166
121
  type: :development
167
122
  prerelease: false
168
- version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
- requirements:
171
- - - ! '>='
172
- - !ruby/object:Gem::Version
173
- version: '0'
123
+ version_requirements: *70140337760840
174
124
  - !ruby/object:Gem::Dependency
175
125
  name: rspec
176
- requirement: !ruby/object:Gem::Requirement
126
+ requirement: &70140337739640 !ruby/object:Gem::Requirement
177
127
  none: false
178
128
  requirements:
179
129
  - - ! '>='
@@ -181,15 +131,10 @@ dependencies:
181
131
  version: '0'
182
132
  type: :development
183
133
  prerelease: false
184
- version_requirements: !ruby/object:Gem::Requirement
185
- none: false
186
- requirements:
187
- - - ! '>='
188
- - !ruby/object:Gem::Version
189
- version: '0'
134
+ version_requirements: *70140337739640
190
135
  - !ruby/object:Gem::Dependency
191
136
  name: ruby-debug19
192
- requirement: !ruby/object:Gem::Requirement
137
+ requirement: &70140337737220 !ruby/object:Gem::Requirement
193
138
  none: false
194
139
  requirements:
195
140
  - - ! '>='
@@ -197,15 +142,10 @@ dependencies:
197
142
  version: '0'
198
143
  type: :development
199
144
  prerelease: false
200
- version_requirements: !ruby/object:Gem::Requirement
201
- none: false
202
- requirements:
203
- - - ! '>='
204
- - !ruby/object:Gem::Version
205
- version: '0'
145
+ version_requirements: *70140337737220
206
146
  - !ruby/object:Gem::Dependency
207
147
  name: growl
208
- requirement: !ruby/object:Gem::Requirement
148
+ requirement: &70140337735220 !ruby/object:Gem::Requirement
209
149
  none: false
210
150
  requirements:
211
151
  - - ! '>='
@@ -213,15 +153,10 @@ dependencies:
213
153
  version: '0'
214
154
  type: :development
215
155
  prerelease: false
216
- version_requirements: !ruby/object:Gem::Requirement
217
- none: false
218
- requirements:
219
- - - ! '>='
220
- - !ruby/object:Gem::Version
221
- version: '0'
156
+ version_requirements: *70140337735220
222
157
  - !ruby/object:Gem::Dependency
223
158
  name: rspec-rails
224
- requirement: !ruby/object:Gem::Requirement
159
+ requirement: &70140337733580 !ruby/object:Gem::Requirement
225
160
  none: false
226
161
  requirements:
227
162
  - - ! '>='
@@ -229,15 +164,10 @@ dependencies:
229
164
  version: '0'
230
165
  type: :development
231
166
  prerelease: false
232
- version_requirements: !ruby/object:Gem::Requirement
233
- none: false
234
- requirements:
235
- - - ! '>='
236
- - !ruby/object:Gem::Version
237
- version: '0'
167
+ version_requirements: *70140337733580
238
168
  - !ruby/object:Gem::Dependency
239
169
  name: factory_girl
240
- requirement: !ruby/object:Gem::Requirement
170
+ requirement: &70140337732020 !ruby/object:Gem::Requirement
241
171
  none: false
242
172
  requirements:
243
173
  - - ! '>='
@@ -245,15 +175,10 @@ dependencies:
245
175
  version: '0'
246
176
  type: :development
247
177
  prerelease: false
248
- version_requirements: !ruby/object:Gem::Requirement
249
- none: false
250
- requirements:
251
- - - ! '>='
252
- - !ruby/object:Gem::Version
253
- version: '0'
178
+ version_requirements: *70140337732020
254
179
  - !ruby/object:Gem::Dependency
255
180
  name: simplecov
256
- requirement: !ruby/object:Gem::Requirement
181
+ requirement: &70140337730580 !ruby/object:Gem::Requirement
257
182
  none: false
258
183
  requirements:
259
184
  - - ! '>='
@@ -261,15 +186,10 @@ dependencies:
261
186
  version: '0'
262
187
  type: :development
263
188
  prerelease: false
264
- version_requirements: !ruby/object:Gem::Requirement
265
- none: false
266
- requirements:
267
- - - ! '>='
268
- - !ruby/object:Gem::Version
269
- version: '0'
189
+ version_requirements: *70140337730580
270
190
  - !ruby/object:Gem::Dependency
271
191
  name: faker
272
- requirement: !ruby/object:Gem::Requirement
192
+ requirement: &70140337729080 !ruby/object:Gem::Requirement
273
193
  none: false
274
194
  requirements:
275
195
  - - ! '>='
@@ -277,15 +197,10 @@ dependencies:
277
197
  version: '0'
278
198
  type: :development
279
199
  prerelease: false
280
- version_requirements: !ruby/object:Gem::Requirement
281
- none: false
282
- requirements:
283
- - - ! '>='
284
- - !ruby/object:Gem::Version
285
- version: '0'
200
+ version_requirements: *70140337729080
286
201
  - !ruby/object:Gem::Dependency
287
202
  name: guard-bundler
288
- requirement: !ruby/object:Gem::Requirement
203
+ requirement: &70140337726760 !ruby/object:Gem::Requirement
289
204
  none: false
290
205
  requirements:
291
206
  - - ! '>='
@@ -293,15 +208,10 @@ dependencies:
293
208
  version: '0'
294
209
  type: :development
295
210
  prerelease: false
296
- version_requirements: !ruby/object:Gem::Requirement
297
- none: false
298
- requirements:
299
- - - ! '>='
300
- - !ruby/object:Gem::Version
301
- version: '0'
211
+ version_requirements: *70140337726760
302
212
  - !ruby/object:Gem::Dependency
303
213
  name: guard-rspec
304
- requirement: !ruby/object:Gem::Requirement
214
+ requirement: &70140337716360 !ruby/object:Gem::Requirement
305
215
  none: false
306
216
  requirements:
307
217
  - - ! '>='
@@ -309,15 +219,10 @@ dependencies:
309
219
  version: '0'
310
220
  type: :development
311
221
  prerelease: false
312
- version_requirements: !ruby/object:Gem::Requirement
313
- none: false
314
- requirements:
315
- - - ! '>='
316
- - !ruby/object:Gem::Version
317
- version: '0'
222
+ version_requirements: *70140337716360
318
223
  - !ruby/object:Gem::Dependency
319
224
  name: guard-spork
320
- requirement: !ruby/object:Gem::Requirement
225
+ requirement: &70140337713780 !ruby/object:Gem::Requirement
321
226
  none: false
322
227
  requirements:
323
228
  - - ! '>='
@@ -325,15 +230,10 @@ dependencies:
325
230
  version: '0'
326
231
  type: :development
327
232
  prerelease: false
328
- version_requirements: !ruby/object:Gem::Requirement
329
- none: false
330
- requirements:
331
- - - ! '>='
332
- - !ruby/object:Gem::Version
333
- version: '0'
233
+ version_requirements: *70140337713780
334
234
  - !ruby/object:Gem::Dependency
335
235
  name: mocha
336
- requirement: !ruby/object:Gem::Requirement
236
+ requirement: &70140337711860 !ruby/object:Gem::Requirement
337
237
  none: false
338
238
  requirements:
339
239
  - - ! '>='
@@ -341,15 +241,10 @@ dependencies:
341
241
  version: '0'
342
242
  type: :development
343
243
  prerelease: false
344
- version_requirements: !ruby/object:Gem::Requirement
345
- none: false
346
- requirements:
347
- - - ! '>='
348
- - !ruby/object:Gem::Version
349
- version: '0'
244
+ version_requirements: *70140337711860
350
245
  - !ruby/object:Gem::Dependency
351
246
  name: bundler
352
- requirement: !ruby/object:Gem::Requirement
247
+ requirement: &70140337710340 !ruby/object:Gem::Requirement
353
248
  none: false
354
249
  requirements:
355
250
  - - ! '>='
@@ -357,15 +252,10 @@ dependencies:
357
252
  version: '0'
358
253
  type: :development
359
254
  prerelease: false
360
- version_requirements: !ruby/object:Gem::Requirement
361
- none: false
362
- requirements:
363
- - - ! '>='
364
- - !ruby/object:Gem::Version
365
- version: '0'
255
+ version_requirements: *70140337710340
366
256
  - !ruby/object:Gem::Dependency
367
257
  name: jeweler
368
- requirement: !ruby/object:Gem::Requirement
258
+ requirement: &70140337702880 !ruby/object:Gem::Requirement
369
259
  none: false
370
260
  requirements:
371
261
  - - ~>
@@ -373,15 +263,10 @@ dependencies:
373
263
  version: 1.6.4
374
264
  type: :development
375
265
  prerelease: false
376
- version_requirements: !ruby/object:Gem::Requirement
377
- none: false
378
- requirements:
379
- - - ~>
380
- - !ruby/object:Gem::Version
381
- version: 1.6.4
266
+ version_requirements: *70140337702880
382
267
  - !ruby/object:Gem::Dependency
383
268
  name: activerecord
384
- requirement: !ruby/object:Gem::Requirement
269
+ requirement: &70140337701600 !ruby/object:Gem::Requirement
385
270
  none: false
386
271
  requirements:
387
272
  - - ~>
@@ -389,15 +274,10 @@ dependencies:
389
274
  version: '3'
390
275
  type: :development
391
276
  prerelease: false
392
- version_requirements: !ruby/object:Gem::Requirement
393
- none: false
394
- requirements:
395
- - - ~>
396
- - !ruby/object:Gem::Version
397
- version: '3'
277
+ version_requirements: *70140337701600
398
278
  - !ruby/object:Gem::Dependency
399
279
  name: sqlite3
400
- requirement: !ruby/object:Gem::Requirement
280
+ requirement: &70140337700580 !ruby/object:Gem::Requirement
401
281
  none: false
402
282
  requirements:
403
283
  - - ! '>='
@@ -405,12 +285,7 @@ dependencies:
405
285
  version: '0'
406
286
  type: :development
407
287
  prerelease: false
408
- version_requirements: !ruby/object:Gem::Requirement
409
- none: false
410
- requirements:
411
- - - ! '>='
412
- - !ruby/object:Gem::Version
413
- version: '0'
288
+ version_requirements: *70140337700580
414
289
  description: A replacement for ActiveResource for RESTful APIs that handles associated
415
290
  object and multiple data sources
416
291
  email: ejl6266@gmail.com
@@ -497,7 +372,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
497
372
  version: '0'
498
373
  segments:
499
374
  - 0
500
- hash: 3013751985320501547
375
+ hash: -1273974691501291187
501
376
  required_rubygems_version: !ruby/object:Gem::Requirement
502
377
  none: false
503
378
  requirements:
@@ -506,7 +381,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
506
381
  version: '0'
507
382
  requirements: []
508
383
  rubyforge_project:
509
- rubygems_version: 1.8.23
384
+ rubygems_version: 1.8.17
510
385
  signing_key:
511
386
  specification_version: 3
512
387
  summary: A replacement for ActiveResource for RESTful APIs that handles associated