Remove message listener key only after successfully unsubscribing
This commit is contained in:
parent
fbf6b9826e
commit
eb57d87513
|
@ -384,12 +384,13 @@ public class MessagesCache extends RedisClusterPubSubAdapter<String, String> imp
|
|||
}
|
||||
|
||||
public void removeMessageAvailabilityListener(final MessageAvailabilityListener listener) {
|
||||
@Nullable final String queueName = queueNamesByMessageListener.remove(listener);
|
||||
@Nullable final String queueName = queueNamesByMessageListener.get(listener);
|
||||
|
||||
if (queueName != null) {
|
||||
unsubscribeFromKeyspaceNotifications(queueName);
|
||||
|
||||
synchronized (messageListenersByQueueName) {
|
||||
queueNamesByMessageListener.remove(listener);
|
||||
messageListenersByQueueName.remove(queueName);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue