class Logs

collection class for Learning Diarys / logs

Public Class Methods

new() click to toggle source

iterates through every file in the data directory and parses with

LearningDiary
# File lib/docfolio/logs.rb, line 10
def initialize
  @logs = []
end

Public Instance Methods

add(file_or_directory) click to toggle source

Adds either a file to logs or a directory to logs @param [String] file_or_directory A string containing the name of a

file or directory
# File lib/docfolio/logs.rb, line 17
def add(file_or_directory)
  log_directory(file_or_directory) if File.directory?(file_or_directory)
  log_file(file_or_directory) if File.file?(file_or_directory)
end
each(&block) click to toggle source

Implements Enumerable by iterating through each learning diary

# File lib/docfolio/logs.rb, line 23
def each(&block)
  @logs.each { |p| block.call(p) }
end

Private Instance Methods

log_directory(dir) click to toggle source

Adds a directory to logs @param [String] dir A string containing the name of a directory

# File lib/docfolio/logs.rb, line 37
def log_directory(dir)
  Dir[dir + '/**/*.txt'].each { |file| log_file(file) }
end
log_file(file) click to toggle source

Adds a file to logs @param [String] file A string containing the name of a file

# File lib/docfolio/logs.rb, line 31
def log_file(file)
  @logs << LearningDiary.new(file)
end