Class: Synapse::ProcessManager::ProcessManager
Abstract
- Inherits:
-
Object
- Object
- Synapse::ProcessManager::ProcessManager
show all
- Includes:
- EventBus::EventListener
- Defined in:
- lib/synapse/process_manager/process_manager.rb
Overview
Represents a mechanism for managing the lifeycle and notification of process instances
Instance Attribute Summary collapse
Instance Method Summary
collapse
Constructor Details
#initialize(repository, factory, lock_manager, *process_types) ⇒ undefined
25
26
27
28
29
30
31
32
33
|
# File 'lib/synapse/process_manager/process_manager.rb', line 25
def initialize(repository, factory, lock_manager, *process_types)
@repository = repository
@factory = factory
@lock_manager = lock_manager
@process_types = process_types.flatten
@logger = Logging.logger[self.class]
@suppress_exceptions = true
end
|
Instance Attribute Details
12
13
14
|
# File 'lib/synapse/process_manager/process_manager.rb', line 12
def factory
@factory
end
|
9
10
11
|
# File 'lib/synapse/process_manager/process_manager.rb', line 9
def lock_manager
@lock_manager
end
|
15
16
17
|
# File 'lib/synapse/process_manager/process_manager.rb', line 15
def repository
@repository
end
|
#suppress_exceptions ⇒ Boolean
Returns true if exceptions will be logged silently
18
19
20
|
# File 'lib/synapse/process_manager/process_manager.rb', line 18
def suppress_exceptions
@suppress_exceptions
end
|
Instance Method Details
#notify(event) ⇒ undefined
37
38
39
40
41
42
43
44
45
46
47
|
# File 'lib/synapse/process_manager/process_manager.rb', line 37
def notify(event)
@process_types.each do |process_type|
correlation = process_type, event
if correlation
current = notify_current_processes process_type, event, correlation
if should_start_new_process process_type, event, current
start_new_process process_type, event, correlation
end
end
end
end
|