public String format(LogEvent event)
{
Calendar date = null;
Log log = event.getLog();
StringBuffer buffer = new StringBuffer(100);
Object[] fmt = _format;
int n = fmt.length;
int i = 0;
while(i<n) {
switch(((Integer)fmt[i++]).intValue()) {
case FMT_TEXT:
{
buffer.append(fmt[i++]);
}
break;
case FMT_DATE:
{
if (date == null) {
date = Calendar.getInstance(_timezone);
}
int j = date.get(Calendar.YEAR);
buffer.append(j);
buffer.append('-');
j = date.get(Calendar.MONTH) + 1;
if (j<10) {
buffer.append('0');
}
buffer.append(j);
buffer.append('-');
j = date.get(Calendar.DAY_OF_MONTH);
if (j<10) {
buffer.append('0');
}
buffer.append(j);
}
break;
case FMT_TIME:
{
if (date == null) {
date = Calendar.getInstance(_timezone);
}
int j = date.get(Calendar.HOUR_OF_DAY);
if (j<10) {
buffer.append('0');
}
buffer.append(j);
buffer.append(':');
j = date.get(Calendar.MINUTE);
if (j<10) {
buffer.append('0');
}
buffer.append(j);
buffer.append('.');
j = date.get(Calendar.SECOND);
if (j<10) {
buffer.append('0');
}
buffer.append(j);
}
break;
case FMT_MS:
{
buffer.append(System.currentTimeMillis() - log.getStartTime());
}
break;
case FMT_THREAD:
{
buffer.append(event.getThread().getName());
}
break;
case FMT_SEVERITY:
{
buffer.append(anvil.Log.SEVERITY[event.getSeverity()]);
}
break;
case FMT_ZONE:
{
buffer.append(log.getName());
}
break;
case FMT_MESSAGE:
{