Class DateCacheSimpleDateFormat


  • public class DateCacheSimpleDateFormat
    extends java.lang.Object
    Date Format Cache. Computes String representations of Dates and caches the results so that subsequent requests within the same second will be fast. Only format strings that contain either "ss". Sub second formatting is not handled. The timezone of the date may be included as an ID with the "zzz" format string or as an offset with the "ZZZ" format string. If consecutive calls are frequently very different, then this may be a little slower than a normal DateFormat.
    • Constructor Detail

      • DateCacheSimpleDateFormat

        public DateCacheSimpleDateFormat()
        Constructor. Make a DateCache that will use a default format. The default format generates the same results as Date.toString().
      • DateCacheSimpleDateFormat

        public DateCacheSimpleDateFormat​(java.lang.String format)
        Constructor. Make a DateCache that will use the given format
        Parameters:
        format - the format to use
      • DateCacheSimpleDateFormat

        public DateCacheSimpleDateFormat​(java.lang.String format,
                                         java.util.Locale l)
      • DateCacheSimpleDateFormat

        public DateCacheSimpleDateFormat​(java.lang.String format,
                                         java.util.Locale l,
                                         java.lang.String tz)
      • DateCacheSimpleDateFormat

        public DateCacheSimpleDateFormat​(java.lang.String format,
                                         java.util.Locale l,
                                         java.util.TimeZone tz)
    • Method Detail

      • getTimeZone

        public java.util.TimeZone getTimeZone()
      • format

        public java.lang.String format​(java.util.Date inDate)
        Format a date according to our stored formatter.
        Parameters:
        inDate - the Date
        Returns:
        Formatted date
      • format

        public java.lang.String format​(long inDate)
        Format a date according to our stored formatter. If it happens to be in the same second as the last formatNow call, then the format is reused.
        Parameters:
        inDate - the date in milliseconds since unix epoch
        Returns:
        Formatted date
      • formatNow

        public java.lang.String formatNow​(long now)
        Format a date according to our stored formatter. The passed time is expected to be close to the current time, so it is compared to the last value passed and if it is within the same second, the format is reused. Otherwise a new cached format is created.
        Parameters:
        now - the milliseconds since unix epoch
        Returns:
        Formatted date
      • now

        public java.lang.String now()
      • getFormatString

        public java.lang.String getFormatString()