diff options
| author | Anton <anton@picapica.im> | 2026-08-12 00:18:12 +0400 |
|---|---|---|
| committer | Anton <anton@picapica.im> | 2026-08-12 00:18:12 +0400 |
| commit | 0763c7de460da23923e62f0d8033bc6b8c2888a9 (patch) | |
| tree | 5b3825708e3c05d91fd2ef40f885e6d718e6e274 /pica-client/nodes.cpp | |
| parent | 5ae6a1ff696f70b8eb1eac042a2cc278d4e7ceed (diff) | |
| download | pica-pica-0763c7de460da23923e62f0d8033bc6b8c2888a9.tar.gz pica-pica-0763c7de460da23923e62f0d8033bc6b8c2888a9.zip | |
pica-client: changes for required for multithreaded DB access
Diffstat (limited to 'pica-client/nodes.cpp')
| -rw-r--r-- | pica-client/nodes.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/pica-client/nodes.cpp b/pica-client/nodes.cpp index 048d2cc..cf6cadb 100644 --- a/pica-client/nodes.cpp +++ b/pica-client/nodes.cpp @@ -16,9 +16,9 @@ */ #include "nodes.h" -Nodes::Nodes(QString storage) +Nodes::Nodes(QString storage, QString connectionName) { - dbconn = QSqlDatabase::database(); + dbconn = connectionName.isEmpty() ? QSqlDatabase::database() : QSqlDatabase::database(connectionName); dbconn.setDatabaseName(storage); if (!dbconn.open()) @@ -31,7 +31,7 @@ Nodes::Nodes(QString storage) void Nodes::Add(NodeRecord &n) { - QSqlQuery query; + QSqlQuery query(dbconn); query.prepare("insert into nodes (address, port, last_active, inactive_count) values (:addr, :port, strftime('%s','now'), 0)"); query.bindValue(":addr", n.address); @@ -43,7 +43,7 @@ void Nodes::Add(NodeRecord &n) void Nodes::Delete(NodeRecord &n) { - QSqlQuery query; + QSqlQuery query(dbconn); query.prepare("delete from nodes where address = :addr and port = :port"); query.bindValue(":addr", n.address); @@ -57,7 +57,7 @@ QList<Nodes::NodeRecord> Nodes::GetNodes() { QList<NodeRecord> L; NodeRecord r; - QSqlQuery query; + QSqlQuery query(dbconn); query.setForwardOnly(true); query.exec("select address, port from nodes order by inactive_count asc, last_active desc"); @@ -79,7 +79,7 @@ QList<Nodes::NodeRecord> Nodes::GetNodes() void Nodes::MakeClean() { - QSqlQuery query; + QSqlQuery query(dbconn); quint32 count = 0; query.exec("select count(*) from nodes"); @@ -115,7 +115,7 @@ void Nodes::MakeClean() void Nodes::UpdateStatus(NodeRecord &n, bool alive) { - QSqlQuery query; + QSqlQuery query(dbconn); if (alive) query.prepare("update nodes set last_active = strftime('%s','now'), inactive_count = 0 where address = :addr and port = :port"); |
