apiphobic-resource 1.1.0 → 1.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/lib/apiphobic/resource/collection.rb +4 -0
- data/lib/apiphobic/resource/model.rb +15 -6
- data/lib/apiphobic/resource/version.rb +1 -1
- metadata +3 -3
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 31a78915ec7034d917d846557f5867718feeaa97f3fdbb373b7ea174a4f95c12
|
4
|
+
data.tar.gz: 31cf54f24c9111e49d0d7cc71e49189e94e17483b12b451ad249a929190b1cf0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9e8ec00ebd24c69bf4859846b86695f672a468315f28dc2e30d567361072d62e818a8d313eae98b080e886c8b452878c5cc31ac17f4e2e462e44842f5182b932
|
7
|
+
data.tar.gz: 9430cc440e0093fcc8459c45c88e5dfb2d3196cf3dd44017a14ddb674dae4e21c2cfd8566923c5c6d9bcf9f5befa2b226609073fa7b476bfce1ca7d118f64945
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
@@ -15,25 +15,34 @@ class Model
|
|
15
15
|
|
16
16
|
DEFAULT_PROCESSORS = %w{including}.freeze
|
17
17
|
|
18
|
-
attr_accessor :
|
18
|
+
attr_accessor :id,
|
19
|
+
:resource,
|
19
20
|
:parameters
|
20
21
|
attr_reader :processors
|
21
22
|
|
22
|
-
def_delegators :
|
23
|
+
def_delegators :processed,
|
23
24
|
:assign_attributes,
|
24
25
|
:delete,
|
25
26
|
:save!,
|
26
|
-
:save
|
27
|
+
:save,
|
28
|
+
:subscribe
|
27
29
|
|
28
|
-
def initialize(resource:, parameters:, **options)
|
30
|
+
def initialize(resource:, id:, parameters:, **options)
|
31
|
+
self.id = id
|
29
32
|
self.resource = resource
|
30
33
|
self.parameters = parameters.dup
|
31
34
|
self.processors = options.fetch(:processors, self.class::DEFAULT_PROCESSORS)
|
32
35
|
end
|
33
36
|
|
34
37
|
def processed
|
35
|
-
@processed ||=
|
36
|
-
|
38
|
+
@processed ||= begin
|
39
|
+
processed = processors.inject(resource) do |processed_resource, processor|
|
40
|
+
processor.processed(processed_resource, parameters)
|
41
|
+
end
|
42
|
+
|
43
|
+
return processed if instance_of?(::Apiphobic::Resource::Collection)
|
44
|
+
|
45
|
+
processed.find_by(id: id) || processed.new
|
37
46
|
end
|
38
47
|
end
|
39
48
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: apiphobic-resource
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- thegranddesign
|
@@ -31,7 +31,7 @@ cert_chain:
|
|
31
31
|
Y2GAoHKstmfIVhc4XHOPpmTd2o/C29O9oaRgjrkfQEhF/KvJ/PhoV5hvokzsCyI5
|
32
32
|
iUeXPfvrGD/itYIBCgk+fnzyQQ4QtE5hTQaWQ3o2
|
33
33
|
-----END CERTIFICATE-----
|
34
|
-
date: 2018-
|
34
|
+
date: 2018-07-09 00:00:00.000000000 Z
|
35
35
|
dependencies:
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rspec
|
@@ -105,7 +105,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
105
105
|
version: '0'
|
106
106
|
requirements: []
|
107
107
|
rubyforge_project:
|
108
|
-
rubygems_version: 2.7.
|
108
|
+
rubygems_version: 2.7.7
|
109
109
|
signing_key:
|
110
110
|
specification_version: 4
|
111
111
|
summary: API Resources
|
metadata.gz.sig
CHANGED
Binary file
|