Bladeren bron

added proper Log4j2 logging to iZpl & toolkit

LH 10 jaren geleden
bovenliggende
commit
77c886e5df
46 gewijzigde bestanden met toevoegingen van 569 en 774 verwijderingen
  1. 3 0
      ToolKit/build.gradle
  2. 12 15
      ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/AdvancedDBWriter.java
  3. 11 9
      ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/DBWriter.java
  4. 7 5
      ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/DirectoryDB.java
  5. 11 8
      ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/ExplorerTree.java
  6. 20 19
      ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/FileTK.java
  7. 16 18
      ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/ZipFileHandler.java
  8. 9 6
      ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/ZipUtils.java
  9. 10 7
      ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/iZformats/IZImageGenerated.java
  10. 14 18
      ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/iZformats/IZpackage.java
  11. 4 2
      ToolKit/src/main/java/de/nplusc/izc/tools/UiToolz/BootStrap.java
  12. 8 75
      ToolKit/src/main/java/de/nplusc/izc/tools/UiToolz/DirectoryTree.java
  13. 5 2
      ToolKit/src/main/java/de/nplusc/izc/tools/UiToolz/DockingManager.java
  14. 7 10
      ToolKit/src/main/java/de/nplusc/izc/tools/UiToolz/ExtendedJPanel.java
  15. 9 135
      ToolKit/src/main/java/de/nplusc/izc/tools/UiToolz/UIFileAccess.java
  16. 13 8
      ToolKit/src/main/java/de/nplusc/izc/tools/UiToolz/cmdGUI.java
  17. 4 0
      ToolKit/src/main/java/de/nplusc/izc/tools/baseTools/Detectors.java
  18. 2 0
      ToolKit/src/main/java/de/nplusc/izc/tools/baseTools/HLTools.java
  19. 0 115
      ToolKit/src/main/java/de/nplusc/izc/tools/baseTools/RingBuffer.java
  20. 17 97
      ToolKit/src/main/java/de/nplusc/izc/tools/baseTools/Tools.java
  21. 7 3
      ToolKit/src/main/java/de/nplusc/izc/tools/baseTools/arraytools.java
  22. 5 4
      ToolKit/src/main/java/de/nplusc/izc/tools/testing/ArtCompress.java
  23. 5 1
      build.gradle
  24. 5 1
      iZpl/build.gradle
  25. 18 0
      iZpl/src/main/java/de/nplusc/izc/iZpl/API/IZPLApi.java
  26. 2 1
      iZpl/src/main/java/de/nplusc/izc/iZpl/GUI/ConfigureScreen.java
  27. 8 7
      iZpl/src/main/java/de/nplusc/izc/iZpl/GUI/IZplGUISkinnable.java
  28. 5 4
      iZpl/src/main/java/de/nplusc/izc/iZpl/GUI/PlayListManagingDefault.java
  29. 5 3
      iZpl/src/main/java/de/nplusc/izc/iZpl/GUI/PlayListManagingSkinnable.java
  30. 4 2
      iZpl/src/main/java/de/nplusc/izc/iZpl/GUITests.java
  31. 77 64
      iZpl/src/main/java/de/nplusc/izc/iZpl/Main.java
  32. 6 8
      iZpl/src/main/java/de/nplusc/izc/iZpl/PLServer.java
  33. 23 20
      iZpl/src/main/java/de/nplusc/izc/iZpl/PlProcessor.java
  34. 16 14
      iZpl/src/main/java/de/nplusc/izc/iZpl/PlProcessorV2.java
  35. 3 0
      iZpl/src/main/java/de/nplusc/izc/iZpl/ReInitializer.java
  36. 5 2
      iZpl/src/main/java/de/nplusc/izc/iZpl/ReloadMgr.java
  37. 31 0
      iZpl/src/main/java/de/nplusc/izc/iZpl/Shitdown.java
  38. 7 5
      iZpl/src/main/java/de/nplusc/izc/iZpl/Utils/BurnMe.java
  39. 44 41
      iZpl/src/main/java/de/nplusc/izc/iZpl/Utils/PLReader.java
  40. 37 5
      iZpl/src/main/java/de/nplusc/izc/iZpl/Utils/VlcInterface.java
  41. 9 6
      iZpl/src/main/java/de/nplusc/izc/iZpl/extensions/AudioSurfCore.java
  42. 4 1
      iZpl/src/main/java/de/nplusc/izc/iZpl/extensions/AudioSurfManager.java
  43. 3 1
      iZpl/src/main/java/de/nplusc/izc/iZpl/extensions/BurnLiistManager.java
  44. 18 0
      iZpl/src/main/resources/log4j2.xml
  45. 1 0
      iZpl/tags/0.1.5.3/src/de/nplusc/izc/iZpl/Builder.java
  46. 39 32
      iZplPlugins/GameRadio/src/main/java/de/nplusc/izc/izpl/plugins/gameradio/RadioManager.java

+ 3 - 0
ToolKit/build.gradle

