Package com.tangosol.net
Interface PagedTopicService
-
- All Superinterfaces:
CacheService
,ClassLoaderAware
,Controllable
,DistributedCacheService
,PartitionedService
,Service
,Service
,TopicService
public interface PagedTopicService extends TopicService, DistributedCacheService
ATopicService
which provides globally ordered topics.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.tangosol.net.CacheService
CacheService.CacheAction
-
Nested classes/interfaces inherited from interface com.tangosol.net.PartitionedService
PartitionedService.PartitionedAction, PartitionedService.PartitionRecoveryAction
-
Nested classes/interfaces inherited from interface com.tangosol.net.Service
Service.MemberJoinAction
-
-
Field Summary
-
Fields inherited from interface com.tangosol.net.CacheService
TYPE_DISTRIBUTED, TYPE_LOCAL, TYPE_OPTIMISTIC, TYPE_PAGED_TOPIC, TYPE_REMOTE, TYPE_REMOTE_GRPC, TYPE_REPLICATED
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description void
addSubscriptionListener(com.tangosol.internal.net.topic.impl.paged.model.PagedTopicSubscription.Listener listener)
Add a listener that will be notified when changes are made to topic subscriptions.void
destroySubscriberGroup(String sTopicName, String sGroupName)
Destroy an existing subscriber group.void
destroySubscription(long lSubscriptionId)
Remove an existing subscriber group.void
destroySubscription(long lSubscriptionId, Subscriber.Id subscriberId)
Remove an existing subscriber from a subscriber group.default long
ensureSubscriberGroup(String sTopicName, String sGroupName)
Ensure the specified subscriber group is created in a subscription.default long
ensureSubscriberGroup(String sTopicName, String sGroupName, Filter<?> filter, ValueExtractor<?,?> extractor)
Ensure the specified subscriber group is created in a subscription.void
ensureSubscription(String sTopicName, long lSubscription, Subscriber.Id subscriberId)
Ensure the specified subscriber is subscribed to a subscription.void
ensureSubscription(String sTopicName, long lSubscription, Subscriber.Id subscriberId, boolean fForceReconnect)
Ensure the specified subscriber is subscribed to a subscription.long
ensureSubscription(String sTopicName, com.tangosol.internal.net.topic.impl.paged.model.SubscriberGroupId groupId, Subscriber.Id subscriberId, Filter<?> filter, ValueExtractor<?,?> extractor)
Ensure the specified subscriber is created in a subscription.Set<com.tangosol.internal.net.topic.impl.paged.model.SubscriberGroupId>
getSubscriberGroups(String sTopicName)
Returns thesubscriber groups
for a topic known to this service.Set<com.tangosol.internal.net.topic.impl.paged.model.SubscriberId>
getSubscribers(String sTopicName, com.tangosol.internal.net.topic.impl.paged.model.SubscriberGroupId groupId)
Returns thesubscriber ids
known to this service and subscribed to a subscriber group for a topic .com.tangosol.internal.net.topic.impl.paged.model.PagedTopicSubscription
getSubscription(long lSubscriptionId)
Return aPagedTopicSubscription
.long
getSubscriptionId(String sTopicName, com.tangosol.internal.net.topic.impl.paged.model.SubscriberGroupId groupId)
Return the subscription id for a subscriber group.com.tangosol.internal.net.topic.impl.paged.PagedTopicBackingMapManager
getTopicBackingMapManager()
Return theTopicBackingMapManager
for this service.com.tangosol.internal.net.topic.impl.paged.statistics.PagedTopicStatistics
getTopicStatistics(String sTopicName)
Returns thePagedTopicStatistics
for a topic.boolean
hasSubscription(long lSubscriptionId)
Determine whether a subscriber group exists.boolean
isSubscriptionDestroyed(long lSubscriptionId)
Determine whether a subscriber group has been destroyed.void
removeSubscriptionListener(com.tangosol.internal.net.topic.impl.paged.model.PagedTopicSubscription.Listener listener)
Remove a listener that was being notified when changes are made to topic subscriptions.-
Methods inherited from interface com.tangosol.net.CacheService
destroyCache, ensureCache, getBackingMapManager, getCacheNames, releaseCache, setBackingMapManager
-
Methods inherited from interface com.tangosol.io.ClassLoaderAware
getContextClassLoader, setContextClassLoader
-
Methods inherited from interface com.tangosol.util.Controllable
configure, isRunning, shutdown, start, stop
-
Methods inherited from interface com.tangosol.net.DistributedCacheService
getStorageEnabledMembers, isLocalStorageEnabled
-
Methods inherited from interface com.tangosol.net.PartitionedService
addPartitionListener, getBackupCount, getBackupOwner, getBackupStrength, getBackupStrengthName, getKeyAssociator, getKeyOwner, getKeyPartitioningStrategy, getOwnedPartitions, getOwnershipEnabledMembers, getOwnershipSenior, getOwnershipVersion, getPartitionAssignmentStrategy, getPartitionCount, getPartitionOwner, getPersistenceMode, instantiateKeyToBinaryConverter, removePartitionListener
-
Methods inherited from interface com.tangosol.net.Service
addMemberListener, getCluster, getDependencies, getInfo, getMinimumServiceVersion, getResourceRegistry, getSerializer, getUserContext, isSuspended, isVersionCompatible, isVersionCompatible, isVersionCompatible, isVersionCompatible, removeMemberListener, setDependencies, setUserContext
-
Methods inherited from interface com.tangosol.util.Service
addServiceListener, removeServiceListener
-
Methods inherited from interface com.tangosol.net.TopicService
destroyTopic, ensureChannelCount, ensureChannelCount, ensureTopic, getChannelCount, getTopicNames, releaseTopic
-
-
-
-
Method Detail
-
getTopicBackingMapManager
com.tangosol.internal.net.topic.impl.paged.PagedTopicBackingMapManager getTopicBackingMapManager()
Return theTopicBackingMapManager
for this service.- Specified by:
getTopicBackingMapManager
in interfaceTopicService
- Returns:
- the
TopicBackingMapManager
for this service
-
ensureSubscriberGroup
default long ensureSubscriberGroup(String sTopicName, String sGroupName)
Ensure the specified subscriber group is created in a subscription.- Parameters:
sTopicName
- the name of the topicsGroupName
- the name of the subscriber group- Returns:
- the unique identifier of the subscriber group or
-1
if the cluster is not version compatible and cannot create subscriptions
-
ensureSubscriberGroup
default long ensureSubscriberGroup(String sTopicName, String sGroupName, Filter<?> filter, ValueExtractor<?,?> extractor)
Ensure the specified subscriber group is created in a subscription.- Parameters:
sTopicName
- the name of the topicsGroupName
- the name of the subscriber groupfilter
- theFilter
to use to filter messages sent to subscribersextractor
- theValueExtractor
to use to convert messages sent to subscribers- Returns:
- the unique identifier of the subscriber group or
-1
if the cluster is not version compatible and cannot create subscriptions
-
destroySubscriberGroup
void destroySubscriberGroup(String sTopicName, String sGroupName)
Destroy an existing subscriber group.- Parameters:
sTopicName
- the name of the topicsGroupName
- the name of the subscriber group
-
ensureSubscription
long ensureSubscription(String sTopicName, com.tangosol.internal.net.topic.impl.paged.model.SubscriberGroupId groupId, Subscriber.Id subscriberId, Filter<?> filter, ValueExtractor<?,?> extractor)
Ensure the specified subscriber is created in a subscription.- Parameters:
sTopicName
- the name of the topicgroupId
- theid
of the subscriber groupsubscriberId
- theSubscriber.Id
filter
- theFilter
to use to filter messages sent to subscribersextractor
- theValueExtractor
to use to convert messages sent to subscribers- Returns:
- the unique identifier of the subscriber group the
Subscriber
is subscribed to, of-1
if the cluster is not version compatible and cannot create subscriptions
-
ensureSubscription
void ensureSubscription(String sTopicName, long lSubscription, Subscriber.Id subscriberId)
Ensure the specified subscriber is subscribed to a subscription.- Parameters:
sTopicName
- the name of the topiclSubscription
- the unique id of the subscriber groupsubscriberId
- theSubscriber.Id
-
ensureSubscription
void ensureSubscription(String sTopicName, long lSubscription, Subscriber.Id subscriberId, boolean fForceReconnect)
Ensure the specified subscriber is subscribed to a subscription.- Parameters:
sTopicName
- the name of the topiclSubscription
- the unique id of the subscriber groupsubscriberId
- theSubscriber.Id
fForceReconnect
- force a reconnection even if the subscriber is known to the service
-
destroySubscription
void destroySubscription(long lSubscriptionId, Subscriber.Id subscriberId)
Remove an existing subscriber from a subscriber group.- Parameters:
lSubscriptionId
- the subscription identifiersubscriberId
- theSubscriber.Id
-
destroySubscription
void destroySubscription(long lSubscriptionId)
Remove an existing subscriber group.- Parameters:
lSubscriptionId
- the subscription identifier
-
hasSubscription
boolean hasSubscription(long lSubscriptionId)
Determine whether a subscriber group exists.- Parameters:
lSubscriptionId
- the id of the subscription to return- Returns:
true
if the group exists
-
isSubscriptionDestroyed
boolean isSubscriptionDestroyed(long lSubscriptionId)
Determine whether a subscriber group has been destroyed.- Parameters:
lSubscriptionId
- the unique identifier of the subscriber group- Returns:
true
if the group has been destroyed
-
getSubscription
com.tangosol.internal.net.topic.impl.paged.model.PagedTopicSubscription getSubscription(long lSubscriptionId)
Return aPagedTopicSubscription
.- Parameters:
lSubscriptionId
- the id of the subscription to return- Returns:
- the specified
PagedTopicSubscription
ornull
if the subscription does not exist.
-
getSubscriptionId
long getSubscriptionId(String sTopicName, com.tangosol.internal.net.topic.impl.paged.model.SubscriberGroupId groupId)
Return the subscription id for a subscriber group.- Parameters:
sTopicName
- the name of the topicgroupId
- theidentifier
for the subscriber group- Returns:
- the subscription id for a subscriber group or zero if the subscription does not exist.
-
getTopicStatistics
com.tangosol.internal.net.topic.impl.paged.statistics.PagedTopicStatistics getTopicStatistics(String sTopicName)
Returns thePagedTopicStatistics
for a topic.- Parameters:
sTopicName
- the name of the topic- Returns:
- the
PagedTopicStatistics
for the topic ornull
if no statistics exist for the topic
-
getSubscriberGroups
Set<com.tangosol.internal.net.topic.impl.paged.model.SubscriberGroupId> getSubscriberGroups(String sTopicName)
Returns thesubscriber groups
for a topic known to this service.- Returns:
- the
subscriber groups
for a topic known to this service
-
getSubscribers
Set<com.tangosol.internal.net.topic.impl.paged.model.SubscriberId> getSubscribers(String sTopicName, com.tangosol.internal.net.topic.impl.paged.model.SubscriberGroupId groupId)
Returns thesubscriber ids
known to this service and subscribed to a subscriber group for a topic .- Returns:
- the
subscriber ids
known to this service and subscribed to a subscriber group for a topic
-
addSubscriptionListener
void addSubscriptionListener(com.tangosol.internal.net.topic.impl.paged.model.PagedTopicSubscription.Listener listener)
Add a listener that will be notified when changes are made to topic subscriptions.- Parameters:
listener
- the listener to add
-
removeSubscriptionListener
void removeSubscriptionListener(com.tangosol.internal.net.topic.impl.paged.model.PagedTopicSubscription.Listener listener)
Remove a listener that was being notified when changes are made to topic subscriptions.- Parameters:
listener
- the listener to remove
-
-