Class: BulkOps::ResolveChildrenJob

Inherits:
ActiveJob::Base
  • Object
show all
Defined in:
lib/bulk_ops/resolve_children_job.rb

Instance Method Summary collapse

Instance Method Details

#perform(proxy_id) ⇒ Object



3
4
5
6
7
8
9
10
11
12
# File 'lib/bulk_ops/resolve_children_job.rb', line 3

def perform(proxy_id)
  proxy = BulkOps::WorkProxy.find(proxy_id)
  if proxy.ordered_children.all?{|child| child.work_id.present?}
    work = ActiveFedora::Base.find(proxy.work_id)
    work.ordered_member_ids = proxy.ordered_children.map(&:work_id)
    work.save
  else
    BulkOps::ResolveChildrenJob.set(wait: 30.minutes).perform_later(proxy_id)
  end
end