Method: Rack::Acceptable::Provides#initialize
- Defined in:
- lib/rack/acceptable/middleware/provides.rb
#initialize(app, provides, options = {}) ⇒ Provides
Parameters
- app<#call>
-
Rack application.
- provides<Array>
-
List of available MIME-Types.
- options<Hash>
-
Additional options, like
negotiate_by. See also the Rack::Acceptable::MIMETypes#detect_best_mime_type method.
33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/rack/acceptable/middleware/provides.rb', line 33 def initialize(app, provides, = {}) raise "You should provide the list of available MIME-Types." if provides.empty? @app = app @provides = provides.map { |type| MIMETypes.parse_media_range(type) << type } @provides << ([:negotiate_by] == :qvalue_only ? true : false) @lookup = {} @force_format = !![:force_format] if @force_format && .key?(:default_format) ext = [:default_format].to_s.strip @_extension = ext[0] == ?. ? ext : ".#{ext}" unless ext.empty? end end |