Fix duplicate STOMP subscription id issue
Issue: SPR-15543
This commit is contained in:
		
							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());
 | 
				
			||||||
 | 
											}
 | 
				
			||||||
					}
 | 
										}
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue