Sayonara Player
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
DatabaseConnector Class Reference

Public Types

enum  ArtistIDField : quint8 {
  AlbumArtistID,
  ArtistID
}
 
enum  PlaylistChooserType : quint8 {
  OnlyTemporary =1,
  OnlyPermanent =2,
  TemporaryAndPermanent =3
}
 

Public Member Functions

virtual void clean_up ()
 
void change_artistid_field (ArtistIDField field)
 
virtual void close_db ()
 
virtual bool is_initialized ()
 
virtual void transaction ()
 
virtual void commit ()
 
virtual void rollback ()
 
quint8 get_id ()
 
virtual bool db_fetch_albums (SayonaraQuery &q, AlbumList &result)
 
virtual int getAlbumID (const QString &album)
 
virtual bool getAlbumByID (const int &id, Album &album, bool also_empty=false)
 
virtual bool getAllAlbums (AlbumList &result, bool also_empty)
 
virtual bool getAllAlbums (AlbumList &result, Library::SortOrder sortorder=Library::SortOrder::AlbumNameAsc, bool also_empty=false)
 
virtual bool getAllAlbumsByArtist (int artist, AlbumList &result)
 
virtual bool getAllAlbumsByArtist (int artist, AlbumList &result, const Library::Filter &filter, Library::SortOrder sortorder=Library::SortOrder::AlbumNameAsc)
 
virtual bool getAllAlbumsByArtist (IDList artists, AlbumList &result)
 
virtual bool getAllAlbumsByArtist (IDList artists, AlbumList &result, const Library::Filter &filter, Library::SortOrder sortorder=Library::SortOrder::AlbumNameAsc)
 
virtual bool getAllAlbumsBySearchString (const Library::Filter &filter, AlbumList &result, Library::SortOrder sortorder=Library::SortOrder::AlbumNameAsc)
 
virtual int insertAlbumIntoDatabase (const QString &album)
 
virtual int insertAlbumIntoDatabase (const Album &album)
 
virtual int updateAlbum (const Album &album)
 
virtual void updateAlbumCissearch ()
 
Library::SearchModeMask search_mode ()
 
Library::SearchModeMask search_mode ()
 
void update_search_mode ()
 
void update_search_mode ()
 
virtual bool db_fetch_artists (SayonaraQuery &q, ArtistList &result)
 
virtual int getArtistID (const QString &artist)
 
virtual bool getArtistByID (int id, Artist &artist, bool also_empty=false)
 
virtual bool getAllArtists (ArtistList &result, bool also_empty)
 
virtual bool getAllArtists (ArtistList &result, Library::SortOrder sortorder=Library::SortOrder::ArtistNameAsc, bool also_empty=false)
 
virtual bool getAllArtistsBySearchString (const Library::Filter &filter, ArtistList &result, Library::SortOrder sortorder=Library::SortOrder::ArtistNameAsc)
 
virtual int insertArtistIntoDatabase (const QString &artist)
 
virtual int insertArtistIntoDatabase (const Artist &artist)
 
virtual int updateArtist (const Artist &artist)
 
virtual void updateArtistCissearch ()
 
virtual bool db_fetch_tracks (SayonaraQuery &q, MetaDataList &result)
 
virtual bool getAllTracksByAlbum (int album, MetaDataList &result)
 
virtual bool getAllTracksByAlbum (int album, MetaDataList &result, const Library::Filter &filter, Library::SortOrder sortorder=Library::SortOrder::TrackArtistAsc, int discnumber=-1)
 
virtual bool getAllTracksByAlbum (IDList albums, MetaDataList &result)
 
virtual bool getAllTracksByAlbum (IDList albums, MetaDataList &result, const Library::Filter &filter, Library::SortOrder sortorder=Library::SortOrder::TrackArtistAsc)
 
virtual bool getAllTracksByArtist (int artist, MetaDataList &result)
 
virtual bool getAllTracksByArtist (int artist, MetaDataList &result, const Library::Filter &filter, Library::SortOrder sortorder=Library::SortOrder::TrackArtistAsc)
 
virtual bool getAllTracksByArtist (IDList artists, MetaDataList &result)
 
virtual bool getAllTracksByArtist (IDList artists, MetaDataList &result, const Library::Filter &filter, Library::SortOrder sortorder=Library::SortOrder::TrackArtistAsc)
 
virtual bool getAllTracksBySearchString (const Library::Filter &filter, MetaDataList &result, Library::SortOrder sortorder=Library::SortOrder::TrackArtistAsc)
 
virtual bool insertTrackIntoDatabase (const MetaData &data, int artist_id, int album_id)
 
virtual bool insertTrackIntoDatabase (const MetaData &data, int artist_id, int album_id, int album_artist_id)
 
virtual bool updateTrack (const MetaData &data)
 
virtual bool updateTracks (const MetaDataList &lst)
 
virtual bool getAllTracks (MetaDataList &returndata, Library::SortOrder sortorder=Library::SortOrder::TrackArtistAsc)
 
virtual MetaData getTrackById (int id)
 
