class GEPUB::Mime

Static Object to hold and operate with OEBPS data MIME types

Public Class Methods

add_mimetype(mediatypes) click to toggle source

add new mediatype to @@mediatypes

# File lib/gepub/mime.rb, line 37
def self.add_mimetype(mediatypes)
  mediatypes.each { |expr, mime| @@mime_types[expr] ||= mime }
  compile_mime_types
end
compile_mime_types() click to toggle source

compile mime_types regexp

# File lib/gepub/mime.rb, line 9
def self.compile_mime_types
  @@mime_types_compiled = Hash[@@mime_types.map { |expr, mime| [ /\A\.#{expr}\Z/i, mime ] }]
end
guess_mediatype(href) click to toggle source

guess mediatype by mime type mask

# File lib/gepub/mime.rb, line 43
def self.guess_mediatype(href)
  ext = File.extname(href)
  @@mime_types_compiled.select { |pattern, _mime| ext =~ pattern }.values[0]
end
mime_types() click to toggle source

return mime media types => mime types hash

# File lib/gepub/mime.rb, line 32
def self.mime_types
   @@mime_types
end