public abstract class AbstractSubscriptionRegistry extends Object implements SubscriptionRegistry
SubscriptionRegistry that
looks up information in messages but delegates to abstract methods for the
actual storage and retrieval.| Constructor and Description |
|---|
AbstractSubscriptionRegistry() |
| Modifier and Type | Method and Description |
|---|---|
protected abstract void |
addSubscriptionInternal(String sessionId,
String subscriptionId,
String destination,
Message<?> message) |
MultiValueMap<String,String> |
findSubscriptions(Message<?> message)
Find all subscriptions that should receive the given message.
|
protected abstract MultiValueMap<String,String> |
findSubscriptionsInternal(String destination,
Message<?> message) |
void |
registerSubscription(Message<?> message)
Register a subscription represented by the given message.
|
protected abstract void |
removeSubscriptionInternal(String sessionId,
String subscriptionId,
Message<?> message) |
abstract void |
unregisterAllSubscriptions(String sessionId)
Remove all subscriptions associated with the given sessionId.
|
void |
unregisterSubscription(Message<?> message)
Unregister a subscription.
|
protected final Log logger
public final void registerSubscription(Message<?> message)
SubscriptionRegistryregisterSubscription in interface SubscriptionRegistrymessage - the subscription requestprotected abstract void addSubscriptionInternal(String sessionId, String subscriptionId, String destination, Message<?> message)
public final void unregisterSubscription(Message<?> message)
SubscriptionRegistryunregisterSubscription in interface SubscriptionRegistrymessage - the request to unsubscribeprotected abstract void removeSubscriptionInternal(String sessionId, String subscriptionId, Message<?> message)
public abstract void unregisterAllSubscriptions(String sessionId)
SubscriptionRegistryunregisterAllSubscriptions in interface SubscriptionRegistrypublic final MultiValueMap<String,String> findSubscriptions(Message<?> message)
SubscriptionRegistryfindSubscriptions in interface SubscriptionRegistrymessage - the messageMultiValueMap from sessionId to subscriptionId's, possibly empty.protected abstract MultiValueMap<String,String> findSubscriptionsInternal(String destination, Message<?> message)