Try to authenticate new account details before setting them

Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
This commit is contained in:
Claudio Cambra 2024-09-30 13:46:47 +08:00 committed by backportbot[bot]
parent 5c34390478
commit e7e958ed82

View file

@ -119,11 +119,28 @@ extension FileProviderExtension: NSFileProviderServicing, ChangeNotificationInte
) )
ncKit.setup(delegate: changeObserver) ncKit.setup(delegate: changeObserver)
Logger.fileProviderExtension.info( Task {
"Nextcloud account set up in File Provider extension for user: \(user, privacy: .public) at server: \(serverUrl, privacy: .public)" switch (await ncKit.tryAuthenticationAttempt()) {
) case .authenticationError:
Logger.fileProviderExtension.info(
signalEnumeratorAfterAccountSetup() "\(user, privacy: .public) authentication failed due to bad creds, stopping"
)
ncAccount = nil
ncKit.setup(user: "", userId: "", password: "", urlBase: "") // In case ongoing ops
case .connectionError:
Logger.fileProviderExtension.info(
"\(user, privacy: .public) authentication try failed due to internet connectivity issues."
)
case .success:
Logger.fileProviderExtension.info(
"""
Authenticated! Nextcloud account set up in File Provider extension.
User: \(user, privacy: .public) at server: \(serverUrl, privacy: .public)
"""
)
Task { @MainActor in signalEnumeratorAfterAccountSetup() }
}
}
} }
@objc func removeAccountConfig() { @objc func removeAccountConfig() {