diff options
author | Matthew Newhook <matthew@zeroc.com> | 2009-01-09 11:49:20 -0330 |
---|---|---|
committer | Matthew Newhook <matthew@zeroc.com> | 2009-01-09 11:49:20 -0330 |
commit | 9117e9040c02465cb9f0a1e0bcc6aa963f71c61a (patch) | |
tree | ef345adb5612327136e70c8207182e015dfc6349 /java/demo/Database/library/RunParser.java | |
parent | Fixed NRVO demo depend file (diff) | |
parent | http://bugzilla.zeroc.com/bugzilla/show_bug.cgi?id=3553. database demo uses w... (diff) | |
download | ice-9117e9040c02465cb9f0a1e0bcc6aa963f71c61a.tar.bz2 ice-9117e9040c02465cb9f0a1e0bcc6aa963f71c61a.tar.xz ice-9117e9040c02465cb9f0a1e0bcc6aa963f71c61a.zip |
Merge commit 'origin/R3_3_branch'
Conflicts:
cs/demo/WCF/latency/Client.cs
cs/demo/WCF/latency_m/Client.cs
cs/demo/WCF/throughput/Client.cs
cs/demo/WCF/throughput_m/Client.cs
cs/demo/WCF/throughput_m/Service.cs
java/demo/Database/library/BookI.java
java/demo/Database/library/BookQueryResultI.java
java/demo/Database/library/Client.java
java/demo/Database/library/ConnectionPool.java
java/demo/Database/library/DispatchInterceptorI.java
java/demo/Database/library/Glacier2Session.ice
java/demo/Database/library/Glacier2SessionManagerI.java
java/demo/Database/library/Grammar.java
java/demo/Database/library/Library.ice
java/demo/Database/library/LibraryI.java
java/demo/Database/library/Parser.java
java/demo/Database/library/ReapThread.java
java/demo/Database/library/RunParser.java
java/demo/Database/library/SQLRequestContext.java
java/demo/Database/library/Scanner.java
java/demo/Database/library/Server.java
java/demo/Database/library/Session.ice
java/demo/Database/library/SessionFactoryI.java
java/demo/Database/library/SessionI.java
java/demo/Database/library/Token.java
java/demo/Database/library/build.xml
java/demo/Database/library/config.client
Diffstat (limited to 'java/demo/Database/library/RunParser.java')
-rw-r--r-- | java/demo/Database/library/RunParser.java | 102 |
1 files changed, 49 insertions, 53 deletions
diff --git a/java/demo/Database/library/RunParser.java b/java/demo/Database/library/RunParser.java index e616218df9e..17a21db127e 100644 --- a/java/demo/Database/library/RunParser.java +++ b/java/demo/Database/library/RunParser.java @@ -21,56 +21,6 @@ class RunParser public void refresh(); } - static class Glacier2SessionAdapter implements SessionAdapter - { - public LibraryPrx getLibrary() - { - return _session.getLibrary(); - } - - public void destroy() - { - _session.destroy(); - } - - public void refresh() - { - _session.refresh(); - } - - Glacier2SessionAdapter(Glacier2SessionPrx session) - { - _session = session; - } - - private Glacier2SessionPrx _session; - } - - static class DemoSessionAdapter implements SessionAdapter - { - public LibraryPrx getLibrary() - { - return _session.getLibrary(); - } - - public void destroy() - { - _session.destroy(); - } - - public void refresh() - { - _session.refresh(); - } - - DemoSessionAdapter(SessionPrx session) - { - _session = session; - } - - private SessionPrx _session; - } - static private class SessionRefreshThread extends Thread { SessionRefreshThread(Ice.Logger logger, long timeout, SessionAdapter session) @@ -124,7 +74,7 @@ class RunParser runParser(String appName, String[] args, Ice.Communicator communicator) { SessionAdapter session; - Glacier2.RouterPrx router = Glacier2.RouterPrxHelper.uncheckedCast(communicator.getDefaultRouter()); + final Glacier2.RouterPrx router = Glacier2.RouterPrxHelper.uncheckedCast(communicator.getDefaultRouter()); long timeout; if(router != null) { @@ -166,7 +116,36 @@ class RunParser ex.printStackTrace(); } } - session = new Glacier2SessionAdapter(Glacier2SessionPrxHelper.uncheckedCast(glacier2session)); + final Glacier2SessionPrx sess = Glacier2SessionPrxHelper.uncheckedCast(glacier2session); + session = new SessionAdapter() + { + public LibraryPrx getLibrary() + { + return sess.getLibrary(); + } + + public void destroy() + { + try + { + router.destroySession(); + } + catch(Glacier2.SessionNotExistException ex) + { + } + catch(Ice.ConnectionLostException ex) + { + // + // Expected: the router closed the connection. + // + } + } + + public void refresh() + { + sess.refresh(); + } + }; } else { @@ -178,7 +157,24 @@ class RunParser return 1; } - session = new DemoSessionAdapter(factory.create()); + final SessionPrx sess = factory.create(); + session = new SessionAdapter() + { + public LibraryPrx getLibrary() + { + return sess.getLibrary(); + } + + public void destroy() + { + sess.destroy(); + } + + public void refresh() + { + sess.refresh(); + } + }; timeout = factory.getSessionTimeout()/2; } SessionRefreshThread refresh = new SessionRefreshThread(communicator.getLogger(), timeout, session); |