Module: HomeQ::SOBS::Sender
- Included in:
- Connection
- Defined in:
- lib/homeq/sobs/sender.rb
Instance Method Summary collapse
- #book_it(msg_type) ⇒ Object
- #buried(job_id) ⇒ Object
- #bury(job_id, pri) ⇒ Object
- #deadline_soon(job_id) ⇒ Object
- #delete(job_id) ⇒ Object
- #deleted(job_id) ⇒ Object
- #hello ⇒ Object
- #inserted(job_id, app_data = 0) ⇒ Object
- #kick(bound) ⇒ Object
- #kicked(jobs_kicked) ⇒ Object
- #not_found(job_id) ⇒ Object
- #put(args) ⇒ Object
- #release(job_id, pri, delay) ⇒ Object
- #released(job_id) ⇒ Object
- #reserve(timeout = nil) ⇒ Object
- #reserved(job_id, payload) ⇒ Object
- #stats ⇒ Object
- #stats_job(job_id) ⇒ Object
- #subscribe ⇒ Object
- #unsubscribe ⇒ Object
Instance Method Details
#book_it(msg_type) ⇒ Object
33 34 35 36 |
# File 'lib/homeq/sobs/sender.rb', line 33 def book_it(msg_type) @snd_stats[msg_type] ||= 0 @snd_stats[msg_type] += 1 end |
#buried(job_id) ⇒ Object
136 137 138 139 |
# File 'lib/homeq/sobs/sender.rb', line 136 def buried(job_id) book_it(:buried) send_to_peer "buried #{job_id}\r\n" end |
#bury(job_id, pri) ⇒ Object
81 82 83 84 |
# File 'lib/homeq/sobs/sender.rb', line 81 def bury(job_id, pri) book_it(:bury) send_to_peer "bury #{job_id} #{pri}\r\n" end |
#deadline_soon(job_id) ⇒ Object
116 117 118 119 |
# File 'lib/homeq/sobs/sender.rb', line 116 def deadline_soon(job_id) book_it(:deadline_soon) send_to_peer "deadline_soon #{job_id}\r\n" end |
#delete(job_id) ⇒ Object
76 77 78 79 |
# File 'lib/homeq/sobs/sender.rb', line 76 def delete(job_id) book_it(:delete) send_to_peer "delete #{job_id}\r\n" end |
#deleted(job_id) ⇒ Object
131 132 133 134 |
# File 'lib/homeq/sobs/sender.rb', line 131 def deleted(job_id) book_it(:deleted) send_to_peer "deleted #{job_id}\r\n" end |
#hello ⇒ Object
38 39 40 41 42 |
# File 'lib/homeq/sobs/sender.rb', line 38 def hello book_it(:hello) v = HomeQ::SOBS::PROTOCOL_VERSION send_to_peer "hello #{v}\r\n" end |
#inserted(job_id, app_data = 0) ⇒ Object
106 107 108 109 |
# File 'lib/homeq/sobs/sender.rb', line 106 def inserted(job_id, app_data=0) book_it(:inserted) send_to_peer "inserted #{job_id} #{app_data}\r\n" end |
#kick(bound) ⇒ Object
86 87 88 89 |
# File 'lib/homeq/sobs/sender.rb', line 86 def kick(bound) book_it(:kick) send_to_peer "kick #{bound}\r\n" end |
#kicked(jobs_kicked) ⇒ Object
141 142 143 144 |
# File 'lib/homeq/sobs/sender.rb', line 141 def kicked(jobs_kicked) book_it(:kicked) send_to_peer "kicked #{jobs_kicked}\r\n" end |
#not_found(job_id) ⇒ Object
121 122 123 124 |
# File 'lib/homeq/sobs/sender.rb', line 121 def not_found(job_id) book_it(:not_found) send_to_peer "not_found #{job_id}\r\n" end |
#put(args) ⇒ Object
64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/homeq/sobs/sender.rb', line 64 def put(args) book_it(:put) app_data = args[:app_data] body = args[:body] pri = args[:priority] || 0 delay = args[:delay] || 0 ttr = args[:ttr] || 30 raise ArgumentError.new('Body cannot be nil') unless body raise ArgumentError.new('App data cannot be nil') unless app_data send_to_peer "put #{pri} #{delay} #{ttr} #{app_data} #{body.length}\r\n#{body}\r\n" end |
#release(job_id, pri, delay) ⇒ Object
101 102 103 104 |
# File 'lib/homeq/sobs/sender.rb', line 101 def release(job_id, pri, delay) book_it(:release) send_to_peer "release #{job_id} #{pri} #{delay}\r\n" end |
#released(job_id) ⇒ Object
126 127 128 129 |
# File 'lib/homeq/sobs/sender.rb', line 126 def released(job_id) book_it(:released) send_to_peer "released #{job_id}\r\n" end |
#reserve(timeout = nil) ⇒ Object
54 55 56 57 58 59 60 61 62 |
# File 'lib/homeq/sobs/sender.rb', line 54 def reserve(timeout = nil) if timeout != nil book_it(:reserve_with_timeout) send_to_peer "reserve-with-timeout #{timeout}\r\n" else book_it(:reserve) send_to_peer "reserve\r\n" end end |
#reserved(job_id, payload) ⇒ Object
111 112 113 114 |
# File 'lib/homeq/sobs/sender.rb', line 111 def reserved(job_id, payload) book_it(:reserved) send_to_peer "reserved #{job_id} #{payload.length}\r\n#{payload}\r\n" end |
#stats ⇒ Object
96 97 98 99 |
# File 'lib/homeq/sobs/sender.rb', line 96 def stats book_it(:stats) send_to_peer "stats\r\n" end |
#stats_job(job_id) ⇒ Object
91 92 93 94 |
# File 'lib/homeq/sobs/sender.rb', line 91 def stats_job(job_id) book_it(:stats_job) send_to_peer "stats-job #{job_id}\r\n" end |
#subscribe ⇒ Object
44 45 46 47 |
# File 'lib/homeq/sobs/sender.rb', line 44 def subscribe book_it(:subscribe) send_to_peer "subscribe\r\n" end |
#unsubscribe ⇒ Object
49 50 51 52 |
# File 'lib/homeq/sobs/sender.rb', line 49 def unsubscribe book_it(:unsubscribe) send_to_peer "unsubscribe\r\n" end |