class ActiveFedora::Associations::IDComposite
A composite object for an array of IDs. This abstracts away the fact that an ID might be either a relative ID or a URI to a resource.
Attributes
id_translator[R]
ids[R]
Public Class Methods
new(ids, id_translator)
click to toggle source
@param [Array<#to_s>] ids An array of ids or URIs to convert to IDs. @param [#call] id_translator
An object to handle the conversion of a URI
to an ID.
# File lib/active_fedora/associations/id_composite.rb, line 11 def initialize(ids, id_translator) @ids = ids @id_translator = id_translator end
Public Instance Methods
each() { |convert(id)| ... }
click to toggle source
@return [Array<relative_id>]
# File lib/active_fedora/associations/id_composite.rb, line 17 def each ids.each do |id| yield convert(id) end end
Private Instance Methods
convert(id)
click to toggle source
# File lib/active_fedora/associations/id_composite.rb, line 25 def convert(id) if id.to_s.start_with?("http") id_translator.call(id) else id end end