package hirondelle.fish.test.doubles;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.logging.Logger;
import java.sql.DriverManager;
import hirondelle.web4j.config.ConnectionSrc;
import hirondelle.web4j.database.ConnectionSource;
import hirondelle.web4j.database.DAOException;
import hirondelle.web4j.util.Util;
public final class FakeConnectionSrc extends ConnectionSrc {
protected Connection getConnectionByName(String aDbName) throws DAOException {
if ( ! getDatabaseNames().contains(aDbName)) {
throw new IllegalArgumentException("Unknown database name : " + Util.quote(aDbName));
}
String USER_NAME = "myname";
String PASSWORD = "mypassword";
String DB_CONN_STRING = getConnectionString(aDbName);
String DRIVER_CLASS_NAME = "org.gjt.mm.mysql.Driver";
Connection result = null;
try {
Class.forName(DRIVER_CLASS_NAME).newInstance();
}
catch (Exception ex){
fLogger.severe("Check classpath. Cannot load db driver: " + DRIVER_CLASS_NAME);
}
try {
result = DriverManager.getConnection(DB_CONN_STRING , USER_NAME, PASSWORD);
}
catch (SQLException e){
fLogger.severe( "Driver loaded, but cannot connect to db: " + DB_CONN_STRING);
}
return result;
}
private static final Logger fLogger = Util.getLogger(FakeConnectionSrc.class);
}