Fetch remote config after registration

This commit is contained in:
Pete Walters 2025-10-24 16:12:05 -05:00 committed by GitHub
parent 692c9ef5bc
commit b5133f72b6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 10 additions and 0 deletions

View File

@ -37,6 +37,7 @@ public struct RegistrationCoordinatorDependencies {
public let registrationBackupErrorPresenter: RegistrationCoordinatorBackupErrorPresenter
public let registrationStateChangeManager: RegistrationStateChangeManager
let registrationWebSocketManager: any RegistrationWebSocketManager
public let remoteConfigManager: any RemoteConfigManager
public let sessionManager: RegistrationSessionManager
public let signalService: OWSSignalServiceProtocol
public let storageServiceManager: RegistrationCoordinatorImpl.Shims.StorageServiceManager
@ -84,6 +85,7 @@ public struct RegistrationCoordinatorDependencies {
messagePipelineSupervisor: SSKEnvironment.shared.messagePipelineSupervisorRef,
messageProcessor: SSKEnvironment.shared.messageProcessorRef,
),
remoteConfigManager: SSKEnvironment.shared.remoteConfigManagerRef,
sessionManager: DependenciesBridge.shared.registrationSessionManager,
signalService: SSKEnvironment.shared.signalServiceRef,
storageServiceManager: RegistrationCoordinatorImpl.Wrappers.StorageServiceManager(SSKEnvironment.shared.storageServiceManagerRef),

View File

@ -1453,6 +1453,13 @@ public class RegistrationCoordinatorImpl: RegistrationCoordinator {
await deps.registrationWebSocketManager.releaseRestrictedWebSocket(isRegistered: true)
do {
// releaseRestrictedWebSocket needs to be called before this happens.
try await deps.remoteConfigManager.refreshIfNeeded()
} catch {
Logger.warn("Failed to fetch remote config: \(error)")
}
// Start syncing system contacts now that we have set up tsAccountManager.
deps.contactsManager.fetchSystemContactsOnceIfAlreadyAuthorized()

View File

@ -135,6 +135,7 @@ public class RegistrationCoordinatorTest {
registrationBackupErrorPresenter: RegistrationCoordinatorBackupErrorPresenterMock(),
registrationStateChangeManager: registrationStateChangeManagerMock,
registrationWebSocketManager: MockRegistrationWebSocketManager(),
remoteConfigManager: StubbableRemoteConfigManager(),
sessionManager: sessionManager,
signalService: mockSignalService,
storageServiceManager: storageServiceManagerMock,