17
17
public class Starter extends AbstractClient {
18
18
private static final Logger logger = LoggerFactory .getLogger (Starter .class );
19
19
20
- public Starter (String host , int port , String reservation ) {
20
+ public Starter (String host , int port , String reservation , String roomId ) {
21
21
// client starten
22
22
super (host , port );
23
23
@@ -26,10 +26,12 @@ public Starter(String host, int port, String reservation) {
26
26
setHandler (logic );
27
27
28
28
// einem Spiel beitreten
29
- if (reservation == null || reservation .isEmpty ()) {
30
- joinAnyGame ();
31
- } else {
29
+ if (reservation != null ) {
32
30
joinPreparedGame (reservation );
31
+ } else if (roomId != null ) {
32
+ joinGameRoom (roomId );
33
+ } else {
34
+ joinAnyGame ();
33
35
}
34
36
}
35
37
@@ -41,6 +43,7 @@ public static void main(String[] args) {
41
43
CmdLineParser .Option hostOption = parser .addStringOption ('h' , "host" );
42
44
CmdLineParser .Option portOption = parser .addIntegerOption ('p' , "port" );
43
45
CmdLineParser .Option reservationOption = parser .addStringOption ('r' , "reservation" );
46
+ CmdLineParser .Option roomOption = parser .addStringOption ("room" );
44
47
45
48
try {
46
49
// parameter auslesen
@@ -54,11 +57,12 @@ public static void main(String[] args) {
54
57
// parameter laden
55
58
String host = (String ) parser .getOptionValue (hostOption , "localhost" );
56
59
int port = (Integer ) parser .getOptionValue (portOption , SharedConfiguration .DEFAULT_PORT );
57
- String reservation = (String ) parser .getOptionValue (reservationOption , "" );
60
+ String reservation = (String ) parser .getOptionValue (reservationOption );
61
+ String room = (String ) parser .getOptionValue (roomOption );
58
62
59
63
// einen neuen client erzeugen
60
64
try {
61
- new Starter (host , port , reservation );
65
+ new Starter (host , port , reservation , room );
62
66
} catch (Exception e ) {
63
67
logger .error ("Beim Starten den Clients ist ein Fehler aufgetreten:" , e );
64
68
e .printStackTrace ();
@@ -69,11 +73,12 @@ public static void main(String[] args) {
69
73
private static void showHelp (String errorMsg ) {
70
74
String jarName = new File (Starter .class .getProtectionDomain ().getCodeSource ().getLocation ().getFile ()).getName ();
71
75
System .out .println ("\n " + errorMsg );
72
- System .out .println ("\n Bitte das Programm mit folgenden Parametern (optional) aufrufen : \n "
76
+ System .out .println ("\n Folgende Parameter sind erlaubt : \n "
73
77
+ "java -jar " + jarName + " [{-h,--host} hostname]\n "
74
78
+ " [{-p,--port} port]\n "
75
- + " [{-r,--reservation} reservierung]" );
76
- System .out .println ("\n Beispiel: \n "
79
+ + " [{-r,--reservation} reservierung]\n "
80
+ + " [--room raumnummer]\n " );
81
+ System .out .println ("Beispiel: \n "
77
82
+ "java -jar " + jarName + " --host 127.0.0.1 --port 10500 --reservation 1234\n " );
78
83
}
79
84
0 commit comments