Class FastHttpDateFormat

java.lang.Object
org.springframework.security.web.savedrequest.FastHttpDateFormat

public final class FastHttpDateFormat extends Object
Utility class to generate HTTP dates.

This class is based on code in Apache Tomcat.

  • Field Details

    • format

      protected static final SimpleDateFormat format
      HTTP date format.
    • formats

      protected static final SimpleDateFormat[] formats
      The set of SimpleDateFormat formats to use in getDateHeader().
    • gmtZone

      protected static final TimeZone gmtZone
      GMT time zone - all HTTP dates are on GMT
    • currentDateGenerated

      protected static long currentDateGenerated
      Instant on which the currentDate object was generated.
    • currentDate

      protected static String currentDate
      Current formatted date.
    • formatCache

      protected static final HashMap<Long,String> formatCache
      Formatter cache.
    • parseCache

      protected static final HashMap<String,Long> parseCache
      Parser cache.
  • Method Details

    • formatDate

      public static String formatDate(long value, DateFormat threadLocalformat)
      Formats a specified date to HTTP format. If local format is not null, it's used instead.
      Parameters:
      value - Date value to format
      threadLocalformat - The format to use (or null -- then HTTP format will be used)
      Returns:
      Formatted date
    • getCurrentDate

      public static String getCurrentDate()
      Gets the current date in HTTP format.
      Returns:
      Current date in HTTP format
    • parseDate

      public static long parseDate(String value, DateFormat[] threadLocalformats)
      Tries to parse the given date as an HTTP date. If local format list is not null, it's used instead.
      Parameters:
      value - The string to parse
      threadLocalformats - Array of formats to use for parsing. If null , HTTP formats are used.
      Returns:
      Parsed date (or -1 if error occurred)