Removing code smells
[dmaap/datarouter.git] / datarouter-node / src / main / java / org / onap / dmaap / datarouter / node / LogManager.java
index 3277408..4c7ea9c 100644 (file)
@@ -29,6 +29,7 @@ import java.io.BufferedReader;
 import java.io.File;
 import java.io.FileReader;
 import java.io.FileWriter;
+import java.io.IOException;
 import java.io.Writer;
 import java.nio.file.Files;
 import java.nio.file.Paths;
@@ -48,6 +49,7 @@ import org.jetbrains.annotations.NotNull;
 
 public class LogManager extends TimerTask {
 
+    private static final String EXCEPTION = "Exception";
     private EELFLogger logger = EELFManager.getInstance().getLogger(LogManager.class);
     private NodeConfigManager config;
     private Matcher isnodelog;
@@ -68,7 +70,7 @@ public class LogManager extends TimerTask {
             isnodelog = Pattern.compile("node\\.log\\.\\d{8}").matcher("");
             iseventlog = Pattern.compile("events-\\d{12}\\.log").matcher("");
         } catch (Exception e) {
-            logger.error("Exception", e);
+            logger.error(EXCEPTION, e);
         }
         logdir = config.getLogDir();
         uploaddir = logdir + "/.spool";
@@ -87,9 +89,12 @@ public class LogManager extends TimerTask {
         worker.poke();
     }
 
-    private class Uploader extends Thread implements DeliveryQueueHelper {
+    public Uploader getWorker() {
+        return worker;
+    }
+
+    class Uploader extends Thread implements DeliveryQueueHelper {
 
-        private static final String EXCEPTION = "Exception";
         private static final String META = "/.meta";
         private EELFLogger logger = EELFManager.getInstance().getLogger(Uploader.class);
         private DeliveryQueue dq;
@@ -163,9 +168,10 @@ public class LogManager extends TimerTask {
         }
 
         private synchronized void poke() {
-            notify();
+            notifyAll();
         }
 
+        @Override
         public void run() {
             while (true) {
                 scan();
@@ -201,11 +207,15 @@ public class LogManager extends TimerTask {
                 }
                 File file = new File(dir, fn);
                 if (file.lastModified() < threshold) {
-                    file.delete();
+                    try {
+                        Files.deleteIfExists(file.toPath());
+                    } catch (IOException e) {
+                        logger.error("Failed to delete file: " + file.getPath(), e);
+                    }
                 }
             }
             try (Writer w = new FileWriter(uploaddir + "/.lastqueued")) {
-                (new File(uploaddir + META)).delete();
+                Files.deleteIfExists(new File(uploaddir + META).toPath());
                 w.write(lastqueued + "\n");
             } catch (Exception e) {
                 logger.error(EXCEPTION, e);