Skip to content

Commit

Permalink
Mark internal methods private
Browse files Browse the repository at this point in the history
  • Loading branch information
sodabrew committed Jan 23, 2015
1 parent 1c07c59 commit 8eba974
Showing 1 changed file with 37 additions and 49 deletions.
86 changes: 37 additions & 49 deletions code/hashdir.rb
Original file line number Diff line number Diff line change
Expand Up @@ -24,95 +24,83 @@ def self.entries(path, limit = nil)
self.entries_int(path, 0, [], limit)
end

def self.entries_int(path, level, accum, limit = nil)
def self.num_entries(path)
self.num_entries_int(path, 0)
end

def self.inject(prev_msg_path, new_base_path, msg_id)
parts = self.msg_id_parts(msg_id)
FileUtils.mkdir_p("#{new_base_path}/#{parts[0]}/#{parts[1]}/#{parts[2]}")
newname = "#{new_base_path}/#{parts[0]}/#{parts[1]}/#{parts[2]}/#{msg_id}"
File.rename(prev_msg_path, newname)
end

def self.path_for(que_base_path, msg_id)
parts = self.msg_id_parts(msg_id)
"#{que_base_path}/#{parts[0]}/#{parts[1]}/#{parts[2]}/#{msg_id}"
end

private

def self.num_entries_int(path, level)
sum = 0
if level == 0
# YYYYMMDD
ents1 = Dir.glob("#{path}/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]")
ents1.sort.reverse.each do |e|
self.entries_int(e, 1, accum, limit)
break if limit && accum.length == limit
sum += self.num_entries_int(e, 1)
end
elsif level == 1
# HH
ents1 = Dir.glob("#{path}/[0-9][0-9]")
ents1.sort.reverse.each do |e|
self.entries_int(e, 2, accum, limit)
break if limit && accum.length == limit
sum += self.num_entries_int(e, 2)
end
elsif level == 2
# MM
ents1 = Dir.glob("#{path}/[0-9][0-9]")
ents1.sort.reverse.each do |e|
self.entries_int(e, 3, accum, limit)
break if limit && accum.length == limit
sum += self.num_entries_int(e, 3)
end
elsif level == 3
# MESG-ID
ents1 = Dir.glob("#{path}/[0-9][0-9]*")
ents1.sort.reverse.each do |e|
accum << e.split('/').last
break if limit && accum.length == limit
end
sum += ents1.length
end
accum
end

def self.entries_old(path, limit = nil)
# Do a depth first walk of the path to get the message ids
ents1 = Dir.glob("#{path}/**/msg")
# we want the msg_id part (-2), just before last (-1)
ents2 = ents1.map { |e| e.split('/')[-2] }
end

def self.num_entries(path)
self.num_entries_int(path, 0)
sum
end

def self.num_entries_int(path, level)
sum = 0
def self.entries_int(path, level, accum, limit = nil)
if level == 0
# YYYYMMDD
ents1 = Dir.glob("#{path}/[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]")
ents1.sort.reverse.each do |e|
sum += self.num_entries_int(e, 1)
self.entries_int(e, 1, accum, limit)
break if limit && accum.length == limit
end
elsif level == 1
# HH
ents1 = Dir.glob("#{path}/[0-9][0-9]")
ents1.sort.reverse.each do |e|
sum += self.num_entries_int(e, 2)
self.entries_int(e, 2, accum, limit)
break if limit && accum.length == limit
end
elsif level == 2
# MM
ents1 = Dir.glob("#{path}/[0-9][0-9]")
ents1.sort.reverse.each do |e|
sum += self.num_entries_int(e, 3)
self.entries_int(e, 3, accum, limit)
break if limit && accum.length == limit
end
elsif level == 3
# MESG-ID
ents1 = Dir.glob("#{path}/[0-9][0-9]*")
sum += ents1.length
ents1.sort.reverse.each do |e|
accum << e.split('/').last
break if limit && accum.length == limit
end
end
sum
end

def self.num_entries_old(path)
# Do a depth first walk of the path to get the message ids
ents1 = Dir.glob("#{path}/**/msg")
ents1.length
end


def self.inject(prev_msg_path, new_base_path, msg_id)
parts = self.msg_id_parts(msg_id)
FileUtils.mkdir_p("#{new_base_path}/#{parts[0]}/#{parts[1]}/#{parts[2]}")
newname = "#{new_base_path}/#{parts[0]}/#{parts[1]}/#{parts[2]}/#{msg_id}"
File.rename(prev_msg_path, newname)
end

def self.path_for(que_base_path, msg_id)
parts = self.msg_id_parts(msg_id)
"#{que_base_path}/#{parts[0]}/#{parts[1]}/#{parts[2]}/#{msg_id}"
accum
end

def self.msg_id_parts(msg_id)
Expand Down

0 comments on commit 8eba974

Please sign in to comment.