roda-endpoints 0.3.3 → 0.3.4
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ef92cddbc54803e6fae07283c145e72db5231397
|
4
|
+
data.tar.gz: f434332c7108844d01fb5ef6e79702ae945ceec5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e815f82b5ee74d36e8eb27372b5cca397d215e4696d709f4e70d73478a1f2847d81e87b39c779e0a20563efec36828a5c2541af04b32cb560a109ba0c9920dbc
|
7
|
+
data.tar.gz: 47831e5d124a7d33a41ed06926d5b25d9faff4b2ffcaea93053a7865ec88b07582a8aa01b9403132e1fec8bb7191a80f3773bae539e3f721026315d0bc859e19
|
data/.rubocop.yml
CHANGED
@@ -17,11 +17,14 @@ Metrics/ModuleLength:
|
|
17
17
|
Exclude:
|
18
18
|
- lib/roda/plugins/endpoints.rb
|
19
19
|
|
20
|
+
Metrics/ParameterLists:
|
21
|
+
Exclude:
|
22
|
+
- lib/roda/plugins/endpoints.rb
|
23
|
+
|
20
24
|
# It is 2017, UTF time!
|
21
25
|
Style/AsciiComments:
|
22
26
|
Enabled: false
|
23
27
|
|
24
|
-
|
25
28
|
# Offense count: 1
|
26
29
|
Lint/AmbiguousOperator:
|
27
30
|
Exclude:
|
@@ -47,7 +47,9 @@ class Roda
|
|
47
47
|
|
48
48
|
# @return [Symbol]
|
49
49
|
def type
|
50
|
-
@type ||= Inflecto.underscore(Inflecto.demodulize(
|
50
|
+
@type ||= Inflecto.underscore(Inflecto.demodulize(
|
51
|
+
name || superclass.name
|
52
|
+
)).to_sym
|
51
53
|
end
|
52
54
|
|
53
55
|
# @param [Symbol] verb
|
@@ -68,7 +70,7 @@ class Roda
|
|
68
70
|
end
|
69
71
|
define_method(verb, &block)
|
70
72
|
key = "operations.#{type}.#{verb}"
|
71
|
-
container.register key, block
|
73
|
+
container.register key, block unless container.key? key
|
72
74
|
end
|
73
75
|
|
74
76
|
# @param [String, Symbol] key
|
@@ -16,14 +16,10 @@ class Roda
|
|
16
16
|
self.attributes += %i(finder last_modified)
|
17
17
|
self.defaults = defaults.merge(
|
18
18
|
last_modified: :updated_at,
|
19
|
-
by: :fetch,
|
20
19
|
on: :id,
|
21
|
-
finder: -> { repository.
|
20
|
+
finder: -> { repository.find(id) }
|
22
21
|
)
|
23
22
|
|
24
|
-
# @return [Symbol]
|
25
|
-
attr_reader :by
|
26
|
-
|
27
23
|
# @return [Symbol]
|
28
24
|
attr_reader :on
|
29
25
|
|
@@ -59,26 +55,6 @@ class Roda
|
|
59
55
|
end
|
60
56
|
end
|
61
57
|
|
62
|
-
transaction :get do |endpoint|
|
63
|
-
step :retrieve, with: endpoint.operation_for(:get)
|
64
|
-
end
|
65
|
-
|
66
|
-
transaction :patch do |endpoint|
|
67
|
-
step :validate, with: endpoint.validation_for(:patch)
|
68
|
-
step :persist, with: endpoint.operation_for(:patch)
|
69
|
-
end
|
70
|
-
|
71
|
-
transaction :put do |endpoint|
|
72
|
-
step :validate, with: endpoint.validation_for(:put)
|
73
|
-
# step :reset, with: 'endpoints.operations.reset'
|
74
|
-
step :persist, with: endpoint.operation_for(:put)
|
75
|
-
end
|
76
|
-
|
77
|
-
transaction :delete do |endpoint|
|
78
|
-
step :validate, with: endpoint.validation_for(:delete)
|
79
|
-
step :persist, with: endpoint.operation_for(:delete)
|
80
|
-
end
|
81
|
-
|
82
58
|
# @route GET /{collection.name}/{id}
|
83
59
|
# @!method get(params)
|
84
60
|
# @param [Hash] params
|
@@ -118,6 +94,26 @@ class Roda
|
|
118
94
|
Left(result)
|
119
95
|
end
|
120
96
|
end
|
97
|
+
|
98
|
+
transaction :get do |endpoint|
|
99
|
+
step :retrieve, with: endpoint.operation_for(:get)
|
100
|
+
end
|
101
|
+
|
102
|
+
transaction :patch do |endpoint|
|
103
|
+
step :validate, with: endpoint.validation_for(:patch)
|
104
|
+
step :persist, with: endpoint.operation_for(:patch)
|
105
|
+
end
|
106
|
+
|
107
|
+
transaction :put do |endpoint|
|
108
|
+
step :validate, with: endpoint.validation_for(:put)
|
109
|
+
# step :reset, with: 'endpoints.operations.reset'
|
110
|
+
step :persist, with: endpoint.operation_for(:put)
|
111
|
+
end
|
112
|
+
|
113
|
+
transaction :delete do |endpoint|
|
114
|
+
step :validate, with: endpoint.validation_for(:delete)
|
115
|
+
step :persist, with: endpoint.operation_for(:delete)
|
116
|
+
end
|
121
117
|
end
|
122
118
|
end
|
123
119
|
end
|