class RubyRabbitmqJanus::Janus::Transactions::Session
@author VAILLANT Jeremy <jeremy.vaillant@dazzl.tv>
# Manage a transaction
Manage a transaction with message if contains a session identifier
Public Class Methods
new(exclusive, session)
click to toggle source
Initialize a transaction with handle
@param [Fixnum] session
Use a session identifier for created message
Calls superclass method
# File lib/rrj/janus/transactions/session.rb, line 16 def initialize(exclusive, session) super(session) @exclusive = exclusive end
Public Instance Methods
connect() { || ... }
click to toggle source
Opening a short transaction with rabbitmq and close when is ending
@yield Send a message to Janus
# File lib/rrj/janus/transactions/session.rb, line 24 def connect rabbit.transaction_short do choose_queue yield end end
publish_message(type, options = {})
click to toggle source
Publish a message to “standard” RabbitMQ queue.
# File lib/rrj/janus/transactions/session.rb, line 32 def publish_message(type, options = {}) msg = Janus::Messages::Standard.new(type, opts.merge!(options)) response = read_response(publisher.publish(msg)) Janus::Responses::Standard.new(response) end
Private Instance Methods
opts()
click to toggle source
# File lib/rrj/janus/transactions/session.rb, line 40 def opts { 'session_id' => session } end