class Kcl::Workers::ShardInfo
Attributes
assigned_to[RW]
checkpoint[RW]
ending_sequence_number[R]
lease_timeout[RW]
parent_shard_id[R]
shard_id[R]
starting_sequence_number[R]
Public Class Methods
new(shard_id, parent_shard_id, sequence_number_range)
click to toggle source
@param [String] shard_id
@param [String] parent_shard_id
@param [Hash] sequence_number_range
# File lib/kcl/workers/shard_info.rb, line 12 def initialize(shard_id, parent_shard_id, sequence_number_range) @shard_id = shard_id @parent_shard_id = parent_shard_id || 0 @starting_sequence_number = sequence_number_range[:starting_sequence_number] @ending_sequence_number = sequence_number_range[:ending_sequence_number] @assigned_to = nil @checkpoint = nil @lease_timeout = nil end
Public Instance Methods
completed?()
click to toggle source
# File lib/kcl/workers/shard_info.rb, line 30 def completed? @checkpoint == Kcl::Checkpoints::Sentinel::SHARD_END end
lease_owner()
click to toggle source
# File lib/kcl/workers/shard_info.rb, line 22 def lease_owner @assigned_to end
lease_owner=(assigned_to)
click to toggle source
# File lib/kcl/workers/shard_info.rb, line 26 def lease_owner=(assigned_to) @assigned_to = assigned_to end
to_h()
click to toggle source
For debug
# File lib/kcl/workers/shard_info.rb, line 35 def to_h { shard_id: shard_id, parent_shard_id: parent_shard_id, starting_sequence_number: starting_sequence_number, ending_sequence_number: ending_sequence_number, assigned_to: assigned_to, checkpoint: checkpoint, lease_timeout: lease_timeout } end