diff options
| author | BMatajsz <90217645+BMatajsz@users.noreply.github.com> | 2024-12-03 12:41:35 -0500 |
|---|---|---|
| committer | BMatajsz <90217645+BMatajsz@users.noreply.github.com> | 2024-12-03 12:41:35 -0500 |
| commit | 450a17a490e6a37c36f4fc6e67b0454d266fe88b (patch) | |
| tree | 685f234c464d25a05af9bcff915dc0fb6dbfa5b2 | |
| parent | 80c0584575d62ffd487668909ed3d6b0a0353591 (diff) | |
| parent | 19166b8af1bf635f3f11a21abcc22cba46cebd4a (diff) | |
| download | soen423-450a17a490e6a37c36f4fc6e67b0454d266fe88b.zip | |
Merge branch 'test' of https://github.com/sam-rba/soen423 into test
| -rw-r--r-- | src/main/java/derms/ReplicaManager.java | 24 | ||||
| -rw-r--r-- | src/test/java/derms/test/SystemTest.java | 2 |
2 files changed, 13 insertions, 13 deletions
diff --git a/src/main/java/derms/ReplicaManager.java b/src/main/java/derms/ReplicaManager.java index 252953c..a3008de 100644 --- a/src/main/java/derms/ReplicaManager.java +++ b/src/main/java/derms/ReplicaManager.java @@ -23,7 +23,7 @@ import java.util.Objects; import java.util.logging.Logger; public class ReplicaManager { - public static final String usage = "Usage: java ReplicaManager <replicaId> <city> <frontEndIP> <byzantine(0 or 1)> <crash(0 or 1)>"; + public static final String usage = "Usage: java ReplicaManager <replicaId> <city> <replicaManagerIP> <frontEndIP> <byzantine(0 or 1)> <crash(0 or 1)>"; private final int replicaId; private final String city; private Replica replica; @@ -33,13 +33,13 @@ public class ReplicaManager { private ReliableUnicastSender<Response> unicastSender; private TotalOrderMulticastReceiver multicastReceiver; - public ReplicaManager(int replicaId, String city, InetAddress frontEndIP, int byzantine, int crash) throws IOException { + public ReplicaManager(int replicaId, String city, InetAddress replicaManagerIP, InetAddress frontEndIP, int byzantine, int crash) throws IOException { this.replicaId = replicaId; this.city = city; this.log = Logger.getLogger(getClass().getName()); initUnicastSender(frontEndIP); initReplica(byzantine, crash); - initMulticastReceiver(); + initMulticastReceiver(replicaManagerIP); startHeartbeatThread(); } @@ -81,11 +81,10 @@ public class ReplicaManager { replica.startProcess(byzantine, crash); } - private void initMulticastReceiver() throws IOException { + private void initMulticastReceiver(InetAddress replicaManagerIP) throws IOException { InetSocketAddress group = Config.group; - InetAddress localAddress = InetAddress.getLocalHost(); // Your local address - NetworkInterface netInterface = NetworkInterface.getByInetAddress(localAddress); - multicastReceiver = new TotalOrderMulticastReceiver<Request>(group, localAddress, netInterface); + NetworkInterface netInterface = NetworkInterface.getByInetAddress(replicaManagerIP); + multicastReceiver = new TotalOrderMulticastReceiver<Request>(group, replicaManagerIP, netInterface); new Thread(() -> { while (true) { @@ -168,7 +167,7 @@ public class ReplicaManager { } public static void main(String[] args) { - if (args.length < 3) { + if (args.length < 4) { System.err.println(usage); System.exit(1); } @@ -176,10 +175,11 @@ public class ReplicaManager { try { int replicaId = Integer.parseInt(args[0]); String city = args[1]; - InetAddress frontEndIP = InetAddress.getByName(args[2]); - int byzantine = Integer.parseInt(args[3]); - int crash = Integer.parseInt(args[4]); - ReplicaManager replicaManager = new ReplicaManager(replicaId, city, frontEndIP, byzantine, crash); + InetAddress replicaManagerIP = InetAddress.getByName(args[2]); + InetAddress frontEndIP = InetAddress.getByName(args[3]); + int byzantine = Integer.parseInt(args[4]); + int crash = Integer.parseInt(args[5]); + ReplicaManager replicaManager = new ReplicaManager(replicaId, city, replicaManagerIP, frontEndIP, byzantine, crash); System.out.println("ReplicaManager " + replicaId + " is running."); } catch (IOException e) { System.err.println("Failed to start ReplicaManager: " + e.getMessage()); diff --git a/src/test/java/derms/test/SystemTest.java b/src/test/java/derms/test/SystemTest.java index 3cc3f6b..3a69bfb 100644 --- a/src/test/java/derms/test/SystemTest.java +++ b/src/test/java/derms/test/SystemTest.java @@ -70,7 +70,7 @@ class SystemTest { @Test void testNormal() throws IOException { // Replica 1 - String[] argsRM = {"1", "MTL", IP, "0", "0"}; + String[] argsRM = {"1", "MTL", IP, IP, "0", "0"}; // [TODO] // Run the main function of the desired replica, for example: |