Skip to content

Commit 30111bd

Browse files
committed
finish tcp-replace-rmi
1 parent 8947387 commit 30111bd

11 files changed

+214
-53
lines changed

code/Client/Client/TCPClient.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ public class TCPClient extends Client implements IProxyResourceManagerGetter {
1313
private static String s_serverHost = "localhost";
1414
private static int s_serverPort = 2005;
1515
private static String s_serverName = "MiddlewareServer";
16-
1716
private static String s_tcpPrefix = "group25_";
1817

1918
public static void main(String args[]) {
@@ -67,7 +66,6 @@ public AbstractProxyObject getProxyResourceManager(String hostname, int port, St
6766
ObjectInputStream osIn = new ObjectInputStream(socket.getInputStream());
6867

6968
osOut.writeObject(messageToSend);
70-
7169
try {
7270
Message messageReceived = (Message) osIn.readObject();
7371
AbstractProxyObject receivedObject = (AbstractProxyObject) messageReceived.requestedValue;

code/Server/Server/RMI/RMICustomerResourceManager.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ public static void main(String args[]) {
4848
try {
4949
l_registry = LocateRegistry.createRegistry(s_serverPort);
5050
} catch (RemoteException e) {
51-
l_registry = LocateRegistry.getRegistry(s_serverPort);
51+
l_registry = LocateRegistry.getRegistry(2003);
5252
}
5353
final Registry registry = l_registry;
5454
registry.rebind(s_rmiPrefix + s_serverName, resourceManager);

code/Server/Server/TCP/TCPCarResourceManager.java

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,38 @@
99
public class TCPCarResourceManager extends CarResourceManager implements IProxyResourceManagerGetter
1010
{
1111
private static String s_serverName = "CarServer";
12+
private static int s_serverPort = 2001;
1213
private static String s_tcpPrefix = "group25_";
14+
private static String s_customerServerHostname = "localhost";
15+
private static int s_customerServerPort = 2003;
1316

1417
public static void main(String[] args)
1518
{
16-
TCPProxyObjectServer server = new TCPProxyObjectServer("localhost", 2001);
19+
if (args.length > 0) {
20+
try {
21+
s_serverPort = Integer.parseInt(args[0]);
22+
} catch (Exception e) {
23+
System.err.println((char) 27 + "[31;1mClient exception: " + (char) 27 + "[0m1st arg must be integer for carserver port (default 2001)");
24+
e.printStackTrace();
25+
System.exit(1);
26+
}
27+
}
28+
if (args.length > 1) {
29+
s_customerServerHostname = args[1];
30+
}
31+
if (args.length > 2) {
32+
try {
33+
s_customerServerPort = Integer.parseInt(args[2]);
34+
} catch (Exception e) {
35+
System.err.println((char) 27 + "[31;1mClient exception: " + (char) 27 + "[0m3rd arg must be integer for customer server port (default 2003)");
36+
e.printStackTrace();
37+
System.exit(1);
38+
}
39+
}
40+
41+
TCPProxyObjectServer server = new TCPProxyObjectServer("localhost", s_serverPort);
1742
TCPCarResourceManager carRM = new TCPCarResourceManager(s_serverName);
18-
carRM.customerRM = (ICustomerResourceManager) carRM.getProxyResourceManager("localhost", 2003, "CustomerServer");
43+
carRM.customerRM = (ICustomerResourceManager) carRM.getProxyResourceManager(s_customerServerHostname,s_customerServerPort, "CustomerServer");
1944

2045
server.bind(s_tcpPrefix + s_serverName, carRM);
2146
server.runServer();

code/Server/Server/TCP/TCPCustomerResourceManager.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,21 @@
77

88
public class TCPCustomerResourceManager extends CustomerResourceManager {
99
private static String s_serverName = "CustomerServer";
10+
private static int s_serverPort = 2003;
1011
private static String s_tcpPrefix = "group25_";
1112

1213
public static void main(String[] args) {
13-
TCPProxyObjectServer server = new TCPProxyObjectServer("localhost", 2003);
14+
if (args.length > 0) {
15+
try {
16+
s_serverPort = Integer.parseInt(args[0]);
17+
} catch (Exception e) {
18+
System.err.println((char) 27 + "[31;1mClient exception: " + (char) 27 + "[0m1st arg must be integer for customerserver port (default 2003)");
19+
e.printStackTrace();
20+
System.exit(1);
21+
}
22+
}
23+
24+
TCPProxyObjectServer server = new TCPProxyObjectServer("localhost", s_serverPort);
1425
TCPCustomerResourceManager customerRM = new TCPCustomerResourceManager(s_serverName);
1526

1627
server.bind(s_tcpPrefix + s_serverName, customerRM);

code/Server/Server/TCP/TCPFlightResourceManager.java

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,37 @@
88

99
public class TCPFlightResourceManager extends FlightResourceManager implements IProxyResourceManagerGetter {
1010
private static String s_serverName = "FlightServer";
11+
private static int s_serverPort = 2000;
1112
private static String s_tcpPrefix = "group25_";
13+
private static String s_customerServerHostname = "localhost";
14+
private static int s_customerServerPort = 2003;
1215

1316
public static void main(String[] args) {
14-
TCPProxyObjectServer server = new TCPProxyObjectServer("localhost", 2000);
17+
if (args.length > 0) {
18+
try {
19+
s_serverPort = Integer.parseInt(args[0]);
20+
} catch (Exception e) {
21+
System.err.println((char) 27 + "[31;1mClient exception: " + (char) 27 + "[0m1st arg must be integer for flightserver port (default 2000)");
22+
e.printStackTrace();
23+
System.exit(1);
24+
}
25+
}
26+
if (args.length > 1) {
27+
s_customerServerHostname = args[1];
28+
}
29+
if (args.length > 2) {
30+
try {
31+
s_customerServerPort = Integer.parseInt(args[2]);
32+
} catch (Exception e) {
33+
System.err.println((char) 27 + "[31;1mClient exception: " + (char) 27 + "[0m3rd arg must be integer for customer server port (default 2003)");
34+
e.printStackTrace();
35+
System.exit(1);
36+
}
37+
}
38+
39+
TCPProxyObjectServer server = new TCPProxyObjectServer("localhost", s_serverPort);
1540
TCPFlightResourceManager flightRM = new TCPFlightResourceManager(s_serverName);
16-
flightRM.customerRM = (ICustomerResourceManager) flightRM.getProxyResourceManager("localhost", 2003, "CustomerServer");
41+
flightRM.customerRM = (ICustomerResourceManager) flightRM.getProxyResourceManager(s_customerServerHostname,s_customerServerPort, "CustomerServer");
1742

1843
server.bind(s_tcpPrefix + s_serverName, flightRM);
1944
server.runServer();

code/Server/Server/TCP/TCPMiddlewareResourceManager.java

Lines changed: 73 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,82 @@
88

99
public class TCPMiddlewareResourceManager extends MiddlewareResourceManager implements IProxyResourceManagerGetter {
1010
private static String s_serverName = "MiddlewareServer";
11+
private static int s_serverPort = 2005;
1112
private static String s_tcpPrefix = "group25_";
13+
private static String s_customerServerHostname = "localhost";
14+
private static int s_customerServerPort = 2003;
15+
private static String s_flightServerHostname = "localhost";
16+
private static int s_flightServerPort = 2000;
17+
private static String s_roomServerHostname = "localhost";
18+
private static int s_roomServerPort = 2002;
19+
private static String s_carServerHostname = "localhost";
20+
private static int s_carServerPort = 2001;
1221

1322
public static void main(String[] args) {
14-
TCPProxyObjectServer server = new TCPProxyObjectServer("localhost", 2005);
23+
if (args.length > 0) {
24+
try {
25+
s_serverPort = Integer.parseInt(args[0]);
26+
} catch (Exception e) {
27+
System.err.println((char) 27 + "[31;1mClient exception: " + (char) 27 + "[0m1st arg must be integer for middlewareserver port (default 2005)");
28+
e.printStackTrace();
29+
System.exit(1);
30+
}
31+
}
32+
if (args.length > 1) {
33+
s_customerServerHostname = args[1];
34+
}
35+
if (args.length > 2) {
36+
try {
37+
s_customerServerPort = Integer.parseInt(args[2]);
38+
} catch (Exception e) {
39+
System.err.println((char) 27 + "[31;1mClient exception: " + (char) 27 + "[0m3rd arg must be integer for customerserver port (default 2003)");
40+
e.printStackTrace();
41+
System.exit(1);
42+
}
43+
}
44+
if (args.length > 3) {
45+
s_flightServerHostname = args[3];
46+
}
47+
if (args.length > 4) {
48+
try {
49+
s_flightServerPort = Integer.parseInt(args[4]);
50+
} catch (Exception e) {
51+
System.err.println((char) 27 + "[31;1mClient exception: " + (char) 27 + "[0m5th arg must be integer for flightserver port (default 2000)");
52+
e.printStackTrace();
53+
System.exit(1);
54+
}
55+
}
56+
if (args.length > 5) {
57+
s_roomServerHostname = args[5];
58+
}
59+
if (args.length > 6) {
60+
try {
61+
s_roomServerPort = Integer.parseInt(args[6]);
62+
} catch (Exception e) {
63+
System.err.println((char) 27 + "[31;1mClient exception: " + (char) 27 + "[0m7th arg must be integer for roomserver port (default 2002)");
64+
e.printStackTrace();
65+
System.exit(1);
66+
}
67+
}
68+
if (args.length > 7) {
69+
s_carServerHostname = args[7];
70+
}
71+
if (args.length > 8) {
72+
try {
73+
s_carServerPort = Integer.parseInt(args[8]);
74+
} catch (Exception e) {
75+
System.err.println((char) 27 + "[31;1mClient exception: " + (char) 27 + "[0m9th arg must be integer for carserver port (default 2001)");
76+
e.printStackTrace();
77+
System.exit(1);
78+
}
79+
}
80+
81+
TCPProxyObjectServer server = new TCPProxyObjectServer("localhost", s_serverPort);
1582
TCPMiddlewareResourceManager middlewareRM = new TCPMiddlewareResourceManager(s_serverName);
16-
middlewareRM.flightRM = (IFlightResourceManager) middlewareRM.getProxyResourceManager("localhost", 2000, "FlightServer");
17-
middlewareRM.carRM = (ICarResourceManager) middlewareRM.getProxyResourceManager("localhost", 2001, "CarServer");
18-
middlewareRM.roomRM = (IRoomResourceManager) middlewareRM.getProxyResourceManager("localhost", 2002, "RoomServer");
19-
middlewareRM.customerRM = (ICustomerResourceManager) middlewareRM.getProxyResourceManager("localhost", 2003, "CustomerServer");
83+
middlewareRM.flightRM = (IFlightResourceManager) middlewareRM.getProxyResourceManager(s_flightServerHostname,s_flightServerPort, "FlightServer");
84+
middlewareRM.carRM = (ICarResourceManager) middlewareRM.getProxyResourceManager(s_carServerHostname,s_carServerPort, "CarServer");
85+
middlewareRM.roomRM = (IRoomResourceManager) middlewareRM.getProxyResourceManager(s_roomServerHostname,s_roomServerPort, "RoomServer");
86+
middlewareRM.customerRM = (ICustomerResourceManager) middlewareRM.getProxyResourceManager(s_customerServerHostname,s_customerServerPort, "CustomerServer");
2087

2188
server.bind(s_tcpPrefix + s_serverName, middlewareRM);
2289
server.runServer();
@@ -47,7 +114,7 @@ public AbstractProxyObject getProxyResourceManager(String hostname, int port, St
47114
System.exit(1);
48115
}
49116
} catch (Exception e) {
50-
Trace.info(s_serverName + " waiting for customer server");
117+
Trace.info(s_serverName + " waiting for " + messageToSend.proxyObjectBoundName);
51118
try {
52119
Thread.sleep(500);
53120
} catch (Exception err) {

code/Server/run_rmi_middleware.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
./run_rmi.sh "$1" > /dev/null
1+
#!/usr/bin/env bash
22

33
echo 'Usage: run_rmi_middleware.sh [middleport, [customerHostname, [customerPort, [flightHostname, [flightPort,'
44
echo ' [roomHostname, [roomPort, [carHostname, [carPort]]]]]]]]]'

code/Server/run_rmi_server.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
echo 'Usage: ./run_server.sh [rmiport, [RMname, [customerHostname, [customerPort]]]]'
1+
#!/usr/bin/env bash
2+
echo 'Usage: ./run_rmi_server.sh [rmiport, [RMname, [customerHostname, [customerPort]]]]'
23
echo '$1 registry port'
34
echo '$2 RMname'
45
echo '$3 CustomerServer hostname'

code/Server/run_tcp_middleware.sh

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,15 @@
1-
echo "Edit file run_middleware.sh to include instructions for launching the middleware"
2-
echo ' $1 - hostname of Flights'
3-
echo ' $2 - hostname of Cars'
4-
echo ' $3 - hostname of Rooms'
1+
#!/usr/bin/env bash
52

6-
java -Djava.security.policy=java.policy -Djava.rmi.server.codebase=file:$(pwd)/ Server.TCP.TCPMiddlewareResourceManager # $1 $2 $3 $4
3+
echo 'Usage: run_tcp_middleware.sh [middleport, [customerHostname, [customerPort, [flightHostname, [flightPort,'
4+
echo ' [roomHostname, [roomPort, [carHostname, [carPort]]]]]]]]]'
5+
echo '$1 middleware port'
6+
echo '$2 customer hostname'
7+
echo '$3 customer port'
8+
echo '$4 flight hostname'
9+
echo '$5 flight port'
10+
echo '$6 room hostname'
11+
echo '$7 room port'
12+
echo '$8 car hostname'
13+
echo '$9 car port'
14+
15+
java -Djava.security.policy=java.policy -Djava.rmi.server.codebase=file:$(pwd)/ Server.TCP.TCPMiddlewareResourceManager "${@}"

code/Server/run_tcp_server.sh

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1-
#Usage: ./run_tcp_server.sh rmi_name
1+
echo 'Usage: ./run_tcp_server.sh [listening port, [RMname, [customerHostname, [customerPort]]]]'
2+
echo '$1 listening port'
3+
echo '$2 RMName'
4+
echo '$3 CustomerServer hostname'
5+
echo '$4 CustomerServer port'
26

3-
4-
java -Djava.security.policy=java.policy -Djava.rmi.server.codebase=file:$(pwd)/ Server.TCP.TCP"${2}"ResourceManager "${1}" "${2}" "${3}"
7+
java -Djava.security.policy=java.policy -Djava.rmi.server.codebase=file:$(pwd)/ Server.TCP.TCP"${2}"ResourceManager "${1}" "${3}" "${4}"

0 commit comments

Comments
 (0)