Module: Croods::Resource::JsonSchema::Links
- Defined in:
- lib/croods/resource/json_schema/links.rb,
lib/croods/resource/json_schema/links/show.rb,
lib/croods/resource/json_schema/links/index.rb,
lib/croods/resource/json_schema/links/create.rb,
lib/croods/resource/json_schema/links/member.rb,
lib/croods/resource/json_schema/links/update.rb,
lib/croods/resource/json_schema/links/destroy.rb,
lib/croods/resource/json_schema/links/collection.rb
Defined Under Namespace
Modules: Collection, Create, Destroy, Index, Member, Show, Update
Class Method Summary
collapse
Class Method Details
.action_module(name) ⇒ Object
32
33
34
35
|
# File 'lib/croods/resource/json_schema/links.rb', line 32
def action_module(name)
"Croods::Resource::JsonSchema::Links::#{name.to_s.camelize}"
.constantize
end
|
.actions(resource) ⇒ Object
20
21
22
23
24
|
# File 'lib/croods/resource/json_schema/links.rb', line 20
def actions(resource)
resource.actions.map do |action|
action_module(action.name).link(resource)
end
end
|
.additional_actions(resource) ⇒ Object
26
27
28
29
30
|
# File 'lib/croods/resource/json_schema/links.rb', line 26
def additional_actions(resource)
resource.additional_actions.map do |action|
action_module(action.on).link(resource, action)
end
end
|
.schema(resource) ⇒ Object
16
17
18
|
# File 'lib/croods/resource/json_schema/links.rb', line 16
def schema(resource)
additional_actions(resource) + actions(resource)
end
|