package diskCacheV111.cells;
import com.google.common.collect.Maps;
import org.stringtemplate.v4.AttributeRenderer;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.Map;
public class DateRenderer implements AttributeRenderer
{
private final Map<String, DateFormat> formatMap = Maps.newHashMap();
private static final String DEFAULT_FORMAT_PATTERN = "MM.dd HH:mm:ss";
/**
* Default constructor
*/
public DateRenderer() {
formatMap.put(DEFAULT_FORMAT_PATTERN, new SimpleDateFormat(DEFAULT_FORMAT_PATTERN));
}
/**
* Formats a date according to the given pattern.
*/
@Override
public synchronized String toString(Object object, String format, Locale locale) {
if (format == null) {
format = DEFAULT_FORMAT_PATTERN;
}
DateFormat dateFormat = formatMap.get(format);
if (dateFormat == null) {
dateFormat = new SimpleDateFormat(format);
formatMap.put(format, dateFormat);
}
return dateFormat.format((Date) object);
}
}