Class HttpVersion

  • All Implemented Interfaces:
    java.io.Serializable

    @Contract(threading=IMMUTABLE)
    public final class HttpVersion
    extends ProtocolVersion
    Represents an HTTP version. HTTP uses a "major.minor" numbering scheme to indicate versions of the protocol.

    The version of an HTTP message is indicated by an HTTP-Version field in the first line of the message.

    Since:
    4.0
    See Also:
    Serialized Form
    • Field Detail

      • HTTP_0_9

        public static final HttpVersion HTTP_0_9
        HTTP protocol version 0.9
      • HTTP_1_0

        public static final HttpVersion HTTP_1_0
        HTTP protocol version 1.0
      • HTTP_1_1

        public static final HttpVersion HTTP_1_1
        HTTP protocol version 1.1
      • HTTP_2_0

        public static final HttpVersion HTTP_2_0
        HTTP protocol version 2.0
      • DEFAULT

        public static final HttpVersion DEFAULT
        HTTP/1.1 is default
      • ALL

        public static final HttpVersion[] ALL
        All HTTP versions known to HttpCore.
    • Constructor Detail

      • HttpVersion

        public HttpVersion​(int major,
                           int minor)
        Creates an HTTP protocol version designator.
        Parameters:
        major - the major version number of the HTTP protocol
        minor - the minor version number of the HTTP protocol
        Throws:
        java.lang.IllegalArgumentException - if either major or minor version number is negative
    • Method Detail

      • get

        public static HttpVersion get​(int major,
                                      int minor)
        Gets a specific instance or creates a new one.
        Parameters:
        major - the major version
        minor - the minor version
        Returns:
        an instance of HttpVersion with the argument version, never null.
        Throws:
        java.lang.IllegalArgumentException - if either major or minor version number is negative
        Since:
        5.0