@@ -27,6 +27,9 @@ dependencies{
     compile 'net.java.dev.jna:jna:3.5.2'
 	compile 'uk.co.caprica:vlcj:3.0.1' //HACK! bezüglich JNA
     compile	'org.xerial:sqlite-jdbc:3.8.7'
+    compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.1'
+	compile group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.1'
+	compile group: 'org.apache.logging.log4j', name: 'log4j-iostreams', version: '2.1'
 	compile 'mysql:mysql-connector-java:5.1.6'
 		compile(project(':DefaultUIFile')) {
         transitive = false

+ 12 - 15
ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/AdvancedDBWriter.java

@@ -8,10 +8,12 @@ import java.sql.ResultSetMetaData;
 import java.sql.SQLException;
 import java.sql.Statement;
 import java.util.LinkedList;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 public class AdvancedDBWriter
 {
-
+    private static final Logger l = LogManager.getLogger();
     Connection cn = null;
     ResultSet rs = null;
 
@@ -32,7 +34,7 @@ public class AdvancedDBWriter
         this.rs = null;
         LinkedList masterList = new LinkedList();
 
-        Tools.DebugHelperPrint(Query, true, "Toolkit.enableCoreDebug");
+        l.trace(Query);
         try
         {
             Statement st = this.cn.createStatement();
@@ -65,7 +67,7 @@ public class AdvancedDBWriter
     public Object querySingleCell(String Query)
     {
         this.rs = null;
-        Tools.DebugHelperPrint(Query, true, "Toolkit.enableCoreDebug");
+        l.trace(Query);
         try
         {
             Statement st = this.cn.createStatement();
@@ -122,7 +124,7 @@ public class AdvancedDBWriter
         }
         LinkedList masterList = new LinkedList();
 
-        Tools.DebugHelperPrint(Query, true, "Toolkit.enableCoreDebug");
+        l.trace(Query);
         try
         {
             Statement st = null;
@@ -191,7 +193,7 @@ public class AdvancedDBWriter
         LinkedList RowList = new LinkedList();
         LinkedList masterList = new LinkedList();
 
-        Tools.DebugHelperPrint(Query, true, "Toolkit.enableCoreDebug");
+        l.trace(Query);
         try
         {
             Statement st = null;
@@ -261,7 +263,7 @@ public class AdvancedDBWriter
             throws Exception
     {
         boolean ret = true;
-        Tools.DebugHelperPrint(query, true, "Toolkit.enableCoreDebug");
+        l.trace(query);
         try
         {
             Statement st = this.cn.createStatement();
@@ -276,7 +278,7 @@ public class AdvancedDBWriter
             e.getMessage();
             e.printStackTrace();
 
-            Tools.DebugHelperPrint("FF", true, "Toolkit.enableFinerDebug");
+            l.trace("FF");
             ret = false;
         }
         if ((passthroughException) && (!ret))
@@ -295,7 +297,7 @@ public class AdvancedDBWriter
         }
         catch (SQLException ex)
         {
-            Tools.DebugHelperPrint("DB.close()->fail", true, "Toolkit.enableCoreDebug");
+            l.warn("DB.close()->fail");
         }
     }
 
@@ -327,13 +329,8 @@ public class AdvancedDBWriter
         }
         catch (SQLException ex)
         {
-            Tools.DebugHelperPrint("Fikk", true, "Toolkit.enableCoreDebug");
+            l.info("Fikk");
         }
         return null;
     }
-}
-
-/* Location:           C:\Users\LH\Documents\NetBeansProjects\ToolKit\ToolKit.jar
- * Qualified Name:     de.nplusc.izc.tools.IOtools.DBWriter
- * JD-Core Version:    0.6.2
- */
+}

+ 11 - 9
ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/DBWriter.java

@@ -4,6 +4,8 @@ package de.nplusc.izc.tools.IOtools;
 import de.nplusc.izc.tools.baseTools.Tools;
 import java.sql.*;
 import java.util.LinkedList;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /*
  * To change this template, choose Tools | Templates
@@ -16,6 +18,7 @@ import java.util.LinkedList;
  */
 public class DBWriter
 {
+    private static final Logger l = LogManager.getLogger();
 Connection cn = null;
 ResultSet rs=null;
 
@@ -75,7 +78,7 @@ ResultSet rs=null;
         rs=null;
         LinkedList<String> masterList = new LinkedList<>();
        // masterList.
-        Tools.DebugHelperPrint(Query, true, "Toolkit.enableCoreDebug");
+        l.trace(Query);
         try{
         Statement st = cn.createStatement();
         rs = st.executeQuery(Query);
@@ -115,7 +118,7 @@ ResultSet rs=null;
     public String querySingleCell(String Query)
     {
         rs=null;
-        Tools.DebugHelperPrint(Query, true, "Toolkit.enableCoreDebug");
+        l.trace(Query);
         try{
         Statement st = cn.createStatement();
         rs = st.executeQuery(Query);
@@ -189,7 +192,7 @@ ResultSet rs=null;
             rs=null;
         LinkedList<String> masterList = new LinkedList<>();
        // masterList.
-        Tools.DebugHelperPrint(Query, true, "Toolkit.enableCoreDebug");
+        l.trace(Query);
         try
         {
             Statement st =null;
@@ -273,7 +276,7 @@ ResultSet rs=null;
         LinkedList<String> RowList = new LinkedList<>();
         LinkedList<String[]> masterList = new LinkedList<>();
        // masterList.
-        Tools.DebugHelperPrint(Query, true, "Toolkit.enableCoreDebug");
+        l.trace(Query);
         try
         {
             Statement st =null;
@@ -364,7 +367,7 @@ ResultSet rs=null;
     public boolean write(String query,boolean passthroughException,boolean erroutwhenzeroedited) throws Exception
     {
         boolean ret = true;
-        Tools.DebugHelperPrint(query, true, "Toolkit.enableCoreDebug");
+        l.trace(query);
         try 
         {
             Statement st = cn.createStatement();
@@ -377,8 +380,7 @@ ResultSet rs=null;
         {
             e.getMessage();
             e.printStackTrace();
-            //System.err.println("FF");
-            Tools.DebugHelperPrint("FF", true, "Toolkit.enableFinerDebug");
+            l.trace("FF");
             ret= false;
         }
         if(passthroughException && !ret)
@@ -401,7 +403,7 @@ ResultSet rs=null;
         }
         catch (SQLException ex)
         {
-            Tools.DebugHelperPrint("DB.close()->fail", true, "Toolkit.enableCoreDebug");
+            l.warn("DB.close()->fail");
         }
     }
     
@@ -442,7 +444,7 @@ ResultSet rs=null;
         }
         catch (SQLException ex)
         {
-            Tools.DebugHelperPrint("Fikk", true, "Toolkit.enableCoreDebug");
+            l.info("Fikk");
             return null;
         }
     }

+ 7 - 5
ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/DirectoryDB.java

@@ -8,6 +8,8 @@ import de.nplusc.izc.tools.UiToolz.DirectoryTree;
 import de.nplusc.izc.tools.baseTools.Tools;
 import java.util.ArrayList;
 import javax.swing.SwingUtilities;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
@@ -15,7 +17,7 @@ import javax.swing.SwingUtilities;
  */
 public class DirectoryDB extends DirectoryTree
 {
-    
+    private static final Logger l = LogManager.getLogger();
     DBWriter dbc;
     public DirectoryDB(DBWriter dbcr,String dirlisttable,String filelisttable)
     {                                                                                                         //ignore müssen nullable sein da sie nicht verarbeitet werden
@@ -118,7 +120,7 @@ public class DirectoryDB extends DirectoryTree
                     //insert into table (key1,key2,...) values(value1,value2,...)
         String inserterQuery = "Insert into "+dirTable+ " ("+
                                dirRowID+","+dirRowParentID+","+DirRowName+") VALUES(null,"+targetID+",'"+node.toString()+"')";
-        Tools.DebugHelperPrint(inserterQuery, true, "Toolkit.enableFinerDebug");
+        l.trace(inserterQuery);
         dbc.write(inserterQuery);
         rebuildDatabase();
         ut = null;
@@ -127,7 +129,7 @@ public class DirectoryDB extends DirectoryTree
             if(directoryTreeNode.getNodeID().equals(node.getNodeID()))
             {
                 ut=directoryTreeNode;
-                Tools.DebugHelperPrint(ut+"|updateTrg", true, "Toolkit.enableFinerDebug");
+                l.trace(ut+"|updateTrg");
             }
         }
         SwingUtilities.invokeLater(new Runnable()
@@ -155,7 +157,7 @@ public class DirectoryDB extends DirectoryTree
                                 FileRowDesc+") VALUES(null,"+targetID+",'"+node.toString()+"','"
                                     +node.getAdditionalData(0) +"','"+node.getAdditionalData(1) +"')";
         
-        Tools.DebugHelperPrint(inserterQuery, true, "Toolkit.enableFinerDebug");
+        l.trace(inserterQuery);
         dbc.write(inserterQuery);
         rebuildDatabase();
         ut = null;
@@ -164,7 +166,7 @@ public class DirectoryDB extends DirectoryTree
             if(directoryTreeNode.getNodeID().equals(node.getNodeID()))
             {
                 ut=directoryTreeNode;
-                Tools.DebugHelperPrint(ut+"|updateTrg", true, "Toolkit.enableFinerDebug");
+                l.trace(ut+"|updateTrg");
             }
         }
         SwingUtilities.invokeLater(new Runnable()

+ 11 - 8
ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/ExplorerTree.java

@@ -8,6 +8,8 @@ import de.nplusc.izc.tools.UiToolz.DirectoryTree;
 import de.nplusc.izc.tools.baseTools.Tools;
 import java.io.File;
 import java.util.HashMap;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
@@ -15,7 +17,7 @@ import java.util.HashMap;
  */
 public class ExplorerTree extends DirectoryTree
 {
-    
+    private static final Logger l = LogManager.getLogger();
     String basePath;
     public ExplorerTree(String basepath)
     {
@@ -25,26 +27,26 @@ public class ExplorerTree extends DirectoryTree
     @Override
     protected void rebuildDatabase()
     {
-        System.err.println("Scanning directory.... please wait");
+        l.info("Scanning directory.... please wait");
         String[] dirlist = FileTK.walkDirectoryRecursively(basePath);
         HashMap<String,String>Path2ID=new HashMap<>();
         DirectoryTreeNode temp = null;
-        System.err.println(basePath);
+        l.info("scanning{}",basePath);
         temp = new DirectoryTreeNode("0", "0", (basePath), true);
         Path2ID.put(basePath.substring(0,basePath.length()-1), "0");
         directoryTree.add(temp);
         String fs = Tools.getFormatStrforThisAsMax(dirlist.length);
-        System.err.println("Creating  TreeStructure........");
+        l.info("Creating  TreeStructure........");
         for (int i = 1; i < dirlist.length; i++)
         {
 
             String path = dirlist[i];   
             if(path==null)
                 continue;
-            //System.err.println(i+"|"+path+"||");
+            l.trace(i+"|"+path+"||");
             String parpath = FileTK.getFilePath(path);
             String parentID= Path2ID.get(parpath);
-            //System.err.println(i+"|"+path+"|"+parentID+"|"+parpath);
+            l.trace(i+"|"+path+"|"+parentID+"|"+parpath);
             String filename = FileTK.getFileName(path);
             temp = new DirectoryTreeNode(i+"", parentID, filename, FileTK.isDir(path));
             directoryTree.add(temp);
@@ -55,10 +57,11 @@ public class ExplorerTree extends DirectoryTree
             if(i%1000==0)
             {
                 String op = String.format(fs, i);
-                System.err.print(op+"processed");
+                //TODO somehow get logging to allow changes!!!
+                System.out.print(op+"processed");
             }
         }
-        System.err.println(dirlist.length+" processed");
+        System.out.println(dirlist.length+" processed");
     }
     private DirectoryTreeNode ut;
     @Override

+ 20 - 19
ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/FileTK.java

@@ -10,6 +10,8 @@ import java.nio.CharBuffer;
 import java.nio.channels.FileChannel;
 import java.util.ArrayList;
 import java.util.Arrays;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
@@ -17,7 +19,8 @@ import java.util.Arrays;
  */
 public class FileTK
 {
-
+    
+    private static final Logger l = LogManager.getLogger();
     protected FileTK()
     {
     }
@@ -125,7 +128,7 @@ public class FileTK
                     System.out.print(s2);
                     System.console().writer().append(s2);*/
                     String s = "\rReading in:" + f.getPath();
-                    
+                    //NOLOG
                     System.out.print(s);
                     /*try //abgekrachte FLiegenklatsche
                     {
@@ -174,9 +177,7 @@ public class FileTK
     public static String getFileName(String path)
     {
         //String ft1 = FileTK.getFilePath(path);
-          //      Tools.DebugHelperPrint(, true, "Toolkit.enableCoreDebug");
         String ft2 = path.substring(path.lastIndexOf("\\")+1);
-        //Tools.DebugHelperPrint(ft2, true, "Toolkit.enableCoreDebug");
         return ft2;
     }
     
@@ -225,10 +226,10 @@ public class FileTK
         return ext;
     }
 
-    private static void log(String line)
+    /*private static void log(String line)
     {
         Tools.DebugHelperPrint(line, true, "Toolkit.enableCoreDebug");
-    }
+    }*/
 
     /**
      * Lädt Datei in String-array
@@ -262,7 +263,7 @@ public class FileTK
             String zeile = "x";
             while (zeile != null)
             {
-                Tools.DebugHelperPrint(zeile, true, "Toolkit.enableFinerDebug");
+                l.trace(zeile);
                 zeile = br.readLine();
                 filedata = filedata + zeile + "\n";
             }
@@ -272,13 +273,13 @@ public class FileTK
         catch (Exception ioe)
         {
             //log("Failed to load FIle:unknown error. Something f@ild.");
-            log("noncritical internal error. Ignored");
-            log(new File(path).getAbsolutePath());
+            l.info("noncritical internal error. Ignored");
+            l.info("@:"+new File(path).getAbsolutePath());
             //ioe.printStackTrace();
             filecnt = new String[1];
             filecnt[0] = "LMAA";
         }
-        Tools.DebugHelperPrint(filedata, true, "Toolkit.enableFinerDebug");
+        l.trace(filedata);
         return filecnt;
     }
 
@@ -321,7 +322,7 @@ public class FileTK
         }
         catch (IOException e)
         {
-            log("Konnte Datei nicht erstellen");
+            l.warn("Konnte Datei nicht erstellen");
             e.printStackTrace();
         }
         finally
@@ -377,7 +378,7 @@ public class FileTK
         File f = new File(path);
         File[] dirtmpf = f.listFiles();
         //String[] dirtmp = new String[] d
-        Tools.DebugHelperPrint(path, true, "Toolkit.enableFinerDebug");
+        l.info("Pfad={}",path);
         String[] ret = null;
         try
         {
@@ -407,7 +408,7 @@ public class FileTK
         {
 
             ret = new String[0];
-            Tools.DebugHelperPrint("LMAA|" + path, true, "Toolkit.enableFinerDebug");
+            l.trace("LMAA|{}",path);
         }
         return ret;
     }
@@ -456,12 +457,12 @@ public class FileTK
                     }
                     replace = "\\.\\\\" + replaceTemp; //beginnt pfad mit .\ und dann soviele ..\-s wie nötig
                     unRegex = internalPath.replaceAll("\\\\", "\\\\\\\\"); // \ -> \\
-                    Tools.DebugHelperPrint("Aha", true, "Toolkit.enableFinerDebug");
+                   l.trace("Aha");
                 }
                 catch (Exception ex)
                 {
                     err = true;
-                    Tools.DebugHelperPrint("FickDich", true, "Toolkit.enableFinerDebug");
+                    l.trace("FickDich");
                 }
 
 
@@ -474,7 +475,7 @@ public class FileTK
             }
 
             parsedPath = absolutePath.replaceAll(unRegex, replace);// basePath -> .\ haut den gemeinsamen teil raus und fügt den relativteil an
-            Tools.DebugHelperPrint(parsedPath, true, "Toolkit.enableFinerDebug");
+            l.info("ParsedPath={}",parsedPath);
             if (parsedPath.equals(absolutePath))
             {
                 //basePath=internalPath;
@@ -487,7 +488,7 @@ public class FileTK
                 }
                 catch (Exception ex)
                 {
-                    Tools.DebugHelperPrint("Arschfotze", true, "Toolkit.enableFinerDebug");
+                    l.trace("Arschfotze");
                 }
                 if (parsedPath2 != null)
                 {
@@ -529,7 +530,7 @@ public class FileTK
         catch (IOException e)
         {
             e.printStackTrace();
-            System.err.println("Kopiererei geerrort");
+            l.error("Kopiererei geerrort");
           //  throw e;
         }
         finally
@@ -606,7 +607,7 @@ public class FileTK
             CharBuffer c = CharBuffer.allocate((int)path.length());
             fr.read(c);
             c.rewind();
-            System.out.println(path.length()+"|"+c.length());
+            l.trace(path.length()+"|"+c.length());
             return c.toString();
     }
     

+ 16 - 18
ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/ZipFileHandler.java

@@ -21,10 +21,12 @@ import java.util.zip.ZipEntry;
 import java.util.zip.ZipFile;
 import java.util.zip.ZipOutputStream;
 import javax.swing.JProgressBar;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 public class ZipFileHandler
 {
-
+    private static final Logger l = LogManager.getLogger();
     private ZipFile zipFile;
     String zfl = "";
 
@@ -37,7 +39,7 @@ public class ZipFileHandler
         }
         catch (IOException e)
         {
-            Tools.DebugHelperPrint("Unable to load zip file at location: " + zipFileLocation, true, "Toolkit.enableCoreDebug");
+           l.warn("Unable to load zip file at location: " + zipFileLocation);
         }
     }
 
@@ -75,7 +77,7 @@ public class ZipFileHandler
         {
             completeSize += entry.getSize();
         }
-        Tools.DebugHelperPrint(completeSize+"", true, "Toolkit.enableZipDebug");
+        l.trace(completeSize);
         monitorBar.setMinimum(0);
         monitorBar.setMaximum(1000);//umrechnun gerfolgt automatisch
         monitorBar.setValue(0);
@@ -94,7 +96,7 @@ public class ZipFileHandler
                 FileTK.ensuredirExistence(trg);
                 FileOutputStream fos = new FileOutputStream(trg);
                 trg.createNewFile();
-                Tools.DebugHelperPrint(path, true, "Toolkit.enableZipDebug");
+                l.trace(path);
 
                 BufferedInputStream bis = new BufferedInputStream(zipFile.getInputStream(entry));
                 // byte[] finalByteArray = new byte[(int)entrySize];
@@ -125,22 +127,18 @@ public class ZipFileHandler
                     fos.write(buffer);//buffer, bufferSize, bytesRead);
 
                     bytesRead += chunkSize;
-                    Tools.DebugHelperPrint(bytesRead+"", true, "Toolkit.enableZipDebug");
+                    l.trace(bytesRead);
                     bytesSinceLastPbarUpdate += chunkSize;
-                    Tools.DebugHelperPrint(bytesSinceLastPbarUpdate+"", true, "Toolkit.enableZipDebug");
+                    l.trace(bytesSinceLastPbarUpdate);
                     //int oldPbarVal = ;
                     promlilleDone = (int) (((float) bytesRead / (float) completeSize) * (float) 1000);
                     if (bytesSinceLastPbarUpdate > 100000)//maximales update alle 100 kb
                     {
-                        Tools.DebugHelperPrint(promlilleDone+"", true, "Toolkit.enableZipDebug");
-                        EventQueue.invokeLater(new 
-                        Runnable()
+                        l.trace(promlilleDone);
+                        EventQueue.invokeLater(() ->
                         {
-                            public void run()
-                            {
-                                if(promlilleDone > monitorBar.getValue())
+                            if(promlilleDone > monitorBar.getValue())
                                 monitorBar.setValue(promlilleDone);
-                            }
                         });
                         
                         bytesSinceLastPbarUpdate = 0;//Zähler resetten
@@ -153,7 +151,7 @@ public class ZipFileHandler
             }
             catch (IOException e)
             {
-                Tools.DebugHelperPrint("fickfotze", true, "Toolkit.enableCoreDebug");
+                l.trace("fickfotze");
                 e.printStackTrace();
             }
 
@@ -220,13 +218,13 @@ public class ZipFileHandler
 
             bis.close(); //close BufferedInputStream
 
-            Tools.DebugHelperPrint("Entry size: " + finalByteArray.length, true, "Toolkit.enableCoreDebug");
+            l.trace("Entry size: " + finalByteArray.length);
 
             return finalByteArray;
         }
         catch (IOException e)
         {
-            Tools.DebugHelperPrint("No zip entry found at: " + filePath, true, "Toolkit.enableCoreDebug");
+            l.warn("No zip entry found at: " + filePath);
             return null;
         }
     }
@@ -285,7 +283,7 @@ public class ZipFileHandler
                         }
                         read=in.read(data,0,data.length);
                         
-                        System.err.println(read);
+                        l.trace(read);
                         out.write(data, 0, read);
                         writtenSize+=(long)read;
                         readsinceLastRefresh += (long)read;
@@ -293,7 +291,7 @@ public class ZipFileHandler
                         PromlilleDone = (int) (((float) writtenSize / (float) totalSize) * (float) 1000);
                         if (PromlilleDone > oldPbarVal && readsinceLastRefresh > 100000)//maximales update alle 100 kb
                         {
-                            Tools.DebugHelperPrint(PromlilleDone+"", true, "Toolkit.enableFinerDebug");
+                            l.trace(PromlilleDone);
                             monitorBar.setValue(PromlilleDone);
                             readsinceLastRefresh = 0;//Zähler resetten
                         }

+ 9 - 6
ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/ZipUtils.java

@@ -8,20 +8,23 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.zip.ZipEntry;
 import java.util.zip.ZipOutputStream;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 public class ZipUtils
 {
-
+private static final Logger l = LogManager.getLogger();
 private List<String> fileList;
 private String OUTPUT_ZIP_FILE ;
 private String SOURCE_FOLDER ;
 
 public ZipUtils(String out,String base)
 {
+    
    fileList = new ArrayList<>();
    OUTPUT_ZIP_FILE=out;
    SOURCE_FOLDER=base;
-   System.out.println("SOURCE:|"+base);
+   l.trace("SOURCE:|"+base);
     generateFileList(new File(base));
     zipIt(out);
 }
@@ -38,13 +41,13 @@ public void zipIt(String zipFile)
      fos = new FileOutputStream(zipFile);
      zos = new ZipOutputStream(fos);
 
-     System.out.println("Output to Zip : " + zipFile);
+     l.info("Output to Zip : " + zipFile);
      FileInputStream in = null;
 
      for (String file : this.fileList)
      {
-         System.out.println("file@"+SOURCE_FOLDER+"|"+file);
-        System.out.println("File Added : " + file);
+         l.trace("file@"+SOURCE_FOLDER+"|"+file);
+        l.info("File Added : " + file);
         ZipEntry ze = new ZipEntry(file);
         zos.putNextEntry(ze);
         try
@@ -63,7 +66,7 @@ public void zipIt(String zipFile)
      }
 
      zos.closeEntry();
-     System.out.println("Folder successfully compressed");
+     l.info("Folder successfully compressed");
 
   }
   catch (IOException ex)

+ 10 - 7
ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/iZformats/IZImageGenerated.java

@@ -21,6 +21,8 @@ import java.util.zip.ZipOutputStream;
 import javax.imageio.ImageIO;
 import javax.swing.JLabel;
 import javax.swing.JProgressBar;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.yaml.snakeyaml.Yaml;
 
 /**
@@ -29,6 +31,7 @@ import org.yaml.snakeyaml.Yaml;
  */
 public class IZImageGenerated
 {
+    private static final Logger l = LogManager.getLogger();
     private int framecount;
     private int width;   //farbtiefe nicht notwending
     private int height;
@@ -77,7 +80,7 @@ public class IZImageGenerated
         {
             for (int j = 0; j < width; j++)
             {
-                //System.out.println(">>>"+(differenceData.getRGB(j, i)&0x00FFFFFF));
+                l.trace(">>>"+(differenceData.getRGB(j, i)&0x00FFFFFF));
                 if(!((differenceData.getRGB(j, i)&0x00FFFFFF)<=frame))
                 {
                     it.setRGB(j, i, 0);
@@ -163,10 +166,10 @@ public class IZImageGenerated
             images[i]=directory+"\\"+String.format(namepattern, i);
             
         }
-        System.out.println(fullimagepath);
+        l.trace(fullimagepath);
         BufferedImage i = ImageIO.read(new File(fullimagepath));
         while(i.getHeight()==0);
-        System.out.println("Loaded baseline");
+        l.info("Loaded baseline");
         if(status!=null)
         {
             status.setValue(1);
@@ -177,11 +180,11 @@ public class IZImageGenerated
         }
         BufferedImage diff = new BufferedImage(i.getWidth(), i.getHeight(), BufferedImage.TYPE_INT_RGB);
         while(diff.getHeight()==0);
-        System.out.println("Pregenerated Diff...");
+        l.info("Pregenerated Diff...");
         int imagesprocessed=1;
         for (String imgpath : images)
         {
-             System.out.println(imgpath);
+             l.info("Parsing: {}",imgpath);
             //Progressbar stuff
             if(status!=null)
             {
@@ -190,7 +193,7 @@ public class IZImageGenerated
             if(statusdetail!=null)
             {
                 statusdetail.setText("Processing Frame "+(imagesprocessed)+" of "+framescount);
-                System.out.println("Processing Frame "+(imagesprocessed)+" of "+framescount);
+                l.info("Processing Frame "+(imagesprocessed)+" of "+framescount);
             }
             BufferedImage icomp = ImageIO.read(new File(imgpath));
             while(icomp.getHeight()==0);
@@ -216,7 +219,7 @@ public class IZImageGenerated
         if(statusdetail!=null)
         {
             statusdetail.setText("Processing Frame "+(imagesprocessed)+" of "+framescount);
-            System.out.println("Processing Frame "+(imagesprocessed)+" of "+framescount);
+            l.trace("Processing Frame "+(imagesprocessed)+" of "+framescount);
         }
         ImageIO.write(diff, "png", new File(directory+"\\differences.png"));
         int[] metadata_r= new int[3];

+ 14 - 18
ToolKit/src/main/java/de/nplusc/izc/tools/IOtools/iZformats/IZpackage.java

@@ -17,6 +17,8 @@ import java.nio.ByteBuffer;
 import java.util.ArrayList;
 import java.util.zip.GZIPInputStream;
 import java.util.zip.GZIPOutputStream;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
@@ -24,7 +26,7 @@ import java.util.zip.GZIPOutputStream;
  */
 public class IZpackage
 {
-    
+    private static final Logger l = LogManager.getLogger();
     static final byte[] magicHeader = new byte[]{(byte)0x00, (byte)0x14, (byte)0x19, (byte)0x40, (byte)0xFA ,(byte)0xC4 ,(byte)0x0A};
     public static final int CHUNK_SIZE=4096;
     
@@ -236,7 +238,7 @@ public class IZpackage
             achv.seek(8);
             achv.write(header); //header wird am schluss erzeugt da Komprimierung vorhanden
             //achv.write(header);
-            System.err.println(files.length);
+            l.info("Filecount:{}",files.length);
             try
             {
                 //for (String fn : files)
@@ -250,7 +252,7 @@ public class IZpackage
             {
                 String fn = files[i];
                 int flag = ByteBuffer.allocate(4).put(flags[i]).getInt(0);
-                System.err.println(flag+"|"+fn);
+                l.trace(flag+"|"+fn);
                 if((flag&0x0000_0001)==0) //compressed-flag ausmaskieren
                 {                                                                
                                                                                 //java.io.FileNotFoundException: /buildpipeline/iZsetup/64b/predist\lib/ToolKit.jar 
@@ -277,7 +279,7 @@ public class IZpackage
                 }
                 else
                 {
-                    System.out.println("compressing "+fn);
+                    l.info("compressing "+fn);
                     if((flag&0x0000_0002)==2)//Gzip
                     {
                         s = new PipedInputStream(65536);
@@ -301,15 +303,15 @@ public class IZpackage
                                         compdata.write(bdata,0,returned);
                                         compdata.flush();
                                         rw+=returned;
-                                        System.out.println(rw);
-                                        System.out.println("<<"+returned);
+                                        l.trace(rw);
+                                        l.trace("<<"+returned);
                                         
                                     }
                                     while(returned==4096);
                                 }
                                 catch (IOException ex)
                                 {
-                                    System.out.println("GAH!");
+                                    l.trace("GAH!");
                                     ex.printStackTrace();
                                 }
                                 finally
@@ -320,7 +322,7 @@ public class IZpackage
                                     }
                                     catch (IOException ex)
                                     {
-                                        System.out.println(">>GAH!");
+                                        l.trace(">>GAH!");
                                         ex.printStackTrace();
                                     }
                                 }
@@ -338,21 +340,15 @@ public class IZpackage
                             achv.write(bdata,0,returned);
                             filesizecomp+=returned;
                             rw+=returned;
-                            System.out.println(">>"+rw);
+                            l.trace(">>"+rw);
                         }
                         while(returned==4096);
                         fileSizesRawComp[i] = filesizecomp;
-                        System.out.println("finished COmpressing");
+                        l.info("finished COmpressing");
                     }
                     
                 }
             }
-            
-            
-            
-            
-            
-            
         //recreate_offsets
         for (int i = 0; i < fileSizesRaw.length; i++)
         {
@@ -702,7 +698,7 @@ public class IZpackage
             
             if(!FileTK.isDir(fn))
             {
-                System.out.println("adding FN:"+fn);
+                l.trace("adding FN:"+fn);
                 fn=FileTK.getRelativePath(fn, packdir);
                 if(File.separator.equals("(.)(.)")) //sollte nicht sein :P
                     fn = fn.substring(2);
@@ -717,7 +713,7 @@ public class IZpackage
                 {
                     fnp.add(fn);
                 }
-                System.out.println("added FName:"+fn);
+                l.trace("added FName:"+fn);
                 
             }
         }

+ 4 - 2
ToolKit/src/main/java/de/nplusc/izc/tools/UiToolz/BootStrap.java

@@ -3,6 +3,8 @@ import de.nplusc.izc.tools.baseTools.Lock;
 import de.nplusc.izc.tools.baseTools.Tools;
 import javax.swing.JFrame;
 import javax.swing.UIManager;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /*
  * To change this template, choose Tools | Templates
@@ -19,7 +21,7 @@ import javax.swing.UIManager;
  * @author LH
  */
 public class BootStrap extends javax.swing.JFrame {
-
+    private static final Logger l = LogManager.getLogger();
     /** Creates new form BootStrap */
     @SuppressWarnings("UseSpecificCatch")
     public static Lock bootLock;
@@ -163,7 +165,7 @@ public class BootStrap extends javax.swing.JFrame {
 
                         try {
                             Thread.sleep(20L);
-                            Tools.DebugHelperPrint(i+"", true, "Toolkit.enableFinerDebug");
+                            l.trace(i);
                         } catch (InterruptedException ex) {
                             //ex.printStackTrace();
                         }

+ 8 - 75
ToolKit/src/main/java/de/nplusc/izc/tools/UiToolz/DirectoryTree.java

@@ -12,6 +12,8 @@ import javax.swing.event.TreeModelEvent;
 import javax.swing.event.TreeModelListener;
 import javax.swing.tree.TreeModel;
 import javax.swing.tree.TreePath;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
@@ -20,7 +22,7 @@ import javax.swing.tree.TreePath;
 //kann als JTree-daten benutzt werden oder als Verzeichnisbrowser-Grundlage
 public abstract class DirectoryTree implements TreeModel
 {
-    
+    private static final Logger l = LogManager.getLogger();
     protected boolean autopopulateIDs;
     public DirectoryTree()
     {
@@ -89,8 +91,6 @@ public abstract class DirectoryTree implements TreeModel
                 String pe = PathSplitted[i];
                 int ct = getChildCount(currentNode);
                 content = new DirectoryTreeNode[ct];
-                //System.out.print("");//NOP
-                //System.err.println(">>"+currentNode);
                 for (int j = 0; j < content.length; j++)
                 {
                     content[j] = (DirectoryTreeNode) getChild(currentNode, j);
@@ -109,9 +109,6 @@ public abstract class DirectoryTree implements TreeModel
             }
             int ct = getChildCount(currentNode);
             content = new DirectoryTreeNode[ct];
-            //System.err.println("------------");
-            //System.err.println(currentNode);
-            //System.out.print("");//NOP
             for (int j = 0; j < content.length; j++)
             {
                 content[j] = (DirectoryTreeNode) getChild(currentNode, j);
@@ -135,65 +132,7 @@ public abstract class DirectoryTree implements TreeModel
         
         
     return rtvl;//reimplementing...    
-    // <editor-fold defaultstate="collapsed" desc="Fette altlast... Bugalert">       
-      /*  String root = getRootPathValue().replaceAll("\\\\", "/");
-        boolean sil = true;
-        path = root+ path;
-        path = path.replaceAll("\\\\", "/");
-        path = path.replaceAll(root,"root");
-        String[] spath = path.split("/");
-        int apos = 1;//obwohl unlogisch gehts nicht mit  0....
-        DirectoryTreeNode currentTreePosition = (DirectoryTreeNode) getRoot();
-        DirectoryTreeNode temp = null;
-        if (!path.equals("root/"))
-        {
-            while (sil)//intended :) muss ne rekursion umgehen da java gerne stackoverflowt.........
-            {
-                int cts = getChildCount(currentTreePosition);
-                boolean nothingFound = true;
-                for (int i = 0; i < cts; i++)
-                {
-                    temp = (DirectoryTreeNode) getChild(currentTreePosition, i);
-                    System.err.println("######"+temp.toString()+"|"+spath[apos]+"|"+apos+"|"+spath.length);
-                    if (temp.toString().equals(spath[apos]) && apos <= spath.length)
-                    {
-                        System.err.println(">"+spath[apos]);
-                        currentTreePosition = temp;
-                        if (apos < spath.length - 1)
-                        {
-                            apos++;
-                        }
-                        nothingFound = false;
-                        break;
-                    }
-                    if (apos == spath.length - 1)
-                    {
-                        System.err.println(nothingFound);
-                        sil = false;
-                        break;
-                    }
-                }
-
-                if (nothingFound)
-                {
-                    return null;
-                }
-            }
-        }
-        else
-        {
-            temp = (DirectoryTreeNode) getRoot();
-        }
-        int cc = getChildCount(temp);
-        String[] rslt = new String[cc];
-        for (int i = 0; i < cc; i++)
-        {
-            rslt[i] = getChild(temp, i).toString();
-        }
-        System.err.println("------");
-        return rslt;
-        
-        </editor-fold> */
+   
     }
 
     //public abstract void
@@ -218,8 +157,6 @@ public abstract class DirectoryTree implements TreeModel
                 String pe = PathSplitted[i];
                 int ct = getChildCount(currentNode);
                 content = new DirectoryTreeNode[ct];
-                //System.out.print("");//NOP
-                //System.err.println(">>"+currentNode);
                 for (int j = 0; j < content.length; j++)
                 {
                     content[j] = (DirectoryTreeNode) getChild(currentNode, j);
@@ -320,8 +257,6 @@ public abstract class DirectoryTree implements TreeModel
                 String pe = PathSplitted[i];
                 int ct = getChildCount(currentNode);
                 content = new DirectoryTreeNode[ct];
-                //System.out.print("");//NOP
-                //System.err.println(">>"+currentNode);
                 for (int j = 0; j < content.length; j++)
                 {
                     content[j] = (DirectoryTreeNode) getChild(currentNode, j);
@@ -391,7 +326,7 @@ public abstract class DirectoryTree implements TreeModel
         DirectoryTreeNode rn = (DirectoryTreeNode) getRoot();
         if(path.equals("\\"))//rootdetector
         {
-            System.err.println(rn.getNodeID());
+            l.trace(rn.getNodeID());
             return rn.getNodeID();
             
         }
@@ -408,8 +343,6 @@ public abstract class DirectoryTree implements TreeModel
                 String pe = PathSplitted[i];
                 int ct = getChildCount(currentNode);
                 content = new DirectoryTreeNode[ct];
-                //System.out.print("");//NOP
-                //System.err.println(">>"+currentNode);
                 for (int j = 0; j < content.length; j++)
                 {
                     content[j] = (DirectoryTreeNode) getChild(currentNode, j);
@@ -537,14 +470,14 @@ public abstract class DirectoryTree implements TreeModel
                     if(ldtn.getNodeID().equals(pid))
                     {
                         currentTreePos=ldtn;
-                        Tools.DebugHelperPrint(ldtn+"|discov", true, "Toolkit.enableFinerDebug");
+                        l.trace(ldtn+"|discov");
                         foundNothing=false;
                         revPath.add(currentTreePos);
                     }
                 }
                 else
                 {
-                   Tools.DebugHelperPrint("FARK", true, "Toolkit.enableFinerDebug");
+                   l.info("FARK");
                 }
                 
                 if(foundNothing&&i==directoryTree.size()-1)
@@ -554,7 +487,7 @@ public abstract class DirectoryTree implements TreeModel
                 if(!(currentTreePos.getNodeID().equals(root.getNodeID())))
                 {
                     pid=currentTreePos.getParentID();
-                    Tools.DebugHelperPrint(pid+"|"+currentTreePos+"|parentIDandCurrentTree", true, "Toolkit.enableFinerDebug");
+                    l.trace(pid+"|"+currentTreePos+"|parentIDandCurrentTree");
                 }
                 else
                 {

+ 5 - 2
ToolKit/src/main/java/de/nplusc/izc/tools/UiToolz/DockingManager.java

@@ -24,6 +24,8 @@ import javax.swing.JDialog;
 import javax.swing.JFrame;
 import javax.swing.Timer;
 import javax.swing.UIManager;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  * Class obtained here: http://stackoverflow.com/a/24504300/1405227
@@ -31,6 +33,7 @@ import javax.swing.UIManager;
  */
 public class DockingManager {
 
+    private static final Logger l = LogManager.getLogger();
     public static enum DockingMode {
         EAST, WEST, NORTH, SOUTH, NONE
     }
@@ -470,11 +473,11 @@ public class DockingManager {
                 }
                 DockingMode dockMode = calculateWhereToDock(this, otherDockingApplier);
                 if (!DockingMode.NONE.equals(dockMode)) {
-                    System.out.println("shouldAttach");
+                    l.trace("shouldAttach");
                     this.dock(otherDockingApplier, dockMode);                   
                     this.updateLastLocation();
                 } else {
-                    System.out.println("shouldNotAttach");
+                    l.trace("shouldNotAttach");
                 }
             }
         }

+ 7 - 10
ToolKit/src/main/java/de/nplusc/izc/tools/UiToolz/ExtendedJPanel.java

@@ -13,6 +13,8 @@ import java.net.URI;
 import java.net.URISyntaxException;
 import javax.imageio.ImageIO;
 import javax.swing.ImageIcon;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /*
  * To change this template, choose Tools | Templates
@@ -25,6 +27,8 @@ import javax.swing.ImageIcon;
  */
 public class ExtendedJPanel extends javax.swing.JPanel
 {
+    private static final Logger l = LogManager.getLogger();
+    
     //UIFile.class.getResource("rsrc/
     public Graphics2D Overlay = null;
     public BufferedImage iOVL = null;
@@ -98,13 +102,12 @@ public class ExtendedJPanel extends javax.swing.JPanel
                 {
                     iOVL = ImageIO.read(de.nplusc.izc.tools.UIToolz.rsrc.UIFile.class.getResource("rsrc/GUI-File-OVL-TxA.png"));
                 }
-                //System.err.println("???");
 
                 //ctne = true;
             }
             catch (IOException ex)
             {
-                Tools.DebugHelperPrint("LickMe", true, "Toolkit.enableCoreDebug");
+                l.trace("LickMe");
                 ex.printStackTrace();
             }
             if(addModeSel==0)
@@ -125,13 +128,12 @@ public class ExtendedJPanel extends javax.swing.JPanel
                         throw new UnsupportedOperationException("not implemented yet");
                         //iOVL = ImageIO.read(UIFile.class.getResource("rsrc/GUI-File-OVL-TxA.png"));
                     }
-                    //System.err.println("???");
 
                     //ctne = true;
                 }
                 catch (IOException ex)
                 {
-                    Tools.DebugHelperPrint("LickMe", true, "Toolkit.enableCoreDebug");
+                    l.trace("LickMe");
                     ex.printStackTrace();
                 }
                 if(addModeSel==0)
@@ -149,13 +151,12 @@ public class ExtendedJPanel extends javax.swing.JPanel
                         throw new UnsupportedOperationException("not implemented yet");
                         //iOVL = ImageIO.read(UIFile.class.getResource("rsrc/GUI-File-OVL-TxA.png"));
                     }
-                    //System.err.println("???");
 
                     //ctne = true;
                 }
                 catch (IOException ex)
                 {
-                    Tools.DebugHelperPrint("LickMe", true, "Toolkit.enableCoreDebug");
+                    l.trace("LickMe");
                     ex.printStackTrace();
                 }
                 if(addModeSel==0)
@@ -184,7 +185,6 @@ public class ExtendedJPanel extends javax.swing.JPanel
                     {
                         iOVL = ImageIO.read(de.nplusc.izc.tools.UIToolz.rsrc.UIFile.class.getResource("rsrc/GUI-File-CMD-IP-BTN-Red.png"));
                     }
-                    //System.err.println("???");//Fliegenklatsche
                 overridelowerGFX=true;
                 //ctne = true;
                 }
@@ -207,7 +207,6 @@ public class ExtendedJPanel extends javax.swing.JPanel
                         {
                             iOVL = ImageIO.read(guifile.loadFileFromZip(guifile.ResourceURLs.get("ButtonHovered")));
                         }
-                        //System.err.println("???");//Fliegenklatsche
                     overridelowerGFX=true;
                     //ctne = true;
                     }
@@ -228,7 +227,6 @@ public class ExtendedJPanel extends javax.swing.JPanel
                         {
                             iOVL = ImageIO.read(new File(guifile.ResourceURLs.get("ButtonHovered")));
                         }
-                        //System.err.println("???");//Fliegenklatsche
                     overridelowerGFX=true;
                     //ctne = true;
                     }
@@ -361,7 +359,6 @@ public class ExtendedJPanel extends javax.swing.JPanel
             }
             else
             {
-                //System.err.println()
                 if(!overridelowerGFX)
                 {
                 g2d.drawImage(imgi, 0, 0, null);

+ 9 - 135
ToolKit/src/main/java/de/nplusc/izc/tools/UiToolz/UIFileAccess.java

@@ -10,6 +10,8 @@ import java.io.File;
 import java.io.InputStream;
 import java.util.HashMap;
 import java.util.Set;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.yaml.snakeyaml.Yaml;
 
 /*
@@ -23,6 +25,8 @@ import org.yaml.snakeyaml.Yaml;
  */
 public class UIFileAccess
 {
+    private static final Logger l = LogManager.getLogger();
+    
     public final Rectangle[] tabs = new Rectangle[4];//*//*/
     public final int[] tabBarPos = new int[4];//*//*
     public final Polygon ButtonShape;//*
@@ -57,134 +61,14 @@ public class UIFileAccess
         HashMap<String,HashMap<String,String>> t = new HashMap<>();
         //t.put(s, null);
         t= parser.loadAs(s, t.getClass());
-        //System.err.println(parser.dump(t));
-        Tools.DebugHelperPrint(parser.dump(t), true, "Toolkit.enableCoreDebug");
-        // <editor-fold defaultstate="collapsed" desc="altlast">
-        /*"FontColor: \n"+
-         
-        f 
-        
-        "  R: I|170\n"+
-        "  G: I|220\n"+
-        "  B: I|240\n"+
-        "  A: I|200\n"+
-        "Font:\n"+
-        "  FontName: S|Lucida Console\n"+
-        "  Bold: B|Yes\n"+
-        "  Size: I|15\n"+
-        "tabBar:\n"+
-        "  TabWidth: I|200\n"+
-        "  Gfx: U|rsrc/GUI-FIle_TabWritten.png\n"+
-        "  BarBasePoint: 'P|0|0'\n"+
-        "  BarWidth: I|1000\n"+
-        "  BarHeight: I|20\n"+
-        "  TabHeight: I|20\n"+
-        "  TabBasePoint: P|50|0\n"+
-        "MainCfg:\n"+
-        "  LineWidth: I|930\n"+
-        "  ScrollBarHeight: Remark|Determined by LineCount*LineSize\n"+
-        "  ScrollBarWidth: I|15\n"+
-        "  ScrollBarBasePoint: P|935|25\n"+
-        "  ICO: U|rsrc/icon.png\n"+
-        "  InputLineHeight: I|17\n"+
-        "  LinesBasePoint: P|5|25\n"+
-        "  InputLineBasePoint: P|54|412\n"+
-        "  GFX: U|rsrc/GUI-File-CMD-IP-Main.png\n"+
-        "  InputLineWidth: I|860 \n"+
-        "  LineHeight: I|14\"+
-        "  WindowBasePoint: P|200|120"+
-        "okButton:"+
-        "  BP6: P|209|7"+
-        "  BP7: P|229|27"+
-        "  BP8: P|168|47"+
-        "  ButtonGlowGFX: U|rsrc/GUI-File-CMD-IP-BTN-Red.png"+
-        "  BP9: P|12|47"+
-        "  BP10: P|6|36"+
-        "  BP1: P|27|16"+
-        "  BP2: P|73|16"+
-        "  BP3: P|85|1"+
-        "  BP4: P|152|1"+
-        "  ButtonDfltGFX: U|rsrc/GUI-File-CMD-IP-BTN-Blue.png"+
-        "  BP5: P|155|8"+
-        "  ButtonAreaHeight: I|48"+
-        "  ButtonAreaWidth: I|233"+
-        "\n  ButtonAreaPos: P|630|432";*/
+       l.trace(parser.dump(t));
 
-        /*
-        HashMap<String,HashMap<String,String>> uiOP = new HashMap<>();
-        HashMap<String,String> Keys = new HashMap<>();
-            Keys.put("R","I|170");
-            Keys.put("G","I|220");
-            Keys.put("B","I|240");
-            Keys.put("A","I|200");
-        uiOP.put("FontColor",Keys);
-        Keys = new HashMap<>();
-            Keys.put("FontName","S|Lucida Console");//FióntName
-            Keys.put("Bold","B|Yes");
-            Keys.put("Size","I|15");
-        uiOP.put("Font",Keys);
-        Keys = new HashMap<>();
-            Keys.put("TabBasePoint","P|50|0");
-            Keys.put("TabWidth","I|200");
-            Keys.put("TabHeight","I|20");
-            Keys.put("BarBasePoint","P|0|0");
-            Keys.put("BarWidth","I|1000");
-            Keys.put("BarHeight","I|20");
-            Keys.put("Gfx","U|rsrc/GUI-FIle_TabWritten.png");
-        uiOP.put("tabBar",Keys);
-        Keys = new HashMap<>();
-            Keys.put("ButtonAreaPos","P|630|432");
-            Keys.put("ButtonAreaWidth","I|233");
-            Keys.put("ButtonAreaHeight","I|48");
-            Keys.put("BP1","P|27|16");
-            Keys.put("BP2","P|73|16");
-            Keys.put("BP3","P|85|1");
-            Keys.put("BP4","P|152|1");
-            Keys.put("BP5","P|155|8");
-            Keys.put("BP6","P|209|7");
-            Keys.put("BP7","P|229|27");
-            Keys.put("BP8","P|168|47");
-            Keys.put("BP9","P|12|47");
-            Keys.put("BP10","P|6|36");
-            Keys.put("ButtonGlowGFX","U|rsrc/GUI-File-CMD-IP-BTN-Red.png");
-            Keys.put("ButtonDfltGFX","U|rsrc/GUI-File-CMD-IP-BTN-Blue.png");
-        uiOP.put("okButton",Keys);
-        Keys = new HashMap<>();
-            Keys.put("LineHeight","I|14");
-            Keys.put("WindowBasePoint","P|200|120");
-            Keys.put("LinesBasePoint","P|5|25");
-            Keys.put("LineWidth","I|930");
-            Keys.put("GFX","U|rsrc/GUI-File-CMD-IP-Main.png");
-            Keys.put("ICO","U|rsrc/icon.png");
-            Keys.put("ScrollBarBasePoint","P|935|25");
-            Keys.put("ScrollBarWidth","I|15");
-            Keys.put("ScrollBarHeight","Remark|Determined by LineCount*LineSize");
-            Keys.put("InputLineBasePoint","P|54|412");
-            Keys.put("InputLineWidth","I|860");
-            Keys.put("InputLineHeight","I|17");
-        uiOP.put("MainCfg",Keys);*/
-        //Iterator<Entry<String, HashMap<String, String>>> i = uiOP.entrySet().iterator();
-        //System.err.println(parser.dump(uiOP));
-        
-            
-            //ipline.setBounds(54,412,860,17);
-            //js.setBounds(935,25,15,25*14);
-            //linel.setBounds(5, 25+i*14, 930, 14);
-            //public static final Polygon buttonPos = new Polygon(new int[]
-                    //27,73,85,152,155,209,229,168,12,6},new int[]
-                    //{16,16,1 ,1  ,8  ,7  ,27 ,47 ,47,36},10);
-           
-            //(630,432,233,48))
-            //</editor-fold>
-            
- 
     }
     
     private static String ssv(String ip)
     {
         String ret = ip.split("\\|")[1];
-        //System.err.println(ret);
-        Tools.DebugHelperPrint(ret, true, "Toolkit.enableCoreDebug");
+        l.trace(ret);
         return ret;
     }
     private static String[] stv(String ip)
@@ -212,8 +96,7 @@ public class UIFileAccess
         HashMap<String,HashMap<String,String>> t = new HashMap<>();
         //t.put(s, null);
         t= (HashMap<String,HashMap<String,String>>)parser.load(s);
-        System.err.println("NOP");
-        Tools.DebugHelperPrint("NOP", true, "Toolkit.enableCoreDebug");
+        l.trace("NOP");
         HashMap<String,String> fontcfg = t.get("Font");
             int bold = Font.PLAIN;
             if("Yes".equals(ssv(fontcfg.get("Bold"))))
@@ -319,7 +202,6 @@ public class UIFileAccess
                     }
                     
                 }
-                //System.err.println("i|"+i+"|o|"+cl);
                 kx[i-1] = Integer.valueOf(stv(cl)[0]);
                 ky[i-1] = Integer.valueOf(stv(cl)[1]);
             }
@@ -350,8 +232,7 @@ public class UIFileAccess
         HashMap<String,HashMap<String,String>> t = new HashMap<>();
         //t.put(s, null);
         t= (HashMap<String,HashMap<String,String>>)parser.load(s);
-        System.err.println("NOP");
-        Tools.DebugHelperPrint("NOP", true, "Toolkit.enableCoreDebug");
+        l.trace("NOP");
         HashMap<String,String> fontcfg = t.get("Font");
             int bold = Font.PLAIN;
             if("Yes".equals(ssv(fontcfg.get("Bold"))))
@@ -457,19 +338,12 @@ public class UIFileAccess
                     }
                     
                 }
-                System.err.println("i|"+i+"|o|"+cl);
+               l.trace("i|"+i+"|o|"+cl);
                 kx[i-1] = Integer.valueOf(stv(cl)[0]);
                 ky[i-1] = Integer.valueOf(stv(cl)[1]);
             }
             ButtonShape=new Polygon(kx,ky,ps); 
         
     }
-    /*
-    public static void main(String args[])
-    {
-        //createFefaultUIFile(null);
-        UIFileAccess x = new UIFileAccess(UIFile.class);
-        System.err.println("NOP");
-    }*/
     
 }

+ 13 - 8
ToolKit/src/main/java/de/nplusc/izc/tools/UiToolz/cmdGUI.java

@@ -9,10 +9,13 @@ import java.awt.event.KeyEvent;
 import java.awt.event.MouseMotionAdapter;
 import java.io.*;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.HashMap;
 import javax.imageio.ImageIO;
 import javax.swing.*;
 import org.apache.commons.exec.*;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /*
  * To change this template, choose Tools | Templates
@@ -25,6 +28,8 @@ import org.apache.commons.exec.*;
  */
 public class cmdGUI extends javax.swing.JFrame
 {
+    
+    private static final Logger l = LogManager.getLogger();
     //51,0:tab1
     //availSize=840:20
     
@@ -156,7 +161,7 @@ public class cmdGUI extends javax.swing.JFrame
         }
         id= this.toString();
         System.err.println(id);
-        Tools.DebugHelperPrint(id, true, "Toolkit.enableCoreDebug");
+       l.trace(id);
         this.setUndecorated(true);
         //initComponents();
         buildGUI();
@@ -445,7 +450,7 @@ public class cmdGUI extends javax.swing.JFrame
             if(get>=0&&!(uptypes[tabSelected]>upmax[tabSelected]))
             {
                 String ldcmd = cmdBuf.get(tabSelected).getContentAt(get);
-                Tools.DebugHelperPrint("get|"+get, true, "Toolkit.enableFinerDebug");
+                l.trace("get|"+get);
                 if(!ldcmd.equals("noCmd"))
                 {
                     uptypes[tabSelected]++;
@@ -486,11 +491,11 @@ public class cmdGUI extends javax.swing.JFrame
                 uptypes[tabSelected]++;
             }     
             int get = upmax[tabSelected]-(uptypes[tabSelected]+1);
-            Tools.DebugHelperPrint("uptypes|"+uptypes, true, "Toolkit.enableFinerDebug");
+            l.trace("uptypes|"+Arrays.toString(uptypes));
             if(get>=0&&!(uptypes[tabSelected]>upmax[tabSelected]))
             {
                 String ldcmd = cmdBuf.get(tabSelected).getContentAt(get);
-                Tools.DebugHelperPrint("get|"+get, true, "Toolkit.enableFinerDebug");
+                l.trace("get|"+get);
                 if(!ldcmd.equals("noCmd"))
                 {
                     //uptypes++;
@@ -517,14 +522,14 @@ public class cmdGUI extends javax.swing.JFrame
                 upmax[tabSelected]++;
             }
             uptypes[tabSelected]=0;
-            Tools.DebugHelperPrint("tabForTrg|"+tabSelected+"|"+isInCmd[tabSelected], true, "Toolkit.enableFinerDebug");
+            l.trace("tabForTrg|"+tabSelected+"|"+isInCmd[tabSelected]);
             if(!isInCmd[tabSelected])
             {
                 runCmd();
             }
             else
             {
-                Tools.DebugHelperPrint("toCmdatTab|"+tabSelected+"|"+isInCmd[tabSelected], true, "Toolkit.enableFinerDebug");
+                l.trace("toCmdatTab|"+tabSelected+"|"+isInCmd[tabSelected]);
             
                 String t = ipline.getText();
                 if(t == null)
@@ -637,7 +642,7 @@ public class cmdGUI extends javax.swing.JFrame
         final String cmd = ipline.getText();
         addLine(cmd,tabSelected);
         ipline.setText("");
-        Tools.DebugHelperPrint("cmdLoaded|"+cmd+"|"+tabSelected, true, "Toolkit.enableFinerDebug");
+        l.trace("cmdLoaded|"+cmd+"|"+tabSelected);
             
         if(cmd.equals("quit"))
         {
@@ -652,7 +657,7 @@ public class cmdGUI extends javax.swing.JFrame
             @Override
             public void run()
             {
-                Tools.DebugHelperPrint("cmdLoaded2|"+cmd+"|"+tabSelected, true, "Toolkit.enableFinerDebug");
+                l.trace("cmdLoaded2|"+cmd+"|"+tabSelected);
                 runCmd(cmd);
             }
        });

+ 4 - 0
ToolKit/src/main/java/de/nplusc/izc/tools/baseTools/Detectors.java

@@ -4,6 +4,8 @@ import de.nplusc.izc.tools.IOtools.FileTK;
 import java.io.File;
 import java.io.IOException;
 import java.util.prefs.Preferences;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 /*
  * To change this template, choose Tools | Templates
  * and open the template in the editor.
@@ -15,6 +17,8 @@ import java.util.prefs.Preferences;
  */
 public class Detectors
 {
+    
+    private static final Logger l = LogManager.getLogger();
     //@SuppressWarnings("empty-statement")
     
     

+ 2 - 0
ToolKit/src/main/java/de/nplusc/izc/tools/baseTools/HLTools.java

@@ -5,6 +5,8 @@
 package de.nplusc.izc.tools.baseTools;
 
 import java.util.prefs.Preferences;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  * Subset of tools a certain program used to avoid a dependency tree hell

+ 0 - 115
ToolKit/src/main/java/de/nplusc/izc/tools/baseTools/RingBuffer.java

@@ -18,121 +18,6 @@ import java.util.LinkedList;
  */
 public class RingBuffer<T>
 {
-     // <editor-fold defaultstate="collapsed" desc="Altlast">
-    /*private T[] BufferContent;
-    private int[] BufferConfig = new int[]{0,0,0};//0=currentbasePoint1=currentWritePoint2=max
-   
-    public RingBuffer(Class<T> clazz)
-    {
-         BufferConfig[2] = 10;//DefaultValue
-         BufferConfig[0] = 0;
-         BufferConfig[1] = 0;
-         initStorage(clazz);
-    }
-        public RingBuffer(Class<T> clazz,T defaultValue)
-    {
-         BufferConfig[2] = 10;//DefaultValue
-         BufferConfig[0] = 0;
-         BufferConfig[1] = 0;
-         initStorage(clazz,defaultValue);
-    }
-    
-    public RingBuffer(Class<T> clazz,int length,T defaultValue)
-    {
-        BufferConfig[2] = length;
-        BufferConfig[0] = 0;
-        BufferConfig[1] = 0;
-        initStorage(clazz,defaultValue);
-    }
-        public RingBuffer(Class<T> clazz,int length)
-    {
-        BufferConfig[0] = 0;
-        BufferConfig[1] = 0;
-        BufferConfig[2] = length;
-        initStorage(clazz);
-    }
-    
-    private void initStorage(Class<T> clazz,T defaultValue)
-    {
-       // Class<T> c = new Class<T>();
-        BufferContent =(T[])Array.newInstance(clazz,BufferConfig[2]);
-        for (int i=0;i<BufferConfig[2];i++)
-        {
-            T t = BufferContent[i];
-            if(clazz==String.class)
-            {
-                  t =  (T) (defaultValue.toString()+i);
-            }
-            else
-            {
-                t = defaultValue;
-            }
-            BufferContent[i] = t;
-        }
-                //new T[length];
-    }
-    private void initStorage(Class<T> clazz)
-    {
-       // Class<T> c = new Class<T>();
-        BufferContent =(T[])Array.newInstance(clazz,BufferConfig[2]);
-                //new T[length];
-    }
-    public int getWriteIdx()
-    {
-        int[]c = BufferConfig;
-        int ret = 0;
-        if(c[0]>c[1])
-        {
-            c[1]+=c[2];
-        }
-        ret=c[1]-c[0];
-        return ret;
-    }
-    public T getContentAt(int pos)
-    {
-        System.err.println("1|"+pos);
-        pos = BufferConfig[0]+pos;
-        System.err.println("2|"+pos);
-        if(pos>BufferConfig[2])//keine 3 hier sonst AIOOBX(ArrayIndexOutOfBoundsException)
-        {
-            pos-=BufferConfig[2];
-            System.err.println("3|"+pos);
-        }
-        return BufferContent[pos];
-        //return null;//teturn null;
-    }
-    public T getOldestItem(boolean rmv)
-    {
-        T ret = BufferContent[BufferConfig[0]];
-        if(rmv)
-        {
-            BufferConfig[0]++;
-            if(BufferConfig[0]>=BufferConfig[2])
-            {
-                BufferConfig[0]-=BufferConfig[2];
-            }
-        }
-        return ret;
-    }
-    public void addItem(T item)
-    {
-        if(BufferConfig[1]+1==BufferConfig[0])
-        {
-            getOldestItem(true);
-        }
-        addItem(item,BufferConfig[1]);
-        BufferConfig[1]++;
-        if(BufferConfig[1]>=BufferConfig[2])
-        {
-            BufferConfig[1]-=BufferConfig[2];
-        }
-       
-    }
-    public void addItem(T item,int pos)//Dränglercode
-    {
-        BufferContent[pos] = item;
-    }*/
-    //</editor-fold>
     private int lengthUsed;
     private int length;
     private T defaults;

+ 17 - 97
ToolKit/src/main/java/de/nplusc/izc/tools/baseTools/Tools.java

@@ -10,7 +10,6 @@ import de.nplusc.izc.tools.IOtools.FileTK;
 import de.nplusc.izc.tools.IOtools.PrintStreamCapturer;
 import java.awt.Dimension;
 import java.awt.GraphicsEnvironment;
-import java.awt.HeadlessException;
 import java.io.*;
 import java.lang.reflect.Field;
 import java.security.MessageDigest;
@@ -23,13 +22,11 @@ import javax.swing.*;
 import net.rubygrapefruit.platform.Native;
 import net.rubygrapefruit.platform.ProcessLauncher;
 import org.apache.commons.exec.CommandLine;
-import org.apache.commons.exec.DefaultExecuteResultHandler;
 import org.apache.commons.exec.DefaultExecutor;
-import org.apache.commons.exec.ExecuteException;
-import org.apache.commons.exec.ExecuteStreamHandler;
 import org.apache.commons.exec.Executor;
-import org.apache.commons.exec.PumpStreamHandler;
 import org.apache.commons.io.output.NullOutputStream;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
@@ -38,7 +35,7 @@ import org.apache.commons.io.output.NullOutputStream;
  @SuppressWarnings( "deprecation" )
 public class Tools
 {
-
+    private static final Logger l = LogManager.getLogger();
     public static boolean execCrashed = false;
     private static boolean ContState;
     private static JDialog d;
@@ -117,7 +114,7 @@ public class Tools
             byte[] digest = sha.digest(s.getBytes());
             for (byte b : digest)
             {
-                Tools.DebugHelperPrint(String.format("%02x", b), true, "Toolkit.enableFinerDebug");
+                l.trace(String.format("%02x", b));
                 int val = ((int) b) & 0xff;
                 if (val < 16)
                 {
@@ -125,7 +122,6 @@ public class Tools
                 }
                 t.append(Integer.toHexString(val));
             }
-            //System.out.println();
             return t.toString();
         }
         catch (Exception ex)
@@ -477,36 +473,7 @@ public class Tools
         return ContState;
     }
 
-    /**
-     * Wrapper to debugmessage code
-     * @param logLine Line to logg
-     */
-    public static void log(final String logLine)
-    {
-        /*Thread t = new Thread(new Runnable() {
-
-         //@SuppressWarnings("SleepWhileInLoop")//Hx
-         public void run() {*/
-        /*
-         if(logLines>5000)
-         {
-         cmdScreen.setText("");
-         System.err.println("log_flushed");
-         logLines=0;
-         }
-         loglineG = logLine;
-         //System.err.println("LOG()");
-         cmdScreen.setText(cmdScreen.getText()+"\n"+loglineG);
-         loglineG = "";
-         logLines++;
-         d.validate();
     
-         /*}
-         });
-         t.start();*/
-        Tools.DebugHelperPrint(logLine, true, "Toolkit.enableCoreDebug");
-    }
-
     // <editor-fold defaultstate="collapsed" desc="Altlast">
     /*
      public static void jCmd() {
@@ -662,19 +629,6 @@ public class Tools
             if(!wd.isDirectory())
                 wd=null;
         }        
-        //String rn = runnable[0];
-        //String[]temp = runnable[0].split("\\.");
-        /*if("bat".equals(temp[temp.length-1]))
-         {
-            
-         runnable[0] = "cmd.exe";
-         runnable[1] = "/c";
-         runnable[2] = "\"\""+rn+"\" \"";
-         }*/
-        //else
-        //{
-        //String[] r2 = runnable;
-        //}
         String cmd = "";
         for (String string : runnable)
         {
@@ -682,7 +636,7 @@ public class Tools
             cmd = cmd.trim();
 
         }//wird für ohne array verwended und bei mit array fürs debugging;
-        Tools.DebugHelperPrint(cmd, true, "Toolkit.enableFinerDebug");
+        l.trace(cmd);
         try
         {
             ProcessBuilder p2=null;
@@ -756,56 +710,22 @@ public class Tools
                     execCrashed=true;
                 }
             }
-            //InputStream s = p.getInputStream();//TODO LogFile via CommonsExec
-            //InputStream se = p.getErrorStream();//<<<
-            //s.
-            //BufferedWriter log = new BufferedWriter(new FileWriter("C:\\log"+logNumber+".txt"));
-            // BufferedWriter err = new BufferedWriter(new FileWriter("C:\\err"+logNumber+".txt"));
-            Tools.DebugHelperPrint(cmd, true, "Toolkit.enableCoreDebug");
+            l.trace(cmd);
             if (logg)
             {
-                Tools.DebugHelperPrint("Logg", true, "Toolkit.enableFinerDebug");
-                //IOUtils.copy(s,log);
-                //IOUtils.copy(se,err);
+                l.trace("Logg");
                 logNumber++;
             }
-            // int i = p.waitFor();
-            // log = new BufferedWriter(new FileWriter("C:\\log"+logNumber+".txt"));
-            // err = new BufferedWriter(new FileWriter("C:\\err"+logNumber+".txt"));
             if (!legacy)
             {
                 e.execute(c);
             }
-            //if(logg)
-            // {
-            //     System.err.println("Logg");
-            //     IOUtils.copy(s,log);
-            //     IOUtils.copy(se,err);
-            //      logNumber++;
-            //  }
-            // if(i>0)
-            //{
-            //    dlg(true,"Error in ",cmd);
-            //   throw new Exception();//Löst SetupError aus
-            //}
-            // else
-            //  {
-            //SetupContinue
-            //  }
-
-            /*
-             ProcessBuilder p = new ProcessBuilder(runnable);
-             File f = new File(new File(rn).getParent());
-             p.directory(f);
-             Map<String,String> env = p.environment();
-             Tools.cmdrunner(p,runnable,false);*/
-            //return false;//Altlast
         }
         catch (Exception ex)
         {
-            Tools.DebugHelperPrint("Error@"+cmd, true, "Toolkit.enableFinerDebug");
-            Tools.DebugHelperPrint(ex.toString(), true, "Toolkit.enableFinerDebug");
-            Tools.DebugHelperPrint(ex.getMessage(), true, "Toolkit.enableFinerDebug");
+            l.error("Error@"+cmd);
+            l.error(ex.toString());
+            l.error(ex.getMessage());
             //TODO:SetupError_Here
             //Logger.getLogger(Tools.class.getName()).log(Level.SEVERE, null, ex);
         }
@@ -1072,7 +992,7 @@ public class Tools
         }
         catch (Exception e)
         {
-            Tools.DebugHelperPrint("Loader.failure", true, "Toolkit.enableCoreDebug");
+            l.warn("Loader.failure @{}",p);
             e.printStackTrace();
             return null;
         }
@@ -1214,7 +1134,7 @@ public class Tools
     public static int numberInputWIndow(int maxNbr, int[] blockednumbrs)
     {
         if(hl) return -1;
-        log("niw");
+        l.info("niw");
         k1 = new javax.swing.JButton();
         k2 = new javax.swing.JButton();
         k3 = new javax.swing.JButton();
@@ -1495,7 +1415,7 @@ public class Tools
 
         d.pack();
         d.setVisible(true);
-        log("Scheißdreck");
+        l.trace("Scheißdreck");
         return retnumber;
     }// </editor-fold>
 
@@ -1689,7 +1609,7 @@ public class Tools
         if(dbgonly)
             if(!Boolean.valueOf(Preferences.userRoot().get(debugEnablePreference, "false")))
             return;
-        System.err.println(msg);
+        l.trace(msg);
     }
     
     
@@ -1715,7 +1635,7 @@ public class Tools
         try //synchronized gint nen fetten Bug
         {
             //txf=txf2;
-            Tools.DebugHelperPrint(Arrays.toString(cmd), true, "Toolkit.enableFinerDebug");
+            l.trace(Arrays.toString(cmd));
             // BufferedInputStream log = new BufferedInputStream
             // (
             //     new ByteArrayInputStream(new byte[]{0})
@@ -1730,7 +1650,7 @@ public class Tools
             {
                 otherOut=new PrintStream(new NullOutputStream());
             }
-            System.out.println("OtherOut="+otherOut);
+            l.trace("OtherOut="+otherOut);
             
             ProcessBuilder pb = new ProcessBuilder(Arrays.asList(cmd));
             pb.redirectErrorStream(true);
@@ -1741,7 +1661,7 @@ public class Tools
             stdoutThread.start();
             int result = process.waitFor();
             stdoutThread.join();
-            Tools.DebugHelperPrint("FIN", true, "Toolkit.enableFinerDebug");
+            Tools.l.trace("FIN");
             return result!=0;
             //sil=false;
         }

+ 7 - 3
ToolKit/src/main/java/de/nplusc/izc/tools/baseTools/arraytools.java

@@ -1,6 +1,8 @@
 package de.nplusc.izc.tools.baseTools;
 
 import java.util.Arrays;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /*
  * To change this template, choose Tools | Templates
@@ -14,6 +16,8 @@ import java.util.Arrays;
  * @author LH
  */
 public class arraytools {
+    
+    private static final Logger l = LogManager.getLogger();
     protected arraytools()
     {
         
@@ -37,7 +41,7 @@ public class arraytools {
 	for(int i=0;i<input.length;i++)
 	{
 	    String entry = input[i][col];
-            Tools.DebugHelperPrint(entry, true, "Toolkit.enableCoreDebug");
+            l.trace(entry);
 	    value = Integer.valueOf(entry);
 	    sum = sum + value;
 
@@ -137,7 +141,7 @@ public class arraytools {
             j = array[i];
             k = array.length;
             l = k - i - 1;
-            Tools.DebugHelperPrint(k+"", true, "Toolkit.enableFinerDebug");
+            arraytools.l.trace(k);
             zahlen2[l] = array[i];
 
 
@@ -145,7 +149,7 @@ public class arraytools {
         array = zahlen2;
         for (Object object : zahlen2)
         {
-            Tools.DebugHelperPrint(object+"", true, "Toolkit.enableFinerDebug");
+            arraytools.l.trace(object);
         }
         return array;
     }

+ 5 - 4
ToolKit/src/main/java/de/nplusc/izc/tools/testing/ArtCompress.java

@@ -7,6 +7,8 @@ package de.nplusc.izc.tools.testing;
 import de.nplusc.izc.tools.IOtools.iZformats.IZImageGenerated;
 import java.io.IOException;
 import java.util.zip.ZipFile;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
@@ -14,7 +16,7 @@ import java.util.zip.ZipFile;
  */
 public class ArtCompress extends javax.swing.JFrame
 {
-
+    private static final Logger l = LogManager.getLogger();
     /**
      * Creates new form ArtCompress
      */
@@ -78,14 +80,14 @@ public class ArtCompress extends javax.swing.JFrame
 
     private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)//GEN-FIRST:event_jButton1ActionPerformed
     {//GEN-HEADEREND:event_jButton1ActionPerformed
-        System.out.println("..............");
+        l.trace("..............");
         
         new Thread(new Runnable(){
 
             @Override
             public void run()
             {
-                System.out.println("fbfberfberfbrdehgrthtr");
+                l.trace("fbfberfberfbrdehgrthtr");
                 try
                 {       //"D:\\picts\\fullrgb\\art_gen++\\8192x2048\\hue0_one\\s=9263" 
                         //"D:\\picts\\fullrgb\\art_gen++\\2048x1024\\hue360_one\\s=12345\\compressiontest"
@@ -99,7 +101,6 @@ public class ArtCompress extends javax.swing.JFrame
                 }
             }
         }).start();
-        //System.out.println(String.format("result%05d.png", 99));
     }//GEN-LAST:event_jButton1ActionPerformed
 
     /**

+ 5 - 1
build.gradle

@@ -9,12 +9,16 @@ buildscript {
 allprojects {
 	repositories{
 		jcenter()
-		maven { url "http://repo.gradle.org/gradle/libs-releases-local" }
+		
+		
 		maven {
 			url "https://repository.apache.org/content/repositories/snapshots"
 		}
 		maven {
 			url "http://4thline.org/m2"
 		}
+		
+		mavenLocal()
+		maven { url "http://repo.gradle.org/gradle/libs-releases-local" }
 	}
 }

+ 5 - 1
iZpl/build.gradle

@@ -69,7 +69,7 @@ dependencies{
     compile 'org.apache.commons:commons-exec:1.3'
     compile "org.yaml:snakeyaml:1.14"
     compile "commons-net:commons-net:3.3"
-    compile 'uk.co.caprica:vlcj:3.0.1'
+    compile 'uk.co.caprica:vlcj:3.3.0-SNAPSHOT'
     compile 'com.googlecode.mp4parser:isoparser:1.0-RC-1'
     compile 'de.schlichtherle.truezip:truezip-file:7.7.7'
     compile 'de.schlichtherle.truezip:truezip-driver-zip:7.7.7'
@@ -80,6 +80,10 @@ dependencies{
     compile 'de.schlichtherle.truezip:truezip-driver-tzp:7.7.7'
     compile 'de.schlichtherle.truezip:truezip-driver-http:7.7.7'
     compile 'commons-cli:commons-cli:1.3-SNAPSHOT'
+	compile group: 'org.apache.logging.log4j', name: 'log4j-api', version: '2.1'
+	compile group: 'org.apache.logging.log4j', name: 'log4j-core', version: '2.1'
+	compile group: 'org.apache.logging.log4j', name: 'log4j-iostreams', version: '2.1'
+    compile 'org.fusesource.jansi:jansi:1.11'
     compile(project(':ToolKit')) {
         transitive = false
     }

+ 18 - 0
iZpl/src/main/java/de/nplusc/izc/iZpl/API/IZPLApi.java

@@ -122,4 +122,22 @@ public class IZPLApi
     {
         return Main.getPlayListIcon();
     }
+    
+    /**
+     * Checks wheter the program has the -v (erbose mode) parameter set for debugging moce
+     * @return true if parameter is set
+     */
+    public static boolean isVerboseMode()
+    {
+        return Main.isVerboseMode();
+    }
+    
+    /**
+     * Checks whether the debug file mode is enabled
+     * @return true if enabled
+     */
+    public static boolean createDebugDumps()
+    {
+        return false;
+    }
 }

+ 2 - 1
iZpl/src/main/java/de/nplusc/izc/iZpl/GUI/ConfigureScreen.java

@@ -17,6 +17,7 @@ import java.io.FileWriter;
 import java.io.IOException;
 import javax.swing.DefaultComboBoxModel;
 import javax.swing.DefaultListModel;
+import org.apache.logging.log4j.io.IoBuilder;
 
 /**
  *
@@ -382,7 +383,7 @@ public class ConfigureScreen extends javax.swing.JFrame
         new Thread(()->
         {
             String startScriptExt=Detectors.getSystemClassification()[0].equals("windows")?".bat":"";
-            Tools.runCmdWithPassthru(System.out, IZPLApi.APPDIR+File.separator+"bin"+File.separator+"iZpl"+startScriptExt, "--registerfileextensions");
+            Tools.runCmdWithPassthru(IoBuilder.forLogger("External").buildPrintStream(), IZPLApi.APPDIR+File.separator+"bin"+File.separator+"iZpl"+startScriptExt, "--registerfileextensions");
         }).start();
     }//GEN-LAST:event_registerFileExtsActionPerformed
 

+ 8 - 7
iZpl/src/main/java/de/nplusc/izc/iZpl/GUI/IZplGUISkinnable.java

@@ -42,6 +42,8 @@ import javax.swing.JDialog;
 import javax.swing.JFrame;
 import javax.swing.JLabel;
 import javax.swing.JSlider;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.yaml.snakeyaml.Yaml;
 
 /**
@@ -50,6 +52,7 @@ import org.yaml.snakeyaml.Yaml;
  */
 public class IZplGUISkinnable extends JFrame implements SkinnableUIPlugin, MouseListener, MouseMotionListener
 {
+    private static final Logger l = LogManager.getLogger();
     private boolean initialized;
     public static final int BUTTON_NONE_ID = 0;
     public static final int BUTTON_IXX_ID = 1;
@@ -169,7 +172,6 @@ public class IZplGUISkinnable extends JFrame implements SkinnableUIPlugin, Mouse
             }
         }
         repaint();
-        //System.out.println("NOP");
     }
 
     @Override
@@ -268,11 +270,11 @@ public class IZplGUISkinnable extends JFrame implements SkinnableUIPlugin, Mouse
         if(e.getSource()==seekBar)
         {
             selectedPlaybackPlugin.pause();
-            System.out.println("SeekBar only event:pressed");
+            l.trace("SeekBar only event:pressed");
             return;
             
         }
-        System.out.println("Main window event:pressed");
+        l.trace("Main window event:pressed");
         pp=e.getPoint();
         Point p = e.getPoint();
         if((e.getButton()&MouseEvent.BUTTON2)!=0)
@@ -326,10 +328,10 @@ public class IZplGUISkinnable extends JFrame implements SkinnableUIPlugin, Mouse
             {
                 selectedPlaybackPlugin.play();
             }
-            //System.out.println("SeekBar only event:released");
+            l.trace("SeekBar only event:released");
             return;
         }
-        //System.out.println("Main window event:released");
+        l.trace("Main window event:released");
         Point p = e.getPoint();
         if(btnIxx.contains(p)&&btnIxx.contains(pp))
         {
@@ -422,7 +424,6 @@ public class IZplGUISkinnable extends JFrame implements SkinnableUIPlugin, Mouse
                     {
                         if(btnManage.contains(p))
                         {
-                            //System.out.println("MainWindow event:hover@manageBtn");
                             tickGUI(BUTTON_MANAGE_ID, STATE_HILIT);
                         }
                         else
@@ -541,7 +542,7 @@ public class IZplGUISkinnable extends JFrame implements SkinnableUIPlugin, Mouse
         //paintme.getGraphics().drawImage(buttonIxxHilit, ixb[0], ixb[1], null);
         PA.setdrawIMG(paintme);
         add(PA);
-        System.out.println("skindim=" + guiwidth + "|" + guiHeight);
+        l.trace("skindim=" + guiwidth + "|" + guiHeight);
         Container cp = getContentPane();
         cp.setLayout(null);
 

+ 5 - 4
iZpl/src/main/java/de/nplusc/izc/iZpl/GUI/PlayListManagingDefault.java

@@ -12,6 +12,8 @@ import java.awt.event.ActionEvent;
 import javax.swing.AbstractAction;
 import javax.swing.Action;
 import javax.swing.table.DefaultTableModel;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
@@ -19,7 +21,7 @@ import javax.swing.table.DefaultTableModel;
  */
 public class PlayListManagingDefault extends javax.swing.JFrame implements PlayListManagingCommon
 {
-
+    private static final Logger l = LogManager.getLogger();
     private HidableTableColumnModel mdl;
    
     /**
@@ -38,8 +40,8 @@ public class PlayListManagingDefault extends javax.swing.JFrame implements PlayL
                 if(!rebuilding)
                 {
                     TableCellListener tcl = (TableCellListener)e.getSource();
-                    System.out.println("Row   : " + tcl.getRow());
-                    System.out.println("Value  : " + tcl.getNewValue());
+                    l.trace("Row   : " + tcl.getRow());
+                    l.trace("Value  : " + tcl.getNewValue());
                     PlayListEditAPI.setTargetPlayCount(tcl.getRow(), (int) tcl.getNewValue());
                 }
             }
@@ -265,7 +267,6 @@ public class PlayListManagingDefault extends javax.swing.JFrame implements PlayL
         //mdl.setAllColumnsVisible();
         PlayListEditAPI.refreshKeyList();
         String[] titles = PlayListEditAPI.getTrackTitles();
-        //System.out.println("titles for tblrefresh"+new Yaml().dump(titles));
         for(int i=tblPLE.getRowCount()-1;i>0;i--)
 	{
 	    ((DefaultTableModel)tblPLE.getModel()).removeRow(i-1);

+ 5 - 3
iZpl/src/main/java/de/nplusc/izc/iZpl/GUI/PlayListManagingSkinnable.java

@@ -39,6 +39,8 @@ import javax.swing.JFrame;
 import javax.swing.JLabel;
 import javax.swing.JPanel;
 import javax.swing.JSlider;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
@@ -46,6 +48,7 @@ import javax.swing.JSlider;
  */
 public class PlayListManagingSkinnable extends JPanel implements MouseMotionListener , MouseListener,PlayListManagingCommon
 {
+    private static final Logger l = LogManager.getLogger();
     
     public static final int BUTTON_NONE_ID=0;
     public static final int BUTTON_IXX_ID=1;
@@ -194,7 +197,7 @@ public class PlayListManagingSkinnable extends JPanel implements MouseMotionList
         //paintme.getGraphics().drawImage(buttonIxxHilit, ixb[0], ixb[1], null);
         PA.setdrawIMG(paintme);
         add(PA);
-        System.out.println("skindim="+w+"|"+h);
+        l.info("skindim="+w+"|"+h);
         
         Container cp = null;
         if(wrapper instanceof JFrame)
@@ -299,7 +302,7 @@ public class PlayListManagingSkinnable extends JPanel implements MouseMotionList
         PA.setLayout(null);
         lc = tableheight/lineheight-1;//oberste zeile=header
         ArrayList<Integer> tbb = (ArrayList<Integer>) ep.get("tablestart");
-        System.out.println("tw(l2p,l3p),th,lc,lh|tbb[0],tbb[1]=>"+tablewidth+"("+l2p+","+l3p+"),"+tableheight+","+lc+","+lineheight+"|"+tbb.get(0)+","+tbb.get(1));
+        l.trace("tw(l2p,l3p),th,lc,lh|tbb[0],tbb[1]=>"+tablewidth+"("+l2p+","+l3p+"),"+tableheight+","+lc+","+lineheight+"|"+tbb.get(0)+","+tbb.get(1));
         th = new JLabel[3];
         th[0] = new JLabel("Element-Titel");
         th[0].setForeground(txc);
@@ -488,7 +491,6 @@ public class PlayListManagingSkinnable extends JPanel implements MouseMotionList
             }
         }
         wrapper.repaint();
-        //System.out.println("NOP");
     }
 
 

+ 4 - 2
iZpl/src/main/java/de/nplusc/izc/iZpl/GUITests.java

@@ -7,6 +7,8 @@ package de.nplusc.izc.iZpl;
 import de.nplusc.izc.tools.baseTools.Tools;
 import java.awt.event.ActionEvent;
 import java.awt.event.InputEvent;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
@@ -14,7 +16,7 @@ import java.awt.event.InputEvent;
  */
 public class GUITests extends javax.swing.JFrame
 {
-
+    private static final Logger l = LogManager.getLogger();
     /**
      * Creates new form GUITests
      */
@@ -67,7 +69,7 @@ public class GUITests extends javax.swing.JFrame
 
     private void formKeyPressed(java.awt.event.KeyEvent evt)//GEN-FIRST:event_formKeyPressed
     {//GEN-HEADEREND:event_formKeyPressed
-       System.out.println(evt.getKeyChar());
+       l.trace(evt.getKeyChar());
        getRootPane().getGraphics();
     }//GEN-LAST:event_formKeyPressed
 

+ 77 - 64
iZpl/src/main/java/de/nplusc/izc/iZpl/Main.java

@@ -52,8 +52,14 @@ import org.apache.commons.cli.OptionBuilder;
 import org.apache.commons.cli.OptionGroup;
 import org.apache.commons.cli.Options;
 import org.apache.commons.cli.ParseException;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.core.config.LoggerConfig;
+import org.apache.logging.log4j.io.IoBuilder;
+import org.apache.logging.log4j.io.LoggerOutputStream;
 import org.yaml.snakeyaml.Yaml;
-import uk.co.caprica.vlcj.logger.Logger;
 
 /**
  *
@@ -62,6 +68,10 @@ import uk.co.caprica.vlcj.logger.Logger;
 @SuppressWarnings("CallToPrintStackTrace")
 public class Main extends javax.swing.JFrame
 {
+    private static final Logger l = LogManager.getLogger(Main.class.getName());
+    
+    private static boolean verboseMode=false;
+
 
     public static final String CONFIGPATH = IZPLApi.APPDIR + File.separator + "config" + File.separator + "config.yml";
     public static final Yaml y = new Yaml();
@@ -71,7 +81,7 @@ public class Main extends javax.swing.JFrame
     
     // public static LogStream stdout;
     private static final List<PlaybackPlugin> registeredPlayBackAdapters = new ArrayList<>();
-     private static final List<FeaturePlugin> registeredFeatures = new ArrayList<>();
+    private static final List<FeaturePlugin> registeredFeatures = new ArrayList<>();
     private static final List<UIPlugin> registeredUIs = new ArrayList<>();
     private static final List<String> detectedSkins = new ArrayList<>();
     private static boolean loadedVLC = false;
@@ -167,7 +177,7 @@ public class Main extends javax.swing.JFrame
         {
             
             processCommandLine(args);
-            setupLogging();
+            //setupLogging(); //NOP-ed for test
                     
             try
             {
@@ -175,11 +185,12 @@ public class Main extends javax.swing.JFrame
             }
             catch (IOException ex)
             {
-                System.out.println("Failed to load Icon");
+                l.warn("Failed to load Icon");
                 ex.printStackTrace();
             }
             String time = new Date(System.currentTimeMillis()).toString();
-            System.out.println("IZPL-Loader:Bootstrapped at:" + time);
+            l.log(Level.INFO, "IZPL-Loader:Bootstrapped at:{}", time);
+            Runtime.getRuntime().addShutdownHook(new Shitdown());
                         /* Set the Nimbus look and feel */
             //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
             /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
@@ -198,7 +209,8 @@ public class Main extends javax.swing.JFrame
             }
             catch (ClassNotFoundException | InstantiationException | IllegalAccessException | javax.swing.UnsupportedLookAndFeelException ex)
             {
-                java.util.logging.Logger.getLogger(Main.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
+                l.catching(Level.ERROR, ex);
+               
             }
             //</editor-fold>
             if(firstrunmode)
@@ -211,16 +223,16 @@ public class Main extends javax.swing.JFrame
                 });
             }
             
-            System.out.println("Loading the configs now");
+            l.info("Loading the configs now");
             loadConfigs();
             if(CONFIG.isStandaloneMode())
             {
                 useGUI=true;
             }
             detectSkins();
-            System.out.println("Initializing the plugins now. This may take a while");
+            l.info("Initializing the plugins now. This may take a while");
             initializePlugins();
-            System.out.println("Plugins initialized");
+            l.info("Plugins initialized");
             //TODO:  GUI-Editor zum Erzeugen von iZpl-S
 
             
@@ -235,11 +247,13 @@ public class Main extends javax.swing.JFrame
                     b.setIconImage(playListIcon);
                     b.setVisible(true);
 
-                    new Thread(() ->
+                    Thread t1 = new Thread(() ->
                     {
                         startup();
-                    }).start();
-                    new Thread(() ->
+                    });
+                    t1.setName("IZPL-Backend");
+                    t1.start();
+                    Thread t2 = new Thread(() ->
                     {
                         try
                         {
@@ -255,7 +269,9 @@ public class Main extends javax.swing.JFrame
                             ex.printStackTrace();
                         }
                         b.setVisible(false);
-                    }).start();
+                    });
+                    t2.setName("LoadCloser");
+                    t2.start();
                 }
                 else
                 {
@@ -275,7 +291,7 @@ public class Main extends javax.swing.JFrame
         }
         catch (ParseException ex)
         {
-            System.err.println(ex.getMessage());
+            l.error(ex.getMessage());
             System.exit(0);
         }
     }
