Class HttpVersion

All Implemented Interfaces:
Serializable, Cloneable

@Contract(threading=IMMUTABLE) public final class HttpVersion extends ProtocolVersion implements Serializable
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.

     HTTP-Version   = "HTTP" "/" 1*DIGIT "." 1*DIGIT
 
Since:
4.0
See Also:
  • Field Details

    • HTTP

      public static final String HTTP
      The protocol name.
      See Also:
    • 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
  • Constructor Details

    • HttpVersion

      public HttpVersion(int major, int minor)
      Create 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:
      IllegalArgumentException - if either major or minor version number is negative
  • Method Details

    • forVersion

      public ProtocolVersion forVersion(int major, int minor)
      Obtains a specific HTTP version.
      Overrides:
      forVersion in class ProtocolVersion
      Parameters:
      major - the major version
      minor - the minor version
      Returns:
      an instance of HttpVersion with the argument version