class Materialist::Materializer::Internals::LinkHrefMapping

Public Class Methods

new(key:, as:, url_parser: nil) click to toggle source
# File lib/materialist/materializer/internals/link_href_mapping.rb, line 5
def initialize(key:, as:, url_parser: nil)
  @key = key
  @as = as
  @url_parser = url_parser
end

Public Instance Methods

map(resource) click to toggle source
# File lib/materialist/materializer/internals/link_href_mapping.rb, line 11
def map(resource)
  return unless link = resource.dig(:_links, @key)
  { @as => url_parser.call(link[:href]) }
end

Private Instance Methods

url_parser() click to toggle source
# File lib/materialist/materializer/internals/link_href_mapping.rb, line 18
def url_parser
  @url_parser || ->url { url }
end