Print

Print


Author: [log in to unmask]
Date: Thu Nov 13 20:13:42 2014
New Revision: 3422

Log:
Add logging utility classes.

Added:
    projects/lcsim/trunk/util/src/main/java/org/lcsim/util/log/
    projects/lcsim/trunk/util/src/main/java/org/lcsim/util/log/DefaultFormatter.java
    projects/lcsim/trunk/util/src/main/java/org/lcsim/util/log/LogUtil.java

Added: projects/lcsim/trunk/util/src/main/java/org/lcsim/util/log/DefaultFormatter.java
 =============================================================================
--- projects/lcsim/trunk/util/src/main/java/org/lcsim/util/log/DefaultFormatter.java	(added)
+++ projects/lcsim/trunk/util/src/main/java/org/lcsim/util/log/DefaultFormatter.java	Thu Nov 13 20:13:42 2014
@@ -0,0 +1,16 @@
+package org.lcsim.util.log;
+
+import java.util.Date;
+import java.util.logging.Formatter;
+import java.util.logging.LogRecord;
+
+public class DefaultFormatter extends Formatter {
+    public String format(LogRecord record) {
+        StringBuilder sb = new StringBuilder();
+        sb.append(new Date(record.getMillis()) + " :: " +
+                record.getLoggerName() + " :: " + 
+                record .getLevel() + " :: " +
+                record.getMessage() + '\n');
+        return sb.toString();
+    }    
+}

Added: projects/lcsim/trunk/util/src/main/java/org/lcsim/util/log/LogUtil.java
 =============================================================================
--- projects/lcsim/trunk/util/src/main/java/org/lcsim/util/log/LogUtil.java	(added)
+++ projects/lcsim/trunk/util/src/main/java/org/lcsim/util/log/LogUtil.java	Thu Nov 13 20:13:42 2014
@@ -0,0 +1,43 @@
+package org.lcsim.util.log;
+
+import java.util.logging.ConsoleHandler;
+import java.util.logging.Formatter;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+/**
+ * A simple set of utility methods for creating <code>Logger</code> objects.
+ * @author Jeremy McCormick <[log in to unmask]>
+ */
+public class LogUtil {
+    
+    private LogUtil() {        
+    }
+
+    public static Logger create(String name, Formatter formatter) {
+        Logger logger = Logger.getLogger(name);
+        logger.setUseParentHandlers(false);
+        logger.setLevel(Level.ALL);
+        ConsoleHandler handler = new ConsoleHandler();
+        handler.setLevel(Level.ALL);
+        if (formatter == null) {
+            handler.setFormatter(new DefaultFormatter());
+        } else {
+            handler.setFormatter(formatter);
+        }
+        logger.addHandler(handler);      
+        return logger;
+    }      
+    
+    public static Logger create(String name) {
+        return create(name, null);
+    }
+    
+    public static Logger create(Class<?> klass, Formatter formatter) { 
+        return create(klass.getSimpleName(), formatter);
+    }
+    
+    public static Logger create(Class<?> klass) {
+        return create(klass, null);
+    }
+}

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the LCDET-SVN list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=LCDET-SVN&A=1