Only handle dead letters to addresses, not connection info.

// FREEBIE
This commit is contained in:
Moxie Marlinspike 2015-07-30 14:16:39 -07:00
parent c74e0b9eab
commit 328bb47d44
2 changed files with 19 additions and 13 deletions

View File

@ -20,8 +20,9 @@ public class DeadLetterHandler implements DispatchChannel {
@Override @Override
public void onDispatchMessage(String channel, byte[] data) { public void onDispatchMessage(String channel, byte[] data) {
if (!WebSocketConnectionInfo.isType(channel)) {
try { try {
logger.warn("Handling dead letter to: " + channel); logger.info("Handling dead letter to: " + channel);
WebsocketAddress address = new WebsocketAddress(channel); WebsocketAddress address = new WebsocketAddress(channel);
PubSubMessage pubSubMessage = PubSubMessage.parseFrom(data); PubSubMessage pubSubMessage = PubSubMessage.parseFrom(data);
@ -38,6 +39,7 @@ public class DeadLetterHandler implements DispatchChannel {
logger.warn("Invalid websocket address", e); logger.warn("Invalid websocket address", e);
} }
} }
}
@Override @Override
public void onDispatchSubscribed(String channel) { public void onDispatchSubscribed(String channel) {

View File

@ -33,6 +33,10 @@ public class WebSocketConnectionInfo implements PubSubAddress {
return address; return address;
} }
public static boolean isType(String address) {
return address.endsWith(":c");
}
@Override @Override
public boolean equals(Object other) { public boolean equals(Object other) {
return return