mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-27 04:04:43 +01:00
GV2 Group Manager.
This commit is contained in:
@@ -7,11 +7,13 @@ import androidx.annotation.NonNull;
|
||||
import org.thoughtcrime.securesms.BuildConfig;
|
||||
import org.thoughtcrime.securesms.IncomingMessageProcessor;
|
||||
import org.thoughtcrime.securesms.gcm.MessageRetriever;
|
||||
import org.thoughtcrime.securesms.groups.v2.processing.GroupsV2StateProcessor;
|
||||
import org.thoughtcrime.securesms.jobmanager.JobManager;
|
||||
import org.thoughtcrime.securesms.keyvalue.KeyValueStore;
|
||||
import org.thoughtcrime.securesms.megaphone.MegaphoneRepository;
|
||||
import org.thoughtcrime.securesms.push.SignalServiceNetworkAccess;
|
||||
import org.thoughtcrime.securesms.recipients.LiveRecipientCache;
|
||||
import org.thoughtcrime.securesms.recipients.Recipient;
|
||||
import org.thoughtcrime.securesms.service.IncomingMessageObserver;
|
||||
import org.thoughtcrime.securesms.util.EarlyMessageCache;
|
||||
import org.thoughtcrime.securesms.util.FeatureFlags;
|
||||
@@ -22,6 +24,8 @@ import org.whispersystems.signalservice.api.KeyBackupService;
|
||||
import org.whispersystems.signalservice.api.SignalServiceAccountManager;
|
||||
import org.whispersystems.signalservice.api.SignalServiceMessageReceiver;
|
||||
import org.whispersystems.signalservice.api.SignalServiceMessageSender;
|
||||
import org.whispersystems.signalservice.api.groupsv2.GroupsV2Api;
|
||||
import org.whispersystems.signalservice.api.groupsv2.GroupsV2Authorization;
|
||||
import org.whispersystems.signalservice.api.groupsv2.GroupsV2Operations;
|
||||
|
||||
/**
|
||||
@@ -37,18 +41,20 @@ public class ApplicationDependencies {
|
||||
private static Application application;
|
||||
private static Provider provider;
|
||||
|
||||
private static SignalServiceAccountManager accountManager;
|
||||
private static SignalServiceMessageSender messageSender;
|
||||
private static SignalServiceMessageReceiver messageReceiver;
|
||||
private static IncomingMessageProcessor incomingMessageProcessor;
|
||||
private static MessageRetriever messageRetriever;
|
||||
private static LiveRecipientCache recipientCache;
|
||||
private static JobManager jobManager;
|
||||
private static FrameRateTracker frameRateTracker;
|
||||
private static KeyValueStore keyValueStore;
|
||||
private static MegaphoneRepository megaphoneRepository;
|
||||
private static GroupsV2Operations groupsV2Operations;
|
||||
private static EarlyMessageCache earlyMessageCache;
|
||||
private static SignalServiceAccountManager accountManager;
|
||||
private static SignalServiceMessageSender messageSender;
|
||||
private static SignalServiceMessageReceiver messageReceiver;
|
||||
private static IncomingMessageProcessor incomingMessageProcessor;
|
||||
private static MessageRetriever messageRetriever;
|
||||
private static LiveRecipientCache recipientCache;
|
||||
private static JobManager jobManager;
|
||||
private static FrameRateTracker frameRateTracker;
|
||||
private static KeyValueStore keyValueStore;
|
||||
private static MegaphoneRepository megaphoneRepository;
|
||||
private static GroupsV2Authorization groupsV2Authorization;
|
||||
private static GroupsV2StateProcessor groupsV2StateProcessor;
|
||||
private static GroupsV2Operations groupsV2Operations;
|
||||
private static EarlyMessageCache earlyMessageCache;
|
||||
|
||||
public static synchronized void init(@NonNull Application application, @NonNull Provider provider) {
|
||||
if (ApplicationDependencies.application != null || ApplicationDependencies.provider != null) {
|
||||
@@ -74,6 +80,16 @@ public class ApplicationDependencies {
|
||||
return accountManager;
|
||||
}
|
||||
|
||||
public static synchronized @NonNull GroupsV2Authorization getGroupsV2Authorization() {
|
||||
assertInitialization();
|
||||
|
||||
if (groupsV2Authorization == null) {
|
||||
groupsV2Authorization = getSignalServiceAccountManager().createGroupsV2Authorization(Recipient.self().getUuid().get());
|
||||
}
|
||||
|
||||
return groupsV2Authorization;
|
||||
}
|
||||
|
||||
public static synchronized @NonNull GroupsV2Operations getGroupsV2Operations() {
|
||||
assertInitialization();
|
||||
|
||||
@@ -91,6 +107,16 @@ public class ApplicationDependencies {
|
||||
10);
|
||||
}
|
||||
|
||||
public static synchronized @NonNull GroupsV2StateProcessor getGroupsV2StateProcessor() {
|
||||
assertInitialization();
|
||||
|
||||
if (groupsV2StateProcessor == null) {
|
||||
groupsV2StateProcessor = new GroupsV2StateProcessor(application);
|
||||
}
|
||||
|
||||
return groupsV2StateProcessor;
|
||||
}
|
||||
|
||||
public static synchronized @NonNull SignalServiceMessageSender getSignalServiceMessageSender() {
|
||||
assertInitialization();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user