diff options
Diffstat (limited to 'java/demo/Ice/session')
-rw-r--r-- | java/demo/Ice/session/Client.java | 340 | ||||
-rw-r--r-- | java/demo/Ice/session/HelloI.java | 4 | ||||
-rw-r--r-- | java/demo/Ice/session/ReapThread.java | 100 | ||||
-rw-r--r-- | java/demo/Ice/session/Server.java | 20 | ||||
-rw-r--r-- | java/demo/Ice/session/SessionFactoryI.java | 14 | ||||
-rw-r--r-- | java/demo/Ice/session/SessionI.java | 92 |
6 files changed, 285 insertions, 285 deletions
diff --git a/java/demo/Ice/session/Client.java b/java/demo/Ice/session/Client.java index 43ff57b1783..9ef0679bada 100644 --- a/java/demo/Ice/session/Client.java +++ b/java/demo/Ice/session/Client.java @@ -13,111 +13,111 @@ public class Client extends Ice.Application { class ShutdownHook extends Thread { - public void - run() - { - System.out.println("Hi"); - cleanup(true); - try - { - communicator().destroy(); - } - catch(Ice.LocalException ex) - { - ex.printStackTrace(); - } - } + public void + run() + { + System.out.println("Hi"); + cleanup(true); + try + { + communicator().destroy(); + } + catch(Ice.LocalException ex) + { + ex.printStackTrace(); + } + } } static private class SessionRefreshThread extends Thread { - SessionRefreshThread(Ice.Logger logger, long timeout, SessionPrx session) - { - _logger = logger; - _session = session; - _timeout = timeout; - } + SessionRefreshThread(Ice.Logger logger, long timeout, SessionPrx session) + { + _logger = logger; + _session = session; + _timeout = timeout; + } - synchronized public void - run() - { - while(!_terminated) - { - try - { - wait(_timeout); - } - catch(InterruptedException e) - { - } - if(!_terminated) - { - try - { - _session.refresh(); - } - catch(Ice.LocalException ex) - { - _logger.warning("SessionRefreshThread: " + ex); - _terminated = true; - } - } - } - } + synchronized public void + run() + { + while(!_terminated) + { + try + { + wait(_timeout); + } + catch(InterruptedException e) + { + } + if(!_terminated) + { + try + { + _session.refresh(); + } + catch(Ice.LocalException ex) + { + _logger.warning("SessionRefreshThread: " + ex); + _terminated = true; + } + } + } + } - synchronized private void - terminate() - { - _terminated = true; - notify(); - } + synchronized private void + terminate() + { + _terminated = true; + notify(); + } - final private Ice.Logger _logger; - final private SessionPrx _session; - final private long _timeout; - private boolean _terminated = false; + final private Ice.Logger _logger; + final private SessionPrx _session; + final private long _timeout; + private boolean _terminated = false; } private static void menu() { System.out.println( - "usage:\n" + - "c: create a new per-client hello object\n" + - "0-9: send a greeting to a hello object\n" + - "s: shutdown the server and exit\n" + - "x: exit\n" + - "t: exit without destroying the session\n" + - "?: help\n"); + "usage:\n" + + "c: create a new per-client hello object\n" + + "0-9: send a greeting to a hello object\n" + + "s: shutdown the server and exit\n" + + "x: exit\n" + + "t: exit without destroying the session\n" + + "?: help\n"); } public int run(String[] args) { - // - // Since this is an interactive demo we want to clear the - // Application installed interrupt callback and install our - // own shutdown hook. - // - setInterruptHook(new ShutdownHook()); + // + // Since this is an interactive demo we want to clear the + // Application installed interrupt callback and install our + // own shutdown hook. + // + setInterruptHook(new ShutdownHook()); java.io.BufferedReader in = new java.io.BufferedReader(new java.io.InputStreamReader(System.in)); - String name; - try - { - do - { - System.out.print("Please enter your name ==> "); - System.out.flush(); - name = in.readLine().trim(); - } - while(name.length() == 0); - } - catch(java.io.IOException ex) - { - ex.printStackTrace(); - return 0; - } + String name; + try + { + do + { + System.out.print("Please enter your name ==> "); + System.out.flush(); + name = in.readLine().trim(); + } + while(name.length() == 0); + } + catch(java.io.IOException ex) + { + ex.printStackTrace(); + return 0; + } Ice.ObjectPrx base = communicator().propertyToProxy("SessionFactory.Proxy"); SessionFactoryPrx factory = SessionFactoryPrxHelper.checkedCast(base); @@ -127,72 +127,72 @@ public class Client extends Ice.Application return 1; } - synchronized(this) - { - _session = factory.create(name); - _refresh = new SessionRefreshThread(communicator().getLogger(), 5000, _session); - _refresh.start(); - } - - java.util.ArrayList hellos = new java.util.ArrayList(); + synchronized(this) + { + _session = factory.create(name); + _refresh = new SessionRefreshThread(communicator().getLogger(), 5000, _session); + _refresh.start(); + } + + java.util.ArrayList hellos = new java.util.ArrayList(); menu(); - try - { - boolean destroy = true; - boolean shutdown = false; - while(true) - { + try + { + boolean destroy = true; + boolean shutdown = false; + while(true) + { System.out.print("==> "); System.out.flush(); - String line = in.readLine(); + String line = in.readLine(); if(line == null) { break; } - if(line.length() > 0 && Character.isDigit(line.charAt(0))) - { - int index; - try - { - index = Integer.parseInt(line); - } - catch(NumberFormatException e) - { - menu(); - continue; - } - if(index < hellos.size()) - { - HelloPrx hello = (HelloPrx)hellos.get(index); - hello.sayHello(); - } - else - { - System.out.println("index is too high. " + hellos.size() + " exist so far. " + - "Use 'c' to create a new hello object."); - } - } + if(line.length() > 0 && Character.isDigit(line.charAt(0))) + { + int index; + try + { + index = Integer.parseInt(line); + } + catch(NumberFormatException e) + { + menu(); + continue; + } + if(index < hellos.size()) + { + HelloPrx hello = (HelloPrx)hellos.get(index); + hello.sayHello(); + } + else + { + System.out.println("index is too high. " + hellos.size() + " exist so far. " + + "Use 'c' to create a new hello object."); + } + } else if(line.equals("c")) { hellos.add(_session.createHello()); - System.out.println("created hello object " + (hellos.size()-1)); + System.out.println("created hello object " + (hellos.size()-1)); } else if(line.equals("s")) { - destroy = false; - shutdown = true; - break; + destroy = false; + shutdown = true; + break; } else if(line.equals("x")) { - break; + break; } else if(line.equals("t")) { - destroy = false; - break; + destroy = false; + break; } else if(line.equals("?")) { @@ -205,24 +205,24 @@ public class Client extends Ice.Application } } - cleanup(destroy); - if(shutdown) - { - factory.shutdown(); - } - } - catch(java.io.IOException ex) - { - ex.printStackTrace(); - } - catch(Ice.LocalException ex) - { - ex.printStackTrace(); - } - finally - { - cleanup(true); - } + cleanup(destroy); + if(shutdown) + { + factory.shutdown(); + } + } + catch(java.io.IOException ex) + { + ex.printStackTrace(); + } + catch(Ice.LocalException ex) + { + ex.printStackTrace(); + } + finally + { + cleanup(true); + } return 0; } @@ -230,28 +230,28 @@ public class Client extends Ice.Application synchronized private void cleanup(boolean destroy) { - // - // The refresher thread must be terminated before destroy is - // called, otherwise it might get ObjectNotExistException. - // - if(_refresh != null) - { - _refresh.terminate(); - try - { - _refresh.join(); - } - catch(InterruptedException e) - { - } - _refresh = null; - } - - if(destroy && _session != null) - { - _session.destroy(); - _session = null; - } + // + // The refresher thread must be terminated before destroy is + // called, otherwise it might get ObjectNotExistException. + // + if(_refresh != null) + { + _refresh.terminate(); + try + { + _refresh.join(); + } + catch(InterruptedException e) + { + } + _refresh = null; + } + + if(destroy && _session != null) + { + _session.destroy(); + _session = null; + } } public static void diff --git a/java/demo/Ice/session/HelloI.java b/java/demo/Ice/session/HelloI.java index e8002b61947..a5c9eca446c 100644 --- a/java/demo/Ice/session/HelloI.java +++ b/java/demo/Ice/session/HelloI.java @@ -14,8 +14,8 @@ public class HelloI extends _HelloDisp public HelloI(String name, int id) { - _name = name; - _id = id; + _name = name; + _id = id; } public void diff --git a/java/demo/Ice/session/ReapThread.java b/java/demo/Ice/session/ReapThread.java index 73af959b456..a0ebc1fdebf 100644 --- a/java/demo/Ice/session/ReapThread.java +++ b/java/demo/Ice/session/ReapThread.java @@ -13,72 +13,72 @@ class ReapThread extends Thread { static class SessionProxyPair { - SessionProxyPair(Demo.SessionPrx p, SessionI s) - { - proxy = p; - session = s; - } + SessionProxyPair(Demo.SessionPrx p, SessionI s) + { + proxy = p; + session = s; + } - Demo.SessionPrx proxy; - SessionI session; + Demo.SessionPrx proxy; + SessionI session; }; synchronized public void run() { - while(!_terminated) - { - try - { - wait(_timeout); - } - catch(InterruptedException e) - { - } - - if(!_terminated) - { - java.util.Iterator p = _sessions.iterator(); - while(p.hasNext()) - { - SessionProxyPair s = (SessionProxyPair)p.next(); - try - { - // - // Session destruction may take time in a - // real-world example. Therefore the current time - // is computed for each iteration. - // - if((System.currentTimeMillis() - s.session.timestamp()) > _timeout) - { - String name = s.proxy.getName(); - s.proxy.destroy(); - System.out.println("The session " + name + " has timed out."); - p.remove(); - } - } - catch(Ice.ObjectNotExistException e) - { - p.remove(); - } - } - } - } + while(!_terminated) + { + try + { + wait(_timeout); + } + catch(InterruptedException e) + { + } + + if(!_terminated) + { + java.util.Iterator p = _sessions.iterator(); + while(p.hasNext()) + { + SessionProxyPair s = (SessionProxyPair)p.next(); + try + { + // + // Session destruction may take time in a + // real-world example. Therefore the current time + // is computed for each iteration. + // + if((System.currentTimeMillis() - s.session.timestamp()) > _timeout) + { + String name = s.proxy.getName(); + s.proxy.destroy(); + System.out.println("The session " + name + " has timed out."); + p.remove(); + } + } + catch(Ice.ObjectNotExistException e) + { + p.remove(); + } + } + } + } } synchronized public void terminate() { - _terminated = true; - notify(); - - _sessions.clear(); + _terminated = true; + notify(); + + _sessions.clear(); } synchronized public void add(SessionPrx proxy, SessionI session) { - _sessions.add(new SessionProxyPair(proxy, session)); + _sessions.add(new SessionProxyPair(proxy, session)); } private final long _timeout = 10 * 1000; // 10 seconds. diff --git a/java/demo/Ice/session/Server.java b/java/demo/Ice/session/Server.java index 8ac9b9eeeab..59bd60dc08f 100644 --- a/java/demo/Ice/session/Server.java +++ b/java/demo/Ice/session/Server.java @@ -15,21 +15,21 @@ public class Server extends Ice.Application run(String[] args) { Ice.ObjectAdapter adapter = communicator().createObjectAdapter("SessionFactory"); - ReapThread reaper = new ReapThread(); - reaper.start(); + ReapThread reaper = new ReapThread(); + reaper.start(); adapter.add(new SessionFactoryI(reaper), communicator().stringToIdentity("SessionFactory")); adapter.activate(); communicator().waitForShutdown(); - reaper.terminate(); - try - { - reaper.join(); - } - catch(InterruptedException e) - { - } + reaper.terminate(); + try + { + reaper.join(); + } + catch(InterruptedException e) + { + } return 0; } diff --git a/java/demo/Ice/session/SessionFactoryI.java b/java/demo/Ice/session/SessionFactoryI.java index b1a7a70d9f2..cd7cdfd3dd0 100644 --- a/java/demo/Ice/session/SessionFactoryI.java +++ b/java/demo/Ice/session/SessionFactoryI.java @@ -13,23 +13,23 @@ class SessionFactoryI extends _SessionFactoryDisp { SessionFactoryI(ReapThread reaper) { - _reaper = reaper; + _reaper = reaper; } public synchronized SessionPrx create(String name, Ice.Current c) { - SessionI session = new SessionI(name); - SessionPrx proxy = SessionPrxHelper.uncheckedCast(c.adapter.addWithUUID(session)); - _reaper.add(proxy, session); - return proxy; + SessionI session = new SessionI(name); + SessionPrx proxy = SessionPrxHelper.uncheckedCast(c.adapter.addWithUUID(session)); + _reaper.add(proxy, session); + return proxy; } public void shutdown(Ice.Current c) { - System.out.println("Shutting down..."); - c.adapter.getCommunicator().shutdown(); + System.out.println("Shutting down..."); + c.adapter.getCommunicator().shutdown(); } private ReapThread _reaper; diff --git a/java/demo/Ice/session/SessionI.java b/java/demo/Ice/session/SessionI.java index bca977d64ee..8ef6ed3534a 100644 --- a/java/demo/Ice/session/SessionI.java +++ b/java/demo/Ice/session/SessionI.java @@ -14,78 +14,78 @@ class SessionI extends _SessionDisp public SessionI(String name) { - _name = name; - _timestamp = System.currentTimeMillis(); - System.out.println("The session " + _name + " is now created."); + _name = name; + _timestamp = System.currentTimeMillis(); + System.out.println("The session " + _name + " is now created."); } synchronized public HelloPrx createHello(Ice.Current c) { - if(_destroy) - { - throw new Ice.ObjectNotExistException(); - } - HelloPrx hello = HelloPrxHelper.uncheckedCast(c.adapter.addWithUUID(new HelloI(_name, _nextId++))); - _objs.add(hello); - return hello; + if(_destroy) + { + throw new Ice.ObjectNotExistException(); + } + HelloPrx hello = HelloPrxHelper.uncheckedCast(c.adapter.addWithUUID(new HelloI(_name, _nextId++))); + _objs.add(hello); + return hello; } synchronized public void refresh(Ice.Current c) { - if(_destroy) - { - throw new Ice.ObjectNotExistException(); - } - _timestamp = System.currentTimeMillis(); + if(_destroy) + { + throw new Ice.ObjectNotExistException(); + } + _timestamp = System.currentTimeMillis(); } synchronized public String getName(Ice.Current c) { - if(_destroy) - { - throw new Ice.ObjectNotExistException(); - } - return _name; + if(_destroy) + { + throw new Ice.ObjectNotExistException(); + } + return _name; } synchronized public void destroy(Ice.Current c) { - if(_destroy) - { - throw new Ice.ObjectNotExistException(); - } + if(_destroy) + { + throw new Ice.ObjectNotExistException(); + } - _destroy = true; - System.out.println("The session " + _name + " is now destroyed."); - try - { - c.adapter.remove(c.id); - java.util.Iterator p = _objs.iterator(); - while(p.hasNext()) - { - c.adapter.remove(((HelloPrx)p.next()).ice_getIdentity()); - } - } - catch(Ice.ObjectAdapterDeactivatedException e) - { - // This method is called on shutdown of the server, in - // which case this exception is expected. - } - _objs.clear(); + _destroy = true; + System.out.println("The session " + _name + " is now destroyed."); + try + { + c.adapter.remove(c.id); + java.util.Iterator p = _objs.iterator(); + while(p.hasNext()) + { + c.adapter.remove(((HelloPrx)p.next()).ice_getIdentity()); + } + } + catch(Ice.ObjectAdapterDeactivatedException e) + { + // This method is called on shutdown of the server, in + // which case this exception is expected. + } + _objs.clear(); } synchronized public long timestamp() { - if(_destroy) - { - throw new Ice.ObjectNotExistException(); - } - return _timestamp; + if(_destroy) + { + throw new Ice.ObjectNotExistException(); + } + return _timestamp; } private String _name; |