From d945727bf53ea9f356819bcf32a558c704dd1d3e Mon Sep 17 00:00:00 2001
From: Robert Goldmann <deadlocker@gmx.de>
Date: Sun, 14 May 2017 15:41:37 +0200
Subject: [PATCH] minor fixes for import

---
 .../server/SparkServer.java                   |  2 +-
 .../server/database/DatabaseDelete.java       |  2 +-
 .../server/database/DatabaseExport.java       |  2 +-
 .../server/database/DatabaseImport.java       | 78 ++++++-------------
 4 files changed, 26 insertions(+), 58 deletions(-)

diff --git a/src/de/deadlocker8/budgetmasterserver/server/SparkServer.java b/src/de/deadlocker8/budgetmasterserver/server/SparkServer.java
index 93e6a78c3..8c76dacaf 100644
--- a/src/de/deadlocker8/budgetmasterserver/server/SparkServer.java
+++ b/src/de/deadlocker8/budgetmasterserver/server/SparkServer.java
@@ -118,7 +118,7 @@ public class SparkServer
 		
 		// Database
 		get("/database", new DatabaseExport(settings, gson));
-		put("/database", new DatabaseImport(handler, settings, gson));
+		post("/database", new DatabaseImport(handler, gson));
 		delete("/database", new DatabaseDelete(handler, settings));
 
 		after((request, response) -> {
diff --git a/src/de/deadlocker8/budgetmasterserver/server/database/DatabaseDelete.java b/src/de/deadlocker8/budgetmasterserver/server/database/DatabaseDelete.java
index 24e50ef9c..7fb2e8496 100644
--- a/src/de/deadlocker8/budgetmasterserver/server/database/DatabaseDelete.java
+++ b/src/de/deadlocker8/budgetmasterserver/server/database/DatabaseDelete.java
@@ -34,6 +34,6 @@ public class DatabaseDelete implements Route
 			halt(500, "Internal Server Error");
 		}
 		
-		return "EIMER";
+		return "";
 	}
 }
\ No newline at end of file
diff --git a/src/de/deadlocker8/budgetmasterserver/server/database/DatabaseExport.java b/src/de/deadlocker8/budgetmasterserver/server/database/DatabaseExport.java
index 0da86d757..7c5c2ad8a 100644
--- a/src/de/deadlocker8/budgetmasterserver/server/database/DatabaseExport.java
+++ b/src/de/deadlocker8/budgetmasterserver/server/database/DatabaseExport.java
@@ -36,6 +36,6 @@ public class DatabaseExport implements Route
 			halt(500, "Internal Server Error");
 		}		
 		
-		return null;
+		return "";
 	}
 }
\ No newline at end of file
diff --git a/src/de/deadlocker8/budgetmasterserver/server/database/DatabaseImport.java b/src/de/deadlocker8/budgetmasterserver/server/database/DatabaseImport.java
index 0ed979300..d3962efeb 100644
--- a/src/de/deadlocker8/budgetmasterserver/server/database/DatabaseImport.java
+++ b/src/de/deadlocker8/budgetmasterserver/server/database/DatabaseImport.java
@@ -2,78 +2,46 @@ package de.deadlocker8.budgetmasterserver.server.database;
 
 import static spark.Spark.halt;
 
-import java.util.ArrayList;
-
-import org.joda.time.DateTime;
-
 import com.google.gson.Gson;
 
-import de.deadlocker8.budgetmaster.logic.NormalPayment;
 import de.deadlocker8.budgetmasterserver.main.Database;
 import de.deadlocker8.budgetmasterserver.main.DatabaseHandler;
 import de.deadlocker8.budgetmasterserver.main.DatabaseImporter;
-import de.deadlocker8.budgetmasterserver.main.Settings;
-import de.deadlocker8.budgetmasterserver.server.updater.RepeatingPaymentUpdater;
 import logger.Logger;
 import spark.Request;
 import spark.Response;
 import spark.Route;
 
-public class DatabaseImport implements Route 
+public class DatabaseImport implements Route
 {
-    private DatabaseHandler handler;
-    private Settings settings;
-    private Gson gson;
+	private DatabaseHandler handler;
+	private Gson gson;
 
-    public DatabaseImport(DatabaseHandler handler, Settings settings, Gson gson)
+	public DatabaseImport(DatabaseHandler handler, Gson gson)
 	{
-	    this.handler = handler;
-		this.settings = settings;
+		this.handler = handler;
 		this.gson = gson;
 	}
 
-    @Override
+	@Override
 	public Object handle(Request req, Response res) throws Exception
-	{
-	    if(!req.queryParams().contains("delete"))
-        {
-            halt(400, "Bad Request");
-        }
-	    //TODO json input?
-	    String databaseJSON = "";
-	    
-	    
-	    try
-	    {
-	        boolean delete = Boolean.parseBoolean(req.queryMap("delete").value());  
-	       
-	        
-//TODO
-//    		try
-//    		{		        
-//	        	Database database = gson.fromJson(databaseJSON, Database.class);
-	        
-//    		    if(delete)
-//              {
-//                    handler.deleteDatabase();
-//                    handler = new DatabaseHandler(settings); 
-//              }
-//    		    
-//    		    DatabaseImporter importer = new DatabaseImporter(handler);	  
-//    		    importer.importDatabase(database);		    
-//    			return "";
-//    		}
-//    		catch(Exception e)
-//    		{
-//    		    Logger.error(e);
-//    			halt(500, "Internal Server Error");
-//    		}		
-	    }
-        catch(Exception e)
-        {
-            halt(400, "Bad Request");
-        }
+	{	
+		String databaseJSON = req.body();
+		
+		try
+		{
+			Database database = gson.fromJson(databaseJSON, Database.class);
+
+			DatabaseImporter importer = new DatabaseImporter(handler);
+			importer.importDatabase(database);
+			return "";
+		}
+		catch(Exception e)
+		{
+			Logger.error(e);
+			halt(500, "Internal Server Error");
+		}
 		
-		return null;
+		return "";
 	}
 }
\ No newline at end of file
-- 
GitLab