class StudioGame::Playlist
Attributes
movies[R]
title[R]
Public Class Methods
new(title)
click to toggle source
# File lib/playlist.rb, line 7 def initialize(title) @title = title @movies = [] end
Public Instance Methods
add_movie(movie)
click to toggle source
# File lib/playlist.rb, line 20 def add_movie(movie) if MovieValidator.valid_movie_object?(movie) @movies.push(movie) else false end end
include?(movie)
click to toggle source
# File lib/playlist.rb, line 28 def include?(movie) @movies.include? movie end
load_from_file(file_name)
click to toggle source
# File lib/playlist.rb, line 12 def load_from_file(file_name) File.open(file_name) do |file| file.each_line do |line| add_movie Movie.from_csv(line) end end end
play(view_count)
click to toggle source
# File lib/playlist.rb, line 48 def play(view_count) puts "-------- Playing Playlist \"#{@title}\"--------" 1.upto(Integer(view_count)) do |count| puts "\nViewing Playlist #{@title} #{count} time" @movies.each do |movie| movie.review end end end
print_stats()
click to toggle source
# File lib/playlist.rb, line 41 def print_stats puts "print_stats" @movies.sort.each do |movie| puts movie.to_s end end
save()
click to toggle source
# File lib/playlist.rb, line 32 def save File.open("./../files/playlist_movies.csv", "w") do |file| movies.each do |movie| file.write movie.to_csv file.write "\n" end end end