@@ -386,7 +402,7 @@ public class Main extends javax.swing.JFrame
         {
             if (filemode)
             {
-                System.out.println("Error: --file & --resume  & --burn can't be specified at the same time");
+                l.error("Error: --file & --resume  & --burn can't be specified at the same time");
                 System.exit(9263);
             }
             statefile = true;
@@ -401,7 +417,7 @@ public class Main extends javax.swing.JFrame
             {
                 listmode=false;
                 featurePluginID=cl.getOptionValue("e");
-                System.out.println("Listmode disabled due to e param=\""+featurePluginID+"\"");
+                l.trace("Listmode disabled due to e param=\""+featurePluginID+"\"");
             }
                                         //handling für den ListPluginMode
             if((filemode||statefile||listmode))
@@ -411,15 +427,15 @@ public class Main extends javax.swing.JFrame
                 if(listmode)
                 {
                     featurePluginID="";
-                    System.out.println("\"\"");
+                    l.trace("\"\"");
                 }
             }
             else
             {
-                System.out.println("Error: FeaturePlugins need either a file or a statefile to resume");
+                l.error("Error: FeaturePlugins need either a file or a statefile to resume");
                 System.exit(9263);
             }
-            System.out.println("Parameter of e is now:\""+pluginParameter+"\"");
+            l.trace("Parameter of e is now:\""+pluginParameter+"\"");
         }
         
         if(cl.hasOption("x"))
