in src/main/java/org/apache/servicemix/jdbc/JDBCAdapterFactory.java [35:64]
public static JDBCAdapter getAdapter(Connection connection) {
JDBCAdapter adapter = null;
try {
// Make the filename file system safe.
String driverName = connection.getMetaData().getDriverName();
driverName = driverName.replaceAll("[^a-zA-Z0-9\\-]", "_").toLowerCase();
try {
adapter = (JDBCAdapter) factoryFinder.newInstance(driverName);
LOG.info("Database driver recognized: [" + driverName + "]");
} catch (Throwable e) {
LOG.warn("Database driver NOT recognized: [" + driverName
+ "]. Will use default JDBC implementation.");
}
} catch (SQLException e) {
LOG.warn("JDBC error occurred while trying to detect database type. Will use default JDBC implementation: "
+ e.getMessage());
log("Failure details: ", e);
}
// Use the default JDBC adapter if the
// Database type is not recognized.
if (adapter == null) {
adapter = new DefaultJDBCAdapter();
}
return adapter;
}