From ab6828a9130eb509fc080690673bf4e7a7bd5191 Mon Sep 17 00:00:00 2001 From: Frank Kusters Date: Tue, 28 Oct 2014 14:04:02 +0100 Subject: [PATCH 1/2] Migrate from java.util.logging to SLF4J (dumb transformation) --- pom.xml | 11 ++++++++ .../backend/AbstractResultParser.java | 14 +++++----- .../gpsd4java/backend/GPSdEndpoint.java | 12 ++++---- .../gpsd4java/backend/SocketThread.java | 9 +++--- .../java/de/taimos/gpsd4java/test/Tester.java | 28 +++++++++---------- 5 files changed, 43 insertions(+), 31 deletions(-) diff --git a/pom.xml b/pom.xml index 03c199f..67605c8 100644 --- a/pom.xml +++ b/pom.xml @@ -33,12 +33,23 @@ json 20090211 + + org.slf4j + slf4j-api + 1.7.7 + junit junit 4.11 test + + ch.qos.logback + logback-classic + 1.1.2 + test + diff --git a/src/main/java/de/taimos/gpsd4java/backend/AbstractResultParser.java b/src/main/java/de/taimos/gpsd4java/backend/AbstractResultParser.java index 9e98306..4a7107f 100644 --- a/src/main/java/de/taimos/gpsd4java/backend/AbstractResultParser.java +++ b/src/main/java/de/taimos/gpsd4java/backend/AbstractResultParser.java @@ -26,12 +26,12 @@ import java.util.Date; import java.util.List; import java.util.TimeZone; -import java.util.logging.Level; -import java.util.logging.Logger; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import de.taimos.gpsd4java.types.IGPSObject; import de.taimos.gpsd4java.types.ParseException; @@ -42,7 +42,7 @@ */ public abstract class AbstractResultParser { - protected static final Logger LOG = Logger.getLogger(ResultParser.class.getName()); + protected static final Logger LOG = LoggerFactory.getLogger(ResultParser.class); protected final DateFormat dateFormat; // Don't make this static! @@ -102,18 +102,18 @@ protected List parseObjectArray(final JSONArray array, protected double parseTimestamp(final JSONObject json, final String fieldName) { try { final String text = json.optString(fieldName, null); - AbstractResultParser.LOG.log(Level.FINE, fieldName + ": {0}", text); + AbstractResultParser.LOG.debug(fieldName + ": {}", text); if (text != null) { final Date date = this.dateFormat.parse(text); - if (AbstractResultParser.LOG.isLoggable(Level.FINE)) { + if (AbstractResultParser.LOG.isDebugEnabled()) { final String ds = DateFormat.getDateTimeInstance(DateFormat.FULL, DateFormat.FULL).format(date); - AbstractResultParser.LOG.log(Level.FINE, "Date: {0}", ds); + AbstractResultParser.LOG.debug("Date: {}", ds); } return date.getTime() / 1000.0; } } catch (final Exception ex) { - AbstractResultParser.LOG.log(Level.INFO, "Failed to parse time", ex); + AbstractResultParser.LOG.info("Failed to parse time", ex); } return Double.NaN; } diff --git a/src/main/java/de/taimos/gpsd4java/backend/GPSdEndpoint.java b/src/main/java/de/taimos/gpsd4java/backend/GPSdEndpoint.java index 2a79266..50929ed 100644 --- a/src/main/java/de/taimos/gpsd4java/backend/GPSdEndpoint.java +++ b/src/main/java/de/taimos/gpsd4java/backend/GPSdEndpoint.java @@ -29,11 +29,11 @@ import java.net.UnknownHostException; import java.util.ArrayList; import java.util.List; -import java.util.logging.Level; -import java.util.logging.Logger; import org.json.JSONException; import org.json.JSONObject; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import de.taimos.gpsd4java.api.IObjectListener; import de.taimos.gpsd4java.types.ATTObject; @@ -54,7 +54,7 @@ */ public class GPSdEndpoint { - private static final Logger LOG = Logger.getLogger(GPSdEndpoint.class.getName()); + private static final Logger LOG = LoggerFactory.getLogger(GPSdEndpoint.class); private final Socket socket; @@ -113,7 +113,7 @@ public void start() { try { Thread.sleep(500); } catch (final InterruptedException e) { - GPSdEndpoint.LOG.log(Level.FINE, null, e); + GPSdEndpoint.LOG.debug("", e); } } @@ -124,7 +124,7 @@ public void stop() { try { this.listenThread.halt(); } catch (final Exception e) { - GPSdEndpoint.LOG.log(Level.FINE, null, e); + GPSdEndpoint.LOG.debug("", e); } this.listenThread = null; } @@ -250,7 +250,7 @@ private IGPSObject waitForResult() { try { this.asyncWaitMutex.wait(1000); } catch (final InterruptedException e) { - GPSdEndpoint.LOG.log(Level.INFO, null, e); + GPSdEndpoint.LOG.info("", e); } if (this.asnycResult != null) { return this.asnycResult; diff --git a/src/main/java/de/taimos/gpsd4java/backend/SocketThread.java b/src/main/java/de/taimos/gpsd4java/backend/SocketThread.java index 623b122..0a4890a 100644 --- a/src/main/java/de/taimos/gpsd4java/backend/SocketThread.java +++ b/src/main/java/de/taimos/gpsd4java/backend/SocketThread.java @@ -24,8 +24,9 @@ import java.io.IOException; import java.net.SocketException; import java.util.concurrent.atomic.AtomicBoolean; -import java.util.logging.Level; -import java.util.logging.Logger; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * thread reading input from GPSd server @@ -34,7 +35,7 @@ */ public class SocketThread extends Thread { - private static final Logger LOG = Logger.getLogger(SocketThread.class.getName()); + private static final Logger LOG = LoggerFactory.getLogger(SocketThread.class); private final BufferedReader reader; @@ -89,7 +90,7 @@ public void run() { break; } catch (final Exception e) { // TODO handle this better - SocketThread.LOG.log(Level.WARNING, null, e); + SocketThread.LOG.warn("", e); } } } diff --git a/src/test/java/de/taimos/gpsd4java/test/Tester.java b/src/test/java/de/taimos/gpsd4java/test/Tester.java index d81af24..1740900 100644 --- a/src/test/java/de/taimos/gpsd4java/test/Tester.java +++ b/src/test/java/de/taimos/gpsd4java/test/Tester.java @@ -20,8 +20,8 @@ * #L% */ -import java.util.logging.Level; -import java.util.logging.Logger; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import de.taimos.gpsd4java.api.ObjectListener; import de.taimos.gpsd4java.backend.GPSdEndpoint; @@ -43,7 +43,7 @@ */ public class Tester { - static final Logger log = Logger.getLogger(Tester.class.getName()); + static final Logger log = LoggerFactory.getLogger(Tester.class); private Tester() { @@ -83,51 +83,51 @@ public static void main(final String[] args) { @Override public void handleTPV(final TPVObject tpv) { - Tester.log.log(Level.INFO, "TPV: {0}", tpv); + Tester.log.info("TPV: {}", tpv); } @Override public void handleSKY(final SKYObject sky) { - Tester.log.log(Level.INFO, "SKY: {0}", sky); + Tester.log.info("SKY: {}", sky); for (final SATObject sat : sky.getSatellites()) { - Tester.log.log(Level.INFO, " SAT: {0}", sat); + Tester.log.info(" SAT: {}", sat); } } @Override public void handleSUBFRAME(final SUBFRAMEObject subframe) { - Tester.log.log(Level.INFO, "SUBFRAME: {0}", subframe); + Tester.log.info("SUBFRAME: {}", subframe); } @Override public void handleATT(final ATTObject att) { - Tester.log.log(Level.INFO, "ATT: {0}", att); + Tester.log.info("ATT: {}", att); } @Override public void handleDevice(final DeviceObject device) { - Tester.log.log(Level.INFO, "Device: {0}", device); + Tester.log.info("Device: {}", device); } @Override public void handleDevices(final DevicesObject devices) { for (final DeviceObject d : devices.getDevices()) { - Tester.log.log(Level.INFO, "Device: {0}", d); + Tester.log.info("Device: {}", d); } } }); ep.start(); - Tester.log.log(Level.INFO, "Version: {0}", ep.version()); + Tester.log.info("Version: {}", ep.version()); - Tester.log.log(Level.INFO, "Watch: {0}", ep.watch(true, true)); + Tester.log.info("Watch: {}", ep.watch(true, true)); - Tester.log.log(Level.INFO, "Poll: {0}", ep.poll()); + Tester.log.info("Poll: {}", ep.poll()); Thread.sleep(60000); } catch (final Exception e) { - Tester.log.log(Level.SEVERE, null, e); + Tester.log.error("", e); } } } From a3937b1baa3a6c670d17445c29f0db4ab05a132c Mon Sep 17 00:00:00 2001 From: Frank Kusters Date: Tue, 28 Oct 2014 14:14:48 +0100 Subject: [PATCH 2/2] Add descriptive error messages to logging --- src/main/java/de/taimos/gpsd4java/backend/GPSdEndpoint.java | 6 +++--- src/main/java/de/taimos/gpsd4java/backend/SocketThread.java | 2 +- src/test/java/de/taimos/gpsd4java/test/Tester.java | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/main/java/de/taimos/gpsd4java/backend/GPSdEndpoint.java b/src/main/java/de/taimos/gpsd4java/backend/GPSdEndpoint.java index 50929ed..0513c72 100644 --- a/src/main/java/de/taimos/gpsd4java/backend/GPSdEndpoint.java +++ b/src/main/java/de/taimos/gpsd4java/backend/GPSdEndpoint.java @@ -113,7 +113,7 @@ public void start() { try { Thread.sleep(500); } catch (final InterruptedException e) { - GPSdEndpoint.LOG.debug("", e); + GPSdEndpoint.LOG.debug("Interrupted while sleeping", e); } } @@ -124,7 +124,7 @@ public void stop() { try { this.listenThread.halt(); } catch (final Exception e) { - GPSdEndpoint.LOG.debug("", e); + GPSdEndpoint.LOG.debug("Interrupted while waiting for listenThread to stop", e); } this.listenThread = null; } @@ -250,7 +250,7 @@ private IGPSObject waitForResult() { try { this.asyncWaitMutex.wait(1000); } catch (final InterruptedException e) { - GPSdEndpoint.LOG.info("", e); + GPSdEndpoint.LOG.info("Interrupted while waiting for result", e); } if (this.asnycResult != null) { return this.asnycResult; diff --git a/src/main/java/de/taimos/gpsd4java/backend/SocketThread.java b/src/main/java/de/taimos/gpsd4java/backend/SocketThread.java index 0a4890a..c0bce6d 100644 --- a/src/main/java/de/taimos/gpsd4java/backend/SocketThread.java +++ b/src/main/java/de/taimos/gpsd4java/backend/SocketThread.java @@ -90,7 +90,7 @@ public void run() { break; } catch (final Exception e) { // TODO handle this better - SocketThread.LOG.warn("", e); + SocketThread.LOG.warn("Problem encountered while reading/parsing/handling line", e); } } } diff --git a/src/test/java/de/taimos/gpsd4java/test/Tester.java b/src/test/java/de/taimos/gpsd4java/test/Tester.java index 1740900..f11042f 100644 --- a/src/test/java/de/taimos/gpsd4java/test/Tester.java +++ b/src/test/java/de/taimos/gpsd4java/test/Tester.java @@ -127,7 +127,7 @@ public void handleDevices(final DevicesObject devices) { Thread.sleep(60000); } catch (final Exception e) { - Tester.log.error("", e); + Tester.log.error("Problem encountered", e); } } }