Class GrammarUtil


  • final class GrammarUtil
    extends java.lang.Object
    Class containing static utility methods to work with HTTP headers.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int COMMENT
      Represents comment type in the TYPE_TABLE.
      static int CONTROL
      Represents control type in the TYPE_TABLE.
      private static boolean[] IS_TOKEN
      convenience table mapping chars to true if they are tokens.
      private static boolean[] IS_WHITE_SPACE
      Convenience table mapping chars to true if they are white space chars.
      static int QUOTED_STRING
      Represents quotes type in the TYPE_TABLE.
      static int SEPARATOR
      Represents separator type in the TYPE_TABLE.
      private static char[] SEPARATORS
      Array of chars representing separators.
      static int TOKEN
      Represents token type in the TYPE_TABLE.
      private static int[] TYPE_TABLE
      Mapping of chars to types.
      private static char[] WHITE_SPACE
      Array of chars representing white spaces.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      private GrammarUtil()
      Prevents instantiation.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static boolean containsWhiteSpace​(java.lang.String s)
      Returns true if string s contains a white space char.
      private static int[] createEventTable()  
      private static boolean[] createTokenTable()  
      private static boolean[] createWhiteSpaceTable()  
      static java.lang.String filterToken​(java.lang.CharSequence s, int start, int end)
      Filter a substring of a string by removing any new-line characters and un-escaping escaped characters.
      static java.lang.String filterToken​(java.lang.CharSequence s, int start, int end, boolean preserveBackslash)
      Filter a substring of a string by removing any new-line characters and un-escaping escaped characters (unless preserveBackslash is set to true).
      static int getType​(char c)
      Get the character type.
      static boolean isSeparator​(char c)
      Returns true if the provided char is a separator.
      static boolean isToken​(char c)
      Returns true if the provided char is a token.
      static boolean isTokenString​(java.lang.String s)
      Returns true if all chars in string s are tokens.
      static boolean isWhiteSpace​(char c)
      Returns true if the provided char is a white space.
      • Methods inherited from class java.lang.Object

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

      • TOKEN

        public static final int TOKEN
        Represents token type in the TYPE_TABLE.
        See Also:
        Constant Field Values
      • QUOTED_STRING

        public static final int QUOTED_STRING
        Represents quotes type in the TYPE_TABLE.
        See Also:
        Constant Field Values
      • COMMENT

        public static final int COMMENT
        Represents comment type in the TYPE_TABLE.
        See Also:
        Constant Field Values
      • SEPARATOR

        public static final int SEPARATOR
        Represents separator type in the TYPE_TABLE.
        See Also:
        Constant Field Values
      • CONTROL

        public static final int CONTROL
        Represents control type in the TYPE_TABLE.
        See Also:
        Constant Field Values
      • WHITE_SPACE

        private static final char[] WHITE_SPACE
        Array of chars representing white spaces.
      • SEPARATORS

        private static final char[] SEPARATORS
        Array of chars representing separators.
      • TYPE_TABLE

        private static final int[] TYPE_TABLE
        Mapping of chars to types.
      • IS_WHITE_SPACE

        private static final boolean[] IS_WHITE_SPACE
        Convenience table mapping chars to true if they are white space chars.
      • IS_TOKEN

        private static final boolean[] IS_TOKEN
        convenience table mapping chars to true if they are tokens.
    • Constructor Detail

      • GrammarUtil

        private GrammarUtil()
        Prevents instantiation.
    • Method Detail

      • createEventTable

        private static int[] createEventTable()
      • createWhiteSpaceTable

        private static boolean[] createWhiteSpaceTable()
      • createTokenTable

        private static boolean[] createTokenTable()
      • isWhiteSpace

        public static boolean isWhiteSpace​(char c)
        Returns true if the provided char is a white space.
        Parameters:
        c - char to check.
        Returns:
        true if c is a white space.
      • isToken

        public static boolean isToken​(char c)
        Returns true if the provided char is a token.
        Parameters:
        c - char to check.
        Returns:
        true if c is a token.
      • getType

        public static int getType​(char c)
        Get the character type.
        Parameters:
        c - char to check.
        Returns:
        character type identifier.
        Throws:
        java.lang.IllegalArgumentException - in case the character value is greater than 127.
      • isSeparator

        public static boolean isSeparator​(char c)
        Returns true if the provided char is a separator.
        Parameters:
        c - char to check.
        Returns:
        true if c is a token.
      • isTokenString

        public static boolean isTokenString​(java.lang.String s)
        Returns true if all chars in string s are tokens.
        Parameters:
        s - string to check for tokens.
        Returns:
        true if all chars in s are tokens.
      • containsWhiteSpace

        public static boolean containsWhiteSpace​(java.lang.String s)
        Returns true if string s contains a white space char.
        Parameters:
        s - string to check for white spaces.
        Returns:
        true if s contains white spaces.
      • filterToken

        public static java.lang.String filterToken​(java.lang.CharSequence s,
                                                   int start,
                                                   int end)
        Filter a substring of a string by removing any new-line characters and un-escaping escaped characters.
        Parameters:
        s - character sequence to use for substring token filtering.
        start - start filtering position in the string.
        end - end filtering position in the string.
        Returns:
        filtered substring.
      • filterToken

        public static java.lang.String filterToken​(java.lang.CharSequence s,
                                                   int start,
                                                   int end,
                                                   boolean preserveBackslash)
        Filter a substring of a string by removing any new-line characters and un-escaping escaped characters (unless preserveBackslash is set to true).
        Parameters:
        s - character sequence to use for substring token filtering.
        start - start filtering position in the string.
        end - end filtering position in the string.
        preserveBackslash - if set to true, this method does not treat backslash as an escape character (treats it as a regular character instead)
        Returns:
        filtered substring.