Class: NewMovies::Movie

Inherits:
Object
  • Object
show all
Defined in:
lib/new_movies/movie.rb

Constant Summary collapse

@@all =
[]

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(title, url) ⇒ Movie

Returns a new instance of Movie.



6
7
8
9
10
# File 'lib/new_movies/movie.rb', line 6

def initialize(title ,url)
  @title = title
  @url = url
  @@all << self
end

Instance Attribute Details

#castObject

Returns the value of attribute cast.



2
3
4
# File 'lib/new_movies/movie.rb', line 2

def cast
  @cast
end

#directorObject

Returns the value of attribute director.



2
3
4
# File 'lib/new_movies/movie.rb', line 2

def director
  @director
end

#genreObject

Returns the value of attribute genre.



2
3
4
# File 'lib/new_movies/movie.rb', line 2

def genre
  @genre
end

#indexObject

Returns the value of attribute index.



2
3
4
# File 'lib/new_movies/movie.rb', line 2

def index
  @index
end

#movie_siteObject

Returns the value of attribute movie_site.



2
3
4
# File 'lib/new_movies/movie.rb', line 2

def movie_site
  @movie_site
end

#ratingObject

Returns the value of attribute rating.



2
3
4
# File 'lib/new_movies/movie.rb', line 2

def rating
  @rating
end

#release_dateObject

Returns the value of attribute release_date.



2
3
4
# File 'lib/new_movies/movie.rb', line 2

def release_date
  @release_date
end

#runtimeObject

Returns the value of attribute runtime.



2
3
4
# File 'lib/new_movies/movie.rb', line 2

def runtime
  @runtime
end

#synopsisObject

Returns the value of attribute synopsis.



2
3
4
# File 'lib/new_movies/movie.rb', line 2

def synopsis
  @synopsis
end

#titleObject

Returns the value of attribute title.



2
3
4
# File 'lib/new_movies/movie.rb', line 2

def title
  @title
end

#urlObject

Returns the value of attribute url.



2
3
4
# File 'lib/new_movies/movie.rb', line 2

def url
  @url
end

Class Method Details

.allObject



16
17
18
# File 'lib/new_movies/movie.rb', line 16

def self.all
  @@all
end

.find_movie_by_index(index) ⇒ Object



20
21
22
23
24
# File 'lib/new_movies/movie.rb', line 20

def self.find_movie_by_index(index)
  movie = NewMovies::Movie.all[index.to_i - 1]
  movie.attribute_assignment(NewMovies::Scraper.scrape_movie_details(movie))
  movie
end

Instance Method Details

#attribute_assignment(movies_hash_attributes) ⇒ Object



12
13
14
# File 'lib/new_movies/movie.rb', line 12

def attribute_assignment(movies_hash_attributes)
  movies_hash_attributes.each{|key, value| self.send(("#{key}="), value)}
end