virtual MetaData getTrackByPath (const QString &path)
 
virtual bool getMultipleTracksByPath (const QStringList &paths, MetaDataList &v_md)
 
virtual bool deleteTrack (int id)
 
virtual bool deleteTracks (const MetaDataList &)
 
virtual bool deleteTracks (const IDList &ids)
 
virtual bool deleteInvalidTracks ()
 
virtual QStringList getAllGenres ()
 
virtual void updateTrackCissearch ()
 
bool updateTrackDates ()
 
virtual void dropIndexes ()
 
virtual void createIndexes ()
 
virtual bool storeMetadata (const MetaDataList &v_md)
 
virtual void addAlbumArtists ()
 
bool searchBookmarks (int track_id, QMap< quint32, QString > &bookmarks)
 
bool insertBookmark (int track_id, quint32 time, QString text)
 
bool removeBookmark (int track_id, quint32 time)
 
bool removeAllBookmarks (int track_id)
 
bool getAllPlaylistSkeletons (CustomPlaylistSkeletons &skeletons, DatabasePlaylist::PlaylistChooserType type, Playlist::SortOrder sortorder=Playlist::SortOrder::NameAsc)
 
bool getPlaylistSkeletonById (CustomPlaylistSkeleton &skeleton)
 
int createPlaylist (QString playlist_name, bool temporary)
 
bool renamePlaylist (int id, const QString &new_name)
 
int getPlaylistIdByName (const QString &name)
 
bool getPlaylistById (CustomPlaylist &pl)
 
bool storePlaylist (const MetaDataList &vec_md, QString playlist_name, bool temporary)
 
bool storePlaylist (const MetaDataList &vec_md, int playlist_id, bool temporary)
 
bool deletePlaylist (int playlist_id)
 
bool emptyPlaylist (int playlist_id)
 
bool insertTrackIntoPlaylist (const MetaData &md, int playlist_id, int pos)
 
bool getAllPodcasts (QMap< QString, QString > &result)
 
bool deletePodcast (const QString &name)
 
bool addPodcast (const QString &name, const QString &url)
 
bool updatePodcastUrl (const QString &name, const QString &url)
 
bool load_setting (QString key, QString &val)
 
bool store_setting (QString key, const QVariant &val)
 
bool load_settings ()
 
bool store_settings ()
 
bool getAllStreams (QMap< QString, QString > &result)
 
bool deleteStream (const QString &name)
 
bool addStream (const QString &name, const QString &url)
 
bool updateStreamUrl (const QString &name, const QString &url)
 
QList< RawColorStyleget_raw_color_styles ()
 
bool insert_raw_color_style_to_db (const RawColorStyle &rcs)
 
bool update_raw_color_style (const RawColorStyle &rcs)
 
bool raw_color_style_exists (QString name)
 
bool delete_raw_color_style (QString name)
 

Protected Member Functions

bool updateAlbumCissearchFix ()
 
bool updateArtistCissearchFix ()
 
bool updateTrackCissearchFix ()
 
virtual bool apply_fixes ()
 
void change_artistid_field (const QString &field)
 
void change_artistid_field (const QString &field)
 
void change_artistid_field (const QString &field)
 
virtual bool exists ()
 
virtual bool create_db ()
 
virtual bool open_db ()
 
virtual bool check_and_insert_column (const QString &tablename, const QString &column, const QString &sqltype, const QString &default_value=QString())
 
virtual bool check_and_create_table (const QString &tablename, const QString &sql_create_str)
 
virtual bool check_and_drop_table (const QString &tablename)
 
virtual QString fetch_query_artists (bool also_empty=false) const
 
QString append_track_sort_string (QString querytext, Library::SortOrder sort)
 

Protected Attributes

QSqlDatabase _database
 
QString _db_path
 
QString _db_name
 
QString _db_dir
 
quint8 _db_id
 
bool _initialized
 
QSqlDatabase _db
 
QSqlDatabase _db
 
QSqlDatabase _db
 
quint8 _module_db_id
 
quint8 _module_db_id
 
quint8 _module_db_id
 
QSqlDatabase _db
 
quint8 _module_db_id
 
QSqlDatabase _db
 
quint8 _module_db_id
 
QSqlDatabase _db
 
quint8 _module_db_id
 
QSqlDatabase _db
 
quint8 _module_db_id
 
QSqlDatabase _db
 
quint8 _module_db_id
 
QSqlDatabase _db
 
quint8 _module_db_id
 

Member Data Documentation

◆ _initialized

bool AbstractDatabase::_initialized
protectedinherited

Check if db of m_databaseFileContainer is existent

Returns
true if we can load the db false if not
Inheritance diagram for DatabaseConnector:
LibraryDatabase DatabaseBookmarks DatabasePlaylist DatabasePodcasts DatabaseSettings DatabaseStreams DatabaseVisStyles DatabaseModule DatabaseModule DatabaseModule DatabaseModule DatabaseModule DatabaseModule DatabaseLibrary DatabaseTracks DatabaseArtists DatabaseAlbums AbstractDatabase