_useBytesMethodsForBlob = details.isUseBytesMethodsForBlob();
_bigIntType = details.getBigintType();
String connectionPoolType = settings.getConnectionPoolType() == null ? DefaultConnectionProviderFactory.TYPE : settings.getConnectionPoolType();
JDBCConnectionProviderFactory connectionProviderFactory =
JDBCConnectionProviderFactory.FACTORIES.get(connectionPoolType);
if(connectionProviderFactory == null)
{
_logger.warn("Unknown connection pool type: " + connectionPoolType + ". No connection pooling will be used");
connectionProviderFactory = new DefaultConnectionProviderFactory();
}
try
{
Map<String, String> providerAttributes = new HashMap<>();
Set<String> providerAttributeNames = new HashSet<String>(connectionProviderFactory.getProviderAttributeNames());
providerAttributeNames.retainAll(parent.getContextKeys(false));
for(String attr : providerAttributeNames)
{
providerAttributes.put(attr, parent.getContextValue(String.class, attr));
}
_connectionProvider = connectionProviderFactory.getConnectionProvider(_connectionURL,
settings.getUsername(),
getPlainTextPassword(settings),
providerAttributes);
}
catch (SQLException e)