org.opencms.i18n
Class CmsAcceptLanguageHeaderParser

java.lang.Object
  extended by org.opencms.i18n.CmsAcceptLanguageHeaderParser

public class CmsAcceptLanguageHeaderParser
extends Object

Parses the HTTP Accept-Language header as per section 14.4 of RFC 2068 (HTTP 1.1 header field definitions) and creates a sorted list of Locales from it.

Since:
6.0.0

Nested Class Summary
protected static class CmsAcceptLanguageHeaderParser.AcceptLanguage
          Struct representing an element of the HTTP Accept-Language header.
 
Field Summary
static String ACCEPT_LANGUAGE
          A constant for the HTTP Accept-Language header.
protected static Float DEFAULT_QUALITY
          The default m_quality value for an AcceptLanguage object.
 
Constructor Summary
CmsAcceptLanguageHeaderParser(javax.servlet.http.HttpServletRequest req, Locale defaultLocale)
          Parses the Accept-Language header from the provided request.
CmsAcceptLanguageHeaderParser(String header, Locale defaultLocale)
          Parses the Accept-Language header.
 
Method Summary
static String createLanguageHeader()
          Creates a value string for the HTTP Accept-Language header based on the default localed.
 List<Locale> getAcceptedLocales()
          Returns the sorted list of accepted Locales.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ACCEPT_LANGUAGE

public static final String ACCEPT_LANGUAGE
A constant for the HTTP Accept-Language header.

See Also:
Constant Field Values

DEFAULT_QUALITY

protected static final Float DEFAULT_QUALITY
The default m_quality value for an AcceptLanguage object.

Constructor Detail

CmsAcceptLanguageHeaderParser

public CmsAcceptLanguageHeaderParser(javax.servlet.http.HttpServletRequest req,
                                     Locale defaultLocale)
Parses the Accept-Language header from the provided request.

Parameters:
req - the request to parse
defaultLocale - the default locale to use

CmsAcceptLanguageHeaderParser

public CmsAcceptLanguageHeaderParser(String header,
                                     Locale defaultLocale)
Parses the Accept-Language header.

Parameters:
header - the Accept-Language header (i.e. en, es;q=0.8, zh-TW;q=0.1)
defaultLocale - the default locale to use
Method Detail

createLanguageHeader

public static String createLanguageHeader()
Creates a value string for the HTTP Accept-Language header based on the default localed.

Returns:
value string for the HTTP Accept-Language

getAcceptedLocales

public List<Locale> getAcceptedLocales()
Returns the sorted list of accepted Locales.

Returns:
the sorted list of accepted Locales