// ----------------------------------------------------------------------------- // CUpnpSecurityDbConnection::OpenDatabaseL // Prepare database for use, create new if not exist. // ----------------------------------------------------------------------------- // void CUpnpSecurityDbConnection::OpenDatabaseL() { EnsureDiskSpaceL(); if ( OpenDb( iDbFileName ) != KErrNone ) { User::LeaveIfError( CreateDbFile( iDbFileName ) ); } if ( !Validate() ) { CreateTablesL(); } }
bool recDb::CreateDb( const wxString& fname, unsigned flags ) { wxFileName dbfile( fname ); if( flags & CREATE_DB_STD_EXT ) { dbfile.SetExt( "tfpd" ); } if( flags & CREATE_DB_ENUM_FN ) { wxString fn = dbfile.GetName(); wxString nfn; for( int i = 2 ; dbfile.FileExists() == true ; i++ ) { nfn.Printf( "%s(%d)", fn.c_str(), i ); dbfile.SetName( nfn ); } } else { if( dbfile.FileExists() == true ) { recMessage( _("File already exists"), _("Create Database") ); // TODO: replace existing file return false; } } if( s_db->IsOpen() ) { recMessage( _("Database already open"), _("Create Database") ); return false; } wxString dbfname = dbfile.GetFullPath(); CreateReturn ret = CreateDbFile( dbfname, DT_Full ); if ( ret == CR_OK ) { s_db->Open( dbfname ); return true; } return false; }