Class: Hyrax::Actors::LeaseActor

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(work) ⇒ LeaseActor

Returns a new instance of LeaseActor.

Parameters:

  • work (Hydra::Works::Work)

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

def initialize(work)
  @work = work
end

Instance Attribute Details

#workObject (readonly)

Returns the value of attribute work


4
5
6
# File 'app/actors/hyrax/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


13
14
15
16
17
18
# File 'app/actors/hyrax/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