mirror of
https://github.com/signalapp/Signal-Server
synced 2026-04-21 19:48:01 +01:00
Revert "Add a system for storing, retrieving, and notifying listeners about ephemeral (online) messages."
This reverts commit 06754d6158.
This commit is contained in:
committed by
Jon Chambers
parent
8927e45ded
commit
d40cff8a99
@@ -24,7 +24,6 @@ import java.util.concurrent.ExecutorService;
|
||||
import java.util.concurrent.Executors;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
import java.util.concurrent.atomic.AtomicReference;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
@@ -243,10 +242,6 @@ public class MessagesCacheTest extends AbstractRedisClusterTest {
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleEphemeralMessageAvailable(final UUID ephemeralMessageGuid) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleMessagesPersisted() {
|
||||
}
|
||||
@@ -266,17 +261,13 @@ public class MessagesCacheTest extends AbstractRedisClusterTest {
|
||||
|
||||
@Test(timeout = 5_000L)
|
||||
public void testNotifyListenerPersisted() throws InterruptedException {
|
||||
final AtomicBoolean notified = new AtomicBoolean(false);
|
||||
final AtomicBoolean notified = new AtomicBoolean(false);
|
||||
|
||||
final MessageAvailabilityListener listener = new MessageAvailabilityListener() {
|
||||
@Override
|
||||
public void handleNewMessagesAvailable() {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleEphemeralMessageAvailable(final UUID ephemeralMessageGuid) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleMessagesPersisted() {
|
||||
synchronized (notified) {
|
||||
@@ -299,53 +290,4 @@ public class MessagesCacheTest extends AbstractRedisClusterTest {
|
||||
|
||||
assertTrue(notified.get());
|
||||
}
|
||||
|
||||
@Test(timeout = 5_000L)
|
||||
public void testInsertAndNotifyEphemeralMessage() throws InterruptedException {
|
||||
final AtomicReference<UUID> notifiedGuid = new AtomicReference<>();
|
||||
final UUID messageGuid = UUID.randomUUID();
|
||||
final MessageProtos.Envelope message = generateRandomMessage(messageGuid, true);
|
||||
|
||||
final MessageAvailabilityListener listener = new MessageAvailabilityListener() {
|
||||
@Override
|
||||
public void handleNewMessagesAvailable() {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleEphemeralMessageAvailable(final UUID ephemeralMessageGuid) {
|
||||
synchronized (notifiedGuid) {
|
||||
notifiedGuid.set(ephemeralMessageGuid);
|
||||
notifiedGuid.notifyAll();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void handleMessagesPersisted() {
|
||||
}
|
||||
};
|
||||
|
||||
messagesCache.addMessageAvailabilityListener(DESTINATION_UUID, DESTINATION_DEVICE_ID, listener);
|
||||
messagesCache.insertEphemeral(messageGuid, DESTINATION_UUID, DESTINATION_DEVICE_ID, message);
|
||||
|
||||
synchronized (notifiedGuid) {
|
||||
while (notifiedGuid.get() == null) {
|
||||
notifiedGuid.wait();
|
||||
}
|
||||
}
|
||||
|
||||
assertEquals(messageGuid, notifiedGuid.get());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testTakeEphemeralMessage() {
|
||||
final UUID messageGuid = UUID.randomUUID();
|
||||
final MessageProtos.Envelope message = generateRandomMessage(messageGuid, true);
|
||||
|
||||
assertEquals(Optional.empty(), messagesCache.takeEphemeralMessage(DESTINATION_UUID, DESTINATION_DEVICE_ID, messageGuid));
|
||||
|
||||
messagesCache.insertEphemeral(messageGuid, DESTINATION_UUID, DESTINATION_DEVICE_ID, message);
|
||||
|
||||
assertEquals(Optional.of(message), messagesCache.takeEphemeralMessage(DESTINATION_UUID, DESTINATION_DEVICE_ID, messageGuid));
|
||||
assertEquals(Optional.empty(), messagesCache.takeEphemeralMessage(DESTINATION_UUID, DESTINATION_DEVICE_ID, messageGuid));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user