Module: RisingDragon::SQS::Worker::ClassMethods
- Defined in:
- lib/rising_dragon/sqs/worker.rb
Instance Method Summary collapse
- #emitter ⇒ Object
- #register_queue(sqs_queue_name, group_name, option) ⇒ Object
- #rising_dragon_ignore(event_name) ⇒ Object
- #rising_dragon_options(sqs_queue_name, group_name, opt = {}) ⇒ Object
- #rising_dragon_register(event_name, handle_class) ⇒ Object
Instance Method Details
#emitter ⇒ Object
35 36 37 |
# File 'lib/rising_dragon/sqs/worker.rb', line 35 def emitter @emitter ||= ::RisingDragon::SQS::Emitter.new end |
#register_queue(sqs_queue_name, group_name, option) ⇒ Object
19 20 21 22 23 24 25 |
# File 'lib/rising_dragon/sqs/worker.rb', line 19 def register_queue(sqs_queue_name, group_name, option) concurrency = option[:concurrency] || 25 Shoryuken.add_group(group_name, concurrency) weight = option[:weight] || 1 Shoryuken.add_queue(sqs_queue_name, weight, group_name) end |
#rising_dragon_ignore(event_name) ⇒ Object
31 32 33 |
# File 'lib/rising_dragon/sqs/worker.rb', line 31 def rising_dragon_ignore(event_name) emitter.ignore(event_name) end |
#rising_dragon_options(sqs_queue_name, group_name, opt = {}) ⇒ Object
12 13 14 15 16 17 |
# File 'lib/rising_dragon/sqs/worker.rb', line 12 def (sqs_queue_name, group_name, opt = {}) shoryuken_opt = { queue: sqs_queue_name, body_parser: :json, auto_delete: true }.merge(opt) (shoryuken_opt) register_queue(sqs_queue_name, group_name, opt) end |
#rising_dragon_register(event_name, handle_class) ⇒ Object
27 28 29 |
# File 'lib/rising_dragon/sqs/worker.rb', line 27 def rising_dragon_register(event_name, handle_class) emitter.register(event_name, handle_class) end |