Mercurial > dedupe
view SqliteDBLink.hpp @ 85:1f9e27a0bd7f
Allow for lazy calculation of checksums, ignore them, if only one file of given size.
| author | Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no> |
|---|---|
| date | Thu, 10 Oct 2013 15:55:30 +0200 |
| parents | 69a30d9f126e |
| children | af7962f3274b |
line wrap: on
line source
#ifndef SQLITEDBLINK_HPP #define SQLITEDBLINK_HPP #include "FileDBLink.hpp" #include <QtSql/QSqlDatabase> class SqliteDBLink : public FileDBLink { public: SqliteDBLink(const QString& dbpath); ~SqliteDBLink(); virtual void addFile(const QString& path, qint64 size, const QDateTime& dtime, const QByteArray& hash); virtual void updateFile(const QString& path, qint64 size, const QDateTime& dtime, const QByteArray& hash); bool exists(const QString& path); DBStatus existsWithMtime(const QString& path, const QDateTime& mtime); virtual const QList<dbinf_ptr_t> filesWithSize(qint64 size, const QString& prefix = QString()) const; QStringList toStringList(); const QList<dbinf_ptr_t > values(const QString& prefix = QString() ) const; virtual void keepOnlyFromPrefix(const QString& prefix, const QStringList& files); virtual void deleteFileFromDB(const QString& path); private: void addFile(const DBInfo& info); bool tryAddFile(const DBInfo& info); void updateFile(const DBInfo& dbinfo); QSqlDatabase db; static const QString connectionName; }; #endif //MEMORYDBLINK_HPP