@@ -436,7 +452,7 @@ public class Main extends javax.swing.JFrame
         {
             if (filemode || statefile)
             {
-                System.out.println("Error: --file & --resume  & --burn can't be specified at the same time");
+                l.error("Error: --file & --resume  & --burn can't be specified at the same time");
                 System.exit(9263);
             }
             burnDisc = true;
@@ -454,15 +470,29 @@ public class Main extends javax.swing.JFrame
         {
             if (!(filemode || statefile))
             {
-                System.out.println("Error: pregen only works on --file parameters");
+                l.error("Error: pregen only works on --file parameters");
                 System.exit(9263);
             }
             forcePregen = true;
         }
+        
+        LoggerContext cx = (LoggerContext) LogManager.getContext(false);
+        org.apache.logging.log4j.core.config.Configuration config = cx.getConfiguration();
+        LoggerConfig loggerConfig = config.getLoggerConfig(LogManager.ROOT_LOGGER_NAME); 
+        
+        //TODO HANDLE VERBOSE!
+        uk.co.caprica.vlcj.logger.Logger.setLevel(uk.co.caprica.vlcj.logger.Logger.Level.INFO);
+        uk.co.caprica.vlcj.logger.Logger.outputTo(IoBuilder.forLogger("External").setLevel(Level.TRACE).buildOutputStream());
+
         if (cl.hasOption("verbose"))
         {
-            Logger.setLevel(Logger.Level.INFO);
+            loggerConfig.setLevel(Level.TRACE);
+        }
+        else
+        {
+            loggerConfig.setLevel(Level.INFO);
         }
+        cx.updateLoggers();
         //skinPath=DEFAULT_SKIN_PATH;
         if (cl.hasOption("skin"))
         {
@@ -494,28 +524,7 @@ public class Main extends javax.swing.JFrame
     {
         "BroadCatchBlock", "TooBroadCatch"
     })
-    private static void setupLogging()
-    {
-        try
-        {
-            if (Boolean.valueOf(Preferences.userRoot().get("izpl.enableFastDebug", "false")))
-            {
-                System.out.println("lfe");
-                LogStream psOut = new LogStream(
-                        new BufferedOutputStream(new FileOutputStream(
-                                        new File("iZpl.log"))), true, System.out);
-                System.setOut(psOut);
-                LogStream psOut2 = new LogStream(
-                        new BufferedOutputStream(new FileOutputStream(
-                                        new File("iZpl-e.log"))), true, System.err);
-                System.setErr(psOut2);
-            }
-        }
-        catch (Exception e)//danke du komisher javabug
-        {
-        }
-    }
-    
+
     private static void loadConfigs()
     {
         if (new File(CONFIGPATH).exists())
@@ -567,7 +576,7 @@ public class Main extends javax.swing.JFrame
                 }
                 else
                 {
-                    System.out.println("No MediaPlayer executable set.");
+                    l.error("No MediaPlayer executable set.");
                     quickQuit();
                 }
             }
