mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-24 02:39:55 +01:00
Move ViewOnceMessageManager and ExpiringMessageManager to AppDependencies.
This commit is contained in:
@@ -23,6 +23,8 @@ import org.thoughtcrime.securesms.notifications.MessageNotifier;
|
||||
import org.thoughtcrime.securesms.payments.Payments;
|
||||
import org.thoughtcrime.securesms.push.SignalServiceNetworkAccess;
|
||||
import org.thoughtcrime.securesms.recipients.LiveRecipientCache;
|
||||
import org.thoughtcrime.securesms.revealable.ViewOnceMessageManager;
|
||||
import org.thoughtcrime.securesms.service.ExpiringMessageManager;
|
||||
import org.thoughtcrime.securesms.service.TrimThreadsByDateManager;
|
||||
import org.thoughtcrime.securesms.service.webrtc.SignalCallManager;
|
||||
import org.thoughtcrime.securesms.shakereport.ShakeToReport;
|
||||
@@ -75,6 +77,8 @@ public class ApplicationDependencies {
|
||||
private static volatile TypingStatusSender typingStatusSender;
|
||||
private static volatile DatabaseObserver databaseObserver;
|
||||
private static volatile TrimThreadsByDateManager trimThreadsByDateManager;
|
||||
private static volatile ViewOnceMessageManager viewOnceMessageManager;
|
||||
private static volatile ExpiringMessageManager expiringMessageManager;
|
||||
private static volatile Payments payments;
|
||||
private static volatile ShakeToReport shakeToReport;
|
||||
private static volatile SignalCallManager signalCallManager;
|
||||
@@ -341,9 +345,37 @@ public class ApplicationDependencies {
|
||||
return trimThreadsByDateManager;
|
||||
}
|
||||
|
||||
public static @NonNull ViewOnceMessageManager getViewOnceMessageManager() {
|
||||
if (viewOnceMessageManager == null) {
|
||||
synchronized (LOCK) {
|
||||
if (viewOnceMessageManager == null) {
|
||||
viewOnceMessageManager = provider.provideViewOnceMessageManager();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return viewOnceMessageManager;
|
||||
}
|
||||
|
||||
public static @NonNull ExpiringMessageManager getExpiringMessageManager() {
|
||||
if (expiringMessageManager == null) {
|
||||
synchronized (LOCK) {
|
||||
if (expiringMessageManager == null) {
|
||||
expiringMessageManager = provider.provideExpiringMessageManager();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return expiringMessageManager;
|
||||
}
|
||||
|
||||
public static TypingStatusRepository getTypingStatusRepository() {
|
||||
if (typingStatusRepository == null) {
|
||||
typingStatusRepository = provider.provideTypingStatusRepository();
|
||||
synchronized (LOCK) {
|
||||
if (typingStatusRepository == null) {
|
||||
typingStatusRepository = provider.provideTypingStatusRepository();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return typingStatusRepository;
|
||||
@@ -351,7 +383,11 @@ public class ApplicationDependencies {
|
||||
|
||||
public static TypingStatusSender getTypingStatusSender() {
|
||||
if (typingStatusSender == null) {
|
||||
typingStatusSender = provider.provideTypingStatusSender();
|
||||
synchronized (LOCK) {
|
||||
if (typingStatusSender == null) {
|
||||
typingStatusSender = provider.provideTypingStatusSender();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return typingStatusSender;
|
||||
@@ -427,6 +463,8 @@ public class ApplicationDependencies {
|
||||
@NonNull MessageNotifier provideMessageNotifier();
|
||||
@NonNull IncomingMessageObserver provideIncomingMessageObserver();
|
||||
@NonNull TrimThreadsByDateManager provideTrimThreadsByDateManager();
|
||||
@NonNull ViewOnceMessageManager provideViewOnceMessageManager();
|
||||
@NonNull ExpiringMessageManager provideExpiringMessageManager();
|
||||
@NonNull TypingStatusRepository provideTypingStatusRepository();
|
||||
@NonNull TypingStatusSender provideTypingStatusSender();
|
||||
@NonNull DatabaseObserver provideDatabaseObserver();
|
||||
|
||||
@@ -42,6 +42,8 @@ import org.thoughtcrime.securesms.payments.Payments;
|
||||
import org.thoughtcrime.securesms.push.SecurityEventListener;
|
||||
import org.thoughtcrime.securesms.push.SignalServiceNetworkAccess;
|
||||
import org.thoughtcrime.securesms.recipients.LiveRecipientCache;
|
||||
import org.thoughtcrime.securesms.revealable.ViewOnceMessageManager;
|
||||
import org.thoughtcrime.securesms.service.ExpiringMessageManager;
|
||||
import org.thoughtcrime.securesms.service.TrimThreadsByDateManager;
|
||||
import org.thoughtcrime.securesms.service.webrtc.SignalCallManager;
|
||||
import org.thoughtcrime.securesms.shakereport.ShakeToReport;
|
||||
@@ -196,6 +198,16 @@ public class ApplicationDependencyProvider implements ApplicationDependencies.Pr
|
||||
return new TrimThreadsByDateManager(context);
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NonNull ViewOnceMessageManager provideViewOnceMessageManager() {
|
||||
return new ViewOnceMessageManager(context);
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NonNull ExpiringMessageManager provideExpiringMessageManager() {
|
||||
return new ExpiringMessageManager(context);
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NonNull TypingStatusRepository provideTypingStatusRepository() {
|
||||
return new TypingStatusRepository();
|
||||
|
||||
Reference in New Issue
Block a user