// to override with connection specific classes
Class clazz = Class.forName(className, false, loader);
ConnectionProvider connectionProvider = (ConnectionProvider) clazz.newInstance();
connectionProvider.initialize(connectionSettings);
return connectionProvider;
} catch (IllegalAccessException e) {
throw new ConnectionException("Could not access ConnectionClass " + className, e);
} catch (InstantiationException e) {