From e54978388be027d0c6f94dd55a0475dba3572f48 Mon Sep 17 00:00:00 2001
From: Robert Goldmann <deadlocker@gmx.de>
Date: Fri, 26 May 2017 18:09:43 +0200
Subject: [PATCH] Fixed #12 - use logger

---
 src/charts/ChartGUIController.java            | 35 ++++++++++---------
 src/core/Exporter.java                        |  3 +-
 src/core/Importer.java                        |  7 ++--
 src/userInterface/InsertTimeController.java   |  5 +--
 src/userInterface/Main.java                   | 25 ++++++++++++-
 .../UserInterfaceController.java              | 19 +++++-----
 6 files changed, 61 insertions(+), 33 deletions(-)

diff --git a/src/charts/ChartGUIController.java b/src/charts/ChartGUIController.java
index f3e7eae..d6550ff 100644
--- a/src/charts/ChartGUIController.java
+++ b/src/charts/ChartGUIController.java
@@ -19,6 +19,7 @@ import javafx.scene.image.Image;
 import javafx.scene.layout.AnchorPane;
 import javafx.scene.layout.VBox;
 import javafx.stage.Stage;
+import logger.Logger;
 import tools.AlertGenerator;
 
 @SuppressWarnings("rawtypes")
@@ -97,7 +98,7 @@ public class ChartGUIController
 						}
 						catch(Exception e)
 						{
-							e.printStackTrace();
+							Logger.error(e);
 							showErrorMessage();
 						}
 					}
@@ -125,7 +126,7 @@ public class ChartGUIController
 						}
 						catch(Exception e)
 						{
-							e.printStackTrace();
+							Logger.error(e);
 							showErrorMessage();
 						}
 					}
@@ -161,7 +162,7 @@ public class ChartGUIController
 								}
 								catch(Exception e)
 								{
-									e.printStackTrace();
+									Logger.error(e);
 									showErrorMessage();
 								}
 							}
@@ -181,7 +182,7 @@ public class ChartGUIController
 								}
 								catch(Exception e)
 								{
-									e.printStackTrace();
+									Logger.error(e);
 									showErrorMessage();
 								}
 							}
@@ -212,7 +213,7 @@ public class ChartGUIController
 								}
 								catch(Exception e)
 								{
-									e.printStackTrace();
+									Logger.error(e);
 									showErrorMessage();
 								}
 							}
@@ -230,7 +231,7 @@ public class ChartGUIController
 								}
 								catch(Exception e)
 								{
-									e.printStackTrace();
+									Logger.error(e);
 									showErrorMessage();
 								}
 							}
@@ -248,7 +249,7 @@ public class ChartGUIController
 									}
 									catch(Exception e)
 									{
-										e.printStackTrace();
+										Logger.error(e);
 										showErrorMessage();
 									}
 								}
@@ -266,7 +267,7 @@ public class ChartGUIController
 									}
 									catch(Exception e)
 									{
-										e.printStackTrace();
+										Logger.error(e);
 										showErrorMessage();
 									}
 								}
@@ -282,7 +283,7 @@ public class ChartGUIController
 									}
 									catch(Exception e)
 									{
-										e.printStackTrace();
+										Logger.error(e);
 										showErrorMessage();
 									}
 								}
@@ -300,7 +301,7 @@ public class ChartGUIController
 									}
 									catch(Exception e)
 									{
-										e.printStackTrace();
+										Logger.error(e);
 										showErrorMessage();
 									}
 								}
@@ -334,7 +335,7 @@ public class ChartGUIController
 									}								
 									catch(Exception e)
 									{
-										e.printStackTrace();
+										Logger.error(e);
 										showErrorMessage();
 									}
 								}
@@ -346,7 +347,7 @@ public class ChartGUIController
 									}
 									catch(Exception e)
 									{
-										e.printStackTrace();
+										Logger.error(e);
 										showErrorMessage();
 									}
 								}
@@ -366,7 +367,7 @@ public class ChartGUIController
 										}
 										catch(Exception e)
 										{
-											e.printStackTrace();
+											Logger.error(e);
 											showErrorMessage();										
 										}
 									}
@@ -378,7 +379,7 @@ public class ChartGUIController
 										}
 										catch(Exception e)
 										{
-											e.printStackTrace();
+											Logger.error(e);
 											showErrorMessage();										
 										}
 									}
