add method getEtag

pull/23/head
JuanJakobo 2022-07-22 16:19:18 +02:00
parent 4e2d2eb687
commit 4042401826
2 changed files with 25 additions and 0 deletions

View File

@ -42,6 +42,29 @@ bool SqliteConnector::open()
return true; return true;
} }
string SqliteConnector::getEtag(string path)
{
open();
int rs;
sqlite3_stmt *stmt = 0;
std::vector<WebDAVItem> items;
rs = sqlite3_prepare_v2(_db, "SELECT etag FROM 'metadata' WHERE path = ? LIMIT 1;", -1, &stmt, 0);
rs = sqlite3_bind_text(stmt, 1, path.c_str(), path.length(), NULL);
//TODO erase while
while (sqlite3_step(stmt) == SQLITE_ROW)
{
path = reinterpret_cast<const char *>(sqlite3_column_text(stmt, 0));
}
sqlite3_finalize(stmt);
sqlite3_close(_db);
return path;
}
std::vector<WebDAVItem> SqliteConnector::getItemsChildren(const string &parentPath) std::vector<WebDAVItem> SqliteConnector::getItemsChildren(const string &parentPath)
{ {
open(); open();

View File

@ -28,6 +28,8 @@ public:
bool open(); bool open();
std::string getEtag(std::string path);
std::vector<WebDAVItem> getItemsChildren(const std::string &parenthPath); std::vector<WebDAVItem> getItemsChildren(const std::string &parenthPath);
void deleteChildren(const std::string &parentPath); void deleteChildren(const std::string &parentPath);