blob: 1da12995ec8daf876483b84db3d386d4bb0797e1 [file] [log] [blame]
Scott Barta59b2e682012-03-01 12:35:35 -08001package com.jme3.util;
2
3import android.util.Log;
4import java.util.logging.Handler;
5import java.util.logging.Level;
6import java.util.logging.LogRecord;
Scott Bartaa6b44652012-03-09 13:52:20 -08007import java.util.logging.Logger;
Scott Barta59b2e682012-03-01 12:35:35 -08008
Scott Bartaa6b44652012-03-09 13:52:20 -08009/**
10 * Converts from Java based logging ({@link Logger} to Android based
11 * logging {@link Log}.
12 */
Scott Barta59b2e682012-03-01 12:35:35 -080013public class AndroidLogHandler extends Handler {
14
15 @Override
16 public void close() {
17 }
18
19 @Override
20 public void flush() {
21 }
22
23 @Override
24 public void publish(LogRecord record) {
25 Level level = record.getLevel();
26 String clsName = record.getSourceClassName();
27 String msg = record.getMessage();
28 Throwable t = record.getThrown();
Scott Bartaa6b44652012-03-09 13:52:20 -080029 if (level == Level.INFO) {
Scott Barta59b2e682012-03-01 12:35:35 -080030 Log.i(clsName, msg, t);
Scott Bartaa6b44652012-03-09 13:52:20 -080031 } else if (level == Level.SEVERE) {
Scott Barta59b2e682012-03-01 12:35:35 -080032 Log.e(clsName, msg, t);
Scott Bartaa6b44652012-03-09 13:52:20 -080033 } else if (level == Level.WARNING) {
Scott Barta59b2e682012-03-01 12:35:35 -080034 Log.w(clsName, msg, t);
Scott Bartaa6b44652012-03-09 13:52:20 -080035 } else if (level == Level.CONFIG) {
Scott Barta59b2e682012-03-01 12:35:35 -080036 Log.d(clsName, msg, t);
Scott Bartaa6b44652012-03-09 13:52:20 -080037 } else if (level == Level.FINE || level == Level.FINER || level == Level.FINEST) {
Scott Barta59b2e682012-03-01 12:35:35 -080038 Log.v(clsName, msg, t);
39 }
40 }
Scott Barta59b2e682012-03-01 12:35:35 -080041}