1 package org.lsst.ccs.utilities.logging;
2
3 import java.util.LinkedHashMap;
4 import java.util.Map;
5 import java.util.logging.LogRecord;
6
7
8
9
10
11
12
13
14
15 public class IsLoggableDelegate {
16 private static final int MAX_ENTRIES = 32;
17 private LinkedHashMap<Long, String> mapRecords =
18
19 new LinkedHashMap<Long, String>(37){
20 @Override
21 protected boolean removeEldestEntry(Map.Entry eldest) {
22 return size() > MAX_ENTRIES;
23 }
24 } ;
25
26 public boolean isLoggable(LogRecord logRecord) {
27 String logger = logRecord.getLoggerName();
28 long seqNumber = logRecord.getSequenceNumber() ;
29 return null == mapRecords.put(seqNumber,logger) ;
30 }
31 }