@@ -702,9 +711,11 @@ public class Main extends javax.swing.JFrame
         //pluginhandling interception: abort load if only enumerating of Features is wanted
         if(featurePluginMode && featurePluginID.equals(""))
         {
+            //NOLOG
             System.out.println("Features available:");
             for (FeaturePlugin featurePlugin : registeredFeatures) 
             {
+                //NOLOG
                 System.out.println(featurePlugin.getPluginName());
             }
             quickQuit();
@@ -764,7 +775,7 @@ public class Main extends javax.swing.JFrame
         }
         if(featurePluginMode&&selectedFeaturePlugin==null)
         {
-            System.out.println("NO valid FeaturePlugin given");
+            l.error("NO valid FeaturePlugin given");
             quickQuit();
         }
         if(!firstrunmode&&!updateInit&&!featurePluginMode)
@@ -786,12 +797,12 @@ public class Main extends javax.swing.JFrame
         String time = "";
 
         time = new Date(System.currentTimeMillis()).toString();
-        System.out.println("IZPL-Core:initialized at:" + time);
+        l.info("IZPL-Core:initialized at:" + time);
         String vlcpath = CONFIG.getMPExecutablePath();
-        System.err.println("vlcpath=" + vlcpath);
+        l.info("vlcpath=" + vlcpath);
         if(!(useGUI||featurePluginMode)&&vlcpath.equals("")&&!new File(vlcpath).exists())
         {
-            System.out.println("ungültige MediaPlayer executable");
+            l.error("ungültige MediaPlayer executable");
             quickQuit();
         }
         boolean isShittyPlayer = false;
