Class HTTPUtil

java.lang.Object
com.twelvemonkeys.net.HTTPUtil

public class HTTPUtil extends Object
HTTPUtil
Version:
$Id: HTTPUtil.java,v 1.0 08.09.13 13:57 haraldk Exp$
  • Field Details

    • HTTP_RFC1123_FORMAT

      private static final SimpleDateFormat HTTP_RFC1123_FORMAT
      RFC 1123 date format, as recommended by RFC 2616 (HTTP/1.1), sec 3.3 NOTE: All date formats are private, to ensure synchronized access.
    • HTTP_RFC850_FORMAT

      private static final SimpleDateFormat HTTP_RFC850_FORMAT
      RFC 850 date format, (almost) as described in RFC 2616 (HTTP/1.1), sec 3.3 USE FOR PARSING ONLY (format is not 100% correct, to be more robust).
    • HTTP_ASCTIME_FORMAT

      private static final SimpleDateFormat HTTP_ASCTIME_FORMAT
      ANSI C asctime() date format, (almost) as described in RFC 2616 (HTTP/1.1), sec 3.3. USE FOR PARSING ONLY (format is not 100% correct, to be more robust).
    • sNext50YearWindowChange

      private static long sNext50YearWindowChange
  • Constructor Details

    • HTTPUtil

      private HTTPUtil()
  • Method Details

    • update50YearWindowIfNeeded

      private static void update50YearWindowIfNeeded()
    • formatHTTPDate

      public static String formatHTTPDate(long pTime)
      Formats the time to a HTTP date, using the RFC 1123 format, as described in RFC 2616 (HTTP/1.1), sec. 3.3.
      Parameters:
      pTime - the time
      Returns:
      a String representation of the time
    • formatHTTPDate

      public static String formatHTTPDate(Date pTime)
      Formats the time to a HTTP date, using the RFC 1123 format, as described in RFC 2616 (HTTP/1.1), sec. 3.3.
      Parameters:
      pTime - the time
      Returns:
      a String representation of the time
    • parseHTTPDate

      public static long parseHTTPDate(String pDate) throws NumberFormatException
      Parses a HTTP date string into a long representing milliseconds since January 1, 1970 GMT.

      Use this method with headers that contain dates, such as If-Modified-Since or Last-Modified.

      The date string may be in either RFC 1123, RFC 850 or ANSI C asctime() format, as described in RFC 2616 (HTTP/1.1), sec. 3.3

      Parameters:
      pDate - the date to parse
      Returns:
      a long value representing the date, expressed as the number of milliseconds since January 1, 1970 GMT,
      Throws:
      NumberFormatException - if the date parameter is not parseable.
      IllegalArgumentException - if the date paramter is null
    • parseHTTPDateImpl

      private static Date parseHTTPDateImpl(String pDate) throws NumberFormatException
      ParseHTTPDate implementation
      Parameters:
      pDate - the date string to parse
      Returns:
      a Date
      Throws:
      NumberFormatException - if the date parameter is not parseable.
      IllegalArgumentException - if the date paramter is null