public synchronized MDatabaseConnection popDatabaseConnection() throws MDatabaseConnectionFailureException {
LinkedList<MDatabaseConnection> databaseConnections = this.getDatabaseConnections();
- MDatabaseConnection databaseConnection = databaseConnections.removeLast();
+ MDatabaseConnection databaseConnection = null;
+ if (0 == databaseConnections.size()) {
+ databaseConnection = this.getDatabaseConnectionGenerator().getNewDatabaseConnection();
+ }
+ else {
+ databaseConnection = databaseConnections.removeLast();
+ }
if (this.getMinimumSize() > databaseConnections.size()) {
databaseConnections.add(this.getDatabaseConnectionGenerator().getNewDatabaseConnection());
}