class AudioAddict::Log

Public Instance Methods

data() click to toggle source
# File lib/audio_addict/log.rb, line 7
def data
  @data ||= data!
end
data!() click to toggle source
# File lib/audio_addict/log.rb, line 11
def data!
  if File.exist? path
    File.readlines(path).map(&:strip)
  else
    []
  end
end
path() click to toggle source
# File lib/audio_addict/log.rb, line 3
def path
  @path ||= Config.like_log
end
sort() click to toggle source
# File lib/audio_addict/log.rb, line 23
def sort
  output = data.sort.join("\n") + "\n"
  File.write path, output
end
tree() click to toggle source
# File lib/audio_addict/log.rb, line 28
def tree
  @tree ||= tree!
end
tree!() click to toggle source
# File lib/audio_addict/log.rb, line 32
def tree!
  result = {}

  data.each do |line|
    network, channel, artist, song = line.split(" :: ")
    result[network] ||= {}
    result[network][channel] ||= {}
    result[network][channel][artist] ||= []
    result[network][channel][artist] << song
  end

  result
end