1 4 package org.oddjob.jmx.server; 5 6 import java.util.ArrayList ; 7 import java.util.List ; 8 9 import org.oddjob.logging.ConsoleArchiver; 10 import org.oddjob.logging.LogArchiver; 11 import org.oddjob.logging.LogEvent; 12 import org.oddjob.logging.LogLevel; 13 import org.oddjob.logging.LogListener; 14 15 19 public class LogArchiverHelper { 20 21 25 static class LL implements LogListener { 26 List events = new ArrayList (); 27 public void logEvent(LogEvent logEvent) { 28 events.add(logEvent); 29 } 30 } 31 32 42 public static LogEvent[] retrieveLogEvents(Object component, 43 ServerContext context, Long last, Integer max) { 44 LogArchiver archiver = context.getLogArchiver(); 45 if (archiver == null) { 46 throw new NullPointerException ("No LogArchiver availble on server."); 47 } 48 LL ll = new LL(); 49 archiver.addLogListener(ll, component, LogLevel.DEBUG, 50 last.longValue(), max.intValue()); 51 archiver.removeLogListener(ll, component); 52 53 return (LogEvent[]) ll.events.toArray(new LogEvent[0]); 54 } 55 56 64 public static String consoleId(Object component, 65 ServerContext context) { 66 ConsoleArchiver archiver = context.getConsoleArchiver(); 67 if (archiver == null) { 68 return null; 69 } 70 return archiver.consoleIdFor(component); 71 } 72 73 83 public static LogEvent[] retrieveConsoleEvents(Object component, 84 ServerContext context, Long last, Integer max) { 85 LL ll = new LL(); 86 ConsoleArchiver archiver = context.getConsoleArchiver(); 87 if (archiver == null) { 88 throw new NullPointerException ("No ConsoleArchiver availble on server."); 89 } 90 archiver.addConsoleListener(ll, component, 91 last.longValue(), max.intValue()); 92 archiver.removeConsoleListener(ll, component); 93 94 return (LogEvent[]) ll.events.toArray(new LogEvent[0]); 95 } 96 97 } 98 | Popular Tags |