lib/film_snob.rb in film_snob-0.2.1 vs lib/film_snob.rb in film_snob-0.3.0
- old
+ new
@@ -3,28 +3,32 @@
require "film_snob/exceptions"
class FilmSnob
attr_reader :url, :video
- def initialize(url)
+ def initialize(url, options={})
@url = url
- @video = FilmSnob::UrlToVideo.new(url).video
+ @video = UrlToVideo.new(url, options).video
end
def watchable?
!video.nil?
end
- def method_missing(m)
- if [:site, :id, :clean_url, :title, :html].include?(m)
- complain_about_bad_urls!(m)
- video.send(m)
+ def method_missing(message)
+ if delegated_video_methods.include?(message)
+ complain_about_bad_urls!(message)
+ video.send(message)
else
super
end
end
private
+
+ def delegated_video_methods
+ [:site, :id, :clean_url, :title, :html]
+ end
def complain_about_bad_urls!(method)
raise NotSupportedURLError.new("Can not call FilmSnob##{method} because #{url} is not a supported URL.") unless watchable?
end