X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fpostgresqlstorage.cpp;h=6b2642bdb7c489db0ce05c33b2398fad9fd9a450;hp=cd6d7bf724a32f8bb0230188ee2a677cb8703f2f;hb=158443f71d48215eea8b47b836b61afd77654b78;hpb=d09f943e9a6cb563b479bef5a4e909fbae6b768f diff --git a/src/core/postgresqlstorage.cpp b/src/core/postgresqlstorage.cpp index cd6d7bf7..6b2642bd 100644 --- a/src/core/postgresqlstorage.cpp +++ b/src/core/postgresqlstorage.cpp @@ -22,13 +22,12 @@ #include -#include "logger.h" +#include "logmessage.h" #include "network.h" #include "quassel.h" PostgreSqlStorage::PostgreSqlStorage(QObject *parent) - : AbstractSqlStorage(parent), - _port(-1) + : AbstractSqlStorage(parent) { } @@ -1496,7 +1495,7 @@ Message::Types PostgreSqlStorage::bufferActivity(BufferId bufferId, MsgId lastSe query.bindValue(":lastseenmsgid", lastSeenMsgId.toQint64()); safeExec(query); watchQuery(query); - Message::Types result = Message::Types(0); + Message::Types result = Message::Types(nullptr); if (query.first()) result = Message::Types(query.value(0).toInt()); return result; @@ -1634,6 +1633,8 @@ bool PostgreSqlStorage::logMessage(Message &msg) } QVariantList params; + // PostgreSQL handles QDateTime()'s serialized format by default, and QDateTime() serializes + // to a 64-bit time compatible format by default. params << msg.timestamp() << msg.bufferInfo().bufferId().toInt() << msg.type() @@ -1718,6 +1719,8 @@ bool PostgreSqlStorage::logMessages(MessageList &msgs) for (int i = 0; i < msgs.count(); i++) { Message &msg = msgs[i]; QVariantList params; + // PostgreSQL handles QDateTime()'s serialized format by default, and QDateTime() serializes + // to a 64-bit time compatible format by default. params << msg.timestamp() << msg.bufferInfo().bufferId().toInt() << msg.type() @@ -1797,6 +1800,8 @@ QList PostgreSqlStorage::requestMsgs(UserId user, BufferId bufferId, Ms QDateTime timestamp; while (query.next()) { + // PostgreSQL returns date/time in ISO 8601 format, no 64-bit handling needed + // See https://www.postgresql.org/docs/current/static/datatype-datetime.html#DATATYPE-DATETIME-OUTPUT timestamp = query.value(1).toDateTime(); timestamp.setTimeSpec(Qt::UTC); Message msg(timestamp, @@ -1861,6 +1866,8 @@ QList PostgreSqlStorage::requestMsgsFiltered(UserId user, BufferId buff QDateTime timestamp; while (query.next()) { + // PostgreSQL returns date/time in ISO 8601 format, no 64-bit handling needed + // See https://www.postgresql.org/docs/current/static/datatype-datetime.html#DATATYPE-DATETIME-OUTPUT timestamp = query.value(1).toDateTime(); timestamp.setTimeSpec(Qt::UTC); Message msg(timestamp, @@ -1916,6 +1923,8 @@ QList PostgreSqlStorage::requestAllMsgs(UserId user, MsgId first, MsgId QDateTime timestamp; for (int i = 0; i < limit && query.next(); i++) { + // PostgreSQL returns date/time in ISO 8601 format, no 64-bit handling needed + // See https://www.postgresql.org/docs/current/static/datatype-datetime.html#DATATYPE-DATETIME-OUTPUT timestamp = query.value(2).toDateTime(); timestamp.setTimeSpec(Qt::UTC); Message msg(timestamp, @@ -1978,6 +1987,8 @@ QList PostgreSqlStorage::requestAllMsgsFiltered(UserId user, MsgId firs QDateTime timestamp; for (int i = 0; i < limit && query.next(); i++) { + // PostgreSQL returns date/time in ISO 8601 format, no 64-bit handling needed + // See https://www.postgresql.org/docs/current/static/datatype-datetime.html#DATATYPE-DATETIME-OUTPUT timestamp = query.value(2).toDateTime(); timestamp.setTimeSpec(Qt::UTC); Message msg(timestamp, @@ -2012,21 +2023,6 @@ QMap PostgreSqlStorage::getAllAuthUserNames() } -QString PostgreSqlStorage::getAuthUserName(UserId user) -{ - QString authusername; - QSqlQuery query(logDb()); - query.prepare(queryString("select_authusername")); - query.bindValue(":userid", user.toInt()); - safeExec(query); - watchQuery(query); - - if (query.first()) { - authusername = query.value(0).toString(); - } - return authusername; -} - // void PostgreSqlStorage::safeExec(QSqlQuery &query) { // qDebug() << "PostgreSqlStorage::safeExec"; // qDebug() << " executing:\n" << query.executedQuery();