From bb984ff26760d046897cc7f9c3a94ecdb5915c3b Mon Sep 17 00:00:00 2001
From: Dennis Eisold <de@itstall.de>
Date: Tue, 26 Nov 2019 16:38:45 +0100
Subject: [PATCH] =?UTF-8?q?Anpassungen=20auf=20Java=20Konventionen=20Depen?=
 =?UTF-8?q?dencys=20f=C3=BCr=20Unittest=20hinzugef=C3=BCgt?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 pom.xml                                  | 13 +++++++------
 src/main/java/Enigma/model/Codebuch.java | 12 +++++++++---
 src/main/java/Enigma/model/Funkraum.java | 19 +++++++++----------
 3 files changed, 25 insertions(+), 19 deletions(-)

diff --git a/pom.xml b/pom.xml
index 4ab66f3..ccec900 100644
--- a/pom.xml
+++ b/pom.xml
@@ -31,12 +31,6 @@
             <artifactId>sqlite-jdbc</artifactId>
             <version>3.28.0</version>
         </dependency>
-        <!-- https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client -->
-        <dependency>
-            <groupId>org.mariadb.jdbc</groupId>
-            <artifactId>mariadb-java-client</artifactId>
-            <version>2.5.2</version>
-        </dependency>
         <!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpclient -->
         <dependency>
             <groupId>org.apache.httpcomponents</groupId>
@@ -49,6 +43,13 @@
             <artifactId>json</artifactId>
             <version>20190722</version>
         </dependency>
+        <!-- https://mvnrepository.com/artifact/junit/junit -->
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <version>4.12</version>
+            <scope>test</scope>
+        </dependency>
     </dependencies>
     <build>
         <plugins>
diff --git a/src/main/java/Enigma/model/Codebuch.java b/src/main/java/Enigma/model/Codebuch.java
index cf471ec..0c6d01d 100644
--- a/src/main/java/Enigma/model/Codebuch.java
+++ b/src/main/java/Enigma/model/Codebuch.java
@@ -18,9 +18,15 @@ package Enigma.model;
  */
 public class Codebuch {
 	private int tag;
-	private String[] Walzenlage = new String[3];
-	private String[] Ringstellung = new String[3];
-	private String[] Steckverbindung = new String[10];
+	private String[] Walzenlage;
+	private String[] Ringstellung;
+	private String[] Steckverbindung;
+
+	Codebuch() {
+		this.Walzenlage = new String[3];
+		this.Ringstellung = new String[3];
+		this.Steckverbindung = new String[10];
+	}
 
 	/**
 	 * Gibt die aktuelle Instanz des Codebuches als String zurück.
diff --git a/src/main/java/Enigma/model/Funkraum.java b/src/main/java/Enigma/model/Funkraum.java
index 6abdd18..de283e7 100644
--- a/src/main/java/Enigma/model/Funkraum.java
+++ b/src/main/java/Enigma/model/Funkraum.java
@@ -1,6 +1,7 @@
 package Enigma.model;
 
 import org.apache.http.HttpEntity;
+import org.apache.http.HttpException;
 import org.apache.http.HttpResponse;
 import org.apache.http.NameValuePair;
 import org.apache.http.client.HttpClient;
@@ -12,6 +13,7 @@ import org.json.JSONObject;
 import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.InputStreamReader;
+import java.io.UnsupportedEncodingException;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -31,7 +33,7 @@ public class Funkraum {
 	 *
 	 * @param kenngruppe : String : Kenngruppe dieser Engiam
 	 * @return String[] : String Array wobei Index 0 dem Empfangstag entspricht und index 1 der empfangenen Nachricht
-	 * @throws IOException
+	 * @throws IOException : Exception :  wenn keine Verbindung zum Funker aufgebaut werden konnte.
 	 */
 	public String[] empfangeFunkspruch(String kenngruppe) throws IOException {
 		String[] funkspruch = new String[2];
@@ -40,7 +42,7 @@ public class Funkraum {
 		HttpPost httppost = new HttpPost("https://enigma.itstall.de/");
 
 		// Anfrage Parameter und Encoding setzen
-		List<NameValuePair> params = new ArrayList<NameValuePair>(2);
+		List<NameValuePair> params = new ArrayList<>(2);
 		params.add(new BasicNameValuePair("k", kenngruppe));
 		httppost.setEntity(new UrlEncodedFormEntity(params, "UTF-8"));
 
@@ -75,16 +77,14 @@ public class Funkraum {
 	 *
 	 * @param funkspruch : String : Der zu sendede Funkspruch
 	 * @param kenngruppe : String : Die Kenngruppe dieser Engima
-	 * @return boolean : War das senden erfolgreich? True wenn ja, false wenn nicht erfolgreich
-	 * @throws IOException
+	 * @throws IOException : Exception : Funkspruch konnte nicht gesendet werden
 	 */
-	public boolean sendeFunkspruch(String funkspruch, String kenngruppe) throws IOException {
-		boolean boolReturn = false;
+	public void sendeFunkspruch(String funkspruch, String kenngruppe) throws HttpException, IOException {
 		HttpClient httpclient = HttpClients.createDefault();
 		HttpPost httppost = new HttpPost("https://enigma.itstall.de/");
 
 		// Anfrage Parameter und Encoding setzen
-		List<NameValuePair> params = new ArrayList<NameValuePair>(2);
+		List<NameValuePair> params = new ArrayList<>(2);
 		params.add(new BasicNameValuePair("k", kenngruppe));
 		params.add(new BasicNameValuePair("m", funkspruch));
 		httppost.setEntity(new UrlEncodedFormEntity(params, "UTF-8"));
@@ -96,11 +96,10 @@ public class Funkraum {
 		if (entity != null) {
 			BufferedReader reader = new BufferedReader(new InputStreamReader(entity.getContent()));
 			JSONObject result = new JSONObject(reader.readLine());
-			if(result.getInt("result") == 200) {
-				boolReturn = true;
+			if(result.getInt("result") != 200) {
+				throw new HttpException("Der andere Funker mag deine Nachricht nicht. Rüge ihn wenn du ihn wieder siehst...");
 			}
 		}
 
-		return boolReturn;
 	}
 }
-- 
GitLab