|
|
```
|
|
|
Soubor: zfo.db
|
|
|
2 tabulky: service_info, stored_files_messages
|
|
|
```
|
|
|
|
|
|
### Operace čtení, nemění stav db, vrací pouze určitou hodnotu z tabulky:
|
|
|
* `QByteArray getZfoContentFromDb(qint64 msgId, bool isTestAccount)`
|
|
|
* vrací obsah zfo v base64. Vstupem je ID zprávy a informace, jestli se jedná o testovací účet.
|
|
|
* `int getZfoSizeFromDb(qint64 msgId, bool isTestAccount)`
|
|
|
* vrací velikost zfo v bytech. Vstupem je ID zprávy a informace, jestli se jedná o testovací účet.
|
|
|
* `bool isDbSizeExceeded(unsigned int currentLimit)`
|
|
|
* vrací true, jestli velikost databáze překročila stanovený limit. Vstupem je aktuální limit velikosti databáze.
|
|
|
|
|
|
### Operace, které modifikují obsah tabulek, mění stav databáze:
|
|
|
* `void deleteZfo(qint64 msgId, bool isTestAccount, int zfoSize)`
|
|
|
* odstraní zfo z databáze. Vstupem je ID zprávy, informace jestli se jedná o testovací účet, velikost zfo v bytech.
|
|
|
* ` bool insertZfoToDb(qint64 msgId, bool isTestAccount, int zfoSize, const QByteArray &zfoBase64Data, unsigned int sizeLimit)`
|
|
|
* vloží nebo aktualizuje zfo v databázi. Vstupem je ID zprávy, informace jestli se jedná o testovací účet, velikost zfo, obsah zfo a typ zprávy. Vrací true, když se akce provede úspěšně.
|
|
|
* `bool releaseDb(unsigned int releaseSpace)`
|
|
|
* odstraní staré zfo, jestli velikost databáze přesáhne limit. Vstupem je velikost, o kolik je třeba zmenšit databázi. Vrací true, když se akce provede úspěšně.
|
|
|
* `void updateZfoLastAccessTime(qint64 msgId, bool isTestAccount)`
|
|
|
* aktualizuje čas posledního použití zfo. Vstupem je ID zprávy a informace, jestli se jedná o testovací účet.
|
|
|
|
|
|
### Operace pro manipulaci s databází:
|
|
|
* `bool openDb(const QString &fileName, bool storeToDisk)`
|
|
|
* metoda otevře databázi. Vstupem je příznak, jestli se má databáze otevřít v paměti nebo na disku. Vrací true, když se akce provede úspěšně. |
|
|
\ No newline at end of file |