class CartonDb::ListMapDb::SegmentGroup

Attributes

db_name[RW]
name_part[RW]

Public Class Methods

each_in_db(db_name) { |seg_group| ... } click to toggle source
# File lib/carton_db/list_map_db/segment_group.rb, line 16
def self.each_in_db(db_name)
  Dir.entries(db_name).each do |de|
    next unless de =~ /^\d{1,3}$/
    seg_group = new(db_name, de)
    next unless File.directory?(seg_group.directory_path)
    yield seg_group
  end
end
in_db_for_hashcode(db_name, hashcode) click to toggle source
# File lib/carton_db/list_map_db/segment_group.rb, line 10
def self.in_db_for_hashcode(db_name, hashcode)
  group_hash_part = hashcode[-1]
  group_num = group_hash_part.bytes[0] & 127
  new(db_name, group_num.to_s)
end
new(db_name, name_part) click to toggle source
# File lib/carton_db/list_map_db/segment_group.rb, line 28
def initialize(db_name, name_part)
  self.db_name   = db_name
  self.name_part = name_part
end

Public Instance Methods

directory_path() click to toggle source
# File lib/carton_db/list_map_db/segment_group.rb, line 33
def directory_path
  @directory_path ||= File.join(db_name, name_part)
end