simplified cli usage of server
This commit is contained in:
parent
90872c8f7b
commit
226520e209
@ -1,10 +1,13 @@
|
||||
package serverP2P;
|
||||
|
||||
import java.util.Scanner;
|
||||
import serverP2P.ServerManagementUDP;
|
||||
import serverP2P.ServerManagementTCP;
|
||||
import tools.Directories;
|
||||
import tools.Logger;
|
||||
import tools.HostItem;
|
||||
import java.util.Scanner;
|
||||
import tools.TestPort;
|
||||
|
||||
|
||||
/** Server only implementation
|
||||
* First argument of main method is port listened by the server, and is mandatory.
|
||||
@ -37,23 +40,70 @@ public class ServerP2P {
|
||||
|
||||
/** Main program entry point
|
||||
* first parameter is port number and is mandatory
|
||||
* to test, run with: java -ea serverP2P.ServerP2P -- <portNumber> <TrackerHostname> <TrackerPort>
|
||||
* to test, run with: java -ea serverP2P.ServerP2P
|
||||
* @param args parameters
|
||||
*/
|
||||
public static void main(String [] args) {
|
||||
if (args[1].equals("help") || args[1].equals("-h") || args[1].equals("h")){
|
||||
System.out.println("usage : java serveurP2P.ServeurP2P or java serveurP2P.ServeurP2P -- <serveurPORT> <trackerHOSTNAME> <trackerPORT> (default for server localhost:7070 and tracker localhost:6969, range 7000 -> 7999)");
|
||||
final String defaultHostname = "localhost";
|
||||
final String defaultPortServer = "7070";
|
||||
final String defaultPortTracker = "6969";
|
||||
Scanner scanner = new Scanner(System.in);
|
||||
TestPort testPort = new TestPort();
|
||||
|
||||
System.out.println("Server, enter hostname to bind (default = localhost): ");
|
||||
String hostnameServer = scanner.nextLine();
|
||||
if(hostnameServer.equals("")){
|
||||
hostnameServer = defaultHostname;
|
||||
System.out.println("using default hostname : " + hostnameServer);
|
||||
} else{
|
||||
System.out.println("using hostname : " + hostnameServer);
|
||||
}
|
||||
else{
|
||||
ServerP2P s = new ServerP2P(args[1], args[2], args[3]);
|
||||
ServerManagementUDP smudp = new ServerManagementUDP(s.directories.getDataHomeDirectory() + subdir, "localhost", s.port, s.logger, s.tracker);
|
||||
ServerManagementTCP smtcp = new ServerManagementTCP(s.directories.getDataHomeDirectory() + subdir, "localhost", s.port, s.logger, s.tracker);
|
||||
Thread tudp = new Thread(smudp);
|
||||
tudp.setName("server UDP P2P-JAVA-PROJECT");
|
||||
tudp.start();
|
||||
Thread ttcp = new Thread(smtcp);
|
||||
ttcp.setName("server TCP P2P-JAVA-PROJECT");
|
||||
ttcp.start();
|
||||
System.out.println("enter port (default = 7070): ");
|
||||
String portServer = scanner.nextLine();
|
||||
if(portServer.equals("")){
|
||||
portServer = defaultPortServer;
|
||||
System.out.println("using default port : " + portServer);
|
||||
}
|
||||
else {
|
||||
if(!testPort.testPortServer(Integer.parseInt(portServer))){
|
||||
System.out.println("Wrong port (7000 -> 7999), using default port 7070");
|
||||
portServer = defaultPortServer;
|
||||
} else {
|
||||
System.out.println("using port : " + portServer);
|
||||
}
|
||||
}
|
||||
|
||||
System.out.println("enter hostname of tracker (default = localhost): ");
|
||||
String hostnameTracker = scanner.nextLine();
|
||||
if(hostnameTracker.equals("")){
|
||||
hostnameTracker = defaultHostname;
|
||||
System.out.println("tracker default hostname : " + hostnameTracker);
|
||||
} else{
|
||||
System.out.println("tracker hostname : " + hostnameTracker);
|
||||
}
|
||||
System.out.println("enter tracker's port (default = 6969): ");
|
||||
String portTracker = scanner.nextLine();
|
||||
if(portTracker.equals("")){
|
||||
portTracker = defaultPortTracker;
|
||||
System.out.println("using default port : " + portTracker);
|
||||
}
|
||||
else {
|
||||
if(!testPort.testPortTracker(Integer.parseInt(portTracker))){
|
||||
System.out.println("Wrong port (6000 -> 6999), using default port 6969");
|
||||
portTracker = defaultPortTracker;
|
||||
} else {
|
||||
System.out.println("using port : " + portTracker);
|
||||
}
|
||||
}
|
||||
|
||||
ServerP2P s = new ServerP2P(portServer, hostnameTracker, portTracker);
|
||||
ServerManagementUDP smudp = new ServerManagementUDP(s.directories.getDataHomeDirectory() + subdir, hostnameServer, s.port, s.logger, s.tracker);
|
||||
ServerManagementTCP smtcp = new ServerManagementTCP(s.directories.getDataHomeDirectory() + subdir, hostnameServer, s.port, s.logger, s.tracker);
|
||||
Thread tudp = new Thread(smudp);
|
||||
tudp.setName("server UDP P2P-JAVA-PROJECT");
|
||||
tudp.start();
|
||||
Thread ttcp = new Thread(smtcp);
|
||||
ttcp.setName("server TCP P2P-JAVA-PROJECT");
|
||||
ttcp.start();
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user