Module: OnStomp::Failover::FailoverEvents
- Includes:
- Interfaces::EventManager
- Included in:
- Client
- Defined in:
- lib/onstomp/failover/failover_events.rb
Overview
Events mixin for failover clients.
Class Method Summary (collapse)
-
+ (Object) create_client_event_method(name)
Creates a forwarded binding for client events.
Instance Method Summary (collapse)
-
- (Object) after_failover_retry {|failover, attempt, client| ... }
Binds a callback to be invoked when a failover client is attempting to connect through a new client in its Client#pool.
-
- (Object) before_failover_retry {|failover, attempt, client| ... }
Binds a callback to be invoked when a failover client is attempting to connect through a new client in its Client#pool.
-
- (Object) bind_client_event(name, block)
Sets up a forwarded event binding, applying it to all clients in Client#client_pool.
-
- (Object) failover_connect_failure {|failover, client, error_message| ... }
Binds a callback to be invoked when a failover client fails to establish a connection through a client while reconnecting.
-
- (Object) failover_connected {|failover, client| ... }
Binds a callback to be invoked when a connection through a client is established.
-
- (Object) failover_lost {|failover, client| ... }
create_event_methods :failover_retries_exceeded, :on Binds a callback to be invoked when an established connection through a client is lost.
-
- (Object) failover_retries_exceeded {|failover| ... }
Binds a callback to be invoked when the maximum retries has been exceeded.
-
- (Object) failover_retry {|failover, attempt, client| ... }
Binds a callback to be invoked when a failover client is attempting to connect through a new client in its Client#pool.
-
- (Object) on_connection_closed(&block)
Binds a callback to Client#on_connection_closed.
-
- (Object) on_connection_died(&block)
Binds a callback to Client#on_connection_died.
-
- (Object) on_connection_established(&block)
Binds a callback to Client#on_connction_established.
-
- (Object) on_connection_terminated(&block)
Binds a callback to Client#on_connection_terminated.
-
- (Object) on_failover_connect_failure {|failover, client, error_message| ... }
Binds a callback to be invoked when a failover client fails to establish a connection through a client while reconnecting.
-
- (Object) on_failover_connected {|failover, client| ... }
Binds a callback to be invoked when a connection through a client is established.
-
- (Object) on_failover_lost {|failover, client| ... }
create_event_methods :failover_retries_exceeded, :on Binds a callback to be invoked when an established connection through a client is lost.
-
- (Object) on_failover_retries_exceeded {|failover| ... }
Binds a callback to be invoked when the maximum retries has been exceeded.
-
- (Object) trigger_failover_event(ev, pref, *args)
Triggers a general failover event.
-
- (Object) trigger_failover_retry(pref, attempt)
Triggers a failover retry event.
Methods included from Interfaces::EventManager
#bind_event, #event_callbacks, included, #trigger_event
Class Method Details
+ (Object) create_client_event_method(name)
Creates a forwarded binding for client events.
11 12 13 |
# File 'lib/onstomp/failover/failover_events.rb', line 11 def create_client_event_method name module_eval "def #{name}(&block); bind_client_event(:#{name}, block); end" end |
Instance Method Details
- (Object) after_failover_retry {|failover, attempt, client| ... }
Binds a callback to be invoked when a failover client is attempting to connect through a new client in its Client#pool.
65 |
# File 'lib/onstomp/failover/failover_events.rb', line 65 create_event_methods :failover_retry, :before, :after |
- (Object) before_failover_retry {|failover, attempt, client| ... }
Binds a callback to be invoked when a failover client is attempting to connect through a new client in its Client#pool.
65 |
# File 'lib/onstomp/failover/failover_events.rb', line 65 create_event_methods :failover_retry, :before, :after |
- (Object) bind_client_event(name, block)
Sets up a forwarded event binding, applying it to all clients in Client#client_pool.
48 49 50 51 52 53 54 55 56 |
# File 'lib/onstomp/failover/failover_events.rb', line 48 def bind_client_event(name, block) client_pool.each do |client| client.__send__ name do |*args| if client == active_client block.call *args end end end end |
- (Object) failover_connect_failure {|failover, client, error_message| ... }
Binds a callback to be invoked when a failover client fails to establish a connection through a client while reconnecting.
72 |
# File 'lib/onstomp/failover/failover_events.rb', line 72 create_event_methods :failover_connect_failure, :on |
- (Object) failover_connected {|failover, client| ... }
Binds a callback to be invoked when a connection through a client is established.
85 |
# File 'lib/onstomp/failover/failover_events.rb', line 85 create_event_methods :failover_connected, :on |
- (Object) failover_lost {|failover, client| ... }
create_event_methods :failover_retries_exceeded, :on Binds a callback to be invoked when an established connection through a client is lost.
79 |
# File 'lib/onstomp/failover/failover_events.rb', line 79 create_event_methods :failover_lost, :on |
- (Object) failover_retries_exceeded {|failover| ... }
Binds a callback to be invoked when the maximum retries has been exceeded.
90 |
# File 'lib/onstomp/failover/failover_events.rb', line 90 create_event_methods :failover_retries_exceeded, :on |
- (Object) failover_retry {|failover, attempt, client| ... }
Binds a callback to be invoked when a failover client is attempting to connect through a new client in its Client#pool.
65 |
# File 'lib/onstomp/failover/failover_events.rb', line 65 create_event_methods :failover_retry, :before, :after |
- (Object) on_connection_closed(&block)
Binds a callback to Client#on_connection_closed. This has to be handled directly because :on_connection_closed isn't a true event.
42 43 44 |
# File 'lib/onstomp/failover/failover_events.rb', line 42 def on_connection_closed &block bind_client_event(:on_connection_closed, block) end |
- (Object) on_connection_died(&block)
Binds a callback to Client#on_connection_died. This has to be handled directly because :on_connection_died isn't a true event.
30 31 32 |
# File 'lib/onstomp/failover/failover_events.rb', line 30 def on_connection_died &block bind_client_event(:on_connection_died, block) end |
- (Object) on_connection_established(&block)
Binds a callback to Client#on_connction_established. This has to be handled directly because :on_connection_established isn't a true event.
24 25 26 |
# File 'lib/onstomp/failover/failover_events.rb', line 24 def on_connection_established &block bind_client_event(:on_connection_established, block) end |
- (Object) on_connection_terminated(&block)
Binds a callback to Client#on_connection_terminated. This has to be handled directly because :on_connection_terminated isn't a true event.
36 37 38 |
# File 'lib/onstomp/failover/failover_events.rb', line 36 def on_connection_terminated &block bind_client_event(:on_connection_terminated, block) end |
- (Object) on_failover_connect_failure {|failover, client, error_message| ... }
Binds a callback to be invoked when a failover client fails to establish a connection through a client while reconnecting.
72 |
# File 'lib/onstomp/failover/failover_events.rb', line 72 create_event_methods :failover_connect_failure, :on |
- (Object) on_failover_connected {|failover, client| ... }
Binds a callback to be invoked when a connection through a client is established.
85 |
# File 'lib/onstomp/failover/failover_events.rb', line 85 create_event_methods :failover_connected, :on |
- (Object) on_failover_lost {|failover, client| ... }
create_event_methods :failover_retries_exceeded, :on Binds a callback to be invoked when an established connection through a client is lost.
79 |
# File 'lib/onstomp/failover/failover_events.rb', line 79 create_event_methods :failover_lost, :on |
- (Object) on_failover_retries_exceeded {|failover| ... }
Binds a callback to be invoked when the maximum retries has been exceeded.
90 |
# File 'lib/onstomp/failover/failover_events.rb', line 90 create_event_methods :failover_retries_exceeded, :on |
- (Object) trigger_failover_event(ev, pref, *args)
Triggers a general failover event
98 99 100 |
# File 'lib/onstomp/failover/failover_events.rb', line 98 def trigger_failover_event ev, pref, *args trigger_event :#{pref}_failover_#{ev}", self, *args end |
- (Object) trigger_failover_retry(pref, attempt)
Triggers a failover retry event
93 94 95 |
# File 'lib/onstomp/failover/failover_events.rb', line 93 def trigger_failover_retry pref, attempt trigger_failover_event :retry, pref, attempt, self.active_client end |