Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
E
Enigma
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Flori N
Enigma
Commits
baaa9f25
Commit
baaa9f25
authored
Dec 04, 2019
by
Jan Schubert
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
https://www.gitrepo.de/alfatrainingkurse/java/enigma
parents
92ac5184
e2914134
Changes
8
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
807 additions
and
671 deletions
+807
-671
pom.xml
pom.xml
+6
-0
src/main/java/projekt/enigma/App.java
src/main/java/projekt/enigma/App.java
+38
-63
src/main/java/projekt/enigma/GuiController.java
src/main/java/projekt/enigma/GuiController.java
+152
-26
src/main/java/projekt/enigma/model/Codierer.java
src/main/java/projekt/enigma/model/Codierer.java
+526
-522
src/main/java/projekt/enigma/model/Fehler.java
src/main/java/projekt/enigma/model/Fehler.java
+57
-57
src/main/java/projekt/enigma/model/Funkraum.java
src/main/java/projekt/enigma/model/Funkraum.java
+1
-1
src/main/java/projekt/enigma/model/Steckbrett.java
src/main/java/projekt/enigma/model/Steckbrett.java
+23
-0
src/main/resources/projekt/enigma/gui.fxml
src/main/resources/projekt/enigma/gui.fxml
+4
-2
No files found.
pom.xml
View file @
baaa9f25
...
...
@@ -56,6 +56,12 @@
<version>
4.12
</version>
<scope>
test
</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.controlsfx/controlsfx -->
<dependency>
<groupId>
org.controlsfx
</groupId>
<artifactId>
controlsfx
</artifactId>
<version>
11.0.0
</version>
</dependency>
</dependencies>
<build>
<plugins>
...
...
src/main/java/projekt/enigma/App.java
View file @
baaa9f25
package
projekt.enigma
;
import
javafx.application.Application
;
import
javafx.event.EventHandler
;
import
javafx.fxml.FXMLLoader
;
import
javafx.scene.Parent
;
import
javafx.scene.Scene
;
import
javafx.scene.control.Button
;
import
javafx.scene.control.Label
;
import
javafx.scene.control.TextField
;
import
javafx.scene.input.KeyCode
;
import
javafx.scene.input.KeyEvent
;
import
javafx.scene.layout.VBox
;
import
javafx.stage.Stage
;
import
projekt.enigma.model.Fehler
;
...
...
@@ -25,85 +22,64 @@ public class App extends Application {
private
static
String
kenngruppe
;
private
static
GuiController
gc
;
private
static
int
debug
;
Scene
sce1
,
sce2
;
private
static
Parent
loadFXML
(
String
fxml
)
throws
IOException
{
FXMLLoader
fxmlLoader
=
new
FXMLLoader
(
App
.
class
.
getResource
(
fxml
+
".fxml"
));
Parent
result
=
fxmlLoader
.
load
();
if
(
fxml
.
equals
(
"gui"
))
{
gc
=
fxmlLoader
.
getController
();
gc
.
setKenngruppe
(
kenngruppe
);
}
return
result
;
}
private
static
int
debug
;
public
static
void
main
(
String
[]
args
)
{
debug
=
1
;
debug
=
1
;
launch
(
args
);
}
public
static
int
getDebug
()
{
return
debug
;
}
public
static
void
setDebug
(
int
debug
)
{
App
.
debug
=
debug
;
}
public
static
int
getDebug
()
{
return
debug
;
}
@Override
@Override
public
void
start
(
Stage
primaryStage
)
throws
IOException
{
primaryStage
.
setTitle
(
"Kenngruppenabfrage"
);
//Scene 1
Label
label1
=
new
Label
(
"Bitte Kenngruppe eingeben!"
);
label1
.
setTranslateX
(
55
);
Label
l1
=
new
Label
(
""
);
Label
l2
=
new
Label
(
""
);
TextField
tfield
=
new
TextField
();
Button
button1
=
new
Button
(
"Kenngruppe setzen!"
);
VBox
layout1
=
new
VBox
();
VBox
layout1
=
new
VBox
();
tfield
.
setOnKeyPressed
(
e
->
{
if
(
e
.
getCode
()
==
KeyCode
.
ENTER
)
{
if
(
enter
(
tfield
.
getText
()))
{
kenngruppe
=
tfield
.
getText
();
try
{
primaryStage
.
setScene
(
new
Scene
(
loadFXML
(
"gui"
),
962
,
677
));
}
catch
(
IOException
ex
)
{
ex
.
printStackTrace
();
}
}
else
{
tfield
.
setStyle
(
"-fx-background-color:#FF0000"
);
tfield
.
setText
(
"Fehlerhafte Kenngruppe!"
);
}
}
});
layout1
.
getChildren
().
addAll
(
label1
,
l1
,
tfield
,
l2
,
button1
);
Scene
sceKenngruppe
=
new
Scene
(
layout1
,
234
,
137
);
FXMLLoader
guiLoader
=
new
FXMLLoader
(
App
.
class
.
getResource
(
"gui.fxml"
));
Scene
sceApp
=
new
Scene
(
guiLoader
.
load
(),
962
,
677
);
tfield
.
setOnKeyPressed
(
e
->
{
if
(
e
.
getCode
()
==
KeyCode
.
ENTER
)
{
if
(
enter
(
tfield
.
getText
()))
{
gc
=
guiLoader
.
getController
();
gc
.
setKenngruppe
(
tfield
.
getText
());
primaryStage
.
setScene
(
sceApp
);
}
else
{
tfield
.
setText
(
""
);
new
Fehler
().
showErrorDialog
(
"error"
,
"Kenngruppe falsch"
,
"Regeln für die Kenngruppe: 4-8 Zeichen sowie nur Buchstaben von A-Z."
);
}
}
});
button1
.
setOnAction
(
e
->
{
if
(
enter
(
tfield
.
getText
()))
{
try
{
primaryStage
.
setScene
(
new
Scene
(
loadFXML
(
"gui"
),
962
,
677
));
}
catch
(
IOException
ex
)
{
ex
.
printStackTrace
();
}
if
(
enter
(
tfield
.
getText
()))
{
gc
=
guiLoader
.
getController
();
gc
.
setKenngruppe
(
tfield
.
getText
());
primaryStage
.
setScene
(
sceApp
);
}
else
{
tfield
.
setStyle
(
"-fx-background-color:#FF0000"
);
tfield
.
setText
(
"Fehlerhafte Kenngruppe!"
);
tfield
.
setText
(
""
);
new
Fehler
().
showErrorDialog
(
"error"
,
"Kenngruppe falsch"
,
"Regeln für die Kenngruppe: 4-8 Zeichen sowie Buchstaben von A-Z."
);
}
});
});
layout1
.
getChildren
().
addAll
(
label1
,
l1
,
tfield
,
l2
,
button1
);
sce1
=
new
Scene
(
layout1
,
234
,
137
);
primaryStage
.
setScene
(
sce1
);
primaryStage
.
setScene
(
sceKenngruppe
);
primaryStage
.
show
();
}
...
...
@@ -112,20 +88,19 @@ public class App extends Application {
String
alphabet
=
"ABCDEFGHIJKLMNOPQRSTUVWXYZ"
;
boolean
result
=
true
;
for
(
char
c
:
kenngruppe
.
toUpperCase
().
toCharArray
())
{
for
(
char
c
:
kenngruppe
.
toUpperCase
().
toCharArray
())
{
if
(!
alphabet
.
contains
(
String
.
valueOf
(
c
)))
{
result
=
false
;
break
;
}
}
if
(
kenngruppe
.
length
()
>
=
9
)
{
if
(
kenngruppe
.
length
()
>
8
||
kenngruppe
.
length
()
<
4
)
{
result
=
false
;
}
return
result
;
}
// /**
// * TODO Dokumentieren
// */
...
...
src/main/java/projekt/enigma/GuiController.java
View file @
baaa9f25
package
projekt.enigma
;
import
javafx.collections.FXCollections
;
import
javafx.collections.ObservableList
;
import
javafx.concurrent.Task
;
import
javafx.event.ActionEvent
;
import
javafx.fxml.FXML
;
import
javafx.scene.control.*
;
import
javafx.scene.control.Button
;
import
javafx.scene.control.Label
;
import
javafx.scene.control.MenuItem
;
import
javafx.scene.control.TextField
;
import
javafx.scene.input.MouseEvent
;
import
javafx.scene.layout.GridPane
;
import
javafx.scene.shape.Circle
;
import
javafx.stage.StageStyle
;
import
org.apache.http.HttpException
;
import
org.controlsfx.control.CheckComboBox
;
import
org.controlsfx.dialog.ProgressDialog
;
import
projekt.enigma.model.Codierer
;
import
projekt.enigma.model.Fehler
;
import
java.io.IOException
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
public
class
GuiController
{
...
...
@@ -23,6 +36,7 @@ public class GuiController {
private
boolean
resetDisplay
;
private
Codierer
codierer
;
private
char
chiffrierterBuchstabe
;
private
String
[]
empfangeneNachricht
;
//deklariert die benötigten Textfelder
@FXML
private
TextField
tfStecker1
,
tfStecker2
,
tfStecker3
,
tfStecker4
,
tfStecker5
,
tfStecker6
,
tfStecker7
,
tfStecker8
,
...
...
@@ -52,9 +66,15 @@ public class GuiController {
private
MenuButton
mBtnWalzPos1
,
mBtnWalzPos2
,
mBtnWalzPos3
,
mBtnNotchPos1
,
mBtnNotchPos2
,
mBtnNotchPos3
,
mBtnStartPos1
,
mBtnStartPos2
,
mBtnStartPos3
;
@FXML
private
GridPane
mainGrid
;
private
static
final
String
alphabet
=
"ABCDEFGHIJKLMNOPQRSTUVWXYZ"
;
//endregion
//region Init
/**
* Initialisiert die Elemente GUI und setzt deren Startwerte
*/
...
...
@@ -82,6 +102,57 @@ public class GuiController {
menu
(
mBtnStartPos2
,
position
);
}
/**
* Für das Steckbrett müssen zehn CheckComboBoxen erstellt werden.
* Hier wird die Funktion zum erstellen und Befüllen der Boxen, die Funktion zehn mal aufgerufen.
*/
private
void
generateSteckbrett
()
{
for
(
int
i
=
0
;
i
<=
9
;
i
++)
{
this
.
createSteckbrettPort
(
i
);
}
}
/**
* Die Funktion createSteckbrettPort erstellt zehn CheckComboBoxen, holt sich die verfügbaren Buchstaben,
* die bereits gesteckten Kabel und weißt sie zu.
* Im Anschluss werden die CheckComboBoxen auf dem GridPane positioniert.
*
* @param port : int : Kabel Nummer (0-9)
*/
private
void
createSteckbrettPort
(
int
port
)
{
// Item Liste anlegen
ObservableList
<
Character
>
items
=
FXCollections
.
observableArrayList
();
// Holt die verfügbaren Buchstaben für diesen Port ab und erstellt ein char Array daraus
char
[]
verfuegbareBuchstaben
=
this
.
codierer
.
fetchVerfuegbareBuchstaben
(
port
).
toCharArray
();
// Sortiert das Array nach dem Alphabet
Arrays
.
sort
(
verfuegbareBuchstaben
);
StringBuilder
sb
=
new
StringBuilder
();
/**
* Die Buchstaben in die CheckComboBox laden und zusätzlich in einen String um später den
* Index des Buchstaben auslesen zu können
*/
for
(
char
c
:
verfuegbareBuchstaben
)
{
items
.
add
(
c
);
sb
.
append
(
c
);
}
// Eine CheckComboBox erstellen
CheckComboBox
<
Character
>
ccb
=
new
CheckComboBox
<
Character
>(
items
);
// Die CheckComboBox dem GridPane in der Oberfläche zuordnen
mainGrid
.
add
(
ccb
,
1
+
port
,
8
);
// Die Gesteckten Buchstaben in der CheckComboBox selektieren
ccb
.
getCheckModel
().
check
(
sb
.
toString
().
indexOf
(
this
.
codierer
.
fetchSteckverbindungen
()[
port
][
0
]));
ccb
.
getCheckModel
().
check
(
sb
.
toString
().
indexOf
(
this
.
codierer
.
fetchSteckverbindungen
()[
port
][
1
]));
}
/**
* init Methode zur Erstellung der Einträge und Action Listener für die einzelnen Menüs
*
...
...
@@ -100,7 +171,7 @@ public class GuiController {
mItem
.
get
(
i
).
setOnAction
(
e
->
setMenuBtnText
(
button
,
finalMi
.
get
(
finalI
)));
}
}
//endregion
//endregion
//region EventHandler/Listener
...
...
@@ -266,7 +337,14 @@ public class GuiController {
*/
@FXML
private
void
gedrueckteTaste
(
ActionEvent
e
)
{
if
(
e
.
getSource
()
==
btnSenden
&&
!
tfCodiert
.
getText
().
equals
(
""
))
sendeFunkspruch
();
if
(
e
.
getSource
()
==
btnSenden
)
{
if
(
tfCodiert
.
getText
().
equals
(
""
))
{
new
Fehler
().
showErrorDialog
(
"warning"
,
"Haben Sie heute nichts zu sagen?"
,
"Nutzung von militärischer Infrastruktur ohne Grund ist verboten."
);
}
else
{
sendeFunkspruch
();
}
}
if
(
e
.
getSource
()
==
btnEmpfangen
)
empfangeFunkspruch
();
if
(
e
.
getSource
()
==
btnDelete
)
loeschen
();
if
(
e
.
getSource
()
==
btnReset
)
{
...
...
@@ -275,9 +353,10 @@ public class GuiController {
this
.
setzeTagesSchluessel
();
}
}
//endregion
//endregion
//region Methoden
/**
* Setzt die Hintergrundfarbe des Kreises (chiffrierter Buchstabe) auf gelb bzw. auf grau.
*
...
...
@@ -423,16 +502,23 @@ public class GuiController {
*/
private
void
empfangeFunkspruch
()
{
String
[]
empfangeneNachricht
=
codierer
.
empfangeNachricht
(
);
progressDialogue
(
"rx"
);
if
(
empfangeneNachricht
[
2
]
!=
null
)
{
setzeTagesSchluessel
();
tfKlartext
.
setText
(
empfangeneNachricht
[
2
]);
tfCodiert
.
setText
(
empfangeneNachricht
[
1
]);
resetDisplay
=
true
;
try
{
if
(
this
.
empfangeneNachricht
[
2
]
!=
null
&&
this
.
empfangeneNachricht
[
1
]
!=
null
)
{
setzeTagesSchluessel
();
tfKlartext
.
setText
(
this
.
empfangeneNachricht
[
2
]);
tfCodiert
.
setText
(
this
.
empfangeneNachricht
[
1
]);
resetDisplay
=
true
;
// Spruchschluessel in das Feld lblSpruchschluessel schreiben
lblSpruchschluessel
.
setText
(
codierer
.
empfangenerSpruchschluessel
(
empfangeneNachricht
[
2
]));
// Spruchschluessel in das Feld lblSpruchschluessel schreiben
lblSpruchschluessel
.
setText
(
codierer
.
empfangenerSpruchschluessel
(
this
.
empfangeneNachricht
[
2
]));
}
}
catch
(
NullPointerException
ignored
)
{
new
Fehler
().
showErrorDialog
(
"warning"
,
"Keiner schreibt dir..."
,
"Es liegen keine neuen Nachrichten im Funkraum für Sie vor."
);
}
}
...
...
@@ -442,15 +528,50 @@ public class GuiController {
*/
private
void
sendeFunkspruch
()
{
this
.
tfKlartext
.
setText
(
""
);
this
.
tfKlartext
.
setText
(
""
);
this
.
tfCodiert
.
setText
(
""
);
try
{
this
.
codierer
.
sendeNachricht
();
}
catch
(
HttpException
|
IOException
e
)
{
e
.
printStackTrace
();
}
progressDialogue
(
"tx"
);
}
private
void
progressDialogue
(
String
strRxTx
)
{
Task
copyWorker
=
createWorker
(
strRxTx
);
ProgressDialog
dialog
=
new
ProgressDialog
(
copyWorker
);
dialog
.
initStyle
(
StageStyle
.
TRANSPARENT
);
dialog
.
setGraphic
(
null
);
dialog
.
initStyle
(
StageStyle
.
TRANSPARENT
);
dialog
.
setTitle
(
"Kommunikation zum Funkraum"
);
if
(
strRxTx
.
equals
(
"rx"
))
{
dialog
.
setContentText
(
"Empfange Nachricht"
);
}
else
if
(
strRxTx
.
equals
(
"tx"
))
{
dialog
.
setContentText
(
"Sende Nachricht"
);
}
dialog
.
setHeaderText
(
null
);
dialog
.
setGraphic
(
null
);
dialog
.
initStyle
(
StageStyle
.
UTILITY
);
new
Thread
(
copyWorker
).
start
();
dialog
.
showAndWait
();
}
public
Task
createWorker
(
String
strRxTx
)
{
return
new
Task
()
{
@Override
protected
Object
call
()
throws
Exception
{
if
(
strRxTx
.
equals
(
"rx"
))
{
empfangeneNachricht
=
codierer
.
empfangeNachricht
();
}
else
if
(
strRxTx
.
equals
(
"tx"
))
{
try
{
codierer
.
sendeNachricht
();
}
catch
(
HttpException
|
IOException
e
)
{
e
.
printStackTrace
();
}
}
return
true
;
}
};
}
/**
...
...
@@ -646,6 +767,11 @@ public class GuiController {
mBtnStartPos3
.
setText
(
String
.
valueOf
(
codierer
.
fetchWalzen
()[
2
]));
// Steckbrett Felder setzen
// Setzt das Steckbrett
generateSteckbrett
();
/*
tfStecker1.setText(codierer.fetchSteckverbindungen()[0][0] + "" +
codierer.fetchSteckverbindungen()[0][1]);
tfStecker2.setText(codierer.fetchSteckverbindungen()[1][0] + "" +
...
...
@@ -665,7 +791,7 @@ public class GuiController {
tfStecker9.setText(codierer.fetchSteckverbindungen()[8][0] + "" +
codierer.fetchSteckverbindungen()[8][1]);
tfStecker10.setText(codierer.fetchSteckverbindungen()[9][0] + "" +
codierer
.
fetchSteckverbindungen
()[
9
][
1
]);
codierer.fetchSteckverbindungen()[9][1]);
*/
this
.
textCodiert
=
""
;
this
.
textEingabe
=
""
;
this
.
tfKlartext
.
setText
(
""
);
...
...
@@ -676,17 +802,17 @@ public class GuiController {
public
void
setKenngruppe
(
String
kenngruppe
)
{
// Initialisieren des Codierers und setzen der Kenngruppe
codierer
=
new
Codierer
(
kenngruppe
);
// Initialisieren des Codierers und setzen der Kenngruppe
codierer
=
new
Codierer
(
kenngruppe
);
this
.
codierer
.
resetHardware
();
this
.
codierer
.
resetHardware
();
// Beim nächsten Tastendruck erstmal das Display löschen damit falschen Nachrichten geschickt werden.
resetDisplay
=
true
;
// Beim nächsten Tastendruck erstmal das Display löschen damit falschen Nachrichten geschickt werden.
resetDisplay
=
true
;
// Einstellungen aus dem Logbuch auslesen und setzen
setzeTagesSchluessel
();
setzeSteckverbindungen
();
// Einstellungen aus dem Logbuch auslesen und setzen
setzeTagesSchluessel
();
setzeSteckverbindungen
();
}
//endregion
}
src/main/java/projekt/enigma/model/Codierer.java
View file @
baaa9f25
This diff is collapsed.
Click to expand it.
src/main/java/projekt/enigma/model/Fehler.java
View file @
baaa9f25
...
...
@@ -9,70 +9,70 @@ import projekt.enigma.App;
*/
public
class
Fehler
{
private
String
functionPrefix
=
"- "
;
private
String
messagePrefix
=
"--> "
;
private
String
functionPrefix
=
"- "
;
private
String
messagePrefix
=
"--> "
;
/**
* Zeige Fehler Dialog
*
* @param type : String : Art der Meldung (warning/information/error)
* @param subject : Titel des Dialoges
* @param message : Nachricht der Meldung
*/
public
void
showErrorDialog
(
String
type
,
String
subject
,
String
message
)
{
/**
* Zeige Fehler Dialog
*
* @param type : String : Art der Meldung (warning/information/error)
* @param subject : Titel des Dialoges
* @param message : Nachricht der Meldung
*/
public
void
showErrorDialog
(
String
type
,
String
subject
,
String
message
)
{
new
Fehler
().
debug
(
this
.
getClass
().
getName
()
+
"."
+
new
Throwable
().
getStackTrace
()[
0
].
getMethodName
(),
true
);
new
Fehler
().
debug
(
this
.
getClass
().
getName
()
+
"."
+
new
Throwable
().
getStackTrace
()[
0
].
getMethodName
(),
true
);
Alert
alert
;
Alert
alert
;
/* Der Titel darf auch als leerer String übergeben werden, dann wird ein Default gesetzt */
if
(
subject
.
equals
(
""
))
{
subject
=
"Es ist ein Fehler aufgetreten"
;
}
/* Der Titel darf auch als leerer String übergeben werden, dann wird ein Default gesetzt */
if
(
subject
.
equals
(
""
))
{
subject
=
"Es ist ein Fehler aufgetreten"
;
}
/* Welcher Fehler Typ wurde übergeben? */
switch
(
type
)
{
case
"warning"
:
alert
=
new
Alert
(
AlertType
.
WARNING
);
break
;
case
"information
"
:
alert
=
new
Alert
(
AlertType
.
INFORMATION
);
break
;
case
"error"
:
alert
=
new
Alert
(
AlertType
.
ERROR
);
break
;
default
:
alert
=
new
Alert
(
AlertType
.
NONE
);
}
/* Setzt den Titel des Dialoges */
alert
.
setTitle
(
subject
);
/* Setzt den Headertext des Dialoges */
alert
.
setHeaderText
(
null
);
/* Setzt die Nachricht des Dialoges */
alert
.
setContentText
(
message
);
/* Zeige den Dialog an */
alert
.
showAndWait
();
}
/* Welcher Fehler Typ wurde übergeben? */
switch
(
type
)
{
case
"warning"
:
alert
=
new
Alert
(
AlertType
.
WARNING
);
break
;
case
"info
"
:
alert
=
new
Alert
(
AlertType
.
INFORMATION
);
break
;
case
"error"
:
alert
=
new
Alert
(
AlertType
.
ERROR
);
break
;
default
:
alert
=
new
Alert
(
AlertType
.
NONE
);
}
/* Setzt den Titel des Dialoges */
alert
.
setTitle
(
subject
);
/* Setzt den Headertext des Dialoges */
alert
.
setHeaderText
(
null
);
/* Setzt die Nachricht des Dialoges */
alert
.
setContentText
(
message
);
/* Zeige den Dialog an */
alert
.
showAndWait
();
}
public
void
debug
(
String
message
,
boolean
isFunction
)
{
public
void
debug
(
String
message
,
boolean
isFunction
)
{
if
(
App
.
getDebug
()
!=
0
)
{
if
(
isFunction
)
{
System
.
out
.
println
(
functionPrefix
+
message
);
}
else
{
System
.
out
.
println
(
messagePrefix
+
message
);
}
}
}
if
(
App
.
getDebug
()
!=
0
)
{
if
(
isFunction
)
{
System
.
out
.
println
(
functionPrefix
+
message
);
}
else
{
System
.
out
.
println
(
messagePrefix
+
message
);
}
}
}
public
void
debug
(
String
message
,
boolean
isFunction
,
int
debugLevel
)
{
public
void
debug
(
String
message
,
boolean
isFunction
,
int
debugLevel
)
{
if
(
App
.
getDebug
()
!=
0
&&
(
App
.
getDebug
()
>=
debugLevel
||
App
.
getDebug
()
==
3
)
)
{
if
(
isFunction
)
{
System
.
out
.
println
(
functionPrefix
+
message
);
}
else
{
System
.
out
.
println
(
messagePrefix
+
message
);
}
}
}
if
(
App
.
getDebug
()
!=
0
&&
(
App
.
getDebug
()
>=
debugLevel
||
App
.
getDebug
()
==
3
)
)
{
if
(
isFunction
)
{
System
.
out
.
println
(
functionPrefix
+
message
);
}
else
{
System
.
out
.
println
(
messagePrefix
+
message
);
}
}
}
}
\ No newline at end of file
src/main/java/projekt/enigma/model/Funkraum.java
View file @
baaa9f25
...
...
@@ -69,7 +69,7 @@ public class Funkraum {
new
Fehler
().
showErrorDialog
(
"error"
,
"HTTP Post war nicht erfolgreich"
,
"Bitte wenden Sie sich an ihren Vorgesetzten."
);
}
catch
(
NullPointerException
e
)
{
new
Fehler
().
showErrorDialog
(
"
error
"
,
"Keiner schreibt dir..."
,
new
Fehler
().
showErrorDialog
(
"
info
"
,
"Keiner schreibt dir..."
,
"Es liegen keine neuen Nachrichten im Funkraum für Sie vor."
);
}
...
...
src/main/java/projekt/enigma/model/Steckbrett.java
View file @
baaa9f25
...
...
@@ -132,4 +132,27 @@ public class Steckbrett {
}
}
/**
* TODO: Doku
* @param port
* @return
*/
public
String
fetchVerfuegbareBuchstaben
(
int
port
)
{
String
alphabet
=
"ABCDEFGHIJKLMNOPQRSTUVWXYZ"
;