From: Claudio Cambra Date: Wed, 15 Mar 2023 15:25:25 +0000 (+0100) Subject: Move accountStateFromFileProviderDomainIdentifier to FileProviderDomainManager where... X-Git-Tag: archive/raspbian/3.16.7-1_deb13u1+rpi1~1^2~12^2~10^2~55^2~65 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=4327b152fb2a6fc886a77575ee55697593bc71c3;p=nextcloud-desktop.git Move accountStateFromFileProviderDomainIdentifier to FileProviderDomainManager where we have methods to guarantee conversion Signed-off-by: Claudio Cambra --- diff --git a/src/gui/macOS/fileproviderdomainmanager.h b/src/gui/macOS/fileproviderdomainmanager.h index a8787c7cc..f1fcb02a5 100644 --- a/src/gui/macOS/fileproviderdomainmanager.h +++ b/src/gui/macOS/fileproviderdomainmanager.h @@ -32,6 +32,8 @@ public: explicit FileProviderDomainManager(QObject * const parent = nullptr); ~FileProviderDomainManager() override; + static AccountStatePtr accountStateFromFileProviderDomainIdentifier(const QString &domainIdentifier); + private slots: void setupFileProviderDomains(); diff --git a/src/gui/macOS/fileproviderdomainmanager_mac.mm b/src/gui/macOS/fileproviderdomainmanager_mac.mm index 03c9f33b9..228b1550d 100644 --- a/src/gui/macOS/fileproviderdomainmanager_mac.mm +++ b/src/gui/macOS/fileproviderdomainmanager_mac.mm @@ -673,6 +673,23 @@ void FileProviderDomainManager::slotEnumeratorSignallingTimerTimeout() } } +AccountStatePtr FileProviderDomainManager::accountStateFromFileProviderDomainIdentifier(const QString &domainIdentifier) +{ + if (domainIdentifier.isEmpty()) { + qCWarning(lcMacFileProviderDomainManager) << "Cannot return accountstateptr for empty domain identifier"; + return AccountStatePtr(); + } + + const auto accountUserId = accountIdFromDomainId(domainIdentifier); + const auto accountForReceivedDomainIdentifier = AccountManager::instance()->accountFromUserId(accountUserId); + if (!accountForReceivedDomainIdentifier) { + qCWarning(lcMacFileProviderDomainManager) << "Could not find account matching user id matching file provider domain identifier:" + << domainIdentifier; + } + + return accountForReceivedDomainIdentifier; +} + } // namespace Mac } // namespace OCC diff --git a/src/gui/macOS/fileprovidersocketcontroller.cpp b/src/gui/macOS/fileprovidersocketcontroller.cpp index 8fd20fc95..9fa7f2b68 100644 --- a/src/gui/macOS/fileprovidersocketcontroller.cpp +++ b/src/gui/macOS/fileprovidersocketcontroller.cpp @@ -18,6 +18,7 @@ #include #include "accountmanager.h" +#include "fileproviderdomainmanager.h" namespace OCC { @@ -85,7 +86,7 @@ void FileProviderSocketController::parseReceivedLine(const QString &receivedLine const auto argument = receivedLine.mid(argPos + 1); if (command == QStringLiteral("FILE_PROVIDER_DOMAIN_IDENTIFIER_REQUEST_REPLY")) { - _accountState = accountStateFromFileProviderDomainIdentifier(argument); + _accountState = FileProviderDomainManager::accountStateFromFileProviderDomainIdentifier(argument); sendAccountDetails(); return; } @@ -93,21 +94,6 @@ void FileProviderSocketController::parseReceivedLine(const QString &receivedLine qCWarning(lcFileProviderSocketController) << "Unknown command or reply:" << receivedLine; } -AccountStatePtr FileProviderSocketController::accountStateFromFileProviderDomainIdentifier(const QString &domainIdentifier) -{ - Q_ASSERT(!domainIdentifier.isEmpty()); - - // We use Account's userIdAtHostWithPort() as the file provider domain's identifier in FileProviderDomainManager. - // We can use this string to get a matching account here. - const auto accountForReceivedDomainIdentifier = AccountManager::instance()->accountFromUserId(domainIdentifier); - if (!accountForReceivedDomainIdentifier) { - qCWarning(lcFileProviderSocketController) << "Could not find account matching user id matching file provider domain identifier:" - << domainIdentifier; - } - - return accountForReceivedDomainIdentifier; -} - void FileProviderSocketController::sendMessage(const QString &message) const { if (!_socket) { diff --git a/src/gui/macOS/fileprovidersocketcontroller.h b/src/gui/macOS/fileprovidersocketcontroller.h index 67269b55e..ca7c35334 100644 --- a/src/gui/macOS/fileprovidersocketcontroller.h +++ b/src/gui/macOS/fileprovidersocketcontroller.h @@ -51,8 +51,6 @@ private slots: void sendNotAuthenticated() const; private: - static AccountStatePtr accountStateFromFileProviderDomainIdentifier(const QString &domainIdentifier); - QPointer _socket; AccountStatePtr _accountState; };