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) java.lang.String languageTag  
      (package private) int tagIndex  
      (package private) java.lang.String[] tags  
      (package private) boolean verifierMode  
    • Constructor Summary

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

      • languageTag

        final java.lang.String languageTag
      • tags

        final java.lang.String[] tags
      • tagIndex

        int tagIndex
      • verifierMode

        boolean verifierMode
    • Constructor Detail

      • LanguageTagParser

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

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

      • create

        public static 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 boolean isWellFormed​(java.lang.String languageTag)
      • create

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

        private static boolean doesNotEndWithAlphanum​(java.lang.String stripped)
      • doesNotStartWithAlpha

        private static boolean doesNotStartWithAlpha​(java.lang.String stripped)
      • 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)
      • allAsciiAlpha

        private boolean allAsciiAlpha()
      • acceptAlpha

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

        boolean acceptDigit()
      • acceptDigit

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

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

        boolean accept()
      • accept

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

        boolean alphaRange()
      • alphaNumRange

        boolean alphaNumRange()
      • digitRange

        boolean digitRange()