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
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