Iterator iter = eventListeners.iterator();
List tempListeners = new ArrayList(eventListeners);  Iterator iter = tempListeners.iterator();
    public void connectionClosed(PooledConnectionHandler connection) throws SQLException {        if (connection != currentConnection) {            throw new IllegalArgumentException(                "Notified about a connection that is not under my control.");        }        //cleanCache();        currentConnection = null;        ConnectionEvent event = new ConnectionEvent(this);        Iterator iter = eventListeners.iterator();        while (iter.hasNext()) {            ((ConnectionEventListener)iter.next()).connectionClosed(event);        }    }