class Liebre::Actor::RPC::Client::Resources

Constants

DEFAULT_PREFIX
QUEUE_OPTS

Attributes

context[R]

Public Class Methods

new(context) click to toggle source
# File lib/liebre/actor/rpc/client/resources.rb, line 15
def initialize context
  @context = context
end

Public Instance Methods

request_exchange() click to toggle source
# File lib/liebre/actor/rpc/client/resources.rb, line 23
def request_exchange
  @request_exchange ||= declare.exchange(exchange_config)
end
response_queue() click to toggle source
# File lib/liebre/actor/rpc/client/resources.rb, line 19
def response_queue
  @response_queue ||= declare.queue(:name => queue_name, :opts => QUEUE_OPTS)
end

Private Instance Methods

bind_config() click to toggle source
# File lib/liebre/actor/rpc/client/resources.rb, line 44
def bind_config
  spec.fetch(:bind, {})
end
declare() click to toggle source
# File lib/liebre/actor/rpc/client/resources.rb, line 52
def declare
  context.declare
end
exchange_config() click to toggle source
# File lib/liebre/actor/rpc/client/resources.rb, line 36
def exchange_config
  spec.fetch(:exchange)
end
queue_config() click to toggle source
# File lib/liebre/actor/rpc/client/resources.rb, line 40
def queue_config
  spec.fetch(:queue, {})
end
queue_name() click to toggle source
# File lib/liebre/actor/rpc/client/resources.rb, line 29
def queue_name
  prefix = queue_config.fetch(:prefix, DEFAULT_PREFIX)
  suffix = SecureRandom.urlsafe_base64

  "#{prefix}_#{suffix}"
end
spec() click to toggle source
# File lib/liebre/actor/rpc/client/resources.rb, line 48
def spec
  context.spec
end