Class: RubyRabbitmqJanus::Tools::Cluster
- Inherits:
-
Object
- Object
- RubyRabbitmqJanus::Tools::Cluster
- Includes:
- Singleton
- Defined in:
- lib/rrj/tools/gem/cluster.rb
Overview
# Manage Janus instance
Instance Attribute Summary collapse
-
#enable ⇒ Object
readonly
Returns the value of attribute enable.
-
#number ⇒ Object
readonly
Returns the value of attribute number.
-
#sessions ⇒ Object
readonly
Returns the value of attribute sessions.
Instance Method Summary collapse
-
#create_sessions ⇒ Object
Create all session.
-
#initialize ⇒ Cluster
constructor
Initalize object for managing each instance to Janus.
-
#queue_admin_to(instance = nil) ⇒ Object
Specify a name to admin queue.
-
#queue_to(instance = nil) ⇒ Object
Specify a name to queue.
Constructor Details
#initialize ⇒ Cluster
Initalize object for managing each instance to Janus
14 15 16 17 18 19 20 21 22 |
# File 'lib/rrj/tools/gem/cluster.rb', line 14 def initialize @current_instance = nil config = Config.instance @enable = config.cluster @number = config.number_of_instance @sessions = [] rescue raise Errors::Tools::Cluster::Initializer end |
Instance Attribute Details
#enable ⇒ Object (readonly)
Returns the value of attribute enable.
11 12 13 |
# File 'lib/rrj/tools/gem/cluster.rb', line 11 def enable @enable end |
#number ⇒ Object (readonly)
Returns the value of attribute number.
11 12 13 |
# File 'lib/rrj/tools/gem/cluster.rb', line 11 def number @number end |
#sessions ⇒ Object (readonly)
Returns the value of attribute sessions.
11 12 13 |
# File 'lib/rrj/tools/gem/cluster.rb', line 11 def sessions @sessions end |
Instance Method Details
#create_sessions ⇒ Object
Create all session. One by instance
25 26 27 28 29 30 31 32 |
# File 'lib/rrj/tools/gem/cluster.rb', line 25 def create_sessions (1..@number).each do |janus_instance| @current_instance = janus_instance @sessions.push create_session_instance end rescue raise Errors::Tools::Cluster::CreateSessions end |
#queue_admin_to(instance = nil) ⇒ Object
Specify a name to admin queue
43 44 45 46 47 48 |
# File 'lib/rrj/tools/gem/cluster.rb', line 43 def queue_admin_to(instance = nil) Tools::Config.instance.['queues']['admin']['to'] + \ "-#{instance.blank? ? @current_instance : instance}" rescue raise Errors::Tools::Cluster::QueueAdminTo end |
#queue_to(instance = nil) ⇒ Object
Specify a name to queue
35 36 37 38 39 40 |
# File 'lib/rrj/tools/gem/cluster.rb', line 35 def queue_to(instance = nil) Tools::Config.instance.['queues']['standard']['to'] + \ "-#{instance.blank? ? @current_instance : instance}" rescue raise Errors::Tools::Cluster::QueueTo end |