X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=source%2Fmir%2Fstorage%2FDatabase.java;h=ec48710eabd807999ccf68ae2f1bf9b7b40cfca3;hb=cab817b5bb2ff7bd7f18c9a6125715a487ca8cb3;hp=32eb57939d9ce644f273acee43eb3abbffa91ad7;hpb=3d2cd5d73e674f66ed8507e56680a036f6a644f4;p=mir.git diff --git a/source/mir/storage/Database.java b/source/mir/storage/Database.java index 32eb5793..ec48710e 100755 --- a/source/mir/storage/Database.java +++ b/source/mir/storage/Database.java @@ -12,6 +12,9 @@ import com.javaexchange.dbConnectionBroker.*; import mir.storage.StorageObject; import mir.entity.*; import mir.misc.*; +import com.codestudio.sql.*; +import com.codestudio.sql.*; +import com.codestudio.util.*; /** @@ -72,7 +75,7 @@ public class Database implements StorageObject { database_url=theAdaptor.getURL(database_username,database_password,database_host); theLog.printDebugInfo("adding Broker with: " +database_driver+":"+database_url ); MirConfig.addBroker(database_driver,database_url); - myBroker=MirConfig.getBroker(); + //myBroker=MirConfig.getBroker(); } catch (Exception e){ theLog.printError("Bei Konstruktion von Database() with " + theAdaptorName + " -- " +e.toString()); @@ -1043,13 +1046,30 @@ public class Database implements StorageObject { throwSQLException(sqe, "disconnectPool"); } } + + public Connection getPooledCon() throws StorageObjectException { + try{ + Class.forName("com.codestudio.sql.PoolMan").newInstance(); + } catch (Exception e){ + e.printStackTrace(); + throw new StorageObjectException("Could not find the PoolMan Driver"+e.toString()); + } + Connection con = null; + try{ + con = SQLManager.getInstance().requestConnection(); + } catch(SQLException e){ + e.printStackTrace(); + throw new StorageObjectException("No connection to the database"); + } + return con; + } /** * Returns Connection-Object out of the PoolBroker. * * @return Connection Object. */ - public Connection getPooledCon () throws StorageObjectException { + public Connection getPooledCon2() throws StorageObjectException { if (myBroker != null) { Connection con = myBroker.getConnection(); if (con != null) @@ -1064,7 +1084,7 @@ public class Database implements StorageObject { * @param con Connection zur Datenbank * @param stmt Statement-Objekt */ - public void freeConnection (Connection con, Statement stmt) + public void freeConnection2 (Connection con, Statement stmt) throws StorageObjectException { try { if (stmt != null) @@ -1080,6 +1100,12 @@ public class Database implements StorageObject { throw new StorageObjectException("Con was null!"); } } + + public void freeConnection (Connection con, Statement stmt) + throws StorageObjectException { + SQLManager.getInstance().closeStatement(stmt); + SQLManager.getInstance().returnConnection(con); + } /** * Wertet SQLException aus und wirft dannach eine StorageObjectException