diff --git a/native/cpp/CommonCpp/DatabaseManagers/DatabaseQueryExecutor.h b/native/cpp/CommonCpp/DatabaseManagers/DatabaseQueryExecutor.h --- a/native/cpp/CommonCpp/DatabaseManagers/DatabaseQueryExecutor.h +++ b/native/cpp/CommonCpp/DatabaseManagers/DatabaseQueryExecutor.h @@ -9,6 +9,7 @@ #include "entities/IntegrityThreadHash.h" #include "entities/KeyserverInfo.h" #include "entities/LocalMessageInfo.h" +#include "entities/Media.h" #include "entities/Message.h" #include "entities/MessageStoreThread.h" #include "entities/OlmPersistAccount.h" @@ -40,8 +41,7 @@ virtual void removeAllDrafts() const = 0; virtual void removeDrafts(const std::vector &ids) const = 0; virtual void removeAllMessages() const = 0; - virtual std::vector>> - getAllMessages() const = 0; + virtual std::vector getAllMessages() const = 0; virtual void removeMessages(const std::vector &ids) const = 0; virtual void removeMessagesForThreads(const std::vector &threadIDs) const = 0; diff --git a/native/cpp/CommonCpp/DatabaseManagers/SQLiteQueryExecutor.h b/native/cpp/CommonCpp/DatabaseManagers/SQLiteQueryExecutor.h --- a/native/cpp/CommonCpp/DatabaseManagers/SQLiteQueryExecutor.h +++ b/native/cpp/CommonCpp/DatabaseManagers/SQLiteQueryExecutor.h @@ -9,6 +9,8 @@ #include "entities/IntegrityThreadHash.h" #include "entities/KeyserverInfo.h" #include "entities/LocalMessageInfo.h" +#include "entities/Media.h" +#include "entities/Message.h" #include "entities/ThreadActivityEntry.h" #include "entities/UserInfo.h" @@ -57,8 +59,7 @@ void removeAllDrafts() const override; void removeDrafts(const std::vector &ids) const override; void removeAllMessages() const override; - std::vector>> - getAllMessages() const override; + std::vector getAllMessages() const override; void removeMessages(const std::vector &ids) const override; void removeMessagesForThreads( const std::vector &threadIDs) const override; diff --git a/native/cpp/CommonCpp/DatabaseManagers/SQLiteQueryExecutor.cpp b/native/cpp/CommonCpp/DatabaseManagers/SQLiteQueryExecutor.cpp --- a/native/cpp/CommonCpp/DatabaseManagers/SQLiteQueryExecutor.cpp +++ b/native/cpp/CommonCpp/DatabaseManagers/SQLiteQueryExecutor.cpp @@ -1337,8 +1337,7 @@ removeAllEntities(SQLiteQueryExecutor::getConnection(), removeAllMessagesSQL); } -std::vector>> -SQLiteQueryExecutor::getAllMessages() const { +std::vector SQLiteQueryExecutor::getAllMessages() const { static std::string getAllMessagesSQL = "SELECT * " "FROM messages " @@ -1351,7 +1350,7 @@ "Failed to retrieve all messages."); std::string prevMsgIdx{}; - std::vector>> allMessages; + std::vector allMessages; for (int stepResult = sqlite3_step(preparedSQL); stepResult == SQLITE_ROW; stepResult = sqlite3_step(preparedSQL)) { diff --git a/native/cpp/CommonCpp/DatabaseManagers/entities/Message.h b/native/cpp/CommonCpp/DatabaseManagers/entities/Message.h --- a/native/cpp/CommonCpp/DatabaseManagers/entities/Message.h +++ b/native/cpp/CommonCpp/DatabaseManagers/entities/Message.h @@ -85,4 +85,6 @@ std::vector medias; }; +using MessageEntity = std::pair>; + } // namespace comm diff --git a/native/cpp/CommonCpp/NativeModules/CommCoreModule.h b/native/cpp/CommonCpp/NativeModules/CommCoreModule.h --- a/native/cpp/CommonCpp/NativeModules/CommCoreModule.h +++ b/native/cpp/CommonCpp/NativeModules/CommCoreModule.h @@ -1,6 +1,7 @@ #pragma once #include "../CryptoTools/CryptoModule.h" +#include "../DatabaseManagers/entities/Message.h" #include "../Tools/CommMMKV.h" #include "../Tools/CommSecureStore.h" #include "../Tools/WorkerThread.h" diff --git a/native/cpp/CommonCpp/NativeModules/CommCoreModule.cpp b/native/cpp/CommonCpp/NativeModules/CommCoreModule.cpp --- a/native/cpp/CommonCpp/NativeModules/CommCoreModule.cpp +++ b/native/cpp/CommonCpp/NativeModules/CommCoreModule.cpp @@ -114,7 +114,7 @@ std::string error; std::vector draftsVector; std::vector threadsVector; - std::vector>> messagesVector; + std::vector messagesVector; std::vector messageStoreThreadsVector; std::vector reportStoreVector; std::vector userStoreVector; @@ -158,8 +158,7 @@ } auto draftsVectorPtr = std::make_shared>(std::move(draftsVector)); - auto messagesVectorPtr = std::make_shared< - std::vector>>>( + auto messagesVectorPtr = std::make_shared>( std::move(messagesVector)); auto threadsVectorPtr = std::make_shared>(std::move(threadsVector)); @@ -319,13 +318,13 @@ } jsi::Array CommCoreModule::getAllMessagesSync(jsi::Runtime &rt) { - auto messagesVector = NativeModuleUtils::runSyncOrThrowJSError< - std::vector>>>(rt, []() { - return DatabaseManager::getQueryExecutor().getAllMessages(); - }); + auto messagesVector = + NativeModuleUtils::runSyncOrThrowJSError>( + rt, []() { + return DatabaseManager::getQueryExecutor().getAllMessages(); + }); auto messagesVectorPtr = - std::make_shared>>>( - std::move(messagesVector)); + std::make_shared>(std::move(messagesVector)); jsi::Array jsiMessages = this->messageStore.parseDBDataStore(rt, messagesVectorPtr); return jsiMessages; diff --git a/native/cpp/CommonCpp/NativeModules/PersistentStorageUtilities/DataStores/MessageStore.h b/native/cpp/CommonCpp/NativeModules/PersistentStorageUtilities/DataStores/MessageStore.h --- a/native/cpp/CommonCpp/NativeModules/PersistentStorageUtilities/DataStores/MessageStore.h +++ b/native/cpp/CommonCpp/NativeModules/PersistentStorageUtilities/DataStores/MessageStore.h @@ -10,8 +10,6 @@ namespace comm { -using MessageEntity = std::pair>; - class MessageStore : public BaseDataStore { private: static OperationType REKEY_OPERATION;