TM-SGNL-iOS/SignalServiceKit/Contacts/ProfileWhitelistMerger.swift
TeleMessage developers dde0620daf initial commit
2025-05-03 12:28:28 -07:00

27 lines
871 B
Swift

//
// Copyright 2023 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
//
import Foundation
class ProfileWhitelistMerger: RecipientMergeObserver {
private let profileManager: ProfileManager
init(profileManager: ProfileManager) {
self.profileManager = profileManager
}
func willBreakAssociation(for recipient: SignalRecipient, mightReplaceNonnilPhoneNumber: Bool, tx: DBWriteTransaction) {
let tx = SDSDB.shimOnlyBridge(tx)
profileManager.normalizeRecipientInProfileWhitelist(recipient, tx: tx)
}
func didLearnAssociation(mergedRecipient: MergedRecipient, tx: DBWriteTransaction) {
if mergedRecipient.isLocalRecipient {
return
}
let tx = SDSDB.shimOnlyBridge(tx)
profileManager.normalizeRecipientInProfileWhitelist(mergedRecipient.newRecipient, tx: tx)
}
}