Sha256: 2c0a1612c75fe087ea7a64c1995d4b1bc974a1f33e0b7581c0039f9c18263707

Contents?: true

Size: 604 Bytes

Versions: 20

Compression:

Stored size: 604 Bytes

Contents

class VisibilityCopyJob < ActiveJob::Base
  queue_as :permissions

  def perform(work)
    work.file_sets.each do |file|
      file.visibility = work.visibility # visibility must come first, because it can clear an embargo/lease
      if work.lease
        file.build_lease unless file.lease
        file.lease.attributes = work.lease.attributes.except('id')
        file.lease.save
      end
      if work.embargo
        file.build_embargo unless file.embargo
        file.embargo.attributes = work.embargo.attributes.except('id')
        file.embargo.save
      end
      file.save!
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
curation_concerns-1.0.0.beta1 app/jobs/visibility_copy_job.rb
curation_concerns-0.14.0 app/jobs/visibility_copy_job.rb
curation_concerns-0.14.0.pre4 app/jobs/visibility_copy_job.rb
curation_concerns-0.14.0.pre3 app/jobs/visibility_copy_job.rb
curation_concerns-0.14.0.pre2 app/jobs/visibility_copy_job.rb
curation_concerns-0.14.0.pre1 app/jobs/visibility_copy_job.rb
curation_concerns-0.13.1 app/jobs/visibility_copy_job.rb
curation_concerns-0.13.0 app/jobs/visibility_copy_job.rb
curation_concerns-0.12.0 app/jobs/visibility_copy_job.rb
curation_concerns-0.12.0.pre9 app/jobs/visibility_copy_job.rb
curation_concerns-0.12.0.pre8 app/jobs/visibility_copy_job.rb
curation_concerns-0.12.0.pre7 app/jobs/visibility_copy_job.rb
curation_concerns-0.12.0.pre6 app/jobs/visibility_copy_job.rb
curation_concerns-0.12.0.pre5 app/jobs/visibility_copy_job.rb
curation_concerns-0.12.0.pre4 app/jobs/visibility_copy_job.rb
curation_concerns-0.12.0.pre3 app/jobs/visibility_copy_job.rb
curation_concerns-0.12.0.pre2 app/jobs/visibility_copy_job.rb
curation_concerns-0.12.0.pre1 app/jobs/visibility_copy_job.rb
curation_concerns-0.11.0 app/jobs/visibility_copy_job.rb
curation_concerns-0.11.0.rc1 app/jobs/visibility_copy_job.rb