class MikePlayer::Settings
Constants
- DEFAULT_DIRECTORY
- DEFAULT_VOLUME
- PL_FILE_ENDING
- SETTINGS_DIRECTORY
Attributes
minutes[R]
music_dir[R]
playlist[R]
random[R]
volume[R]
Public Class Methods
new(options)
click to toggle source
# File lib/mikeplayer/settings.rb, line 10 def initialize(options) @shuffle = options[:shuffle] @overwrite = options[:overwrite] @list = options[:list] @home = options[:home] || Dir.home @volume = options[:volume] || DEFAULT_VOLUME @music_dir = options[:directory] || File.join(@home, DEFAULT_DIRECTORY) @settings_dir = options[:settings] || File.join(@home, SETTINGS_DIRECTORY) @minutes = options[:minutes].to_i @debug = options[:debug] @random = options[:random].to_i if (false == Dir.exist?(@settings_dir)) Dir.mkdir(@settings_dir) end @playlist = find_playlist(options[:playlist]) remove_playlist_if_needed(@playlist) end
Public Instance Methods
debug?()
click to toggle source
# File lib/mikeplayer/settings.rb, line 39 def debug? return (true == @debug) end
list?()
click to toggle source
# File lib/mikeplayer/settings.rb, line 47 def list? return true == @list end
overwrite?()
click to toggle source
# File lib/mikeplayer/settings.rb, line 43 def overwrite? return true == @overwrite end
random?()
click to toggle source
# File lib/mikeplayer/settings.rb, line 35 def random? return 0 < @random end
shuffle?()
click to toggle source
# File lib/mikeplayer/settings.rb, line 31 def shuffle? return true == @shuffle end
Private Instance Methods
find_playlist(user_option)
click to toggle source
# File lib/mikeplayer/settings.rb, line 53 def find_playlist(user_option) name = nil if (false == user_option.nil?) if (true == File.file?(user_option)) return user_option else name = File.basename(user_option, PL_FILE_ENDING) end elsif (true == self.random?) name = "random_n#{@random}" else name = 'default' end return File.join(@settings_dir, "#{name}#{PL_FILE_ENDING}") end
remove_playlist_if_needed(filename)
click to toggle source
# File lib/mikeplayer/settings.rb, line 71 def remove_playlist_if_needed(filename) if (true == File.file?(filename)) if ((true == overwrite?) || (true == random?)) File.delete(filename) end end end