@Override public int run(String[] args) { args = communicator().getProperties().parseCommandLineOptions("Discover", args); Ice.ObjectAdapter adapter = communicator().createObjectAdapter("DiscoverReply"); DiscoverReplyI replyI = new DiscoverReplyI(); DiscoverReplyPrx reply = DiscoverReplyPrxHelper.uncheckedCast(adapter.addWithUUID(replyI)); adapter.activate(); DiscoverPrx discover = DiscoverPrxHelper.uncheckedCast( communicator().propertyToProxy("Discover.Proxy").ice_datagram()); discover.lookup(reply); Ice.ObjectPrx base = replyI.waitReply(2000); if (base == null) { System.err.println(appName() + ": no replies"); return 1; } HelloPrx hello = HelloPrxHelper.checkedCast(base); if (hello == null) { System.err.println(appName() + ": invalid reply"); return 1; } hello.sayHello(); return 0; }
@Override public int run(String[] args) { if (args.length > 0) { System.err.println(appName() + ": too many arguments"); return 1; } HelloPrx hello = HelloPrxHelper.uncheckedCast(communicator().propertyToProxy("Hello.Proxy")); if (hello == null) { System.err.println(appName() + ": Hello.Proxy not set"); return 1; } hello.sayHello(); return 0; }
@Override public synchronized void destroy(Ice.Current c) { if (_destroy) { throw new Ice.ObjectNotExistException(); } _destroy = true; System.out.println("The session " + _name + " is now destroyed."); try { c.adapter.remove(c.id); for (HelloPrx p : _objs) { c.adapter.remove(p.ice_getIdentity()); } } catch (Ice.ObjectAdapterDeactivatedException e) { // This method is called on shutdown of the server, in // which case this exception is expected. } _objs.clear(); }
@Override public int run(String[] args) { if (args.length > 0) { System.err.println(appName() + ": too many arguments"); return 1; } // // Since this is an interactive demo we want to clear the // Application installed interrupt callback and install our // own shutdown hook. // setInterruptHook(new ShutdownHook()); // // First we try to connect to the object with the `hello' // identity. If it's not registered with the registry, we // search for an object with the ::Demo::Hello type. // HelloPrx hello = null; try { hello = HelloPrxHelper.checkedCast(communicator().stringToProxy("hello")); } catch (Ice.NotRegisteredException ex) { IceGrid.QueryPrx query = IceGrid.QueryPrxHelper.checkedCast(communicator().stringToProxy("DemoIceGrid/Query")); hello = HelloPrxHelper.checkedCast(query.findObjectByType("::Demo::Hello")); } if (hello == null) { System.err.println("couldn't find a `::Demo::Hello' object"); return 1; } menu(); java.io.BufferedReader in = new java.io.BufferedReader(new java.io.InputStreamReader(System.in)); String line = null; do { try { System.out.print("==> "); System.out.flush(); line = in.readLine(); if (line == null) { break; } if (line.equals("t")) { hello.sayHello(); } else if (line.equals("s")) { hello.shutdown(); } else if (line.equals("x")) { // Nothing to do } else if (line.equals("?")) { menu(); } else { System.out.println("unknown command `" + line + "'"); menu(); } } catch (java.io.IOException ex) { ex.printStackTrace(); } catch (Ice.LocalException ex) { ex.printStackTrace(); } } while (!line.equals("x")); return 0; }
public int run(String[] args) { if (args.length > 0) { System.err.println(appName() + ": too many arguments"); return 1; } // // Since this is an interactive demo we want to clear the // Application installed interrupt callback and install our // own shutdown hook. // setInterruptHook(new ShutdownHook()); HelloPrx twoway = HelloPrxHelper.checkedCast( communicator() .propertyToProxy("Hello.Proxy") .ice_twoway() .ice_timeout(-1) .ice_secure(false)); if (twoway == null) { System.err.println("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(); boolean secure = false; int timeout = -1; int delay = 0; menu(); java.io.BufferedReader in = new java.io.BufferedReader(new java.io.InputStreamReader(System.in)); String line = null; do { try { System.out.print("==> "); System.out.flush(); line = 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) { System.out.println("secure datagrams are not supported"); } else { datagram.sayHello(delay); } } else if (line.equals("D")) { if (secure) { System.out.println("secure datagrams are not supported"); } else { batchDatagram.sayHello(delay); } } else if (line.equals("f")) { communicator().flushBatchRequests(); } else if (line.equals("T")) { if (timeout == -1) { timeout = 2000; } else { timeout = -1; } twoway = (HelloPrx) twoway.ice_timeout(timeout); oneway = (HelloPrx) oneway.ice_timeout(timeout); batchOneway = (HelloPrx) batchOneway.ice_timeout(timeout); if (timeout == -1) { System.out.println("timeout is now switched off"); } else { System.out.println("timeout is now set to 2000ms"); } } else if (line.equals("P")) { if (delay == 0) { delay = 2500; } else { delay = 0; } if (delay == 0) { System.out.println("server delay is now deactivated"); } else { System.out.println("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) { System.out.println("secure mode is now on"); } else { System.out.println("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 { System.out.println("unknown command `" + line + "'"); menu(); } } catch (java.io.IOException ex) { ex.printStackTrace(); } catch (Ice.LocalException ex) { ex.printStackTrace(); } } while (!line.equals("x")); return 0; }