Class: RubyRabbitmqJanus::Janus::Transactions::Session
- Inherits:
-
Transaction
- Object
- Transaction
- RubyRabbitmqJanus::Janus::Transactions::Session
- Defined in:
- lib/rrj/janus/transactions/session.rb
Overview
# Manage a transaction
Manage a transaction with message if contains a session identifier
Direct Known Subclasses
Instance Method Summary collapse
-
#connect { ... } ⇒ Object
Opening a short transaction with rabbitmq and close when is ending.
-
#initialize(exclusive, session) ⇒ Session
constructor
Initialize a transaction with handle.
-
#publish_message(type, options = {}) ⇒ Object
Publish a message to “standard” RabbitMQ queue.
Constructor Details
#initialize(exclusive, session) ⇒ Session
Initialize a transaction with handle
16 17 18 19 |
# File 'lib/rrj/janus/transactions/session.rb', line 16 def initialize(exclusive, session) super(session) @exclusive = exclusive end |
Instance Method Details
#connect { ... } ⇒ Object
Opening a short transaction with rabbitmq and close when is ending
24 25 26 27 28 29 |
# File 'lib/rrj/janus/transactions/session.rb', line 24 def connect rabbit.transaction_short do choose_queue yield end end |
#publish_message(type, options = {}) ⇒ Object
Publish a message to “standard” RabbitMQ queue.
32 33 34 35 36 |
# File 'lib/rrj/janus/transactions/session.rb', line 32 def (type, = {}) msg = Janus::Messages::Standard.new(type, opts.merge!()) response = read_response(publisher.publish(msg)) Janus::Responses::Standard.new(response) end |