Class: Crabfarm::Engines::SyncStateManager
- Inherits:
-
Object
- Object
- Crabfarm::Engines::SyncStateManager
show all
- Defined in:
- lib/crabfarm/engines/sync_state_manager.rb
Instance Method Summary
collapse
Constructor Details
Returns a new instance of SyncStateManager.
8
9
10
11
|
# File 'lib/crabfarm/engines/sync_state_manager.rb', line 8
def initialize(_context)
@context = _context
@lock = Mutex.new
end
|
Instance Method Details
#reload! ⇒ Object
13
14
15
16
17
18
|
# File 'lib/crabfarm/engines/sync_state_manager.rb', line 13
def reload!
@lock.synchronize {
ActiveSupport::Dependencies.clear
@context.reset
}
end
|
#reset ⇒ Object
20
21
22
23
24
|
# File 'lib/crabfarm/engines/sync_state_manager.rb', line 20
def reset
@lock.synchronize {
@context.reset
}
end
|
#transition(_name, _params = {}) ⇒ Object
26
27
28
29
30
31
32
33
34
35
36
|
# File 'lib/crabfarm/engines/sync_state_manager.rb', line 26
def transition(_name, _params={})
@lock.synchronize {
output = { name: _name, params: _params }
output[:elapsed] = Benchmark.measure do
output[:doc] = TransitionService.apply_state(@context, _name, _params).output_as_json
end
OpenStruct.new output
}
end
|