Class HttpHeader

    • Constructor Detail

      • HttpHeader

        public HttpHeader()
    • Method Detail

      • unapply

        public static scala.Option<scala.Tuple2<java.lang.String,​java.lang.String>> unapply​(HttpHeader header)
        Extract name and value from a header. CAUTION: The name must be matched in *all-lowercase*!.
        Parameters:
        header - (undocumented)
        Returns:
        (undocumented)
      • parse

        public static HttpHeader.ParsingResult parse​(java.lang.String name,
                                                     java.lang.String value,
                                                     HeaderParser.Settings settings)
        Attempts to parse the given header name and value string into a header model instance.

        This process has several possible outcomes:

        1. The header name corresponds to a properly modelled header and a) the value is valid for this header type. In this case the method returns a ParsingResult.Ok with the respective header instance and no errors. b) the value consists of a number elements, some of which valid and some invalid, and the header type supports partial value parsing. In this case the method returns a ParsingResult.Ok with the respective header instance holding the valid value elements and an ErrorInfo for each invalid value. c) the value has invalid elements and the header type doesn't support partial value parsing. In this case the method returns a ParsingResult.Ok with a RawHeader instance and a single ErrorInfo for the value parsing problem.

        2. The header name does not correspond to a properly modelled header but the header name and the value are both syntactically legal according to the basic header requirements from the HTTP specification. (http://tools.ietf.org/html/rfc7230#section-3.2) In this case the method returns a ParsingResult.Ok with a RawHeader instance and no errors.

        3. The header name or value are illegal according to the basic requirements for HTTP headers (http://tools.ietf.org/html/rfc7230#section-3.2). In this case the method returns a ParsingResult.Error.

        Parameters:
        name - (undocumented)
        value - (undocumented)
        settings - (undocumented)
        Returns:
        (undocumented)
      • fastFind

        public static <T extends HttpHeader> akka.util.OptionVal<T> fastFind​(java.lang.Class<T> clazz,
                                                                             scala.collection.immutable.Seq<HttpHeader> headers)
        INTERNAL API
      • name

        public abstract java.lang.String name()
        Description copied from class: HttpHeader
        Returns the name of the header.
        Specified by:
        name in class HttpHeader
      • value

        public abstract java.lang.String value()
        Description copied from class: HttpHeader
        Returns the String representation of the value of the header.
        Specified by:
        value in class HttpHeader
      • lowercaseName

        public abstract java.lang.String lowercaseName()
        Description copied from class: HttpHeader
        Returns the lower-cased name of the header.
        Specified by:
        lowercaseName in class HttpHeader
      • is

        public boolean is​(java.lang.String nameInLowerCase)
        Description copied from class: HttpHeader
        Returns true if and only if nameInLowerCase.equals(lowercaseName()).
        Specified by:
        is in class HttpHeader
      • isNot

        public boolean isNot​(java.lang.String nameInLowerCase)
        Description copied from class: HttpHeader
        Returns !is(nameInLowerCase).
        Specified by:
        isNot in class HttpHeader
      • unsafeToString

        public java.lang.String unsafeToString()