1 21 package oracle.toplink.essentials.internal.sequencing; 23 24 import oracle.toplink.essentials.internal.databaseaccess.Accessor; 25 import oracle.toplink.essentials.threetier.ConnectionPool; 26 27 class ServerSessionConnectionHandler implements SequencingConnectionHandler { 28 ServerSessionConnectionHandler(ConnectionPool pool) { 29 this.pool = pool; 30 } 31 32 ConnectionPool pool; 33 34 public void onConnect() { 35 if (!isConnected()) { 36 pool.startUp(); 37 } 38 } 39 40 public boolean isConnected() { 41 return pool.isConnected(); 42 } 43 44 public Accessor acquireAccessor() { 45 return pool.acquireConnection(); 46 } 47 48 public void releaseAccessor(Accessor accessor) { 49 pool.releaseConnection(accessor); 50 } 51 52 public void onDisconnect() { 53 if (isConnected()) { 54 pool.shutDown(); 55 } 56 } 57 58 protected void finalize() throws Throwable { 59 onDisconnect(); 60 } 61 } 62 | Popular Tags |