@@ -397,7 +398,7 @@ public class ChartGUIController
 										catch(Exception e)
 										{
 											showErrorMessage();
-											e.printStackTrace();
+											Logger.error(e);
 										}
 									}
 									else
@@ -409,7 +410,7 @@ public class ChartGUIController
 										catch(Exception e)
 										{
 											showErrorMessage();
-											e.printStackTrace();
+											Logger.error(e);
 										}
 									}
 								}			
@@ -421,7 +422,7 @@ public class ChartGUIController
 		}
 		catch(Exception e)
 		{
-			e.printStackTrace();
+			Logger.error(e);
 			showErrorMessage();
 		}
 	}
diff --git a/src/core/Exporter.java b/src/core/Exporter.java
index 2b4a41e..205bdf1 100644
--- a/src/core/Exporter.java
+++ b/src/core/Exporter.java
@@ -12,6 +12,7 @@ import javafx.application.Platform;
 import javafx.scene.control.Alert.AlertType;
 import javafx.scene.image.Image;
 import javafx.stage.Stage;
+import logger.Logger;
 import tools.AlertGenerator;
 
 public class Exporter
@@ -60,7 +61,7 @@ public class Exporter
 		}
 		catch(Exception e)
 		{			
-			e.printStackTrace();
+			Logger.error(e);
 			Platform.runLater(()->{
 				AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Exportieren der Daten ist ein Fehler aufgetreten.", icon, stage, null, false);
 			});
diff --git a/src/core/Importer.java b/src/core/Importer.java
index 0ee6170..c6a6152 100644
--- a/src/core/Importer.java
+++ b/src/core/Importer.java
@@ -14,6 +14,7 @@ import javafx.application.Platform;
 import javafx.scene.control.Alert.AlertType;
 import javafx.scene.image.Image;
 import javafx.stage.Stage;
+import logger.Logger;
 import tools.AlertGenerator;
 
 public class Importer
@@ -58,7 +59,7 @@ public class Importer
 		}
 		catch(Exception e)
 		{			
-			e.printStackTrace();
+			Logger.error(e);
 			Platform.runLater(()->{
 				AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Importieren der Daten ist ein Fehler aufgetreten.", icon, stage, null, false);
 			});
@@ -83,7 +84,7 @@ public class Importer
 		}
 		catch(Exception e)
 		{			
-			e.printStackTrace();
+			Logger.error(e);
 			Platform.runLater(()->{
 				AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Importieren der Daten ist ein Fehler aufgetreten.", icon, stage, null, false);
 			});
@@ -126,7 +127,7 @@ public class Importer
 		}
 		catch(Exception e)
 		{			
-			e.printStackTrace();
+			Logger.error(e);
 			Platform.runLater(()->{
 				AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Importieren der Daten ist ein Fehler aufgetreten.", icon, stage, null, false);
 			});
diff --git a/src/userInterface/InsertTimeController.java b/src/userInterface/InsertTimeController.java
index 99df4a3..f1d0e4d 100644
--- a/src/userInterface/InsertTimeController.java
+++ b/src/userInterface/InsertTimeController.java
@@ -28,6 +28,7 @@ import javafx.scene.control.Label;
 import javafx.scene.image.Image;
 import javafx.stage.Stage;
 import javafx.util.Callback;
+import logger.Logger;
 import tools.AlertGenerator;
 
 public class InsertTimeController 
@@ -199,7 +200,7 @@ public class InsertTimeController
 				}
 				catch(Exception e)
 				{	
-					e.printStackTrace();
+					Logger.error(e);
 					AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Fehler beim Speichern des Eintrags.", icon, stage, null, false);									
 				}				
 				
@@ -424,7 +425,7 @@ public class InsertTimeController
 		}
 		catch(ParseException e)
 		{		
-			e.printStackTrace();
+			Logger.error(e);
 		}		
 		return false;				
 	}
diff --git a/src/userInterface/Main.java b/src/userInterface/Main.java
index ca2caa1..0026e30 100644
--- a/src/userInterface/Main.java
+++ b/src/userInterface/Main.java
@@ -1,5 +1,9 @@
 package userInterface;
 
+import java.io.File;
+import java.util.Locale;
+import java.util.ResourceBundle;
+
 import javafx.application.Application;
 import javafx.event.EventHandler;
 import javafx.fxml.FXMLLoader;
@@ -9,7 +13,10 @@ import javafx.scene.control.Alert.AlertType;
 import javafx.scene.image.Image;
 import javafx.stage.Stage;
 import javafx.stage.WindowEvent;
