Class: DruidConfig::Entities::Worker
- Inherits:
-
Object
- Object
- DruidConfig::Entities::Worker
- Defined in:
- lib/druid_config/entities/worker.rb
Overview
Worker class
Instance Attribute Summary collapse
-
#capacity ⇒ Object
readonly
Readers.
-
#current_capacity_used ⇒ Object
readonly
Readers.
-
#host ⇒ Object
readonly
Readers.
-
#ip ⇒ Object
readonly
Readers.
-
#last_completed_task_time ⇒ Object
readonly
Readers.
-
#port ⇒ Object
readonly
Readers.
-
#running_tasks ⇒ Object
readonly
Readers.
-
#version ⇒ Object
readonly
Readers.
Instance Method Summary collapse
-
#free ⇒ Object
Return free capacity.
-
#initialize(metadata) ⇒ Worker
constructor
Initialize it with received info.
-
#uri ⇒ Object
Return the uri of the worker.
-
#used ⇒ Object
Return capacity used.
Constructor Details
#initialize(metadata) ⇒ Worker
Initialize it with received info
Parameters:
- metadata
-
Hash with returned metadata from Druid
18 19 20 21 22 23 24 25 26 |
# File 'lib/druid_config/entities/worker.rb', line 18 def initialize() @host, @port = ['worker']['host'].split(':') @ip = ['worker']['ip'] @capacity = ['worker']['capacity'] @version = ['worker']['version'] @last_completed_task_time = ['lastCompletedTaskTime'] @running_tasks = ['runningTasks'] @capacity_used = ['currCapacityUsed'] end |
Instance Attribute Details
#capacity ⇒ Object (readonly)
Readers
8 9 10 |
# File 'lib/druid_config/entities/worker.rb', line 8 def capacity @capacity end |
#current_capacity_used ⇒ Object (readonly)
Readers
8 9 10 |
# File 'lib/druid_config/entities/worker.rb', line 8 def current_capacity_used @current_capacity_used end |
#host ⇒ Object (readonly)
Readers
8 9 10 |
# File 'lib/druid_config/entities/worker.rb', line 8 def host @host end |
#ip ⇒ Object (readonly)
Readers
8 9 10 |
# File 'lib/druid_config/entities/worker.rb', line 8 def ip @ip end |
#last_completed_task_time ⇒ Object (readonly)
Readers
8 9 10 |
# File 'lib/druid_config/entities/worker.rb', line 8 def last_completed_task_time @last_completed_task_time end |
#port ⇒ Object (readonly)
Readers
8 9 10 |
# File 'lib/druid_config/entities/worker.rb', line 8 def port @port end |
#running_tasks ⇒ Object (readonly)
Readers
8 9 10 |
# File 'lib/druid_config/entities/worker.rb', line 8 def running_tasks @running_tasks end |
#version ⇒ Object (readonly)
Readers
8 9 10 |
# File 'lib/druid_config/entities/worker.rb', line 8 def version @version end |
Instance Method Details
#free ⇒ Object
Return free capacity
31 32 33 |
# File 'lib/druid_config/entities/worker.rb', line 31 def free @free ||= (capacity - current_capacity_used) end |
#uri ⇒ Object
Return the uri of the worker
46 47 48 |
# File 'lib/druid_config/entities/worker.rb', line 46 def uri "#{@host}:#{@port}" end |
#used ⇒ Object
Return capacity used
38 39 40 41 |
# File 'lib/druid_config/entities/worker.rb', line 38 def used return 0 unless @capacity && @capacity != 0 ((@capacity_used.to_f / @capacity) * 100).round(2) end |