Sha256: 871a751d2d90d939baceba49700029ed2dbdd92f728d9b274f1b22a1d8740be6

Contents?: true

Size: 768 Bytes

Versions: 6

Compression:

Stored size: 768 Bytes

Contents

class VisibilityCopyWorker
  def queue_name
    :permissions
  end

  attr_accessor :pid

  def initialize(pid)
    self.pid = pid
  end

  def run
    work = ActiveFedora::Base.find(pid)
    work.generic_files.each do |file|
      # visibility must come first, because it can clear an embargo/lease
      file.visibility = work.visibility

      file.embargo_release_date = work.embargo_release_date
      file.visibility_during_embargo = work.visibility_during_embargo
      file.visibility_after_embargo = work.visibility_after_embargo

      file.lease_expiration_date = work.lease_expiration_date
      file.visibility_during_lease = work.visibility_during_lease
      file.visibility_after_lease = work.visibility_after_lease
      file.save!
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
worthwhile-0.1.2 app/workers/visibility_copy_worker.rb
worthwhile-0.1.1 app/workers/visibility_copy_worker.rb
worthwhile-0.1.0 app/workers/visibility_copy_worker.rb
worthwhile-0.0.3 app/workers/visibility_copy_worker.rb
worthwhile-0.0.2 app/workers/visibility_copy_worker.rb
worthwhile-0.0.1 app/workers/visibility_copy_worker.rb