api_resource 0.3.8 → 0.3.10

Sign up to get free protection for your applications and to get access to all the features.
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