PHISImageCache::PHISImageCache( PHIResponseRec *resp, const QString &path, QObject *parent ) : QObject( parent ), _resp( resp ), _path( path ) { qDebug( "PHISImageCache::PHISImageCache()" ); Q_ASSERT( resp ); _id=PHISPageCache::getDbId(); QSqlDatabase db=QSqlDatabase::addDatabase( QStringLiteral( "QSQLITE" ), QString::number( _id ) ); db.setDatabaseName( path+QDir::separator()+QLatin1String( "db" )+QDir::separator() +QLatin1String( "phiimgcache.db" ) ); QDir dbdir( path ); if ( !dbdir.exists() ) dbdir.mkpath( path ); if ( !db.open() ) { _resp->log( PHILOGERR, PHIRC_DB_ERROR, QObject::tr( "Could not open image cache DB %1. Images will not be deleted automatically." ) .arg( db.databaseName() ) ); return; } QStringList tables=db.tables(); if ( tables.isEmpty() ) { QSqlQuery query( db ); if ( !query.exec( QString::fromLatin1( PHICREATETABLE ) ) ) { _resp->log( PHILOGERR, PHIRC_QUERY_ERROR, QObject::tr( "Could not create image cache table: %1" ) .arg( query.lastError().text() ) ); } } }
NS_IMETHODIMP nsAbMDBDirectory::HasDirectory(nsIAbDirectory *dir, bool *hasDir) { if (!hasDir) return NS_ERROR_NULL_POINTER; nsresult rv; nsCOMPtr<nsIAbMDBDirectory> dbdir(do_QueryInterface(dir, &rv)); NS_ENSURE_SUCCESS(rv, rv); bool bIsMailingList = false; dir->GetIsMailList(&bIsMailingList); if (bIsMailingList) { nsCOMPtr<nsIAddrDatabase> database; rv = GetDatabase(getter_AddRefs(database)); if (NS_SUCCEEDED(rv)) rv = database->ContainsMailList(dir, hasDir); } return rv; }