package com.traxel.lumbermill.event;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.logging.Level;
import java.util.logging.LogRecord;
private static final Map SEVERITY_MAP;
static {
final Map severityMap = new HashMap();
severityMap.put(Level.FINEST, Severity.LEVEL_1);
severityMap.put(Level.FINER, Severity.LEVEL_2);
severityMap.put(Level.FINE, Severity.LEVEL_3);
severityMap.put(Level.CONFIG, Severity.LEVEL_4);
severityMap.put(Level.INFO, Severity.LEVEL_5);
severityMap.put(Level.WARNING, Severity.LEVEL_6);
severityMap.put(Level.SEVERE, Severity.LEVEL_8);
SEVERITY_MAP = Collections.unmodifiableMap(severityMap);
}
private final LogRecord RECORD;
private final long RECEIVE_TIME = new Date().getTime();
RECORD = record;
}
final Iterator it;
Level known;
Level estimated;
Severity severity;
boolean moreThanObserved;
boolean lessThanEstimated;
estimated = Level.SEVERE;
it = SEVERITY_MAP.keySet().iterator();
while (it.hasNext()) {
known = (Level)it.next();
if (estimated == null) {
estimated = known;
} else {
moreThanObserved = known.intValue() > observed.intValue();
lessThanEstimated = known.intValue() < estimated.intValue();
if (moreThanObserved && lessThanEstimated) {
estimated = known;
}
}
}
severity = (Severity)SEVERITY_MAP.get(estimated);
if (severity == null) {
severity = Severity.LEVEL_8;
}
return severity;
}
public static Severity
getSeverity(
final Level level) {
Severity severity;
severity = (Severity)SEVERITY_MAP.get(level);
if (severity == null) {
severity = estimateSeverity(level);
}
return severity;
}
@Override
return getSeverity(RECORD.getLevel());
}
@Override
return RECORD.getLoggerName();
}
@Override
return RECORD.getMessage();
}
@Override
return RECORD.getThrown();
}
@Override
return RECEIVE_TIME;
}
@Override
final String clazz = RECORD.getSourceClassName();
final String method = RECORD.getSourceMethodName();
if ((clazz != null) || (method != null)) {
return clazz + "." + method;
}
return null;
}
@Override
return null;
}
}