|
| CPVREpgDatabase ()=default |
| Create a new instance of the EPG database.
|
|
| ~CPVREpgDatabase () override=default |
| Destroy this instance.
|
|
bool | Open () override |
| Open the database. More...
|
|
void | Close () override |
| Close the database.
|
|
void | Lock () |
| Lock the database.
|
|
void | Unlock () |
| Unlock the database.
|
|
int | GetSchemaVersion () const override |
| Get the minimal database version that is required to operate correctly. More...
|
|
const char * | GetBaseDBName () const override |
| Get the default sqlite database filename. More...
|
|
|
bool | DeleteEpg () |
| Remove all EPG information from the database. More...
|
|
bool | QueueDeleteEpgQuery (const CPVREpg &table) |
| Queue deletionof an EPG table. More...
|
|
bool | QueueDeleteTagQuery (const CPVREpgInfoTag &tag) |
| Write the query to delete the given EPG tag to db query queue. More...
|
|
std::vector< std::shared_ptr< CPVREpg > > | GetAll () |
| Get all EPG tables from the database. Does not get the EPG tables' entries. More...
|
|
std::vector< std::shared_ptr< CPVREpgInfoTag > > | GetAllEpgTags (int iEpgID) const |
| Get all tags for a given EPG id. More...
|
|
std::vector< std::string > | GetAllIconPaths (int iEpgID) const |
| Get all icon paths for a given EPG id. More...
|
|
bool | HasTags (int iEpgID) const |
| Check whether this EPG has any tags. More...
|
|
CDateTime | GetLastEndTime (int iEpgID) const |
| Get the end time of the last tag in this EPG. More...
|
|
std::pair< CDateTime, CDateTime > | GetFirstAndLastEPGDate () const |
| Get the start and end time across all EPGs. More...
|
|
CDateTime | GetMinStartTime (int iEpgID, const CDateTime &minStart) const |
| Get the start time of the first tag with a start time greater than the given min time. More...
|
|
CDateTime | GetMaxEndTime (int iEpgID, const CDateTime &maxEnd) const |
| Get the end time of the first tag with an end time less than the given max time. More...
|
|
std::vector< std::shared_ptr< CPVREpgInfoTag > > | GetEpgTags (const PVREpgSearchData &searchData) const |
| Get all EPG tags matching the given search criteria. More...
|
|
std::shared_ptr< CPVREpgInfoTag > | GetEpgTagByUniqueBroadcastID (int iEpgID, unsigned int iUniqueBroadcastId) const |
| Get an EPG tag given its EPG id and unique broadcast ID. More...
|
|
std::shared_ptr< CPVREpgInfoTag > | GetEpgTagByDatabaseID (int iEpgID, int iDatabaseId) const |
| Get an EPG tag given its EPG id and database ID. More...
|
|
std::shared_ptr< CPVREpgInfoTag > | GetEpgTagByStartTime (int iEpgID, const CDateTime &startTime) const |
| Get an EPG tag given its EPG ID and start time. More...
|
|
std::shared_ptr< CPVREpgInfoTag > | GetEpgTagByMinStartTime (int iEpgID, const CDateTime &minStartTime) const |
| Get the next EPG tag matching the given EPG id and min start time. More...
|
|
std::shared_ptr< CPVREpgInfoTag > | GetEpgTagByMaxEndTime (int iEpgID, const CDateTime &maxEndTime) const |
| Get the next EPG tag matching the given EPG id and max end time. More...
|
|
std::vector< std::shared_ptr< CPVREpgInfoTag > > | GetEpgTagsByMinStartMaxEndTime (int iEpgID, const CDateTime &minStartTime, const CDateTime &maxEndTime) const |
| Get all EPG tags matching the given EPG id, min start time and max end time. More...
|
|
std::vector< std::shared_ptr< CPVREpgInfoTag > > | GetEpgTagsByMinEndMaxStartTime (int iEpgID, const CDateTime &minEndTime, const CDateTime &maxStartTime) const |
| Get all EPG tags matching the given EPG id, min end time and max start time. More...
|
|
bool | QueueDeleteEpgTagsByMinEndMaxStartTimeQuery (int iEpgID, const CDateTime &minEndTime, const CDateTime &maxStartTime) |
| Write the query to delete all EPG tags in range of given EPG id, min end time and max start time to db query queue. . More...
|
|
bool | GetLastEpgScanTime (int iEpgId, CDateTime *lastScan) const |
| Get the last stored EPG scan time. More...
|
|
bool | QueuePersistLastEpgScanTimeQuery (int iEpgId, const CDateTime &lastScanTime) |
| Write the query to update the last scan time for the given EPG to db query queue. More...
|
|
bool | QueueDeleteLastEpgScanTimeQuery (const CPVREpg &table) |
| Write the query to delete the last scan time for the given EPG to db query queue. More...
|
|
int | Persist (const CPVREpg &epg, bool bQueueWrite) |
| Persist an EPG table. It's entries are not persisted. More...
|
|
bool | DeleteEpgTags (int iEpgId, const CDateTime &maxEndTime) |
| Erase all EPG tags with the given epg ID and an end time less than the given time. More...
|
|
bool | DeleteEpgTags (int iEpgId) |
| Erase all EPG tags with the given epg ID. More...
|
|
bool | QueueDeleteEpgTags (int iEpgId) |
| Queue the erase all EPG tags with the given epg ID. More...
|
|
bool | QueuePersistQuery (const CPVREpgInfoTag &tag) |
| Write the query to persist the given EPG tag to db query queue. More...
|
|
int | GetLastEPGId () const |
|
|
std::vector< std::shared_ptr< CPVREpgSearchFilter > > | GetSavedSearches (bool bRadio) const |
| Get all saved searches from the database. More...
|
|
std::shared_ptr< CPVREpgSearchFilter > | GetSavedSearchById (bool bRadio, int iId) const |
| Get the saved search matching the given id. More...
|
|
bool | Persist (CPVREpgSearchFilter &epgSearch) |
| Persist a search. More...
|
|
bool | UpdateSavedSearchLastExecuted (const CPVREpgSearchFilter &epgSearch) |
| Update time last executed for the given search. More...
|
|
bool | Delete (const CPVREpgSearchFilter &epgSearch) |
| Delete a saved search. More...
|
|
bool | DeleteSavedSearches () |
| Delete all saved searches. More...
|
|
bool | IsOpen () |
|
bool | Compress (bool bForce=true) |
|
void | Interrupt () |
|
bool | Open (const DatabaseSettings &db) |
|
void | BeginTransaction () |
|
virtual bool | CommitTransaction () |
|
void | RollbackTransaction () |
|
void | CopyDB (const std::string &latestDb) |
|
void | DropAnalytics () |
|
std::string | PrepareSQL (std::string strStmt,...) const |
|
std::string | GetSingleValue (const std::string &strTable, const std::string &strColumn, const std::string &strWhereClause=std::string(), const std::string &strOrderBy=std::string()) const |
| Get a single value from a table. More...
|
|
std::string | GetSingleValue (const std::string &query) const |
|
std::string | GetSingleValue (const std::string &query, const std::unique_ptr< dbiplus::Dataset > &ds) const |
| Get a single value from a query on a dataset. More...
|
|
int | GetSingleValueInt (const std::string &strTable, const std::string &strColumn, const std::string &strWhereClause=std::string(), const std::string &strOrderBy=std::string()) const |
| Get a single integer value from a table. More...
|
|
int | GetSingleValueInt (const std::string &query) const |
|
int | GetSingleValueInt (const std::string &query, const std::unique_ptr< dbiplus::Dataset > &ds) const |
| Get a single integer value from a query on a dataset. More...
|
|
bool | DeleteValues (const std::string &strTable, const Filter &filter=Filter()) |
| Delete values from a table. More...
|
|
bool | ExecuteQuery (const std::string &strQuery) |
| Execute a query that does not return any result. Note that if BeginMultipleExecute() has been called, the query will be queued until CommitMultipleExecute() is called. More...
|
|
bool | ResultQuery (const std::string &strQuery) const |
| Execute a query that returns a result. More...
|
|
bool | BeginMultipleExecute () |
| Start a multiple execution queue. Any ExecuteQuery() function following this call will be queued rather than executed until CommitMultipleExecute() is performed. NOTE: Queries that rely on any queued execute query will not function as expected during this period! More...
|
|
bool | CommitMultipleExecute () |
| Commit the multiple execution queue to the database. Queries are performed within a transaction, and the transaction is rolled back should any one query fail. More...
|
|
bool | QueueInsertQuery (const std::string &strQuery) |
| Put an INSERT or REPLACE query in the queue. More...
|
|
bool | CommitInsertQueries () |
| Commit all queries in the queue. More...
|
|
size_t | GetInsertQueriesCount () |
| Get the number of INSERT queries in the queue. More...
|
|
bool | QueueDeleteQuery (const std::string &strQuery) |
| Put a DELETE query in the queue. More...
|
|
bool | CommitDeleteQueries () |
| Commit all queued DELETE queries. More...
|
|
size_t | GetDeleteQueriesCount () |
| Get the number of DELETE queries in the queue. More...
|
|
virtual bool | GetFilter (CDbUrl &dbUrl, Filter &filter, SortDescription &sorting) |
|
virtual bool | BuildSQL (const std::string &strBaseDir, const std::string &strQuery, Filter &filter, std::string &strSQL, CDbUrl &dbUrl) |
|
virtual bool | BuildSQL (const std::string &strBaseDir, const std::string &strQuery, Filter &filter, std::string &strSQL, CDbUrl &dbUrl, SortDescription &sorting) |
|
bool | Connect (const std::string &dbName, const DatabaseSettings &db, bool create) |
|