Package akka.http.scaladsl.server
Class LanguageNegotiator
- java.lang.Object
-
- akka.http.scaladsl.server.LanguageNegotiator
-
public final class LanguageNegotiator extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description LanguageNegotiator(scala.collection.immutable.Seq<HttpHeader> requestHeaders)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description scala.collection.immutable.List<LanguageRange>
acceptedLanguageRanges()
The language-ranges accepted by the client according to given request headers, sorted by 1. increasing generality (i.e. most specific first) 2. decreasing q-value (only for ranges targeting a single Language) 3. order of appearance in theAccept-Language
header(s)static LanguageNegotiator
apply(scala.collection.immutable.Seq<HttpHeader> requestHeaders)
boolean
isAccepted(Language language)
Determines whether the given language is accepted by the client.scala.Option<Language>
pickLanguage(scala.collection.immutable.List<Language> alternatives)
Picks the best of the given language alternatives given the preferences the client indicated in the request'sAccept-Language
headers.float
qValueFor(Language language)
Returns the q-value that the client (implicitly or explicitly) attaches to the given language.
-
-
-
Constructor Detail
-
LanguageNegotiator
public LanguageNegotiator(scala.collection.immutable.Seq<HttpHeader> requestHeaders)
-
-
Method Detail
-
apply
public static LanguageNegotiator apply(scala.collection.immutable.Seq<HttpHeader> requestHeaders)
-
acceptedLanguageRanges
public scala.collection.immutable.List<LanguageRange> acceptedLanguageRanges()
The language-ranges accepted by the client according to given request headers, sorted by 1. increasing generality (i.e. most specific first) 2. decreasing q-value (only for ranges targeting a single Language) 3. order of appearance in theAccept-Language
header(s)- Returns:
- (undocumented)
-
qValueFor
public float qValueFor(Language language)
Returns the q-value that the client (implicitly or explicitly) attaches to the given language. See http://tools.ietf.org/html/rfc7231#section-5.3.1 for details.- Parameters:
language
- (undocumented)- Returns:
- (undocumented)
-
isAccepted
public boolean isAccepted(Language language)
Determines whether the given language is accepted by the client.- Parameters:
language
- (undocumented)- Returns:
- (undocumented)
-
pickLanguage
public scala.Option<Language> pickLanguage(scala.collection.immutable.List<Language> alternatives)
Picks the best of the given language alternatives given the preferences the client indicated in the request'sAccept-Language
headers. See http://tools.ietf.org/html/rfc7231#section-5.3.5 for details on the negotiation logic.If there are several best language alternatives that the client has equal preference for the order of the given alternatives is used as a tie breaker (first one wins).
If none of the given alternatives is acceptable to the client the methods return
None
.- Parameters:
alternatives
- (undocumented)- Returns:
- (undocumented)
-
-