@@ -807,11 +818,11 @@ public class Main extends javax.swing.JFrame
         try
         {
 
-            System.out.println("fpl|" + forcePregen + "|shitmp|" + isShittyPlayer + "|a1|" + file_path + "|vp|" + vlcpath);
+            l.trace("fpl|" + forcePregen + "|shitmp|" + isShittyPlayer + "|a1|" + file_path + "|vp|" + vlcpath);
             if ((filemode && !(forcePregen || isShittyPlayer))||featurePluginMode)
             {
-                System.out.println("usegui=" + useGUI);
-                System.out.println("featurePlugin=" + featurePluginMode);
+                l.trace("usegui=" + useGUI);
+                l.trace("featurePlugin=" + featurePluginMode);
                 
                 ps = new PLServer(/*"D:\\mp3\\iZpl\\rxe.izpl"/*/file_path/**/, !(useGUI||featurePluginMode));//DBG_CD3
                 if (issueDetected)
@@ -827,7 +838,7 @@ public class Main extends javax.swing.JFrame
                 }
                 else
                 {
-                    System.err.println("TheFUQ");
+                    l.trace("TheFUQ");
                 }
             }
             //http://localhost:9263/lst.m3u
@@ -853,14 +864,14 @@ public class Main extends javax.swing.JFrame
                 {
                     elemsforPreload *= 3;
                 }
-                System.err.println("elemstogen|" + elemsforPreload);
+                l.trace("elemstogen|" + elemsforPreload);
                 String wmplist = "";
                 for (int i = 0; i < elemsforPreload; i++)
                 {
                     wmplist = wmplist + "\n" + ppp.getBlock();
                 }
                 //ps.ppp.setFailRSP(wmplist);
-                System.err.println("Loop'd");
+                l.trace("Loop'd");
                 FileTK.writeFile("#extm3u+n" + wmplist, "wmpload.m3u");
             }
 
@@ -891,8 +902,8 @@ public class Main extends javax.swing.JFrame
                         loadedVLC = true;
                         do
                         {
-                            crashed = Tools.runCmdStreamable(null, System.out, false, vlcpath, "--extraintf=cad",/* qt4"--extraintf=http:logger","--verbose=2","--file-logging","--logfile=vlc-log.txt",*/ "http://localhost:9263/rcvr/lst.m3u");//http://localhost:9263/lst.m3u");
-                            System.out.println("VLCExit");
+                            crashed = Tools.runCmdStreamable(null, IoBuilder.forLogger("External").buildPrintStream(), false, vlcpath, "--extraintf=cad",/* qt4"--extraintf=http:logger","--verbose=2","--file-logging","--logfile=vlc-log.txt",*/ "http://localhost:9263/rcvr/lst.m3u");//http://localhost:9263/lst.m3u");
+                            l.trace("VLCExit");
                         }
                         while (crashed);
                     }
@@ -990,7 +1001,7 @@ public class Main extends javax.swing.JFrame
                 br.readLine();//SYM
                 tpath = br.readLine();
                 sym = true;//näxxter lauf.....
-                System.out.println("Symlink>> Dest=" + tpath);
+                l.info("Symlink>> Dest=" + tpath);
             }
             if (new String(magix).equals("!!de.nplusc.izc.iZpl.PlProcessorV2"))
             {
@@ -1012,15 +1023,15 @@ public class Main extends javax.swing.JFrame
             pp.InitializeOnPath(((PlProcessor) u).getPath());
         }
         plf.close();
-        System.out.println("usegui=" + useGUI);
+        l.trace("usegui=" + useGUI);
         ps = new PLServer(pp, !useGUI);
     }
 
     public static void checkpointedExit(boolean isShittyPlayer)
     {
-        System.err.println("<<<");
+        l.trace("<<<");
         String time = new Date(System.currentTimeMillis()).toString();
-        System.out.println("IZPL-Core:Checkpoint erstellen:" + time);
+        l.info("IZPL-Core:Checkpoint erstellen:" + time);
         //muss nen StateSaver hier reintoasten....; done...
         //statefile immer gleich genannt wie originaldatei; ermöglicht mehrere states...
         if (!(forcePregen || isShittyPlayer))
@@ -1035,9 +1046,6 @@ public class Main extends javax.swing.JFrame
     
     public static void quickQuit()
     {
-        String time2 = new Date(System.currentTimeMillis()).toString();
-        System.err.println("IZPL-Core:SHitdown at:" + time2);
-        System.out.println("IZPL-Core:SHitdown at:" + time2);
         System.exit(0);
     }
 
@@ -1097,6 +1105,11 @@ public class Main extends javax.swing.JFrame
         return playListIcon;
     }
     
