Class: Metybur::PingPongMiddleware

Inherits:
Object
  • Object
show all
Defined in:
lib/metybur/middleware/ping_pong_middleware.rb

Instance Method Summary collapse

Constructor Details

#initialize(websocket) ⇒ PingPongMiddleware

Returns a new instance of PingPongMiddleware.



2
3
4
5
# File 'lib/metybur/middleware/ping_pong_middleware.rb', line 2

def initialize(websocket)
  # TODO: This dependency is dowdy. Get rid of it.
  @websocket = websocket
end

Instance Method Details

#close(event) ⇒ Object



19
20
21
# File 'lib/metybur/middleware/ping_pong_middleware.rb', line 19

def close(event)
  event
end

#message(message) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/metybur/middleware/ping_pong_middleware.rb', line 11

def message(message)
  return message unless message[:msg] == 'ping'
  pong = {msg: 'pong'}
  pong[:id] = message[:id] if message[:id]
  @websocket.send(pong.to_json)
  message
end

#open(event) ⇒ Object



7
8
9
# File 'lib/metybur/middleware/ping_pong_middleware.rb', line 7

def open(event)
  event
end