Class HttpParser


  • public final class HttpParser
    extends java.lang.Object
    A basic parser for HTTP response headers. Handles status lines and authentication headers (WWW-Authenticate, Proxy-Authenticate).
    See Also:
    RFC 7230, RFC 7235
    • Constructor Detail

      • HttpParser

        private HttpParser()
    • Method Detail

      • getAuthenticationHeaders

        public static java.util.List<AuthenticationChallenge> getAuthenticationHeaders​(java.util.List<java.lang.String> reply,
                                                                                       java.lang.String authenticationHeader)
        Extract the authentication headers from the header lines. It is assumed that the first element in reply is the raw status line as received from the server. It is skipped. Line processing stops on the first empty line thereafter.
        Parameters:
        reply - The complete (header) lines of the HTTP response
        authenticationHeader - to look for (including the terminating ':'!)
        Returns:
        a list of AuthenticationChallenges found.
      • parseChallenges

        private static void parseChallenges​(java.util.List<AuthenticationChallenge> challenges,
                                            java.lang.String header)
      • parseChallenge

        private static int parseChallenge​(AuthenticationChallenge challenge,
                                          java.lang.String header,
                                          int from)
      • skipWhiteSpace

        private static int skipWhiteSpace​(java.lang.String header,
                                          int i)
      • scanQuotedString

        private static java.lang.String scanQuotedString​(java.lang.String header,
                                                         int from,
                                                         int[] to)