org.apache.catalina.valves
Class AccessLogValve.DateFormatCache
java.lang.Object
org.apache.catalina.valves.AccessLogValve.DateFormatCache
- Enclosing class:
- AccessLogValve
protected static class AccessLogValve.DateFormatCache
- extends Object
Cache structure for formatted timestamps based on seconds.
The cache consists of entries for a consecutive range of
seconds. The length of the range is configurable. It is
implemented based on a cyclic buffer. New entries shift the range.
There is one cache for the CLF format (the access log standard
format) and a HashMap of caches for additional formats used by
SimpleDateFormat.
Although the cache supports specifying a locale when retrieving a
formatted timestamp, each format will always use the locale given
when the format was first used. New locales can only be used for new formats.
The CLF format will always be formatted using the locale
en_US
.
The cache is not threadsafe. It can be used without synchronization
via thread local instances, or with synchronization as a global cache.
The cache can be created with a parent cache to build a cache hierarchy.
Access to the parent cache is threadsafe.
This class uses a small thread local first level cache and a bigger
synchronized global second level cache.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
cLFCache
protected final AccessLogValve.DateFormatCache.Cache cLFCache
AccessLogValve.DateFormatCache
protected AccessLogValve.DateFormatCache(int size,
Locale loc,
AccessLogValve.DateFormatCache parent)
getFormat
public String getFormat(long time)
getFormat
public String getFormat(String format,
Locale loc,
long time)
Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.