Sha256: 5b5e3792535b4555bae99dcbe0a3b27feb1a88ba9141fbe43ef33b5f52abe769
Contents?: true
Size: 1.47 KB
Versions: 3
Compression:
Stored size: 1.47 KB
Contents
# frozen_string_literal: true module RubyRabbitmqJanus module Rabbit # @author VAILLANT Jeremy <jeremy.vaillant@dazzl.tv> # @!attribute [r] correlation # @return [String] Is a string uniq generated by SecureRandom # # Manage properties to message sending in rabbitmq queue class Propertie attr_reader :correlation # Initialize a message sending to rabbitmq def initialize(instance = 1) Tools::Log.instance.debug 'initalize a propertie to message' @correlation = SecureRandom.uuid @instance = instance rescue raise Errors::Rabbit::Propertie::Initialize end # Define options sending to rabbitmq def options base.merge(routing_key: Tools::Cluster.instance.queue_to(@instance)) rescue raise Errors::Rabbit::Propertie::Options end # Define option sending to rabbitmq for janus admin message def options_admin(type_request) base.merge(routing_key: Tools::Cluster.instance.queue_admin_to(@instance)) rescue raise Errors::Rabbit::Propertie::Options_admin end private def determine_routing_key(type_request) cluster = Tools::Cluster.instance if type_request.include?('admin') cluster.queue_admin_to(@instance) else cluster.queue_to(@instance) end end def base { correlation_id: @correlation, content_type: 'application/json' } end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
ruby_rabbitmq_janus-2.5.0.pre.210 | lib/rrj/rabbit/propertie.rb |
ruby_rabbitmq_janus-2.5.0.pre.209 | lib/rrj/rabbit/propertie.rb |
ruby_rabbitmq_janus-2.4.0.pre.208 | lib/rrj/rabbit/propertie.rb |