Class: NebulousStomp::StompHandlerNull

Inherits:
StompHandler show all
Defined in:
lib/nebulous_stomp/stomp_handler_null.rb

Overview

Behaves just like StompHandler, except, does nothing and expects no stomp connection

Instance Attribute Summary collapse

Attributes inherited from StompHandler

#client

Instance Method Summary collapse

Methods inherited from StompHandler

#nebulous_on?, with_timeout

Constructor Details

#initialize(hash = {}) ⇒ StompHandlerNull

Returns a new instance of StompHandlerNull.



19
20
21
22
# File 'lib/nebulous_stomp/stomp_handler_null.rb', line 19

def initialize(hash={})
  super(hash)
  @fake_messages = []
end

Instance Attribute Details

#fake_messagesObject (readonly)

Returns the value of attribute fake_messages.



17
18
19
# File 'lib/nebulous_stomp/stomp_handler_null.rb', line 17

def fake_messages
  @fake_messages
end

Instance Method Details

#calc_reply_idObject



76
# File 'lib/nebulous_stomp/stomp_handler_null.rb', line 76

def calc_reply_id; 'ABCD123456789'; end

#connected?Boolean

Returns:

  • (Boolean)


40
41
42
# File 'lib/nebulous_stomp/stomp_handler_null.rb', line 40

def connected? 
  @fake_messages != []
end

#insert_fake(message) ⇒ Object



24
25
26
# File 'lib/nebulous_stomp/stomp_handler_null.rb', line 24

def insert_fake(message)
  @fake_messages << message
end

#listen(queue) ⇒ Object



44
45
46
47
# File 'lib/nebulous_stomp/stomp_handler_null.rb', line 44

def listen(queue)
  NebulousStomp.logger.info(__FILE__) {"Subscribing to #{queue} (on Null)"}
  @fake_messages.each{|m| yield m }
end

#listen_with_timeout(queue, timeout) ⇒ Object



49
50
51
52
53
54
55
56
57
58
# File 'lib/nebulous_stomp/stomp_handler_null.rb', line 49

def listen_with_timeout(queue, timeout)
  NebulousStomp.logger.info(__FILE__) {"Subscribing to #{queue} (on Null)"}

  if @fake_messages != []
    @fake_messages.each{|m| yield m }
  else
    sleep timeout
    raise NebulousStomp::NebulousTimeout
  end
end

#respond_error(nebMess, err, fields = []) ⇒ Object



70
71
72
73
74
# File 'lib/nebulous_stomp/stomp_handler_null.rb', line 70

def respond_error(nebMess,err,fields=[])
  NebulousStomp.logger.info(__FILE__) do
    "Responded to #{nebMess} with 'error' verb: #{err} (to Null)"
  end
end

#respond_success(nebMess) ⇒ Object



64
65
66
67
68
# File 'lib/nebulous_stomp/stomp_handler_null.rb', line 64

def respond_success(nebMess)
  NebulousStomp.logger.info(__FILE__) do 
    "Responded to #{nebMess} with 'success' verb (to Null)"
  end
end

#send_message(queue, nebMess) ⇒ Object



60
61
62
# File 'lib/nebulous_stomp/stomp_handler_null.rb', line 60

def send_message(queue, nebMess)
  nebMess
end

#stomp_connectObject



28
29
30
31
32
# File 'lib/nebulous_stomp/stomp_handler_null.rb', line 28

def stomp_connect
  NebulousStomp.logger.info(__FILE__) {"Connecting to STOMP (Null)"} 
  @client = true
  self
end

#stomp_disconnectObject



34
35
36
37
38
# File 'lib/nebulous_stomp/stomp_handler_null.rb', line 34

def stomp_disconnect
  NebulousStomp.logger.info(__FILE__) {"STOMP Disconnect (Null)"}
  @client = nil
  self
end