diff --git a/src/Controller.java b/src/Controller.java index 3d5336387acde9c46420223235ad1843e69540bd..e33510a4015ac4f7e5dcd2ce372c7000bc33648d 100644 --- a/src/Controller.java +++ b/src/Controller.java @@ -1,5 +1,7 @@ import java.io.*; import java.net.*; +import java.util.ArrayList; +import java.util.List; public class Controller { @@ -20,24 +22,41 @@ public class Controller { int rebalance_period = Integer.parseInt(args[3]); System.out.println("Started"); + List<Socket> ports = new ArrayList<>(); try { ServerSocket socket = new ServerSocket(cport); - socket.setSoTimeout(10 * timeout); for(;;) { try { if(R > 0) { - Socket client = socket.accept(); + System.out.println("waiting for Dstore to join"); + Socket client = socket.accept(); // establish a connection between client and server + System.out.print(R + ": "); + ports.add(client); R = R - 1; - } else { + BufferedReader in = new BufferedReader( + new InputStreamReader(client.getInputStream())); + String line; + while((line = in.readLine()) != null) + System.out.println(line + " received"); + client.close(); + + } else { + break; } + } catch (Exception e1) { System.out.println(e1); } } + /* + #TODO + - use threads to connect multiple clients to a server + */ + } catch (IOException e) { System.out.println("error" + e); } diff --git a/src/Dstore.java b/src/Dstore.java index bb258a8c159c2cd95fb34aeb1ec399c64684af56..9dfb9ed5c31b20fe69a632a08112ec4ede8c0e01 100644 --- a/src/Dstore.java +++ b/src/Dstore.java @@ -1,3 +1,6 @@ +import java.io.*; +import java.net.*; + public class Dstore { public static void main (String[] args) { @@ -11,6 +14,23 @@ public class Dstore { // where to store the data locally String file_folder = args[3]; - System.out.println("Adding"); + InetAddress ip; + + try { + ip = InetAddress.getLocalHost(); + Socket socket = new Socket(); + socket.connect(new InetSocketAddress(ip, cport), timeout); + + for(;;) { + PrintWriter out = new PrintWriter(socket.getOutputStream()); + out.println("adding Dstore"); + out.flush(); + System.out.println("Dstore was added"); + Thread.sleep(1000); + } + + } catch (Exception e) { + System.out.println("error " + e); + } } } \ No newline at end of file