Class: Wamp::Manager::Event::Unsubscribe

Inherits:
Base
  • Object
show all
Defined in:
lib/wamp/manager/event/unsubscribe.rb

Overview

Unsubscribe Message Event

Instance Attribute Summary

Attributes inherited from Base

#session

Instance Method Summary collapse

Methods inherited from Base

#emit_event, #emit_event_name, #error?, #initialize, #listen_event_name, #transmit

Constructor Details

This class inherits a constructor from Wamp::Manager::Event::Base

Instance Method Details

#add_event_listener(handler) ⇒ Object



10
11
12
13
14
15
16
17
# File 'lib/wamp/manager/event/unsubscribe.rb', line 10

def add_event_listener(handler)
  session.on(listen_event_name) do |unsubscribed, error|
    session.off(listen_event_name)
    handler&.call(unsubscribed, error)
    remove_event_listening
  end
  session.transmit(payload)
end

#clear_event_nameObject



23
24
25
# File 'lib/wamp/manager/event/unsubscribe.rb', line 23

def clear_event_name
  "event_#{subscription_id}"
end

#remove_event_listeningObject



19
20
21
# File 'lib/wamp/manager/event/unsubscribe.rb', line 19

def remove_event_listening
  session.off(clear_event_name)
end