Fix duplicate STOMP subscription id issue
Issue: SPR-15543
This commit is contained in:
committed by
Rossen Stoyanchev
parent
81143a80c4
commit
4fc41eeeb9
@@ -292,8 +292,11 @@ public class DefaultSubscriptionRegistry extends AbstractSubscriptionRegistry {
|
|||||||
String cachedDestination = entry.getKey();
|
String cachedDestination = entry.getKey();
|
||||||
if (getPathMatcher().match(destination, cachedDestination)) {
|
if (getPathMatcher().match(destination, cachedDestination)) {
|
||||||
LinkedMultiValueMap<String, String> subs = entry.getValue();
|
LinkedMultiValueMap<String, String> subs = entry.getValue();
|
||||||
subs.add(sessionId, subsId);
|
// Subscription id's may also be populated via getSubscriptions()
|
||||||
this.accessCache.put(cachedDestination, subs.deepCopy());
|
if (!subs.containsKey(sessionId) || !subs.get(sessionId).contains(subsId)) {
|
||||||
|
subs.add(sessionId, subsId);
|
||||||
|
this.accessCache.put(cachedDestination, subs.deepCopy());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user