2020-01-14 11:10:11 +01:00
|
|
|
package clientP2P;
|
|
|
|
import clientP2P.ClientManagementUDP;
|
2020-02-03 14:48:56 +01:00
|
|
|
import clientP2P.ClientManagementTCP;
|
2020-01-16 12:35:06 +01:00
|
|
|
import tools.Directories;
|
2020-02-03 14:48:56 +01:00
|
|
|
import java.util.Scanner;
|
2019-12-12 11:57:02 +01:00
|
|
|
|
2020-01-14 11:10:11 +01:00
|
|
|
public class ClientP2P {
|
2020-01-12 23:29:49 +01:00
|
|
|
private String host;
|
|
|
|
private int port;
|
2020-01-21 19:56:50 +01:00
|
|
|
private Directories directories;
|
2020-01-14 11:10:11 +01:00
|
|
|
public ClientP2P() {
|
2020-01-21 19:56:50 +01:00
|
|
|
directories = new Directories("P2P_JAVA_PROJECT_CLIENT");
|
2020-01-12 23:29:49 +01:00
|
|
|
host = "localhost";
|
2020-01-25 17:48:21 +01:00
|
|
|
port = 40001;
|
2020-01-21 19:48:46 +01:00
|
|
|
System.out.println("Client will try to contact server at " + host + " on port " + port + ". It will save files in " + directories.getDataHomeDirectory());
|
|
|
|
directories.askOpenDataHomeDirectory();
|
2020-01-12 23:29:49 +01:00
|
|
|
}
|
2020-01-14 11:10:11 +01:00
|
|
|
|
2019-12-12 11:57:02 +01:00
|
|
|
public static void main(String [] args) {
|
2020-01-14 11:10:11 +01:00
|
|
|
ClientP2P c = new ClientP2P();
|
2020-02-03 14:48:56 +01:00
|
|
|
System.out.println("Which transport protocol do you want to use? [TCP/udp]");
|
|
|
|
Scanner sc = new Scanner(System.in);
|
|
|
|
String transportchoosen = sc.nextLine();
|
|
|
|
switch(transportchoosen){
|
|
|
|
case "UDP":
|
|
|
|
case "udp":
|
|
|
|
case "2" :
|
|
|
|
ClientManagementUDP cm = new ClientManagementUDP(c.directories.getDataHomeDirectory(), c.host, c.port);
|
|
|
|
break;
|
|
|
|
case "TCP":
|
|
|
|
case "tcp":
|
|
|
|
case "1":
|
|
|
|
default:
|
|
|
|
ClientManagementTCP cm = new ClientManagementTCP(c.directories.getDataHomeDirectory(), c.host, c.port);
|
|
|
|
break;
|
|
|
|
}
|
2020-01-12 23:29:49 +01:00
|
|
|
Thread t = new Thread(cm);
|
|
|
|
t.setName("client P2P-JAVA-PROJECT");
|
|
|
|
t.start();
|
2019-12-12 11:57:02 +01:00
|
|
|
}
|
|
|
|
}
|