Class: CurationConcerns::Actors::LeaseActor

Inherits:
Object
  • Object
show all
Defined in:
app/actors/curation_concerns/actors/lease_actor.rb

Overview

Since:

  • 0.14.0

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(work) ⇒ LeaseActor

Returns a new instance of LeaseActor.

Parameters:

  • work (Hydra::Works::Work)

Since:

  • 0.14.0



7
8
9
# File 'app/actors/curation_concerns/actors/lease_actor.rb', line 7

def initialize(work)
  @work = work
end

Instance Attribute Details

#workObject (readonly)

Since:

  • 0.14.0



4
5
6
# File 'app/actors/curation_concerns/actors/lease_actor.rb', line 4

def work
  @work
end

Instance Method Details

#destroyObject

Update the visibility of the work to match the correct state of the lease, then clear the lease date, etc. Saves the lease and the work

Since:

  • 0.14.0



13
14
15
16
17
18
# File 'app/actors/curation_concerns/actors/lease_actor.rb', line 13

def destroy
  work.lease_visibility! # If the lease has lapsed, update the current visibility.
  work.deactivate_lease!
  work.lease.save!
  work.save!
end