Sayonara Player
Public Types | Public Member Functions | Protected Member Functions | List of all members
DB::LibraryDatabase Class Reference
Inheritance diagram for DB::LibraryDatabase:
DB::Albums DB::Artists DB::Tracks DB::Module SC::LibraryDatabase

Public Types

enum  ArtistIDField : uint8_t {
  AlbumArtistID,
  ArtistID
}
 

Public Member Functions

 LibraryDatabase (const QString &connectionName, DbId databaseId, LibraryId libraryId)
 
void changeArtistIdField (ArtistIDField field)
 
void clear ()
 
virtual bool storeMetadata (const MetaDataList &tracks)
 
LibraryId libraryId () const override
 
QString artistIdField () const override
 
QString artistNameField () const override
 
QString trackView () const override
 
QString trackSearchView () const override
 
void updateSearchMode ()
 
MetaDataList insertMissingArtistsAndAlbums (const MetaDataList &tracks)
 
bool fixEmptyAlbums ()
 
virtual void initViews ()
 
virtual bool dbFetchAlbums (Query &q, AlbumList &result) const
 
virtual AlbumId getAlbumID (const QString &album) const
 
virtual bool getAlbumByID (AlbumId id, Album &album) const
 
virtual bool getAlbumByID (AlbumId id, Album &album, bool alsoEmpty) const
 
virtual bool getAllAlbums (AlbumList &result, bool alsoEmpty) const
 
virtual bool getAllAlbumsByArtist (const IdList &artists, AlbumList &result, const ::Library::Filter &filter) const
 
virtual bool getAllAlbumsBySearchString (const ::Library::Filter &filter, AlbumList &result) const
 
virtual AlbumId updateAlbumRating (AlbumId id, Rating rating)
 
virtual bool dbFetchArtists (Query &q, ArtistList &result) const
 
virtual ArtistId getArtistID (const QString &artist) const
 
virtual bool getArtistByID (ArtistId id, Artist &artist) const
 
virtual bool getArtistByID (ArtistId id, Artist &artist, bool also_empty) const
 
virtual bool getAllArtists (ArtistList &result, bool also_empty) const
 
virtual bool getAllArtistsBySearchString (const ::Library::Filter &filter, ArtistList &result) const
 
virtual bool deleteArtist (ArtistId id)
 
virtual ArtistId insertArtistIntoDatabase (const QString &artist)
 
virtual ArtistId insertArtistIntoDatabase (const Artist &artist)
 
void initViews ()
 
virtual bool dbFetchTracks (Query &q, MetaDataList &result) const
 
virtual int getNumTracks () const
 
virtual bool getAllTracks (MetaDataList &result) const
 
virtual bool getAllTracksByAlbum (const IdList &albumsIds, MetaDataList &result) const
 
virtual bool getAllTracksByAlbum (const IdList &albumIds, MetaDataList &result, const ::Library::Filter &filter, int discnumber) const
 
virtual bool getAllTracksByAlbumArtist (const IdList &artistIds, MetaDataList &result) const
 
virtual bool getAllTracksByAlbumArtist (const IdList &artistIds, MetaDataList &result, const ::Library::Filter &filter) const
 
virtual bool getAllTracksByArtist (const IdList &artistIds, MetaDataList &result) const
 
virtual bool getAllTracksByArtist (const IdList &artistIds, MetaDataList &result, const ::Library::Filter &filter) const
 
virtual bool getAllTracksBySearchString (const ::Library::Filter &filter, MetaDataList &result) const
 
virtual bool getAllTracksByPaths (const QStringList &paths, MetaDataList &v_md) const
 
virtual MetaData getTrackById (TrackID id) const
 
virtual bool getTracksByIds (const QList< TrackID > &ids, MetaDataList &v_md) const
 
virtual MetaData getTrackByPath (const QString &path) const
 
virtual bool getMultipleTracksByPath (const QStringList &paths, MetaDataList &v_md) const
 
virtual bool insertTrackIntoDatabase (const MetaData &data, ArtistId artistId, AlbumId albumId)
 
virtual bool insertTrackIntoDatabase (const MetaData &data, ArtistId artistId, AlbumId albumId, ArtistId album_artistId)
 
virtual bool updateTrack (const MetaData &data)
 
virtual bool updateTracks (const MetaDataList &lst)
 
virtual bool renameFilepaths (const QMap< QString, QString > &paths, LibraryId libraryId)
 
virtual bool renameFilepath (const QString &old_path, const QString &new_path, LibraryId libraryId)
 
virtual bool deleteTrack (TrackID id)
 
virtual bool deleteTracks (const MetaDataList &)
 
virtual bool deleteTracks (const IdList &ids)
 
virtual bool deleteInvalidTracks (const QString &library_path, MetaDataList &double_metadata)
 
virtual QString fetchQueryTracks () const
 
virtual Util::Set< GenregetAllGenres () const
 
void deleteAllTracks (bool also_views)
 
QSqlDatabase db () const
 
DbId databaseId () const
 
QString connectionName () const
 
DB::Query runQuery (const QString &query, const QString &error_text) const
 
DB::Query runQuery (const QString &query, const QPair< QString, QVariant > &bindings, const QString &error_text) const
 
DB::Query runQuery (const QString &query, const QMap< QString, QVariant > &bindings, const QString &error_text) const
 
DB::Query update (const QString &tablename, const QMap< QString, QVariant > &field_bindings, const QPair< QString, QVariant > &where_binding, const QString &error_message)
 update More...
 
DB::Query insert (const QString &tablename, const QMap< QString, QVariant > &field_bindings, const QString &error_message)
 

Protected Member Functions

Modulemodule () override
 
const Modulemodule () const override
 
void initSearchMode ()
 
virtual AlbumId insertAlbumIntoDatabase (const QString &album)
 
virtual AlbumId insertAlbumIntoDatabase (const Album &album)
 
virtual void deleteAllAlbums ()
 
virtual void updateAlbumCissearch ()
 
virtual void updateArtistCissearch ()
 
virtual void deleteAllArtists ()
 
virtual void updateTrackCissearch ()
 

Member Function Documentation

◆ update()

DB::Query DB::Module::update ( const QString &  tablename,
const QMap< QString, QVariant > &  field_bindings,
const QPair< QString, QVariant > &  where_binding,
const QString &  error_message 
)
inherited

update

Parameters
tablenameName of table to update
field_bindingsFields to update
where_bindingWhere clause
error_message
Returns