X-Git-Url: http://git.vrable.net/?a=blobdiff_plain;f=localdb.h;h=6d28cd827435ea1143d7612471ed34e9c0391570;hb=ed9f6041c4c8c653e44a8edeeaa846e5db01587b;hp=4654b37a60a30cf1c22a9030bfca00c631beeda5;hpb=4b89157cdec2da9a016a7ea0f511a0f3ff43f6dc;p=cumulus.git diff --git a/localdb.h b/localdb.h index 4654b37..6d28cd8 100644 --- a/localdb.h +++ b/localdb.h @@ -21,7 +21,8 @@ class LocalDb { public: - void Open(const char *path, const char *snapshot_name); + void Open(const char *path, const char *snapshot_name, + const char *snapshot_scheme); void Close(); void StoreObject(const ObjectReference& ref, const std::string &checksum, int64_t size, double age); @@ -29,11 +30,17 @@ public: bool IsOldObject(const std::string &checksum, int64_t size, double *age); bool IsAvailable(const ObjectReference &ref); void UseObject(const ObjectReference& ref); + + void SetSegmentChecksum(const std::string &segment, const std::string &path, + const std::string &checksum); + bool GetSegmentChecksum(const std::string &segment, + std::string *seg_path, std::string *seg_checksum); private: sqlite3 *db; int64_t snapshotid; sqlite3_stmt *Prepare(const char *sql); + void ReportError(int rc); int64_t SegmentToId(const std::string &segment); std::string IdToSegment(int64_t segmentid); };