package org.asamk.signal.manager.helper;
-import org.asamk.signal.manager.SignalDependencies;
import org.asamk.signal.manager.TrustLevel;
import org.asamk.signal.manager.storage.SignalAccount;
import org.asamk.signal.manager.storage.recipients.RecipientId;
private final static Logger logger = LoggerFactory.getLogger(IdentityHelper.class);
private final SignalAccount account;
- private final SignalDependencies dependencies;
- private final SignalServiceAddressResolver addressResolver;
- private final SyncHelper syncHelper;
- private final ProfileHelper profileHelper;
-
- public IdentityHelper(
- final SignalAccount account,
- final SignalDependencies dependencies,
- final SignalServiceAddressResolver addressResolver,
- final SyncHelper syncHelper,
- final ProfileHelper profileHelper
- ) {
- this.account = account;
- this.dependencies = dependencies;
- this.addressResolver = addressResolver;
- this.syncHelper = syncHelper;
- this.profileHelper = profileHelper;
+ private final Context context;
+
+ public IdentityHelper(final Context context) {
+ this.account = context.getAccount();
+ this.context = context;
}
public boolean trustIdentityVerified(RecipientId recipientId, byte[] fingerprint) {
}
public String computeSafetyNumber(RecipientId recipientId, IdentityKey theirIdentityKey) {
- var address = addressResolver.resolveSignalServiceAddress(recipientId);
+ var address = context.getRecipientHelper().resolveSignalServiceAddress(recipientId);
final Fingerprint fingerprint = computeSafetyNumberFingerprint(address, theirIdentityKey);
return fingerprint == null ? null : fingerprint.getDisplayableFingerprint().getDisplayText();
}
public ScannableFingerprint computeSafetyNumberForScanning(RecipientId recipientId, IdentityKey theirIdentityKey) {
- var address = addressResolver.resolveSignalServiceAddress(recipientId);
+ var address = context.getRecipientHelper().resolveSignalServiceAddress(recipientId);
final Fingerprint fingerprint = computeSafetyNumberFingerprint(address, theirIdentityKey);
return fingerprint == null ? null : fingerprint.getScannableFingerprint();
}
account.getIdentityKeyStore().setIdentityTrustLevel(recipientId, identity.getIdentityKey(), trustLevel);
try {
- var address = addressResolver.resolveSignalServiceAddress(recipientId);
- syncHelper.sendVerifiedMessage(address, identity.getIdentityKey(), trustLevel);
+ var address = context.getRecipientHelper().resolveSignalServiceAddress(recipientId);
+ context.getSyncHelper().sendVerifiedMessage(address, identity.getIdentityKey(), trustLevel);
} catch (IOException e) {
logger.warn("Failed to send verification sync message: {}", e.getMessage());
}
}
} else {
// Retrieve profile to get the current identity key from the server
- profileHelper.refreshRecipientProfile(recipientId);
+ context.getProfileHelper().refreshRecipientProfile(recipientId);
}
}
}