diff --git a/src/main/java/projekt/enigma/Main.java b/src/main/java/projekt/enigma/Main.java index f016016d5dd3ebc14cae30918487a14eec35ac8e..31b558dfa26a54f59783aff516c906719313387d 100644 --- a/src/main/java/projekt/enigma/Main.java +++ b/src/main/java/projekt/enigma/Main.java @@ -1,11 +1,18 @@ package projekt.enigma; +import projekt.enigma.threads.ThreadApp; +import projekt.enigma.threads.ThreadFunkraum; + import java.sql.SQLException; public class Main { public static void main(String[] args) throws SQLException { - App.main(args); + Thread app = new Thread(new ThreadApp()); +// Thread funk = new Thread(new ThreadFunkraum()); + + app.start(); +// funk.start(); } } diff --git a/src/main/java/projekt/enigma/model/Funkraum.java b/src/main/java/projekt/enigma/model/Funkraum.java index 96a3a35b3fa9391afad8d5193ff4923bb368c391..f596cfad8ef16c6e1479e798fb1123afc5cb8da6 100644 --- a/src/main/java/projekt/enigma/model/Funkraum.java +++ b/src/main/java/projekt/enigma/model/Funkraum.java @@ -19,24 +19,25 @@ import java.util.ArrayList; import java.util.List; /** - * Hier sitzt der Funker - * Der Funkraum kann Funksprüche empfangen und senden. - * Hierfür wird eine Verbindung zu einem externen Service aufgebaut. + * Hier sitzt der Funker. + * Der Funkraum kann Funksprueche empfangen und senden. + * Hierfuer wird eine Verbindung zu einem externen Service aufgebaut. * Dieser Servive erwartet die Nachrichten im JSON Format. Dazu wird ein k als Kenngruppe - * (Benutzername) übergeben und falls eine Nachricht gesendet werden soll, zusätzlich ein m mit der Nachricht. + * (Benutzername) uebergeben und falls eine Nachricht gesendet werden soll, zusätzlich ein m mit der Nachricht. * Beides wird als String gesendet. */ -class Funkraum { +public class Funkraum { + /** - * Zum Empfangen liefert der Server, anstatt der Kenngruppe (k) den Empfangstag der Nachricht mit damit man + * Zum Empfangen liefert der Server, anstatt der Kenngruppe (k), den Empfangstag (t) der Nachricht mit, damit man * die Grundeinstellungen aus dem Codebuch, für diesen Tag, raussuchen kann. * {'m': 'Hello world', 't': '26'} * - * @param kenngruppe : String : Kenngruppe dieser Engiam - * @return String[] : String Array wobei Index 0 dem Empfangstag entspricht und index 1 der empfangenen Nachricht + * @param kenngruppe : String : Kenngruppe dieser Enigma + * @return funkspruch : String[] : String Array wobei Index 0 dem Empfangstag entspricht und Index 1 + * der empfangenen Nachricht */ - String[] empfangeFunkspruch(String kenngruppe) { - + public String[] empfangeFunkspruch(String kenngruppe) { String[] funkspruch = new String[2]; HttpClient httpclient = HttpClients.createDefault(); @@ -73,22 +74,21 @@ class Funkraum { /** * Dem Service senden wir unsere Nachricht als POST Parameter (m) und unsere Kenngruppe (k). - * Dieser nimmt die Daten entgegeb und hierlerlegt sie auf seinem Stapel (Datenbank) von dem die Nachrichten - * irgendwann, auf Anfrage, wieder abgerufen werden können. + * Dieser nimmt die Daten entgegen und hierlerlegt sie auf seinem Stapel (Datenbank) von dem die Nachrichten + * irgendwann, auf Anfrage, wieder abgerufen werden koennen. * <p> - * Darauf antworter der Server dann mit einem JSON Object in dem das Ergebnis der Anfrage zu sehen ist. + * Darauf antwortet der Server mit einem JSON Object in dem das Ergebnis der Anfrage zu sehen ist. * {'result': 200} * <p> - * Die 200 heißt hier das alles erfolgreich durchgeführt werden konnte. Steht hier etwas anderes, ist ein Fehler + * Die 200 heißt hier, dass alles erfolgreich durchgefuehrt werden konnte. Steht hier etwas anderes, ist ein Fehler * aufgetreten und die Anfrage war nicht erfolgreich. - * In letzterem Fall sollte eine Meldung an den Benutzer ausgegeben werden und ggF später erneut versucht. + * In letzterem Fall sollte eine Meldung an den Benutzer ausgegeben werden und ggf spaeter erneut versucht werden. * - * @param funkspruch : String : Der zu sendede Funkspruch + * @param funkspruch : String : Der zu sendende Funkspruch * @param kenngruppe : String : Die Kenngruppe dieser Engima * @throws IOException : Exception : Funkspruch konnte nicht gesendet werden */ - void sendeFunkspruch(String funkspruch, String kenngruppe) throws HttpException, IOException { - + public void sendeFunkspruch(String funkspruch, String kenngruppe) throws HttpException, IOException { HttpClient httpclient = HttpClients.createDefault(); HttpPost httppost = new HttpPost("https://enigma.itstall.de/"); @@ -106,9 +106,9 @@ class Funkraum { BufferedReader reader = new BufferedReader(new InputStreamReader(entity.getContent())); JSONObject result = new JSONObject(reader.readLine()); if (result.getInt("result") != 200) { - throw new HttpException("Der andere Funker mag deine Nachricht nicht. Rüge ihn wenn du ihn wieder siehst..."); + throw new HttpException("Der andere Funker mag deine Nachricht nicht. " + + "Rüge ihn wenn du ihn wieder siehst..."); } } - } } diff --git a/src/main/java/projekt/enigma/threads/ThreadApp.java b/src/main/java/projekt/enigma/threads/ThreadApp.java new file mode 100644 index 0000000000000000000000000000000000000000..47cbfb2de183fb7925ccc60722add7f58f48f166 --- /dev/null +++ b/src/main/java/projekt/enigma/threads/ThreadApp.java @@ -0,0 +1,17 @@ +package projekt.enigma.threads; + +import projekt.enigma.App; + +import java.sql.SQLException; + +public class ThreadApp implements Runnable { + private String[] args; + + @Override + public void run() { + System.out.println("ThreadApp" + Thread.currentThread()); + App app = new App(); + app.main(args); + + } +} diff --git a/src/main/java/projekt/enigma/threads/ThreadFunkraum.java b/src/main/java/projekt/enigma/threads/ThreadFunkraum.java new file mode 100644 index 0000000000000000000000000000000000000000..b4a978dd87fce4095e9471294eeabace75ca8029 --- /dev/null +++ b/src/main/java/projekt/enigma/threads/ThreadFunkraum.java @@ -0,0 +1,26 @@ +package projekt.enigma.threads; + +import org.apache.http.HttpException; +import projekt.enigma.model.Codierer; +import projekt.enigma.model.Funkraum; + +import java.io.IOException; + +public class ThreadFunkraum implements Runnable { + String kenngruppe = new Codierer().getKenngruppe(); +// String funkspruch; + @Override + public void run() { + Funkraum funkraum = new Funkraum(); + System.out.println("Threadfunkraum" + Thread.currentThread()); + funkraum.empfangeFunkspruch(kenngruppe); + +// try { +// funkraum.sendeFunkspruch(funkspruch, kenngruppe); +// } catch (HttpException he) { +// System.err.println("Error"); +// } catch (IOException io) { +// System.err.println("Error"); +// } + } +}