getODMGImplementation();
// Find the connection repository info
ConnectionRepository cr = MetadataManager.getInstance().connectionRepository();
PBKey connKey = cr.getStandardPBKeyForJcdAlias( "pv" );
JdbcConnectionDescriptor connDesc = cr.getDescriptor( connKey );
// Set up the OJB connection with parameters from photovault.properties
if ( dbDesc.getInstanceType() == PVDatabase.TYPE_EMBEDDED ) {
connDesc.setDriver( "org.apache.derby.jdbc.EmbeddedDriver" );
connDesc.setDbms( "derby" );
connDesc.setSubProtocol( "derby" );
connDesc.setDbAlias( "photovault" );
File derbyDir = new File( dbDesc.getEmbeddedDirectory(), "derby" );
System.setProperty( "derby.system.home", derbyDir.getAbsolutePath() );
if ( ( user != null && user.length() != 0 ) ||
( passwd != null && passwd.length() != 0 ) ) {
throw new PhotovaultException( "No username or password allowed for Derby database" );
}
} else {
// This is a MySQL database
String dbhost = dbDesc.getHost();
String dbname = dbDesc.getDbName();
connDesc.setDbAlias( "//" + dbhost + "/" + dbname );
connDesc.setUserName( user );
connDesc.setPassWord( passwd );
connDesc.setDriver( "com.mysql.jdbc.Driver" );
connDesc.setDbms( "MySQL" );
connDesc.setSubProtocol( "mysql" );
}
// Open the database connection
db = odmg.newDatabase();