+import logger.FileOutputMode;
+import logger.Logger;
 import tools.AlertGenerator;
+import tools.PathUtils;
 
 
 public class Main extends Application
@@ -57,10 +64,26 @@ public class Main extends Application
 		}
 		catch(Exception e)
 		{
-			e.printStackTrace();
+			Logger.error(e);
 		}
 	}
 	
+	@Override
+	public void init() throws Exception
+	{
+		ResourceBundle bundle = ResourceBundle.getBundle("userInterface/", Locale.GERMANY);
+		
+		Parameters params = getParameters();
+		String logLevelParam = params.getNamed().get("loglevel");		
+		Logger.setLevel(logLevelParam);	
+		
+		File logFolder = new File(PathUtils.getOSindependentPath() + "/Deadlocker/" + bundle.getString("app.name"));			
+		PathUtils.checkFolder(logFolder);
+		Logger.enableFileOutput(logFolder, System.out, System.err, FileOutputMode.COMBINED);
+		
+		Logger.appInfo(bundle.getString("app.name"), bundle.getString("version.name"), bundle.getString("version.code"), bundle.getString("version.date"));		
+	}
+	
 	public static void main(String[] args)
 	{
 		launch(args);
diff --git a/src/userInterface/UserInterfaceController.java b/src/userInterface/UserInterfaceController.java
index 435d354..173ace1 100644
--- a/src/userInterface/UserInterfaceController.java
+++ b/src/userInterface/UserInterfaceController.java
@@ -57,6 +57,7 @@ import javafx.stage.Modality;
 import javafx.stage.Stage;
 import javafx.stage.WindowEvent;
 import javafx.util.Callback;
+import logger.Logger;
 import tools.AlertGenerator;
 import tools.ConvertTo;
 import tools.PathUtils;
@@ -270,7 +271,7 @@ public class UserInterfaceController
 		}
 		catch(Exception e)
 		{
-			e.printStackTrace();
+			Logger.error(e);
 			AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Laden der Daten ist ein Fehler aufgetreten.", icon, stage, null, false);
 		}
 	}
@@ -295,7 +296,7 @@ public class UserInterfaceController
 		}
 		catch(Exception e)
 		{
-			e.printStackTrace();
+			Logger.error(e);
 			try
 			{
 				sql.createDB();
@@ -446,7 +447,7 @@ public class UserInterfaceController
 		}
 		catch(IOException e)
 		{
-			e.printStackTrace();
+			Logger.error(e);
 		}
 	}
 
@@ -485,7 +486,7 @@ public class UserInterfaceController
 		}
 		catch(Exception e)
 		{
-			e.printStackTrace();
+			Logger.error(e);
 			AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Fehler beim Speichern des Eintrags.", icon, stage, null, false);
 		}
 
@@ -525,7 +526,7 @@ public class UserInterfaceController
 		}
 		catch(IOException e)
 		{
-			e.printStackTrace();
+			Logger.error(e);
 		}
 	}
 
@@ -628,7 +629,7 @@ public class UserInterfaceController
 			}
 			catch(IOException e)
 			{
-				e.printStackTrace();
+				Logger.error(e);
 				AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Exportieren der Daten ist ein Fehler aufgetreten.", icon, stage, null, false);
 			}			
 			AlertGenerator.showAlert(AlertType.INFORMATION, "Erfolgreich exportiert", "", "Export erfolgreich abgeschlossen.", icon, stage, null, false);
@@ -735,7 +736,7 @@ public class UserInterfaceController
 		}
 		catch(Exception e)
 		{
-			e.printStackTrace();
+			Logger.error(e);
 			AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Aktualisieren des Eintrags ist ein Fehler aufgetreten.", icon, stage, null, false);
 		}
 	}
@@ -749,7 +750,7 @@ public class UserInterfaceController
 		}
 		catch(Exception e)
 		{
-			e.printStackTrace();
+			Logger.error(e);
 			AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Löschen des Eintrags ist ein Fehler aufgetreten.", icon, stage, null, false);
 		}
 	}
@@ -774,7 +775,7 @@ public class UserInterfaceController
 			}
 			catch(Exception e)
 			{
-				e.printStackTrace();
+				Logger.error(e);
 				AlertGenerator.showAlert(AlertType.ERROR, "Fehler", "", "Beim Löschen der Datenbank ist ein Fehler aufgetreten.", icon, stage, null, false);
 			}			
 		}		
-- 
GitLab