Class ServerDrivenNegotiation


  • public class ServerDrivenNegotiation
    extends java.lang.Object
    Variant selection.
    See Also:
    "RFC 2296"
    • Field Detail

      • requestedMediaTypes

        private java.util.Map<javax.ws.rs.core.MediaType,​QualityValue> requestedMediaTypes
      • requestedCharacterSets

        private java.util.Map<java.lang.String,​QualityValue> requestedCharacterSets
      • requestedEncodings

        private java.util.Map<java.lang.String,​QualityValue> requestedEncodings
      • requestedLanguages

        private java.util.Map<java.util.Locale,​QualityValue> requestedLanguages
      • mediaRadix

        private int mediaRadix
    • Constructor Detail

      • ServerDrivenNegotiation

        public ServerDrivenNegotiation()
    • Method Detail

      • setAcceptHeaders

        public void setAcceptHeaders​(java.util.List<java.lang.String> headerValues)
      • setAcceptCharsetHeaders

        public void setAcceptCharsetHeaders​(java.util.List<java.lang.String> headerValues)
      • setAcceptEncodingHeaders

        public void setAcceptEncodingHeaders​(java.util.List<java.lang.String> headerValues)
      • setAcceptLanguageHeaders

        public void setAcceptLanguageHeaders​(java.util.List<java.lang.String> headerValues)
      • getBestMatch

        public javax.ws.rs.core.Variant getBestMatch​(java.util.List<javax.ws.rs.core.Variant> available)
      • isBetterOption

        private static boolean isBetterOption​(VariantQuality bestQuality,
                                              javax.ws.rs.core.Variant best,
                                              VariantQuality optionQuality,
                                              javax.ws.rs.core.Variant option)
        Tests whether option is preferable over the current bestOption.
      • getExplicitness

        private static int getExplicitness​(javax.ws.rs.core.Variant variant)
      • applyMediaType

        private boolean applyMediaType​(javax.ws.rs.core.Variant option,
                                       VariantQuality quality)
      • hasRequiredParameters

        private boolean hasRequiredParameters​(java.util.Map<java.lang.String,​java.lang.String> required,
                                              java.util.Map<java.lang.String,​java.lang.String> available)
      • applyCharacterSet

        private boolean applyCharacterSet​(javax.ws.rs.core.Variant option,
                                          VariantQuality quality)
      • applyEncoding

        private boolean applyEncoding​(javax.ws.rs.core.Variant option,
                                      VariantQuality quality)
      • hasCountry

        private boolean hasCountry​(java.util.Locale locale)
      • applyLanguage

        private boolean applyLanguage​(javax.ws.rs.core.Variant option,
                                      VariantQuality quality)