hyper-resource 1.0.0.lap51 → 1.0.0.lap52

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
  SHA256:
3
- metadata.gz: 166d7738a8242d4a8a7fd15a48c97afe4e76d1378349414797e3903228dd3e65
4
- data.tar.gz: 5ef6c17b6754100a4981a1483c190077754563c857aa38473612a8684904c36b
3
+ metadata.gz: 41dc65786cdf2de22be1a66f7488e76fe351eb860ee88f2da30425cebba57972
4
+ data.tar.gz: 1762216f5514efa11b5c6be372b139e7cb96b80c3b18e75be633919bdf7bc95c
5
5
  SHA512:
6
- metadata.gz: 8ec68eb7cda9c4a194bd960ec1d1e1b056864c062a874405883dae1773aa3f9699751eba8bef2fcd4f141a2b77c77f25c6bd4c96684dfaa8f33dafd1cea4430e
7
- data.tar.gz: 93aa6d5fbb63da6eae65f93d07942abbd59dea6f685ed26a87e5de3be74cfd42a38c15cc5de150c9ab9c7bfe2718ebeba335780c6fa2dd242987fdf2ebc23914
6
+ metadata.gz: 8d3b3dd31ebcccd1ee8ed93e57c7886b7d183dac79e9641f5cb2cdaa384051b87b1a29e6dba68d08111188b14dbb943db1b655e0cf21382f830dc2ed3e5bf833
7
+ data.tar.gz: 6299398e17aca9704eff38065617ccf92e9428d2be2eb5f7f5ec04ef074c78e388ae3b102342e6985159a88d520a78ff5e63811be1b5c271158896b9647b0c52
@@ -64,6 +64,9 @@ module HyperRecord
64
64
  @relations[name]
65
65
  end
66
66
  end
67
+ define_method("update_#{name}") do
68
+ @fetch_states[name] = 'u'
69
+ end
67
70
  define_method("#{name}=") do |arg|
68
71
  _register_observer
69
72
  @relations[name] = arg
@@ -161,6 +164,9 @@ module HyperRecord
161
164
  @relations[name]
162
165
  end
163
166
  end
167
+ define_method("update_#{name}") do
168
+ @fetch_states[name] = 'u'
169
+ end
164
170
  define_method("#{name}=") do |arg|
165
171
  _register_observer
166
172
  collection = if arg.is_a?(Array)
@@ -209,6 +215,9 @@ module HyperRecord
209
215
  @relations[name]
210
216
  end
211
217
  end
218
+ define_method("update_#{name}") do
219
+ @fetch_states[name] = 'u'
220
+ end
212
221
  define_method("#{name}=") do |arg|
213
222
  _register_observer
214
223
  collection = if arg.is_a?(Array)
@@ -256,6 +265,9 @@ module HyperRecord
256
265
  @relations[name]
257
266
  end
258
267
  end
268
+ define_method("update_#{name}") do
269
+ @fetch_states[name] = 'u'
270
+ end
259
271
  define_method("#{name}=") do |arg|
260
272
  _register_observer
261
273
  @relations[name] = arg
@@ -375,6 +387,23 @@ module HyperRecord
375
387
  end
376
388
 
377
389
  def scope(name, options)
390
+ define_singleton_method("promise_#{name}") do |*args|
391
+ name_args = if args.size > 0
392
+ "#{name}_#{args.to_json}"
393
+ else
394
+ name
395
+ end
396
+ self._promise_get_or_patch("#{resource_base_uri}/scopes/#{name}.json", *args).then do |response_json|
397
+ scopes[name_args] = _convert_array_to_collection(response_json[self.to_s.underscore][name])
398
+ _class_fetch_states[name_args] = 'f'
399
+ _notify_class_observers
400
+ scopes[name_args]
401
+ end.fail do |response|
402
+ error_message = "#{self.to_s}.#{name_args}, a scope, failed to fetch records!"
403
+ `console.error(error_message)`
404
+ response
405
+ end
406
+ end
378
407
  define_singleton_method(name) do |*args|
379
408
  name_args = if args.size > 0
380
409
  "#{name}_#{args.to_json}"
@@ -386,19 +415,18 @@ module HyperRecord
386
415
  scopes[name_args]
387
416
  else
388
417
  _register_class_observer
389
- self._promise_get_or_patch("#{resource_base_uri}/scopes/#{name}.json", *args).then do |response_json|
390
- scopes[name_args] = _convert_array_to_collection(response_json[self.to_s.underscore][name])
391
- _class_fetch_states[name_args] = 'f'
392
- _notify_class_observers
393
- scopes[name_args]
394
- end.fail do |response|
395
- error_message = "#{self.to_s}.#{name_args}, a scope, failed to fetch records!"
396
- `console.error(error_message)`
397
- response
398
- end
418
+ self.send("promise_#{name}", *args)
399
419
  scopes[name_args]
400
420
  end
401
421
  end
422
+ define_singleton_method("update_#{name}") do |*args|
423
+ name_args = if args.size > 0
424
+ "#{name}_#{args.to_json}"
425
+ else
426
+ name
427
+ end
428
+ _class_fetch_states[name_args] = 'u'
429
+ end
402
430
  end
403
431
 
404
432
  def scopes
@@ -1,5 +1,5 @@
1
1
  module Hyperloop
2
2
  module Resource
3
- VERSION = '1.0.0.lap51'
3
+ VERSION = '1.0.0.lap52'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hyper-resource
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0.lap51
4
+ version: 1.0.0.lap52
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Biedermann
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-04-23 00:00:00.000000000 Z
11
+ date: 2018-04-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: opal