+    public static boolean isVerboseMode()
+    {
+        return verboseMode;
+    }
+    
     
     /*
      * Changelog:

+ 6 - 8
iZpl/src/main/java/de/nplusc/izc/iZpl/PLServer.java

@@ -5,14 +5,12 @@
 package de.nplusc.izc.iZpl;
 
 import com.sun.net.httpserver.HttpServer;
-import de.nplusc.izc.iZpl.API.PlayListEditAPI;
 import de.nplusc.izc.tools.baseTools.Messagers;
-import de.nplusc.izc.tools.baseTools.Tools;
 import java.io.IOException;
 import java.net.BindException;
-import java.net.InetAddress;
 import java.net.InetSocketAddress;
-import java.net.Socket;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
@@ -20,7 +18,7 @@ import java.net.Socket;
  */
 public class PLServer
 {
-    
+    private static final Logger l = LogManager.getLogger();
     public static PlProcessorV2 ppp=null;
     
     public PlProcessorV2 getPlProcessorV2()
@@ -44,10 +42,10 @@ public class PLServer
             ppp.InitializeOnPath(plPath);
             if(serverOn)
             {
-                System.out.println("Serving");
+                l.info("Serving");
                 HttpServer server = HttpServer.create(new InetSocketAddress("localhost",9263), 0);//,InetAddress.getByName("localhost"));
                 server.createContext("/", ppp);//nimmt jeden beliebigen namen an
-                server.createContext("/reload",new ReloadMgrT(ppp));
+                server.createContext("/reload",new ReloadMgr(ppp));
                 server.createContext("/rcvr",new ReInitializer());
                 server.createContext("/edit",new EditorLoader());
                 server.setExecutor(null); // creates a default executor
@@ -81,7 +79,7 @@ public class PLServer
             {
                 HttpServer server = HttpServer.create(new InetSocketAddress("localhost",9263), 0);//,InetAddress.getByName("localhost"));
                 server.createContext("/", pp);//nimmt jeden beliebigen namen an
-                server.createContext("/reload",new ReloadMgrT(ppp));
+                server.createContext("/reload",new ReloadMgr(ppp));
                 server.createContext("/rcvr",new ReInitializer());
                 server.createContext("/edit",new EditorLoader());
                 server.setExecutor(null); // creates a default executor

+ 23 - 20
iZpl/src/main/java/de/nplusc/izc/iZpl/PlProcessor.java

@@ -8,6 +8,7 @@ import de.nplusc.izc.iZpl.Utils.PLReader;
 import com.sun.net.httpserver.Headers;
 import com.sun.net.httpserver.HttpExchange;
 import com.sun.net.httpserver.HttpHandler;
+import de.nplusc.izc.iZpl.API.IZPLApi;
 import de.nplusc.izc.tools.IOtools.FileTK;
 import java.io.IOException;
 import java.io.OutputStream;
@@ -16,6 +17,8 @@ import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 import java.util.prefs.Preferences;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.yaml.snakeyaml.Yaml;
 
 /**
@@ -24,6 +27,7 @@ import org.yaml.snakeyaml.Yaml;
  */
 public class PlProcessor implements HttpHandler 
 {
+    private static final Logger l = LogManager.getLogger();
     private ArrayList<String[]> pool1=new ArrayList<>(),pool2=new ArrayList<>();//wird verschoben so dass jedes Element drankommt und dann erst von vorne begonnen wird
     private int poolSize=0;
     private int unusedElems=0;
@@ -121,7 +125,7 @@ public class PlProcessor implements HttpHandler
         pool1=new ArrayList<>();
         if(!reload)
         {
-            System.out.println("Das solte nur bei Init auftauchen");
+            l.trace("Das solte nur bei Init auftauchen");
             pool2=new ArrayList<>();//wichtig bei reload
         }   
         List<String[]> list = PLReader.readList(path);
@@ -142,10 +146,10 @@ public class PlProcessor implements HttpHandler
         if(reload)
         {
             
-            System.out.println("StartingReloadProcess");
+            l.info("StartingReloadProcess");
             try
             {
-                if (Boolean.valueOf(Preferences.userRoot().get("izpl.enableFastDebug", "false")))
+                if (IZPLApi.createDebugDumps())
                 {
                     FileTK.writeFile(yp.dump(pool2), "izpl-viewme.yDUMP");
                 }
@@ -167,7 +171,7 @@ public class PlProcessor implements HttpHandler
                         
                     }
                      
-                     System.out.println(idx);
+                     l.trace(idx);
                      yp.dump(el);
                      if(idx==-1)
                      {
@@ -184,18 +188,18 @@ public class PlProcessor implements HttpHandler
                 e.printStackTrace();
             }
         }
-        System.out.println("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
-        System.out.println("<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>");
-        System.out.println("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
-        System.out.println("ArrayResult of the Internal List");
-        System.out.println("\n"+yp.dump(pool1));
-        System.out.println("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
-        System.out.println("List2; nur bei Reload wixtix");
-        System.out.println("\n"+yp.dump(pool2));
-        System.out.println("ENd of Block:MasterbLOCK");
-        System.out.println("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
-        System.out.println("<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>");
-        System.out.println("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
+        l.trace("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
+        l.trace("<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>");
+        l.trace("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
+        l.trace("ArrayResult of the Internal List");
+        l.trace("\n"+yp.dump(pool1));
+        l.trace("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
+        l.trace("List2; nur bei Reload wixtix");
+        l.trace("\n"+yp.dump(pool2));
+        l.trace("ENd of Block:MasterbLOCK");
+        l.trace("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
+        l.trace("<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>");
+        l.trace("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
         if(!reload)
         {
             poolSize = pool1.size();
@@ -215,8 +219,7 @@ public class PlProcessor implements HttpHandler
     public void handle(HttpExchange t) throws IOException 
     {
         String time = new Date(System.currentTimeMillis()).toString();
-        System.out.println("IZPL-HAndler:Received Request at:"+time);
-        System.err.println("IZPL-HAndler:Received Request at:"+time);
+        l.info("IZPL-HAndler:Received Request at:"+time);
          String response = "Nixda mit glotzen...\n Hier gibts keine Filezzzzzzz, also raus und zwar dalli";
        /* if(!t.getRemoteAddress().getHostName().equalsIgnoreCase("localhost"))
         {
@@ -231,7 +234,7 @@ public class PlProcessor implements HttpHandler
         String tr = getBlock();
         response+=tr;
         response+="\nhttp://localhost:9263/lst.m3u";//:9263/lst.m3u";//continueCode //Exit wird durch unblock woanderst realisiert
-        System.out.println("IZPL-HAndler:Responded with:"+response);
+        l.info("IZPL-HAndler:Responded with:"+response);
         t.sendResponseHeaders(200, response.length());
         Headers responseHeaders = t.getResponseHeaders();
         responseHeaders.set("Content-Type", "audio/x-mpegurl");
@@ -241,7 +244,7 @@ public class PlProcessor implements HttpHandler
         failRSP=response;
         os.close();
         time = new Date(System.currentTimeMillis()).toString();
-        System.out.println("IZPL-HAndler:Answered Request at:"+time);
+        l.info("IZPL-HAndler:Answered Request at:"+time);
     }
     public String getBlock()
     {

+ 16 - 14
iZpl/src/main/java/de/nplusc/izc/iZpl/PlProcessorV2.java

@@ -16,6 +16,8 @@ import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Set;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.yaml.snakeyaml.Yaml;
 
 /**
@@ -24,6 +26,7 @@ import org.yaml.snakeyaml.Yaml;
  */
 public class PlProcessorV2 implements HttpHandler 
 {
+    private static final Logger l = LogManager.getLogger();
     private HashMap<String,PlayListItem> pool;
     private String path;
     private List<String> availEtrs;
@@ -125,14 +128,14 @@ public class PlProcessorV2 implements HttpHandler
             }
             pool = poolTemp;
         }
-        System.out.println("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
-        System.out.println("<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>");
-        System.out.println("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
-        System.out.println("ArrayResult of the Internal List");
-        System.out.println("\n"+yp.dump(pool));
-        System.out.println("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
-        System.out.println("<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>");
-        System.out.println("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
+        l.trace("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
+        l.trace("<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>");
+        l.trace("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
+        l.trace("ArrayResult of the Internal List");
+        l.trace("\n"+yp.dump(pool));
+        l.trace("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
+        l.trace("<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>");
+        l.trace("><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><");
         
         //pregenerieren von Cache...
         rebuildCache();
@@ -166,8 +169,7 @@ public class PlProcessorV2 implements HttpHandler
     public void handle(HttpExchange t) throws IOException 
     {
         String time = new Date(System.currentTimeMillis()).toString();
-        System.out.println("IZPL-HAndler:Received Request at:"+time);
-        System.err.println("IZPL-HAndler:Received Request at:"+time);
+        l.info("IZPL-HAndler:Received Request at:"+time);
          String response = "Nixda mit glotzen...\n Hier gibts keine Filezzzzzzz, also raus und zwar dalli";
        /* if(!t.getRemoteAddress().getHostName().equalsIgnoreCase("localhost"))
         {
@@ -182,7 +184,7 @@ public class PlProcessorV2 implements HttpHandler
         String tr = getBlock();
         response+=tr;
         response+="\nhttp://localhost:9263/lst.m3u";//:9263/lst.m3u";//continueCode //Exit wird durch unblock woanderst realisiert
-        System.out.println("IZPL-HAndler:Responded with:"+response);
+        l.info("IZPL-HAndler:Responded with:"+response);
         t.sendResponseHeaders(200, response.length());
         Headers responseHeaders = t.getResponseHeaders();
         responseHeaders.set("Content-Type", "audio/x-mpegurl");
@@ -192,16 +194,16 @@ public class PlProcessorV2 implements HttpHandler
         failRSP=response;
         os.close();
         time = new Date(System.currentTimeMillis()).toString();
-        System.out.println("IZPL-HAndler:Answered Request at:"+time);
+        l.info("IZPL-HAndler:Answered Request at:"+time);
     }
     public boolean resetted;
     public PlayListItem getBlockRaw()
     {
-        System.out.println("Forced=\""+forced+"\"");
+        l.info("Forced=\""+forced+"\"");
         PlayListItem response = null;
         if(forced==null)
         {
-            System.out.println("Normal handling");
+            l.info("Normal handling");
             double rm = Math.random();//Zufallsselektor
             int selection = (int) (rm*availEtrs.size());
             PlayListItem pli = pool.get(availEtrs.get(selection));

+ 3 - 0
iZpl/src/main/java/de/nplusc/izc/iZpl/ReInitializer.java

@@ -9,6 +9,8 @@ import com.sun.net.httpserver.HttpExchange;
 import com.sun.net.httpserver.HttpHandler;
 import java.io.IOException;
 import java.io.OutputStream;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
@@ -16,6 +18,7 @@ import java.io.OutputStream;
  */
 public class ReInitializer implements HttpHandler
 {
+    private static final Logger l = LogManager.getLogger();
     @Override
     public void handle(HttpExchange t) throws IOException
     {

+ 5 - 2
iZpl/src/main/java/de/nplusc/izc/iZpl/ReloadMgrT.java → iZpl/src/main/java/de/nplusc/izc/iZpl/ReloadMgr.java

@@ -9,15 +9,18 @@ import com.sun.net.httpserver.HttpExchange;
 import com.sun.net.httpserver.HttpHandler;
 import java.io.IOException;
 import java.io.OutputStream;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
  * @author LH
  */
-public class ReloadMgrT implements HttpHandler
+public class ReloadMgr implements HttpHandler
 {
+    private static final Logger l = LogManager.getLogger();
     PlProcessorV2 pp;
-    public ReloadMgrT(PlProcessorV2 p)
+    public ReloadMgr(PlProcessorV2 p)
     {
      pp=p;   
     }

+ 31 - 0
iZpl/src/main/java/de/nplusc/izc/iZpl/Shitdown.java

@@ -0,0 +1,31 @@
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+package de.nplusc.izc.iZpl;
+
+import java.util.Date;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+
+/**
+ *
+ * @author iZc <nplusc.de>
+ */
+public class Shitdown extends Thread
+{
+    public Shitdown()
+    {
+        setName("IZPL-Shitdown");
+    }
+    private static final Logger l = LogManager.getLogger(Main.class.getName());
+    @Override
+    public void run()
+    {
+        String time2 = new Date(System.currentTimeMillis()).toString();
+        l.info("IZPL-Core:SHitdown at:" + time2); //Typo has to stay, in-joke!
+    }
+    
+}

+ 7 - 5
iZpl/src/main/java/de/nplusc/izc/iZpl/Utils/BurnMe.java

@@ -28,6 +28,8 @@ import javax.sound.sampled.UnsupportedAudioFileException;
 import javax.swing.JFrame;
 import javax.swing.JProgressBar;
 import javax.swing.JTextArea;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
@@ -35,7 +37,7 @@ import javax.swing.JTextArea;
  */
 public class BurnMe
 {
-    
+    private static final Logger l = LogManager.getLogger();
     private static String burnprogP;
     private static String ffmpegpath;
     private static String devideID;
@@ -73,7 +75,7 @@ public class BurnMe
         {
             JTextArea t = new JTextArea();
             Tools.runSingleCmd(true, true, true,true,t, cdrpath+"\\cdrecord", "-scanbus");
-            System.out.println(t.getText());
+            l.trace(t.getText());
             String[] scsitemp = t.getText().split("\\n");
             ArrayList<String> validEntries = new ArrayList<>();
             for (int i = 0; i < scsitemp.length; i++)
@@ -115,7 +117,7 @@ public class BurnMe
                     String[] dataset = new String[3];
                     dataset[0] = path;
                     File audio = new File(path);
-                    System.err.println(path);
+                    l.trace(path);
                     switch (ext)
                     {
                         case "mp3"://falltrhu intended
@@ -149,7 +151,7 @@ public class BurnMe
                     dataset[2] = lengthInSec+"";
                     if(!(lengthInSec==0))
                         rawList.add(dataset);
-                    System.out.println(lengthInSec);
+                    l.trace(lengthInSec);
                 }
                 catch (UnsupportedAudioFileException | IOException ex)
                 {
@@ -239,7 +241,7 @@ public class BurnMe
                             t2+=" "+string;
                         }
                         
-                        System.out.println(t2);
+                        l.trace(t2);
                         //Tools.runSingleCmd(true, true, true, true, logg,temp);
                         //FileTK.verzeichnisKillen(new File(Tools.processEnvVarsinLine("%temp%\\izpl\\burncache\\")));
                     }

+ 44 - 41
iZpl/src/main/java/de/nplusc/izc/iZpl/Utils/PLReader.java

@@ -15,6 +15,8 @@ import java.util.Arrays;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Set;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import org.yaml.snakeyaml.Yaml;
 
 /**
@@ -23,6 +25,9 @@ import org.yaml.snakeyaml.Yaml;
  */
 public class PLReader
 {
+    
+    private static final Logger l = LogManager.getLogger();
+    
     //Formatdefinition //basiert aufne verpackte #extm3u
     /*
     * #EXTM3U
@@ -71,7 +76,7 @@ public class PLReader
             if(!playListRaw[1].equals("#IZPL"))
             {
                 String[] block = new String[]{"","",""};
-                Tools.DebugHelperPrint(">>EnterPlainPL",true,"izpl.enableFastDebug");
+                l.trace(">>EnterPlainPL");
                 for (int i = 1; i < playListRaw.length-1; i++)
                 {
                     String line = playListRaw[i];
@@ -98,7 +103,7 @@ public class PLReader
             }
             else
             {
-                Tools.DebugHelperPrint(">>EnteriIZinkedPL",true,"izpl.enableFastDebug");
+                l.trace(">>EnteriIZinkedPL");
                 int bstart=0;
                 int bl=0;
                 String[] block  = new String[3];
@@ -118,7 +123,7 @@ public class PLReader
                         if(bl>0)//IN_BLOCK
                         {
                             int it=i-bstart;
-                            Tools.DebugHelperPrint(it+"",true,"izpl.enableFileFormatDebug");
+                            l.trace(it+"");
 
                             block[it]=line;
                             if(bstart+bl-1==i)
@@ -154,15 +159,14 @@ public class PLReader
         int sublistsFound = 0;
         for (String[] blox : BloxBuffr)//0 ist die extinf;1 die #IZPL-Zone 2 der filename
                 {
-            Tools.DebugHelperPrint("|>"+blox[0]+"\n"+blox[1]+"\n"+blox[2]+"\n",true,"izpl.enableFileFormatDebug");
+            l.trace("|>"+blox[0]+"\n"+blox[1]+"\n"+blox[2]+"\n");
             String[] metadata = blox[1].substring(6).split("\\|");
             if(metadata[0].equalsIgnoreCase("INCLUDE"))//muss noch nen Detektor für NoExpand einbauen|erledigt
             {
-                System.err.println();
-                Tools.DebugHelperPrint("<<< Include",true,"izpl.enableFastDebug");
+                l.trace("<<< Include");
                 if(metadata[2].equalsIgnoreCase("NOEXPAND"))
                 {
-                    Tools.DebugHelperPrint("<°())))<Include",true,"izpl.enableFastDebug");
+                    l.trace("<°())))<Include");
                     int priomult=Integer.valueOf(metadata[1].trim());
                     if(priorityLess)
                         priomult=1;
@@ -175,7 +179,7 @@ public class PLReader
                         {
                             lfid=FileTK.getFilePath(path)+"\\"+lfid;
                         }
-                        Tools.DebugHelperPrint(lfid,true,"izpl.enableFastDebug");
+                        l.trace(lfid);
                         List<String[]> subList = readList(lfid,rd+1,priorityLess);
                         Main.gotAIssue(false);//überdeckt Sublisten-Errors bei Rekursion, da dann ja etwas zurückkommt
                         List<String> target = new ArrayList<>();
@@ -192,10 +196,10 @@ public class PLReader
                 }
                 else
                 {
-                    Tools.DebugHelperPrint(">(((()°> Include",true,"izpl.enableFastDebug");
+                    l.trace(">(((()°> Include");
                     int priomult=Integer.valueOf(metadata[1].trim());
                     if(priorityLess)
-                    priomult=1;
+                        priomult=1;
                     int runs = 0;
                     while(runs<priomult)
                     {
@@ -205,7 +209,7 @@ public class PLReader
                         {
                             lfid=FileTK.getFilePath(path)+"\\"+lfid;
                         }
-                        Tools.DebugHelperPrint(lfid,true,"izpl.enableFastDebug");
+                        l.trace(lfid);
                         List<String[]> subList = readList(lfid,rd+1,priorityLess);
                         Main.gotAIssue(false);//überdeckt Sublisten-Errors bei Rekursion, da dann ja etwas zurückkommt
                         String[] group0 = subList.get(0);
@@ -235,7 +239,7 @@ public class PLReader
                 String entry = blox[0]+"\n"+blox[2];
                 for (int i = 0; i < priomult; i++)//setzt die Priorität um durch mehrfacheintragung.....
                 {
-                    Tools.DebugHelperPrint(">>>"+entry,true,"izpl.enableFileFormatDebug");
+                    l.trace(">>>"+entry);
                     ge.add(entry);
                 }
             }
@@ -260,14 +264,14 @@ public class PLReader
             }
             mergedLists.add(gtmp);
         }
-        Tools.DebugHelperPrint("NOP",true,"izpl.enableFastDebug");
-        System.out.println("ArrayResult of reading in:"+path);
-        System.out.println("Depth:"+rd);
-        System.out.println("\n"+yp.dump(mergedLists));//macht das log leichter parsbar in NPP mit Ansicht=yaml
-        System.out.println("ENd of Block:"+path);
-        System.out.println("###########################################################################");
-        System.out.println("---------------------------------------------------------------------------");
-        System.out.println("###########################################################################");
+        l.trace("NOP");
+        l.trace("ArrayResult of reading in:"+path);
+        l.trace("Depth:"+rd);
+        l.trace("\n"+yp.dump(mergedLists));//macht das log leichter parsbar in NPP mit Ansicht=yaml
+        l.trace("ENd of Block:"+path);
+        l.trace("###########################################################################");
+        l.trace("---------------------------------------------------------------------------");
+        l.trace("###########################################################################");
 
         return mergedLists;
     }
@@ -300,7 +304,7 @@ public class PLReader
                 String[] metadata=elements[2].substring(6).split("\\|");
                 if(metadata[0].equalsIgnoreCase("include"))
                 {
-                    System.out.println("incl;"+elements[0]);
+                    l.trace("incl;"+elements[0]);
                     retval.addAll(readListAlternativeNoexpandAux(elements[0], rd-1));
                 }
                 else
@@ -309,14 +313,13 @@ public class PLReader
                 }
             }
         }
-        
-        System.out.println("ArrayResult of reading in as NoExpa:"+path);
-        System.out.println("Depth:"+rd);
-        System.out.println("\n"+yp.dump(retval));//macht das log leichter parsbar in NPP mit Ansicht=yaml
-        System.out.println("ENd of Block:"+path);
-        System.out.println("###########################################################################");
-        System.out.println("---------------------------------------------------------------------------");
-        System.out.println("###########################################################################");
+         l.trace("ArrayResult of reading in as NoExpa:"+path);
+         l.trace("Depth:"+rd);
+         l.trace("\n"+yp.dump(retval));//macht das log leichter parsbar in NPP mit Ansicht=yaml
+         l.trace("ENd of Block:"+path);
+         l.trace("###########################################################################");
+         l.trace("---------------------------------------------------------------------------");
+         l.trace("###########################################################################");
         
         return retval;
     }
@@ -347,7 +350,7 @@ public class PLReader
             // dann datei ummodeln...
             for (int i = 2; i < playListRaw.length; i++)
             {
-                System.out.println(i);
+                l.trace(i);
                 String line = playListRaw[i];
                 if(line!=null)
                 {
@@ -396,9 +399,9 @@ public class PLReader
         }
         
         List<String[]> tempo = readListAlternativeAuxPrepare(path);
-        System.out.println("##########################Raw List input##############################################");
-        System.out.println(yp.dump(tempo));
-        System.out.println("#####################End Raw List input###############################################");
+        l.trace("##########################Raw List input##############################################");
+        l.trace(yp.dump(tempo));
+        l.trace("#####################End Raw List input###############################################");
         
         if(tempo!=null)
         {
@@ -422,7 +425,7 @@ public class PLReader
                 String[] metadata=elements[2].substring(6).split("\\|");
                 if(metadata[0].equalsIgnoreCase("include"))
                 {
-                    System.out.println("Includebranch");                    
+                    l.trace("Includebranch");                    
                     if(metadata[2].equalsIgnoreCase("EXPAND"))
                     {
                         if(!unexpandedIncludes)
@@ -532,13 +535,13 @@ public class PLReader
             }
         }
         
-        System.out.println("ArrayResult of reading in:"+path);
-        System.out.println("Depth:"+rd);
-        System.out.println("\n"+yp.dump(retval));//macht das log leichter parsbar in NPP mit Ansicht=yaml
-        System.out.println("ENd of Block:"+path);
-        System.out.println("###########################################################################");
-        System.out.println("---------------------------------------------------------------------------");
-        System.out.println("###########################################################################");
+        l.trace("ArrayResult of reading in:"+path);
+        l.trace("Depth:"+rd);
+        l.trace("\n"+yp.dump(retval));//macht das log leichter parsbar in NPP mit Ansicht=yaml
+        l.trace("ENd of Block:"+path);
+        l.trace("###########################################################################");
+        l.trace("---------------------------------------------------------------------------");
+        l.trace("###########################################################################");
         
         return retval;
     }

+ 37 - 5
iZpl/src/main/java/de/nplusc/izc/iZpl/Utils/VlcInterface.java

@@ -19,9 +19,11 @@ import java.awt.Image;
 import java.io.File;
 import java.io.IOException;
 import java.util.Arrays;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 import uk.co.caprica.vlcj.binding.LibVlc;
 import uk.co.caprica.vlcj.binding.internal.libvlc_media_t;
-import uk.co.caprica.vlcj.logger.Logger;
+//import uk.co.caprica.vlcj.logger.Logger;
 import uk.co.caprica.vlcj.player.MediaPlayer;
 import uk.co.caprica.vlcj.player.MediaPlayerEventListener;
 import uk.co.caprica.vlcj.player.MediaPlayerFactory;
@@ -33,7 +35,7 @@ import uk.co.caprica.vlcj.runtime.RuntimeUtil;
  */
 public class VlcInterface implements PlaybackPlugin , MediaPlayerEventListener
 {
-    
+    private static final Logger l = LogManager.getLogger();
     //private static VlcInterface instance=null;
     private InternalInterface adapter=null;
     private PlayListItem currentTrack;
@@ -71,7 +73,7 @@ public class VlcInterface implements PlaybackPlugin , MediaPlayerEventListener
     private void initializeInterface(String vlcpath, boolean embedded)
     {
         String[] osmetadata = Detectors.getSystemClassification();
-        System.out.println(Arrays.toString(osmetadata));
+        l.info("Os-data:"+Arrays.toString(osmetadata));
         if (osmetadata[0].equals("windows"))
         {
             
@@ -105,7 +107,7 @@ public class VlcInterface implements PlaybackPlugin , MediaPlayerEventListener
     public void connectToPlayer()
     {
         selectedUIPlugin=IZPLApi.getUIPlugin();
-        System.out.println("Connected the player");
+        l.info("Connected the player");
         if(adapter==null)
             adapter=new VlcJIterface(vlcpath,this);
     }
@@ -242,7 +244,7 @@ public class VlcInterface implements PlaybackPlugin , MediaPlayerEventListener
             mp.parseMedia();
             //IZplGUIBackend.setTitle(mp.getMediaMeta().getTitle());
 
-            Logger.info("{}", mp.getMediaMeta());
+            l.info("{}", mp.getMediaMeta());
             selectedUIPlugin.setTrackLength((int) Math.ceil(mp.getMediaMeta().getLength()/1000.0f));
             Image img = mp.getMediaMeta().getArtwork();
             if(img !=null)
@@ -401,6 +403,36 @@ public class VlcInterface implements PlaybackPlugin , MediaPlayerEventListener
     {
     }
 
+    @Override
+    public void scrambledChanged(MediaPlayer mp, int i)
+    {
+    
+    }
+
+    @Override
+    public void elementaryStreamAdded(MediaPlayer mp, int i, int i1)
+    {
+   
+    }
+
+    @Override
+    public void elementaryStreamDeleted(MediaPlayer mp, int i, int i1)
+    {
+        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
+    }
+
+    @Override
+    public void elementaryStreamSelected(MediaPlayer mp, int i, int i1)
+    {
+        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
+    }
+
+    @Override
+    public void mediaSubItemTreeAdded(MediaPlayer mp, libvlc_media_t l)
+    {
+        throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
+    }
+
 
     
     

+ 9 - 6
iZpl/src/main/java/de/nplusc/izc/iZpl/extensions/AudioSurfCore.java

@@ -16,6 +16,9 @@ import java.util.List;
 import java.util.prefs.Preferences;
 import javax.swing.JFrame;
 import javax.swing.JTextArea;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.io.IoBuilder;
 //import org.jawin.donated.win32.MiscellaneousConstants;
 //import org.jawin.donated.win32.User32;
 //import org.jawin.donated.win32.W32Process;
@@ -28,7 +31,7 @@ import javax.swing.JTextArea;
  */
 public class AudioSurfCore
 {
-
+    private static final Logger l = LogManager.getLogger();
     private static HWND AudioSurf;
     private static JFrame target;
 
@@ -55,12 +58,12 @@ public class AudioSurfCore
                         Preferences.userRoot().put("izpl.audioSurfPath", targetDirectory);
                     }
                     String tdir = Preferences.userRoot().get("izpl.audioSurfPath", "...");
-                    System.out.println(tdir);
+                    l.trace(tdir);
                     //HAXTST
                     tdir = FileTK.getFilePath(tdir);
                     //tdir+="\\engine";
                     String texe = tdir + "\\Audiosurf.exe";
-                    Tools.runSingleCmd(true, true, false, true, new JTextArea(), System.out, tdir, true, texe);
+                    Tools.runSingleCmd(true, true, false, true, new JTextArea(), IoBuilder.forLogger("External").buildPrintStream(), tdir, true, texe);
                 }
             }).start();
             try
@@ -94,7 +97,7 @@ public class AudioSurfCore
                     MiscellaneousConstants.NULL); // creation parameters*/
 
             getAudioSurfWindow();
-            System.out.println(AudioSurf);
+            l.trace(AudioSurf);
             //System.out.println(AudioSurf.getPointer().getLong(0));
             startSong("D:\\mp3\\assorted Earworms\\22 - StarDisc - Fernando Pepe.flac", "eraser");
     }
@@ -104,12 +107,12 @@ public class AudioSurfCore
 
         String message_i = "ascommand quickstartqueuecommand ascommand playsongmono"/*+charaname*/ + " " + songPath;
         WString message = new WString(message_i);
-        System.out.println(message_i);
+        l.trace(message_i);
         WM_COPYDATA.ByReference data = new WM_COPYDATA.ByReference();
         data.dwData = 1;
         data.lpData = message;
         data.cbData = (message.length() * 2) + 2;
-        System.out.println(User32Extended.INSTANCE.SendMessageW(AudioSurf, 74, (int)Native.getWindowID(target), data));
+        l.trace(User32Extended.INSTANCE.SendMessageW(AudioSurf, 74, (int)Native.getWindowID(target), data));
     }
 
     //repeat: ascommand playsongcurrentcharacter c:\my music\nin\the way out is through.mp3

+ 4 - 1
iZpl/src/main/java/de/nplusc/izc/iZpl/extensions/AudioSurfManager.java

@@ -4,13 +4,16 @@
  */
 package de.nplusc.izc.iZpl.extensions;
 
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+
 /**
  *
  * @author LH
  */
 public class AudioSurfManager extends javax.swing.JFrame
 {
-
+    private static final Logger l = LogManager.getLogger();
     /**
      * Creates new form AudioSurfManager
      */

+ 3 - 1
iZpl/src/main/java/de/nplusc/izc/iZpl/extensions/BurnLiistManager.java

@@ -8,6 +8,8 @@ import de.nplusc.izc.iZpl.Utils.BurnMe;
 import java.util.ArrayList;
 import java.util.List;
 import javax.swing.table.DefaultTableModel;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
@@ -16,7 +18,7 @@ import javax.swing.table.DefaultTableModel;
 public class BurnLiistManager extends javax.swing.JFrame
 {
     
-    
+    private static final Logger l = LogManager.getLogger();
     List<String[]> baseList;
     /**
      * Creates new form BurnLiistManager

+ 18 - 0
iZpl/src/main/resources/log4j2.xml

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Configuration status="WARN">
+    <Appenders>
+        <Console name="Console" target="SYSTEM_OUT">
+            <PatternLayout pattern="%highlight{%d{HH:mm:ss.SSS} [%t] %-5level %l - %msg%n}{FATAL=red, ERROR=red, WARN=yellow, INFO=green, DEBUG=black, TRACE=blue}"/>
+            
+        </Console>
+        <File name="logfile" fileName="izpl.log">
+           <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %l - %msg%n"/>
+        </File>   
+    </Appenders>
+    <Loggers>
+    <Root level="info">
+        <AppenderRef ref="Console"/>
+        <AppenderRef ref="logfile"/>
+    </Root>
+    </Loggers>
+</Configuration>

+ 1 - 0
iZpl/tags/0.1.5.3/src/de/nplusc/izc/iZpl/Builder.java

@@ -21,6 +21,7 @@ import javax.swing.JFrame;
 import javax.swing.JTextArea;
 import org.yaml.snakeyaml.Yaml;
 
+
 /**
  *
  * @author LH

+ 39 - 32
iZplPlugins/GameRadio/src/main/java/de/nplusc/izc/izpl/plugins/gameradio/RadioManager.java

@@ -6,15 +6,16 @@
 
 package de.nplusc.izc.izpl.plugins.gameradio;
 
-import com.sun.glass.ui.Cursor;
 import de.nplusc.izc.iZpl.API.FeaturePlugin;
 import de.nplusc.izc.iZpl.API.IZPLApi;
-import de.nplusc.izc.iZpl.API.MultiPlayListItem;
 import de.nplusc.izc.iZpl.API.PlayListItem;
 import de.nplusc.izc.iZpl.API.SinglePlayListItem;
 import de.nplusc.izc.tools.IOtools.FileTK;
 import java.io.File;
 import java.util.Arrays;
+import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 /**
  *
@@ -22,10 +23,14 @@ import java.util.Arrays;
  */
 public class RadioManager implements FeaturePlugin
 {
-
+    
+    private static final Logger l = LogManager.getLogger(RadioManager.class.getName());
+    
+    
+    
     //header:rbSym:rbCopy:rbInter:Stations:Stationsasfile:Tracks:cxMergeTracks:StationBaseName:RadioPath
         //radio:B:B:B:I:B:I:B:S:P
-    
+    private boolean GUIOpen=false;
     private enum Mode{
         SYMLINKED,COPY,INTERACTIVE;
     }
@@ -38,10 +43,10 @@ public class RadioManager implements FeaturePlugin
             String[] cstring = param.split(":");
             if(cstring.length<10)//patsh can cause that more than 10 :s appear, that error is handled later
             {
-                System.err.println("DERP the string was invalid");
-                System.err.println("Not enough Sections");
+                l.error("DERP the string was invalid");
+                l.error("Not enough Sections");
             }
-            System.out.println(Arrays.toString(cstring));
+            l.trace(Arrays.toString(cstring));
             Mode m=null;
             String mode=param.substring(6,11);
             switch(mode)
@@ -56,23 +61,23 @@ public class RadioManager implements FeaturePlugin
                     m=Mode.INTERACTIVE;
                     break;
                 default:
-                    System.err.println("DERP the string was invalid");
-                    System.err.println("Invalid Mode block");
+                    l.error("DERP the string was invalid");
+                    l.error("Invalid Mode block");
                     IZPLApi.quickQuitWithoutSaving();
             }
             int stations=0;
             int tracks=0;
             try
             {
-                System.err.println(cstring[4]);
-                System.err.println(cstring[6]);
+                l.trace(cstring[4]);
+                l.trace(cstring[6]);
                 stations=Integer.valueOf(cstring[4]);
                 tracks=Integer.valueOf(cstring[6]);
             }
             catch(NumberFormatException x)
             {
-                System.err.println("DERP the string was invalid");
-                System.err.println("Numeric Literals are wrong");
+                l.error("DERP the string was invalid");
+                l.error("Numeric Literals are wrong");
                 IZPLApi.quickQuitWithoutSaving();
             }
             boolean fileStations=cstring[5].equals("T");
@@ -82,12 +87,12 @@ public class RadioManager implements FeaturePlugin
             
             String baseDir = param.substring((cstring[0]+":"+cstring[1]+":"+cstring[2]+":"+cstring[3]+
                     cstring[4]+":"+cstring[5]+":"+cstring[6]+":"+cstring[7]+":"+cstring[8]+":").length()+1);
-            System.out.println(baseDir);
+            l.trace(baseDir);
             if(!(new File(baseDir).exists()))
             {
                 
-                System.err.println("DERP the string was invalid");
-                System.err.println("Basedir must be valid");
+                l.error("DERP the string was invalid");
+                l.error("Basedir must be valid");
                 IZPLApi.quickQuitWithoutSaving();
             }
             //end simple checks
@@ -95,39 +100,36 @@ public class RadioManager implements FeaturePlugin
             
             if(fileStations&&!mergeTracks)
             {
-                System.err.println("DERP the string was invalid");
-                System.err.println("fileStations requires merged Tracks");
+                l.error("DERP the string was invalid");
+                l.error("fileStations requires merged Tracks");
                 IZPLApi.quickQuitWithoutSaving();
             }
             
             if(m==Mode.SYMLINKED&&mergeTracks)
             {
-                System.err.println("DERP the string was invalid");
-                System.err.println("YOu cannot symlink and merge tracks at once");
+                l.error("DERP the string was invalid");
+                l.error("YOu cannot symlink and merge tracks at once");
                 IZPLApi.quickQuitWithoutSaving();
             }
             
             if(stations>65535)
             {
-                System.err.println("DERP the string was invalid");
-                System.err.println("Stations can be at 65535 maximum due to Filesystem constraints");
+                l.error("DERP the string was invalid");
+                l.error("Stations can be at 65535 maximum due to Filesystem constraints");
                 IZPLApi.quickQuitWithoutSaving();
             }
             if((tracks>65535&&!mergeTracks))
             {
-                System.err.println("DERP the string was invalid");
-                System.err.println("more than 65535 tracks require merged Tracks");
+                l.error("DERP the string was invalid");
+                l.error("more than 65535 tracks require merged Tracks");
                 IZPLApi.quickQuitWithoutSaving();
             }
             
-            System.out.println("Selected Settings:\n"
-                    + "Mode: "+m+"\n"
-                    + "Amount of tracks: "+tracks+"\n"
-                    + "Tracks merged: "+mergeTracks+"\n"
-                    + "Amount of stations: "+stations+"\n"
-                    + "Stations as file: "+fileStations+"\n"
-                    + "Station name base: "+stationBase+"\n"
-                    + "Base directory: "+baseDir);
+            l.log(Level.TRACE,"Selected Settings:\n"+"Mode: {}"+"\n"
+                    + "Amount of tracks: {}"+"\n"+"Tracks merged: {}"
+                    + "\n"+"Amount of stations: {}"+"\n"
+                    + "Stations as file: {}"+"\n"+"Station name base: {}"
+                    + "\n"+"Base directory: {}", new Object[]{m, tracks, mergeTracks, stations, fileStations, stationBase, baseDir});
             if(m==Mode.COPY)
             {
                 if(!mergeTracks)
@@ -148,6 +150,10 @@ public class RadioManager implements FeaturePlugin
                     throw new UnsupportedOperationException("Dont do that!");
                 }
             }
+            if(!GUIOpen)
+            {
+                IZPLApi.quickQuitWithoutSaving();
+            }
         }
         else
         {
@@ -164,6 +170,7 @@ public class RadioManager implements FeaturePlugin
     @Override
     public void openConfigureScreen()
     {
+        GUIOpen=true;
         new RadioConfig(this).setVisible(true);
     }