Class: ShowRobot::MediaFile
- Inherits:
-
Object
- Object
- ShowRobot::MediaFile
- Defined in:
- lib/showrobot/media_file.rb
Direct Known Subclasses
Instance Attribute Summary collapse
-
#fileName ⇒ Object
readonly
Returns the value of attribute fileName.
Class Method Summary collapse
Instance Method Summary collapse
- #episode ⇒ Object
- #is_movie? ⇒ Boolean
- #is_tv? ⇒ Boolean
-
#isvideo? ⇒ Boolean
instance methods.
- #match(database) ⇒ Object
- #name_guess ⇒ Object
- #season ⇒ Object
Instance Attribute Details
#fileName ⇒ Object (readonly)
Returns the value of attribute fileName.
4 5 6 |
# File 'lib/showrobot/media_file.rb', line 4 def fileName @fileName end |
Class Method Details
.addType(ext, klass) ⇒ Object
19 20 21 |
# File 'lib/showrobot/media_file.rb', line 19 def self.addType ext, klass @@video_types['.' + ext.to_s] = klass end |
.isvideo?(fileName) ⇒ Boolean
15 16 17 |
# File 'lib/showrobot/media_file.rb', line 15 def self.isvideo? fileName @@video_types.include? File.extname(fileName) end |
.load(fileName) ⇒ Object
class methods
7 8 9 10 11 12 13 |
# File 'lib/showrobot/media_file.rb', line 7 def self.load fileName begin @@video_types[File.extname(fileName)].new fileName rescue raise "No parser exists for files of type '#{File.extname(fileName)}'" end end |
Instance Method Details
#episode ⇒ Object
40 41 42 |
# File 'lib/showrobot/media_file.rb', line 40 def episode parse[:episode] end |
#is_movie? ⇒ Boolean
28 29 30 |
# File 'lib/showrobot/media_file.rb', line 28 def is_movie? parse[:type] == :movie end |
#is_tv? ⇒ Boolean
32 33 34 |
# File 'lib/showrobot/media_file.rb', line 32 def is_tv? parse[:type] == :tv end |
#isvideo? ⇒ Boolean
instance methods
24 25 26 |
# File 'lib/showrobot/media_file.rb', line 24 def isvideo? MediaFile.isvideo? @fileName end |
#match(database) ⇒ Object
48 49 50 |
# File 'lib/showrobot/media_file.rb', line 48 def match database ShowRobot.datasource_for(database).new(self) end |
#name_guess ⇒ Object
44 45 46 |
# File 'lib/showrobot/media_file.rb', line 44 def name_guess @name_guess ||= parse[:name_guess].gsub(/[^a-zA-Z0-9]/, ' ').gsub(/\s+/, ' ').strip end |
#season ⇒ Object
36 37 38 |
# File 'lib/showrobot/media_file.rb', line 36 def season parse[:season] end |