Class: SplitIoClient::SSE::NotificationManagerKeeper
- Inherits:
-
Object
- Object
- SplitIoClient::SSE::NotificationManagerKeeper
- Defined in:
- lib/splitclient-rb/sse/notification_manager_keeper.rb
Constant Summary collapse
- DISABLED =
0
- ENABLED =
1
- PAUSED =
2
Instance Method Summary collapse
- #handle_incoming_occupancy_event(event) ⇒ Object
-
#initialize(config, telemetry_runtime_producer, status_queue) ⇒ NotificationManagerKeeper
constructor
A new instance of NotificationManagerKeeper.
Constructor Details
#initialize(config, telemetry_runtime_producer, status_queue) ⇒ NotificationManagerKeeper
Returns a new instance of NotificationManagerKeeper.
12 13 14 15 16 17 18 19 |
# File 'lib/splitclient-rb/sse/notification_manager_keeper.rb', line 12 def initialize(config, telemetry_runtime_producer, status_queue) @config = config @telemetry_runtime_producer = telemetry_runtime_producer @status_queue = status_queue @publisher_available = Concurrent::AtomicBoolean.new(true) @publishers_pri = Concurrent::AtomicFixnum.new @publishers_sec = Concurrent::AtomicFixnum.new end |
Instance Method Details
#handle_incoming_occupancy_event(event) ⇒ Object
21 22 23 24 25 26 27 28 29 |
# File 'lib/splitclient-rb/sse/notification_manager_keeper.rb', line 21 def handle_incoming_occupancy_event(event) if event.data['type'] == 'CONTROL' process_event_control(event.data['controlType']) else process_event_occupancy(event.channel, event.data['metrics']['publishers']) end rescue StandardError => e @config.logger.error(e) end |