Class LanguageTagParser


  • final class LanguageTagParser
    extends java.lang.Object
    Language tags are used to help identify languages and are defined by RFC 5646.
    See Also:
    RFC 5643
    • Field Summary

      Fields 
      Modifier and Type Field Description
      (package private) static java.util.regex.Pattern LANG_DEL_RE  
      (package private) java.lang.String languageTag  
      (package private) int tagIndex  
      (package private) java.lang.String[] tags  
      (package private) boolean verififierMode  
    • Constructor Summary

      Constructors 
      Constructor Description
      LanguageTagParser​(java.lang.String languageTag, java.lang.String[] tags, boolean verifierMode)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      (package private) boolean accept​(int length)  
      (package private) boolean accept​(int min, int max, java.util.function.IntPredicate predicate, java.util.function.Consumer<java.lang.String> consumer)  
      (package private) boolean accept​(int length, java.util.function.Consumer<java.lang.String> consumer)  
      (package private) boolean acceptAlpha​(int min, int max, java.util.function.Consumer<java.lang.String> consumer)  
      (package private) boolean acceptAlpha​(int length, java.util.function.Consumer<java.lang.String> consumer)  
      (package private) boolean acceptAlphaNun​(int min, int max, java.util.function.Consumer<java.lang.String> consumer)  
      (package private) boolean acceptDigit​(int length)  
      (package private) boolean acceptDigit​(int min, int max, java.util.function.Consumer<java.lang.String> consumer)  
      (package private) boolean acceptDigit​(int length, java.util.function.Consumer<java.lang.String> consumer)  
      (package private) boolean acceptPrivateUse​(LanguageTag tag)  
      (package private) boolean alphaNumRange​(int index, int length)  
      (package private) boolean alphaRange​(int index, int length)  
      static LanguageTagParser create​(java.lang.String languageTag)
      Creates a new LanguageTagParser instance.
      private static LanguageTagParser create​(java.lang.String languageTag, boolean verifierMode)  
      (package private) boolean digitRange​(int index, int length)  
      static boolean isWellFormed​(java.lang.String languageTag)  
      (package private) LanguageTag parse()
      Parses the language tag.
      (package private) boolean range​(int index, int length, java.util.function.IntPredicate predicate)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • LANG_DEL_RE

        static final java.util.regex.Pattern LANG_DEL_RE
      • languageTag

        final java.lang.String languageTag
      • tags

        final java.lang.String[] tags
      • tagIndex

        int tagIndex
      • verififierMode

        boolean verififierMode
    • Constructor Detail

      • LanguageTagParser

        LanguageTagParser​(java.lang.String languageTag,
                          java.lang.String[] tags,
                          boolean verifierMode)
    • Method Detail

      • create

        public static final LanguageTagParser create​(java.lang.String languageTag)
        Creates a new LanguageTagParser instance.
        Parameters:
        languageTag - used to initialize the parser
        Returns:
        a new instance
      • isWellFormed

        public static final boolean isWellFormed​(java.lang.String languageTag)
      • create

        private static final LanguageTagParser create​(java.lang.String languageTag,
                                                      boolean verifierMode)
      • parse

        LanguageTag parse()
                   throws java.lang.IllegalArgumentException
        Parses the language tag.
        Returns:
        the language tag
        Throws:
        java.lang.IllegalArgumentException - if the language tag is not well-formed
      • acceptPrivateUse

        boolean acceptPrivateUse​(LanguageTag tag)
      • acceptAlpha

        boolean acceptAlpha​(int length,
                            java.util.function.Consumer<java.lang.String> consumer)
      • acceptAlpha

        boolean acceptAlpha​(int min,
                            int max,
                            java.util.function.Consumer<java.lang.String> consumer)
      • acceptDigit

        boolean acceptDigit​(int length)
      • acceptDigit

        boolean acceptDigit​(int length,
                            java.util.function.Consumer<java.lang.String> consumer)
      • acceptDigit

        boolean acceptDigit​(int min,
                            int max,
                            java.util.function.Consumer<java.lang.String> consumer)
      • acceptAlphaNun

        boolean acceptAlphaNun​(int min,
                               int max,
                               java.util.function.Consumer<java.lang.String> consumer)
      • accept

        boolean accept​(int min,
                       int max,
                       java.util.function.IntPredicate predicate,
                       java.util.function.Consumer<java.lang.String> consumer)
      • accept

        boolean accept​(int length)
      • accept

        boolean accept​(int length,
                       java.util.function.Consumer<java.lang.String> consumer)
      • alphaRange

        boolean alphaRange​(int index,
                           int length)
      • alphaNumRange

        boolean alphaNumRange​(int index,
                              int length)
      • digitRange

        boolean digitRange​(int index,
                           int length)
      • range

        boolean range​(int index,
                      int length,
                      java.util.function.IntPredicate predicate)