Class: ShafClient::ResourceExtension::AlpsHttpMethod

Inherits:
Base
  • Object
show all
Defined in:
lib/shaf_client/resource_extension/alps_http_method.rb

Class Method Summary collapse

Methods inherited from Base

inherited

Class Method Details

.call(profile, base, link_relations, _client) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/shaf_client/resource_extension/alps_http_method.rb', line 5

def call(profile, base, link_relations, _client)
  return unless profile.is_a? AlpsJson
  return unless base <= Resource

  link_relations = Array(link_relations).compact
  descriptors = descriptors_with_http_method(profile)
  descriptors.keep_if do |descriptor|
    link_relations.include? identifier_for(descriptor)&.to_sym
  end

  extension_for(descriptors)
end