class ActiveFedora::Associations::DeleteProxy

Attributes

proxy_class[R]
proxy_ids[R]

Public Class Methods

call(proxy_ids:, proxy_class:) click to toggle source
# File lib/active_fedora/associations/delete_proxy.rb, line 3
def self.call(proxy_ids:, proxy_class:)
  new(proxy_ids: proxy_ids, proxy_class: proxy_class).run
end
new(proxy_ids:, proxy_class:) click to toggle source
# File lib/active_fedora/associations/delete_proxy.rb, line 8
def initialize(proxy_ids:, proxy_class:)
  @proxy_ids = proxy_ids
  @proxy_class = proxy_class
end

Public Instance Methods

run() click to toggle source
# File lib/active_fedora/associations/delete_proxy.rb, line 13
def run
  proxies.each(&:delete)
end

Private Instance Methods

proxies() click to toggle source
# File lib/active_fedora/associations/delete_proxy.rb, line 19
def proxies
  @proxies ||= proxy_ids.map { |uri| uri_to_proxy(uri) }
end
uri_to_proxy(uri) click to toggle source
# File lib/active_fedora/associations/delete_proxy.rb, line 23
def uri_to_proxy(uri)
  proxy_class.find(proxy_class.uri_to_id(uri))
end