Top Description Fields Constructors Methods
org.springframework.messaging.simp.broker

public abstract Class AbstractSubscriptionRegistry

extends Object
implements SubscriptionRegistry
Class Inheritance
All Implemented Interfaces
org.springframework.messaging.simp.broker.SubscriptionRegistry
Known Direct Subclasses
org.springframework.messaging.simp.broker.DefaultSubscriptionRegistry
Imports
org.apache.commons.logging.Log, org.springframework.messaging.Message, .MessageHeaders, org.springframework.messaging.simp.SimpLogging, .SimpMessageHeaderAccessor, .SimpMessageType, org.springframework.util.CollectionUtils, .LinkedMultiValueMap, .MultiValueMap

Abstract base class for implementations of SubscriptionRegistry that looks up information in messages but delegates to abstract methods for the actual storage and retrieval.
Author
Rossen Stoyanchev
Since
4.0

Field Summary

Modifier and TypeField and Description
private static final MultiValueMap<String, String>
protected final Log

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
protected abstract void
addSubscriptionInternal(String sessionId, String subscriptionId, String destination, Message<?> message)

public final MultiValueMap<String, String>
findSubscriptions(Message<?>
the message
message
)

Implements org.springframework.messaging.simp.broker.SubscriptionRegistry.findSubscriptions.

Find all subscriptions that should receive the given message.
protected abstract MultiValueMap<String, String>
findSubscriptionsInternal(String destination, Message<?> message)

public final void
registerSubscription(Message<?>
the subscription request
message
)

Implements org.springframework.messaging.simp.broker.SubscriptionRegistry.registerSubscription.

Register a subscription represented by the given message.
protected abstract void
removeSubscriptionInternal(String sessionId, String subscriptionId, Message<?> message)

public final void
unregisterSubscription(Message<?>
the request to unsubscribe
message
)

Implements org.springframework.messaging.simp.broker.SubscriptionRegistry.unregisterSubscription.

Unregister a subscription.
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

EMPTY_MAPback to summary
private static final MultiValueMap<String, String> EMPTY_MAP
loggerback to summary
protected final Log logger

Constructor Detail

AbstractSubscriptionRegistryback to summary
public AbstractSubscriptionRegistry()

Method Detail

addSubscriptionInternalback to summary
protected abstract void addSubscriptionInternal(String sessionId, String subscriptionId, String destination, Message<?> message)
findSubscriptionsback to summary
public final MultiValueMap<String, String> findSubscriptions(Message<?> message)

Implements org.springframework.messaging.simp.broker.SubscriptionRegistry.findSubscriptions.

Doc from org.springframework.messaging.simp.broker.SubscriptionRegistry.findSubscriptions.

Find all subscriptions that should receive the given message. The map returned is safe to iterate and will never be modified.

Parameters
message:Message<?>

the message

Returns:MultiValueMap<String, String>

a MultiValueMap with sessionId-subscriptionId pairs (possibly empty)

Annotations
@Override
findSubscriptionsInternalback to summary
protected abstract MultiValueMap<String, String> findSubscriptionsInternal(String destination, Message<?> message)
registerSubscriptionback to summary
public final void registerSubscription(Message<?> message)

Implements org.springframework.messaging.simp.broker.SubscriptionRegistry.registerSubscription.

Doc from org.springframework.messaging.simp.broker.SubscriptionRegistry.registerSubscription.

Register a subscription represented by the given message.

Parameters
message:Message<?>

the subscription request

Annotations
@Override
removeSubscriptionInternalback to summary
protected abstract void removeSubscriptionInternal(String sessionId, String subscriptionId, Message<?> message)
unregisterSubscriptionback to summary
public final void unregisterSubscription(Message<?> message)

Implements org.springframework.messaging.simp.broker.SubscriptionRegistry.unregisterSubscription.

Doc from org.springframework.messaging.simp.broker.SubscriptionRegistry.unregisterSubscription.

Unregister a subscription.

Parameters
message:Message<?>

the request to unsubscribe

Annotations
@Override