Class: Synapse::Repository::LockCleaningUnitOfWorkListener

Inherits:
UnitOfWork::UnitOfWorkListener show all
Defined in:
lib/synapse/repository/locking.rb

Overview

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

Instance Method Summary collapse

Methods inherited from UnitOfWork::UnitOfWorkListener

#after_commit, #on_event_registered, #on_prepare_commit, #on_prepare_transaction_commit, #on_rollback, #on_start

Constructor Details

#initialize(aggregate_id, lock_manager) ⇒ undefined

Parameters:



90
91
92
93
# File 'lib/synapse/repository/locking.rb', line 90

def initialize(aggregate_id, lock_manager)
  @aggregate_id = aggregate_id
  @lock_manager = lock_manager
end

Instance Method Details

#on_cleanup(unit) ⇒ undefined

Parameters:

Returns:

  • (undefined)


97
98
99
# File 'lib/synapse/repository/locking.rb', line 97

def on_cleanup(unit)
  @lock_manager.release_lock @aggregate_id
end