Sha256: df5bc88fe9cda832118229aef44a0181ad1a5045a91e735b42ac2f1d7824dc46

Contents?: true

Size: 579 Bytes

Versions: 47

Compression:

Stored size: 579 Bytes

Contents

class VisibilityCopyJob < ActiveJob::Base
  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

47 entries across 47 versions & 3 rubygems

Version Path
hyrax-1.1.1 app/jobs/visibility_copy_job.rb
hyrax-1.1.0 app/jobs/visibility_copy_job.rb
hyrax-1.0.5 app/jobs/visibility_copy_job.rb
curation_concerns-1.7.8 app/jobs/visibility_copy_job.rb
hyrax-1.0.4 app/jobs/visibility_copy_job.rb
hyrax-1.0.3 app/jobs/visibility_copy_job.rb
hyrax-1.0.2 app/jobs/visibility_copy_job.rb
hyrax-1.0.1 app/jobs/visibility_copy_job.rb
hyrax-1.0.0.rc2 app/jobs/visibility_copy_job.rb
curation_concerns-1.7.7 app/jobs/visibility_copy_job.rb
curation_concerns-2.0.0 app/jobs/visibility_copy_job.rb
curation_concerns-2.0.0.rc2 app/jobs/visibility_copy_job.rb
hyrax-1.0.0.rc1 app/jobs/visibility_copy_job.rb
curation_concerns-1.7.6 app/jobs/visibility_copy_job.rb
curation_concerns-1.7.5 app/jobs/visibility_copy_job.rb
test_hyrax-0.0.1.alpha app/jobs/visibility_copy_job.rb
curation_concerns-1.7.4 app/jobs/visibility_copy_job.rb
curation_concerns-1.7.3 app/jobs/visibility_copy_job.rb
curation_concerns-1.7.2 app/jobs/visibility_copy_job.rb
curation_concerns-2.0.0.rc1 app/jobs/visibility_copy_job.rb