Class HttpParser
java.lang.Object
org.apache.tomcat.util.http.parser.HttpParser
HTTP header value parser implementation. Parsing HTTP headers as per RFC2616
is not always as simple as it first appears. For headers that only use tokens
the simple approach will normally be sufficient. However, for the other
headers, while simple code meets 99.9% of cases, there are often some edge
cases that make things far more complicated.
The purpose of this parser is to let the parser worry about the edge cases.
It provides tolerant (where safe to do so) parsing of HTTP header values
assuming that wrapped header lines have already been unwrapped. (The Tomcat
header processing code does the unwrapping.)
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic booleanisAbsolutePath(int c) booleanisAbsolutePathRelaxed(int c) static booleanisAlpha(int c) static booleanisControl(int c) static booleanisHex(int c) static booleanisHttpProtocol(int c) static booleanisNotRequestTarget(int c) booleanisNotRequestTargetRelaxed(int c) static booleanisNumeric(int c) static booleanisQuery(int c) booleanisQueryRelaxed(int c) static booleanisToken(int c) static booleanisUserInfo(int c) static String
-
Constructor Details
-
HttpParser
-
-
Method Details
-
isNotRequestTargetRelaxed
public boolean isNotRequestTargetRelaxed(int c) -
isAbsolutePathRelaxed
public boolean isAbsolutePathRelaxed(int c) -
isQueryRelaxed
public boolean isQueryRelaxed(int c) -
unquote
-
isToken
public static boolean isToken(int c) -
isHex
public static boolean isHex(int c) -
isNotRequestTarget
public static boolean isNotRequestTarget(int c) -
isHttpProtocol
public static boolean isHttpProtocol(int c) -
isAlpha
public static boolean isAlpha(int c) -
isNumeric
public static boolean isNumeric(int c) -
isUserInfo
public static boolean isUserInfo(int c) -
isAbsolutePath
public static boolean isAbsolutePath(int c) -
isQuery
public static boolean isQuery(int c) -
isControl
public static boolean isControl(int c)
-