Class: Qs::DaemonData
- Inherits:
-
Object
- Object
- Qs::DaemonData
- Defined in:
- lib/qs/daemon_data.rb
Instance Attribute Summary collapse
-
#debug ⇒ Object
readonly
Returns the value of attribute debug.
-
#dwp_logger ⇒ Object
readonly
Returns the value of attribute dwp_logger.
-
#error_procs ⇒ Object
readonly
Returns the value of attribute error_procs.
-
#logger ⇒ Object
readonly
Returns the value of attribute logger.
-
#name ⇒ Object
readonly
The daemon uses this to “compile” its configuration for speed.
-
#num_workers ⇒ Object
readonly
Returns the value of attribute num_workers.
-
#pid_file ⇒ Object
readonly
The daemon uses this to “compile” its configuration for speed.
-
#process_label ⇒ Object
readonly
The daemon uses this to “compile” its configuration for speed.
-
#queue_redis_keys ⇒ Object
readonly
Returns the value of attribute queue_redis_keys.
-
#routes ⇒ Object
readonly
Returns the value of attribute routes.
-
#shutdown_timeout ⇒ Object
readonly
Returns the value of attribute shutdown_timeout.
-
#verbose_logging ⇒ Object
readonly
Returns the value of attribute verbose_logging.
-
#worker_class ⇒ Object
readonly
Returns the value of attribute worker_class.
-
#worker_params ⇒ Object
readonly
Returns the value of attribute worker_params.
Instance Method Summary collapse
-
#initialize(args = nil) ⇒ DaemonData
constructor
A new instance of DaemonData.
- #route_for(route_id) ⇒ Object
Constructor Details
#initialize(args = nil) ⇒ DaemonData
Returns a new instance of DaemonData.
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/qs/daemon_data.rb', line 16 def initialize(args = nil) args ||= {} @name = args[:name] @process_label = !(v = ENV['QS_PROCESS_LABEL'].to_s).empty? ? v : args[:name] @pid_file = args[:pid_file] @worker_class = args[:worker_class] @worker_params = args[:worker_params] || {} @num_workers = args[:num_workers] @debug = !ENV['QS_DEBUG'].to_s.empty? @logger = args[:logger] @dwp_logger = @logger if @debug @verbose_logging = !!args[:verbose_logging] @shutdown_timeout = args[:shutdown_timeout] @error_procs = args[:error_procs] || [] @queue_redis_keys = args[:queue_redis_keys] || [] @routes = build_routes(args[:routes] || []) end |
Instance Attribute Details
#debug ⇒ Object (readonly)
Returns the value of attribute debug.
12 13 14 |
# File 'lib/qs/daemon_data.rb', line 12 def debug @debug end |
#dwp_logger ⇒ Object (readonly)
Returns the value of attribute dwp_logger.
12 13 14 |
# File 'lib/qs/daemon_data.rb', line 12 def dwp_logger @dwp_logger end |
#error_procs ⇒ Object (readonly)
Returns the value of attribute error_procs.
14 15 16 |
# File 'lib/qs/daemon_data.rb', line 14 def error_procs @error_procs end |
#logger ⇒ Object (readonly)
Returns the value of attribute logger.
12 13 14 |
# File 'lib/qs/daemon_data.rb', line 12 def logger @logger end |
#name ⇒ Object (readonly)
The daemon uses this to “compile” its configuration for speed. NsOptions is relatively slow everytime an option is read. To avoid this, we read the options one time here and memoize their values. This way, we don’t pay the NsOptions overhead when reading them while handling a message.
10 11 12 |
# File 'lib/qs/daemon_data.rb', line 10 def name @name end |
#num_workers ⇒ Object (readonly)
Returns the value of attribute num_workers.
11 12 13 |
# File 'lib/qs/daemon_data.rb', line 11 def num_workers @num_workers end |
#pid_file ⇒ Object (readonly)
The daemon uses this to “compile” its configuration for speed. NsOptions is relatively slow everytime an option is read. To avoid this, we read the options one time here and memoize their values. This way, we don’t pay the NsOptions overhead when reading them while handling a message.
10 11 12 |
# File 'lib/qs/daemon_data.rb', line 10 def pid_file @pid_file end |
#process_label ⇒ Object (readonly)
The daemon uses this to “compile” its configuration for speed. NsOptions is relatively slow everytime an option is read. To avoid this, we read the options one time here and memoize their values. This way, we don’t pay the NsOptions overhead when reading them while handling a message.
10 11 12 |
# File 'lib/qs/daemon_data.rb', line 10 def process_label @process_label end |
#queue_redis_keys ⇒ Object (readonly)
Returns the value of attribute queue_redis_keys.
14 15 16 |
# File 'lib/qs/daemon_data.rb', line 14 def queue_redis_keys @queue_redis_keys end |
#routes ⇒ Object (readonly)
Returns the value of attribute routes.
14 15 16 |
# File 'lib/qs/daemon_data.rb', line 14 def routes @routes end |
#shutdown_timeout ⇒ Object (readonly)
Returns the value of attribute shutdown_timeout.
13 14 15 |
# File 'lib/qs/daemon_data.rb', line 13 def shutdown_timeout @shutdown_timeout end |
#verbose_logging ⇒ Object (readonly)
Returns the value of attribute verbose_logging.
12 13 14 |
# File 'lib/qs/daemon_data.rb', line 12 def verbose_logging @verbose_logging end |
#worker_class ⇒ Object (readonly)
Returns the value of attribute worker_class.
11 12 13 |
# File 'lib/qs/daemon_data.rb', line 11 def worker_class @worker_class end |
#worker_params ⇒ Object (readonly)
Returns the value of attribute worker_params.
11 12 13 |
# File 'lib/qs/daemon_data.rb', line 11 def worker_params @worker_params end |
Instance Method Details
#route_for(route_id) ⇒ Object
38 39 40 |
# File 'lib/qs/daemon_data.rb', line 38 def route_for(route_id) @routes[route_id] || raise(NotFoundError, "unknown message '#{route_id}'") end |