Replace DeliveryStatus with a simple boolean.

This commit is contained in:
Jon Chambers 2020-09-08 11:22:21 -04:00 committed by Jon Chambers
parent 12fe28d8ab
commit 1a93df92d4
2 changed files with 9 additions and 24 deletions

View File

@ -21,7 +21,6 @@ import com.codahale.metrics.SharedMetricRegistries;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.whispersystems.textsecuregcm.metrics.PushLatencyManager;
import org.whispersystems.textsecuregcm.push.WebsocketSender.DeliveryStatus;
import org.whispersystems.textsecuregcm.redis.RedisOperation;
import org.whispersystems.textsecuregcm.storage.Account;
import org.whispersystems.textsecuregcm.storage.Device;
@ -101,9 +100,9 @@ public class PushSender implements Managed {
}
private void sendGcmMessage(Account account, Device device, Envelope message, boolean online) {
DeliveryStatus deliveryStatus = webSocketSender.sendMessage(account, device, message, WebsocketSender.Type.GCM, online);
final boolean delivered = webSocketSender.sendMessage(account, device, message, WebsocketSender.Type.GCM, online);
if (!deliveryStatus.isDelivered() && !online) {
if (!delivered && !online) {
sendGcmNotification(account, device);
}
}
@ -118,9 +117,9 @@ public class PushSender implements Managed {
}
private void sendApnMessage(Account account, Device device, Envelope outgoingMessage, boolean online) {
DeliveryStatus deliveryStatus = webSocketSender.sendMessage(account, device, outgoingMessage, WebsocketSender.Type.APN, online);
final boolean delivered = webSocketSender.sendMessage(account, device, outgoingMessage, WebsocketSender.Type.APN, online);
if (!deliveryStatus.isDelivered() && outgoingMessage.getType() != Envelope.Type.RECEIPT && !online) {
if (!delivered && outgoingMessage.getType() != Envelope.Type.RECEIPT && !online) {
sendApnNotification(account, device, false);
}
}

View File

@ -80,15 +80,15 @@ public class WebsocketSender {
this.featureFlagsManager = featureFlagsManager;
}
public DeliveryStatus sendMessage(Account account, Device device, Envelope message, Type channel, boolean online) {
public boolean sendMessage(Account account, Device device, Envelope message, Type channel, boolean online) {
if (online && featureFlagsManager.isFeatureFlagActive(KEYSPACE_DELIVERY_FEATURE_FLAG)) {
if (clientPresenceManager.isPresent(account.getUuid(), device.getId())) {
ephemeralOnlineCounter.increment();
messagesManager.insertEphemeral(account.getUuid(), device.getId(), message);
return new DeliveryStatus(true);
return true;
} else {
ephemeralOfflineCounter.increment();
return new DeliveryStatus(false);
return false;
}
} else {
WebsocketAddress address = new WebsocketAddress(account.getNumber(), device.getId());
@ -104,14 +104,14 @@ public class WebsocketSender {
else if (channel == Type.GCM) gcmOnlineMeter.mark();
else websocketOnlineMeter.mark();
return new DeliveryStatus(true);
return true;
} else {
if (channel == Type.APN) apnOfflineMeter.mark();
else if (channel == Type.GCM) gcmOfflineMeter.mark();
else websocketOfflineMeter.mark();
if (!online) queueMessage(account, device, message);
return new DeliveryStatus(false);
return false;
}
}
}
@ -141,18 +141,4 @@ public class WebsocketSender {
return false;
}
}
static class DeliveryStatus {
private final boolean delivered;
DeliveryStatus(boolean delivered) {
this.delivered = delivered;
}
boolean isDelivered() {
return delivered;
}
}
}