class Synapse::Repository::LockCleaningUnitOfWorkListener

Unit of work listener that releases the lock on an aggregate when the unit of work is cleaning up

Public Class Methods

new(aggregate_id, lock_manager) click to toggle source

@param [Object] aggregate_id @param [LockManager] lock_manager @return [undefined]

# File lib/synapse/repository/locking.rb, line 138
def initialize(aggregate_id, lock_manager)
  @aggregate_id = aggregate_id
  @lock_manager = lock_manager
end

Public Instance Methods

on_cleanup(unit) click to toggle source

@param [UnitOfWork] unit @return [undefined]

# File lib/synapse/repository/locking.rb, line 145
def on_cleanup(unit)
  @lock_manager.release_lock @aggregate_id
end