summaryrefslogtreecommitdiffstats
path: root/src/main/java/derms/Replica4pkg/RemoteServer.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/derms/Replica4pkg/RemoteServer.java')
-rw-r--r--src/main/java/derms/Replica4pkg/RemoteServer.java43
1 files changed, 43 insertions, 0 deletions
diff --git a/src/main/java/derms/Replica4pkg/RemoteServer.java b/src/main/java/derms/Replica4pkg/RemoteServer.java
new file mode 100644
index 0000000..a572dbe
--- /dev/null
+++ b/src/main/java/derms/Replica4pkg/RemoteServer.java
@@ -0,0 +1,43 @@
+//RemoteServer.java
+package derms.Replica4pkg;
+
+import javax.xml.ws.Endpoint;
+import java.util.*;
+
+public class RemoteServer {
+ private List<Endpoint> endpoints = new ArrayList<>();
+
+ public RemoteServer() {
+ try {
+ Map<String, Integer> UDPPorts = new HashMap<>();
+ UDPPorts.put("MTL", 4000);
+ UDPPorts.put("QUE", 5000);
+ UDPPorts.put("SHE", 6000);
+
+ String[] serverNames = {"MTL", "QUE", "SHE"};
+ int i = 0;
+ for (String serverName : serverNames) {
+ int UDPPort = UDPPorts.get(serverName);
+ Server server = new Server();
+ server.initServer(serverName, UDPPort, UDPPorts);
+ int port = 8080 + i;
+ String url = "http://localhost:" + port + "/DERMS/" + serverName;
+ Endpoint endpoint = Endpoint.publish(url, server);
+ endpoints.add(endpoint); // Keep track of the Endpoint
+ i++;
+ System.out.println(serverName + " Server ready and waiting ...");
+ }
+
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ // Method to stop all servers
+ public void stopServers() {
+ for (Endpoint endpoint : endpoints) {
+ endpoint.stop();
+ }
+ System.out.println("All servers have been stopped.");
+ }
+} \ No newline at end of file