Class: Jeanine::Mimes

Inherits:
Object
  • Object
show all
Defined in:
lib/jeanine/mimes.rb

Constant Summary collapse

MimeTypeNotFound =
Class.new(StandardError)
MIME_TYPES_INVERTED =
::Rack::Mime::MIME_TYPES.invert

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeMimes

Returns a new instance of Mimes.



35
36
37
# File 'lib/jeanine/mimes.rb', line 35

def initialize(*)
  raise "Should not be initialiazed"
end

Class Method Details

.for(type) ⇒ Object



23
24
25
26
27
# File 'lib/jeanine/mimes.rb', line 23

def self.for(type)
  mime_types.fetch(type) do
    raise(MimeTypeNotFound, "Mime #{type} not registered")
  end
end

.load!Object



10
11
12
13
14
15
16
17
# File 'lib/jeanine/mimes.rb', line 10

def self.load!
  return if loaded?
  @loaded = true
  register(:json, Rack::Mime::MIME_TYPES[".json"])
  register(:html, Rack::Mime::MIME_TYPES[".html"])
  register(:text, Rack::Mime::MIME_TYPES[".text"])
  register(:plain, self.for(:text))
end

.loaded?Boolean

Returns:

  • (Boolean)


6
7
8
# File 'lib/jeanine/mimes.rb', line 6

def self.loaded?
  @loaded
end

.register(type, header) ⇒ Object



19
20
21
# File 'lib/jeanine/mimes.rb', line 19

def self.register(type, header)
  mime_types[type] = header
end