Bug 208512 Classes in package org.eclipse.birt.data.engine.odaconsumer have multithreads issues
Classes in package org.eclipse.birt.data.engine.odaconsumer are not thread-safe.
data/org.eclipse.birt.data/src/org/eclipse/birt/data/engine/odaconsumer/ConnectionManager.java
*
 ******************************************************************************
 */ 
package org.eclipse.birt.data.engine.odaconsumer;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
import java.util.logging.Level;
import org.eclipse.birt.data.engine.core.DataException;
import org.eclipse.birt.data.engine.i18n.ResourceConstants;
import org.eclipse.datatools.connectivity.oda.IConnection;
import org.eclipse.datatools.connectivity.oda.IDriver;
import org.eclipse.datatools.connectivity.oda.OdaException;
import org.eclipse.datatools.connectivity.oda.consumer.services.IPropertyProvider;
import org.eclipse.datatools.connectivity.oda.profile.Constants;
/**
 * ConnectionManager manages a set of data source connections.  Calling 
 * <code>getInstance</code> will return an instance of <code>ConnectionManager</code>.
 * When the method <code>openConnection</code> is called, the 
 * <code>ConnectionManager</code> will attempt to open and return a 
 * <code>Connection</code> instance of the data source extension 
 * supported by that driver.
 */
public class ConnectionManager
{
	private static ConnectionManager sm_instance = null;
    
    private static final String DTP_CONN_PROFILE_APPL_ID = Constants.CONN_PROFILE_APPL_ID;