public override int run(string[] args) { if (args.Length > 0) { Console.Error.WriteLine(appName() + ": too many arguments"); return(1); } try { communicator().getPluginManager().getPlugin("IceSSL"); _haveSSL = true; } catch (Ice.NotRegisteredException) { } HelloPrx twoway = HelloPrxHelper.checkedCast(communicator().stringToProxy("hello")); if (twoway == null) { Console.Error.WriteLine("invalid proxy"); return(1); } HelloPrx oneway = (HelloPrx)twoway.ice_oneway(); HelloPrx batchOneway = (HelloPrx)twoway.ice_batchOneway(); HelloPrx datagram = (HelloPrx)twoway.ice_datagram(); HelloPrx batchDatagram = (HelloPrx)twoway.ice_batchDatagram(); bool secure = false; int timeout = -1; int delay = 0; menu(); string line = null; do { try { Console.Out.Write("==> "); Console.Out.Flush(); line = Console.In.ReadLine(); if (line == null) { break; } if (line.Equals("t")) { twoway.sayHello(delay); } else if (line.Equals("o")) { oneway.sayHello(delay); } else if (line.Equals("O")) { batchOneway.sayHello(delay); } else if (line.Equals("d")) { if (secure) { Console.WriteLine("secure datagrams are not supported"); } else { datagram.sayHello(delay); } } else if (line.Equals("D")) { if (secure) { Console.WriteLine("secure datagrams are not supported"); } else { batchDatagram.sayHello(delay); } } else if (line.Equals("f")) { batchOneway.ice_flushBatchRequests(); batchDatagram.ice_flushBatchRequests(); } else if (line.Equals("T")) { if (timeout == -1) { timeout = 2000; } else { timeout = -1; } twoway = (HelloPrx)twoway.ice_invocationTimeout(timeout); oneway = (HelloPrx)oneway.ice_invocationTimeout(timeout); batchOneway = (HelloPrx)batchOneway.ice_invocationTimeout(timeout); if (timeout == -1) { Console.WriteLine("timeout is now switched off"); } else { Console.WriteLine("timeout is now set to 2000ms"); } } else if (line.Equals("P")) { if (delay == 0) { delay = 2500; } else { delay = 0; } if (delay == 0) { Console.WriteLine("server delay is now deactivated"); } else { Console.WriteLine("server delay is now set to 2500ms"); } } else if (_haveSSL && line.Equals("S")) { secure = !secure; twoway = (HelloPrx)twoway.ice_secure(secure); oneway = (HelloPrx)oneway.ice_secure(secure); batchOneway = (HelloPrx)batchOneway.ice_secure(secure); datagram = (HelloPrx)datagram.ice_secure(secure); batchDatagram = (HelloPrx)batchDatagram.ice_secure(secure); if (secure) { Console.WriteLine("secure mode is now on"); } else { Console.WriteLine("secure mode is now off"); } } else if (line.Equals("s")) { twoway.shutdown(); } else if (line.Equals("x")) { // Nothing to do } else if (line.Equals("?")) { menu(); } else { Console.WriteLine("unknown command `" + line + "'"); menu(); } } catch (System.Exception ex) { Console.Error.WriteLine(ex); } }while (!line.Equals("x")); return(0); }
private static int run(Ice.Communicator communicator) { HelloPrx twoway = HelloPrxHelper.checkedCast( communicator.propertyToProxy("Hello.Proxy").ice_twoway().ice_secure(false)); if (twoway == null) { Console.Error.WriteLine("invalid proxy"); return(1); } HelloPrx oneway = (HelloPrx)twoway.ice_oneway(); HelloPrx batchOneway = (HelloPrx)twoway.ice_batchOneway(); HelloPrx datagram = (HelloPrx)twoway.ice_datagram(); HelloPrx batchDatagram = (HelloPrx)twoway.ice_batchDatagram(); bool secure = false; int timeout = -1; int delay = 0; menu(); string line = null; do { try { Console.Out.Write("==> "); Console.Out.Flush(); line = Console.In.ReadLine(); if (line == null) { break; } if (line.Equals("t")) { twoway.sayHello(delay); } else if (line.Equals("o")) { oneway.sayHello(delay); } else if (line.Equals("O")) { batchOneway.sayHello(delay); } else if (line.Equals("d")) { if (secure) { Console.WriteLine("secure datagrams are not supported"); } else { datagram.sayHello(delay); } } else if (line.Equals("D")) { if (secure) { Console.WriteLine("secure datagrams are not supported"); } else { batchDatagram.sayHello(delay); } } else if (line.Equals("f")) { batchOneway.ice_flushBatchRequests(); if (!secure) { batchDatagram.ice_flushBatchRequests(); } } else if (line.Equals("T")) { if (timeout == -1) { timeout = 2000; } else { timeout = -1; } twoway = (HelloPrx)twoway.ice_invocationTimeout(timeout); oneway = (HelloPrx)oneway.ice_invocationTimeout(timeout); batchOneway = (HelloPrx)batchOneway.ice_invocationTimeout(timeout); if (timeout == -1) { Console.WriteLine("timeout is now switched off"); } else { Console.WriteLine("timeout is now set to 2000ms"); } } else if (line.Equals("P")) { if (delay == 0) { delay = 2500; } else { delay = 0; } if (delay == 0) { Console.WriteLine("server delay is now deactivated"); } else { Console.WriteLine("server delay is now set to 2500ms"); } } else if (line.Equals("S")) { secure = !secure; twoway = (HelloPrx)twoway.ice_secure(secure); oneway = (HelloPrx)oneway.ice_secure(secure); batchOneway = (HelloPrx)batchOneway.ice_secure(secure); datagram = (HelloPrx)datagram.ice_secure(secure); batchDatagram = (HelloPrx)batchDatagram.ice_secure(secure); if (secure) { Console.WriteLine("secure mode is now on"); } else { Console.WriteLine("secure mode is now off"); } } else if (line.Equals("s")) { twoway.shutdown(); } else if (line.Equals("x")) { // Nothing to do } else if (line.Equals("?")) { menu(); } else { Console.WriteLine("unknown command `" + line + "'"); menu(); } } catch (System.Exception ex) { Console.Error.WriteLine(ex); } }while (!line.Equals("x")); return(0); }
public override int run(string[] args) { if (args.Length > 0) { Console.Error.WriteLine(appName() + ": too many arguments"); return(1); } try { communicator().getPluginManager().getPlugin("IceSSL"); _haveSSL = true; } catch (Ice.NotRegisteredException) { } HelloPrx twoway = HelloPrxHelper.checkedCast( communicator().propertyToProxy("Hello.Proxy").ice_twoway().ice_timeout(-1).ice_secure(false)); if (twoway == null) { Console.Error.WriteLine("invalid proxy"); return(1); } HelloPrx oneway = HelloPrxHelper.uncheckedCast(twoway.ice_oneway()); HelloPrx batchOneway = HelloPrxHelper.uncheckedCast(twoway.ice_batchOneway()); HelloPrx datagram = HelloPrxHelper.uncheckedCast(twoway.ice_datagram()); HelloPrx batchDatagram = HelloPrxHelper.uncheckedCast(twoway.ice_batchDatagram()); bool secure = false; menu(); string line = null; do { try { Console.Out.Write("==> "); Console.Out.Flush(); line = Console.In.ReadLine(); if (line == null) { break; } if (line.Equals("t")) { twoway.sayHello(); } else if (line.Equals("o")) { oneway.sayHello(); } else if (line.Equals("O")) { batchOneway.sayHello(); } else if (line.Equals("d")) { if (secure) { Console.WriteLine("secure datagrams are not supported"); } else { datagram.sayHello(); } } else if (line.Equals("D")) { if (secure) { Console.WriteLine("secure datagrams are not supported"); } else { batchDatagram.sayHello(); } } else if (line.Equals("f")) { batchOneway.ice_flushBatchRequests(); batchDatagram.ice_flushBatchRequests(); } else if (_haveSSL && line.Equals("S")) { secure = !secure; twoway = HelloPrxHelper.uncheckedCast(twoway.ice_secure(secure)); oneway = HelloPrxHelper.uncheckedCast(oneway.ice_secure(secure)); batchOneway = HelloPrxHelper.uncheckedCast(batchOneway.ice_secure(secure)); datagram = HelloPrxHelper.uncheckedCast(datagram.ice_secure(secure)); batchDatagram = HelloPrxHelper.uncheckedCast(batchDatagram.ice_secure(secure)); if (secure) { Console.WriteLine("secure mode is now on"); } else { Console.WriteLine("secure mode is now off"); } } else if (line.Equals("x")) { // Nothing to do } else if (line.Equals("?")) { menu(); } else { Console.WriteLine("unknown command `" + line + "'"); menu(); } } catch (System.Exception ex) { Console.Error.WriteLine(ex); } }while (!line.Equals("x")); return(0); }