diff --git a/src/main/java/projekt/enigma/GuiController.java b/src/main/java/projekt/enigma/GuiController.java index 9a888b36ac53713b2bab96b5928e92826a535a16..517167df428ecaf47bea95e94035c3005587e0e2 100644 --- a/src/main/java/projekt/enigma/GuiController.java +++ b/src/main/java/projekt/enigma/GuiController.java @@ -324,6 +324,12 @@ public class GuiController { @FXML private Label lblLadeNachricht; + @FXML + private Label lblTagesschluessel; + + @FXML + private Label lblSpruchschluessel; + @FXML void initialize() { @@ -410,6 +416,9 @@ public class GuiController { this.tfCodiert.setText(empfangeneNachricht[1]); this.resetDisplay = true; + // Spruchschluessel in das Feld lblSpruchschluessel schreiben + lblSpruchschluessel.setText(this.codierer.empfangenerSpruchschluessel(empfangeneNachricht[2])); + mBtnStartPos1.setText(String.valueOf(this.codierer.getWalzen()[0])); mBtnStartPos2.setText(String.valueOf(this.codierer.getWalzen()[1])); mBtnStartPos3.setText(String.valueOf(this.codierer.getWalzen()[2])); @@ -524,6 +533,8 @@ public class GuiController { textEingabe = ""; // Spruchschlüssel generieren und codieren this.codierer.generateSpruchschluessel(); + // Spruchschluessel in das Feld lblSpruchschluessel schreiben + lblSpruchschluessel.setText(this.codierer.getSpruchschluessel()); } textEingabe += b.getText(); textCodiert += this.codierer.codiere(b.getText().charAt(0), true); diff --git a/src/main/java/projekt/enigma/model/Codierer.java b/src/main/java/projekt/enigma/model/Codierer.java index 11ccd130aa1a551f84606f3e63822865386e25c5..1afd7394b3759706e84d7e82071bf805856f0569 100644 --- a/src/main/java/projekt/enigma/model/Codierer.java +++ b/src/main/java/projekt/enigma/model/Codierer.java @@ -3,6 +3,7 @@ package projekt.enigma.model; import org.apache.http.HttpException; import java.io.IOException; +import java.util.Arrays; import java.util.Calendar; import java.util.Random; @@ -39,6 +40,10 @@ public class Codierer { * Im Codebuch sind die Tageswerte zu finden. Über dieses Objekt kann darauf zugegriffen werden. */ private Codebuch codebuch; + /** + * Der aktuelle Tagesschluessel. Dieser wird aus dem Codebuch ausgelesen und hier hinterlegt. + */ + private String tagesSchluessel; /** * Der Konstruktor des Codierers @@ -189,7 +194,7 @@ public class Codierer { this.nachricht = ""; Morsecode mc = new Morsecode(); - String[] nachricht = new String[3]; + String[] nachricht = new String[4]; String[] codierteNachricht = new Funkraum().empfangeFunkspruch(this.kenngruppe); if (codierteNachricht[1] != null) { @@ -315,6 +320,8 @@ public class Codierer { String[] nachricht = codierteNachricht.split(" "); StringBuilder sb = new StringBuilder(); + System.out.println(Arrays.toString(nachricht)); + // Uhrzeit sb.append(nachricht[0]).append(" "); @@ -420,4 +427,15 @@ public class Codierer { return true; } + /** + * Ließt aus der empfangenen Nachricht den Spruchschlüssel aus und gibt ihn zurück. + * + * @param empfangeneNachricht : String : Die empfangene Nachricht als String + * @return String : Der Spruchschlüssel mit welcher die Nachricht codiert wurde. + */ + public String empfangenerSpruchschluessel(String empfangeneNachricht) { + String[] nachricht = empfangeneNachricht.split(" "); + + return nachricht[2]; + } }