// main function to send messages static void Main(string[] args) { Thread.Sleep(2000); Console.Write("\n starting CommService client"); Console.Write("\n =============================\n"); Console.Title = "Client #1"; Client clnt = new Client(); clnt.processCommandLine(args); string localPort = Util.urlPort(clnt.localUrl); string localAddr = Util.urlAddress(clnt.localUrl); Receiver rcvr = new Receiver(localPort, localAddr); if (rcvr.StartService()) { Action newact = clnt.doAction(rcvr); rcvr.doService(newact); } Sender sndr = new Sender(clnt.localUrl); // Sender needs localUrl for start message Message msg = new Message(); msg.fromUrl = clnt.localUrl; msg.toUrl = clnt.remoteUrl; Console.Write("\n sender's url is {0}", msg.fromUrl); Console.Write("\n attempting to connect to {0}\n", msg.toUrl); if (!sndr.Connect(msg.toUrl)) { Console.Write("\n could not connect in {0} attempts", sndr.MaxConnectAttempts); sndr.shutdown(); rcvr.shutDown(); return; } XDocument doc = XDocument.Load("./../../../dbload.xml"); Console.WriteLine(doc.ToString()); Console.WriteLine(" xml is loaded "); Console.WriteLine(); XElement dbe = doc.Element("root"); int count = Int32.Parse(dbe.Element("count").Value); for (int i = 0; i < count; i++) { foreach (var a in dbe.Elements("ClientMessage")) { msg = new Message(); msg.fromUrl = clnt.localUrl; msg.toUrl = clnt.remoteUrl; Console.Write("\n sending {0}\n", msg.content); Console.Write("\n"); msg.content = a.ToString(); sndr.sendMessage(msg); Thread.Sleep(200); } } Thread.Sleep(200); // Wait for user to press a key to quit. // Ensures that client has gotten all server replies. Util.waitForUser(); // shut down this client's Receiver and Sender by sending close messages rcvr.shutDown(); sndr.shutdown(); Console.Write("\n\n"); }
// main function to send messages static void Main(string[] args) { Thread.Sleep(2000); Console.Write("\n starting CommService client"); Console.Write("\n =============================\n"); Console.Title = "Client #1"; Client clnt = new Client(); clnt.processCommandLine(args); string localPort = Util.urlPort(clnt.localUrl); string localAddr = Util.urlAddress(clnt.localUrl); Receiver rcvr = new Receiver(localPort, localAddr); if (rcvr.StartService()) { Action newact = clnt.doAction(rcvr); rcvr.doService(newact); } Sender sndr = new Sender(clnt.localUrl); // Sender needs localUrl for start message Message msg = new Message(); msg.fromUrl = clnt.localUrl; msg.toUrl = clnt.remoteUrl; Console.Write("\n sender's url is {0}", msg.fromUrl); Console.Write("\n attempting to connect to {0}\n", msg.toUrl); if (!sndr.Connect(msg.toUrl)) { Console.Write("\n could not connect in {0} attempts", sndr.MaxConnectAttempts); sndr.shutdown(); rcvr.shutDown(); return; } XDocument doc = XDocument.Load("./../../../dbload.xml"); Console.WriteLine(doc.ToString()); Console.WriteLine(" xml is loaded "); Console.WriteLine(); XElement dbe = doc.Element("root"); int count = Int32.Parse(dbe.Element("count").Value); for (int i = 0; i < count; i++) { foreach (var a in dbe.Elements("ClientMessage")) { msg = new Message(); msg.fromUrl = clnt.localUrl; msg.toUrl = clnt.remoteUrl; Console.Write("\n sending {0}\n", msg.content); Console.Write("\n"); msg.content = a.ToString(); sndr.sendMessage(msg); Thread.Sleep(200); } } Thread.Sleep(200); // Wait for user to press a key to quit. // Ensures that client has gotten all server replies. Util.waitForUser(); // shut down this client's Receiver and Sender by sending close messages rcvr.shutDown(); sndr.shutdown(); Console.Write("\n\n"); } } }