class Rack::Accept::Request

A container class for convenience methods when Rack::Accept is used on the request level as Rack middleware. Instances of this class also manage a lightweight cache of various header instances to speed up execution.

Attributes

env[R]

Public Class Methods

new(env) click to toggle source
   # File lib/rack/accept/request.rb
10 def initialize(env)
11   @env = env
12 end

Public Instance Methods

best_charset(values) click to toggle source

Determines the best character set to use in a response from the given character sets, if any is acceptable. For more information on how this value is determined, see the documentation for Rack::Accept::Header::PublicInstanceMethods#sort.

   # File lib/rack/accept/request.rb
70 def best_charset(values)
71   charset.best_of(values)
72 end
best_encoding(values) click to toggle source

Determines the best encoding to use in a response from the given encodings, if any is acceptable. For more information on how this value is determined, see the documentation for Rack::Accept::Header::PublicInstanceMethods#sort.

   # File lib/rack/accept/request.rb
78 def best_encoding(values)
79   encoding.best_of(values)
80 end
best_language(values) click to toggle source

Determines the best language to use in a response from the given languages, if any is acceptable. For more information on how this value is determined, see the documentation for Rack::Accept::Header::PublicInstanceMethods#sort.

   # File lib/rack/accept/request.rb
86 def best_language(values)
87   language.best_of(values)
88 end
best_media_type(values) click to toggle source

Determines the best media type to use in a response from the given media types, if any is acceptable. For more information on how this value is determined, see the documentation for Rack::Accept::Header::PublicInstanceMethods#sort.

   # File lib/rack/accept/request.rb
62 def best_media_type(values)
63   media_type.best_of(values)
64 end
charset() click to toggle source

Provides access to the Rack::Accept::Charset instance for this request.

   # File lib/rack/accept/request.rb
20 def charset
21   @charset ||= Charset.new(env['HTTP_ACCEPT_CHARSET'])
22 end
charset?(value) click to toggle source

Returns true if the Accept-Charset request header indicates the given character set is acceptable, false otherwise.

   # File lib/rack/accept/request.rb
42 def charset?(value)
43   charset.accept?(value)
44 end
encoding() click to toggle source

Provides access to the Rack::Accept::Encoding instance for this request.

   # File lib/rack/accept/request.rb
25 def encoding
26   @encoding ||= Encoding.new(env['HTTP_ACCEPT_ENCODING'])
27 end
encoding?(value) click to toggle source

Returns true if the Accept-Encoding request header indicates the given encoding is acceptable, false otherwise.

   # File lib/rack/accept/request.rb
48 def encoding?(value)
49   encoding.accept?(value)
50 end
language() click to toggle source

Provides access to the Rack::Accept::Language instance for this request.

   # File lib/rack/accept/request.rb
30 def language
31   @language ||= Language.new(env['HTTP_ACCEPT_LANGUAGE'])
32 end
language?(value) click to toggle source

Returns true if the Accept-Language request header indicates the given language is acceptable, false otherwise.

   # File lib/rack/accept/request.rb
54 def language?(value)
55   language.accept?(value)
56 end
media_type() click to toggle source

Provides access to the Rack::Accept::MediaType instance for this request.

   # File lib/rack/accept/request.rb
15 def media_type
16   @media_type ||= MediaType.new(env['HTTP_ACCEPT'])
17 end
media_type?(value) click to toggle source

Returns true if the Accept request header indicates the given media type is acceptable, false otherwise.

   # File lib/rack/accept/request.rb
36 def media_type?(value)
37   media_type.accept?(value)
38 end