public class SubscriptionService
extends java.lang.Object
| Constructor and Description |
|---|
SubscriptionService(pl.allegro.tech.hermes.domain.subscription.SubscriptionRepository subscriptionRepository,
SubscriptionOwnerCache subscriptionOwnerCache,
TopicService topicService,
SubscriptionMetricsRepository metricsRepository,
SubscriptionHealthChecker subscriptionHealthChecker,
pl.allegro.tech.hermes.tracker.management.LogRepository logRepository,
SubscriptionValidator subscriptionValidator,
Auditor auditor,
MultiDatacenterRepositoryCommandExecutor multiDcExecutor,
MultiDCAwareService multiDCAwareService,
RepositoryManager repositoryManager,
java.util.concurrent.ExecutorService unhealthyGetExecutorService,
long unhealthyGetTimeoutMillis) |
| Modifier and Type | Method and Description |
|---|---|
void |
createSubscription(pl.allegro.tech.hermes.api.Subscription subscription,
java.lang.String createdBy,
CreatorRights creatorRights,
java.lang.String qualifiedTopicName) |
java.util.List<pl.allegro.tech.hermes.api.Subscription> |
getAllSubscriptions() |
java.util.List<pl.allegro.tech.hermes.api.UnhealthySubscription> |
getAllUnhealthy(boolean respectMonitoringSeverity,
java.util.List<java.lang.String> subscriptionNames,
java.util.List<java.lang.String> qualifiedTopicNames) |
java.util.List<pl.allegro.tech.hermes.api.Subscription> |
getForOwnerId(pl.allegro.tech.hermes.api.OwnerId ownerId) |
java.util.Optional<pl.allegro.tech.hermes.api.SentMessageTrace> |
getLatestUndeliveredMessage(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName) |
java.util.List<pl.allegro.tech.hermes.api.SentMessageTrace> |
getLatestUndeliveredMessagesTrackerLogs(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName) |
java.util.List<pl.allegro.tech.hermes.api.MessageTrace> |
getMessageStatus(java.lang.String qualifiedTopicName,
java.lang.String subscriptionName,
java.lang.String messageId) |
pl.allegro.tech.hermes.api.Subscription |
getSubscriptionDetails(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName) |
pl.allegro.tech.hermes.api.SubscriptionHealth |
getSubscriptionHealth(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName) |
pl.allegro.tech.hermes.api.SubscriptionMetrics |
getSubscriptionMetrics(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName) |
pl.allegro.tech.hermes.api.Subscription.State |
getSubscriptionState(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName) |
java.util.List<pl.allegro.tech.hermes.api.UnhealthySubscription> |
getUnhealthyForOwner(pl.allegro.tech.hermes.api.OwnerId ownerId,
boolean respectMonitoringSeverity,
java.util.List<java.lang.String> subscriptionNames,
java.util.List<java.lang.String> qualifiedTopicNames) |
java.util.List<java.lang.String> |
listFilteredSubscriptionNames(pl.allegro.tech.hermes.api.TopicName topicName,
pl.allegro.tech.hermes.api.Query<pl.allegro.tech.hermes.api.Subscription> query) |
java.util.List<java.lang.String> |
listSubscriptionNames(pl.allegro.tech.hermes.api.TopicName topicName) |
java.util.List<pl.allegro.tech.hermes.api.Subscription> |
listSubscriptions(pl.allegro.tech.hermes.api.TopicName topicName) |
java.util.List<java.lang.String> |
listTrackedSubscriptionNames(pl.allegro.tech.hermes.api.TopicName topicName) |
java.util.List<pl.allegro.tech.hermes.api.Subscription> |
querySubscription(pl.allegro.tech.hermes.api.Query<pl.allegro.tech.hermes.api.Subscription> query) |
java.util.List<pl.allegro.tech.hermes.api.SubscriptionNameWithMetrics> |
querySubscriptionsMetrics(pl.allegro.tech.hermes.api.Query<pl.allegro.tech.hermes.api.SubscriptionNameWithMetrics> query) |
void |
removeSubscription(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName,
java.lang.String removedBy) |
void |
updateSubscription(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName,
pl.allegro.tech.hermes.api.PatchData patch,
java.lang.String modifiedBy) |
void |
updateSubscriptionState(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName,
pl.allegro.tech.hermes.api.Subscription.State state,
java.lang.String modifiedBy) |
public SubscriptionService(pl.allegro.tech.hermes.domain.subscription.SubscriptionRepository subscriptionRepository,
SubscriptionOwnerCache subscriptionOwnerCache,
TopicService topicService,
SubscriptionMetricsRepository metricsRepository,
SubscriptionHealthChecker subscriptionHealthChecker,
pl.allegro.tech.hermes.tracker.management.LogRepository logRepository,
SubscriptionValidator subscriptionValidator,
Auditor auditor,
MultiDatacenterRepositoryCommandExecutor multiDcExecutor,
MultiDCAwareService multiDCAwareService,
RepositoryManager repositoryManager,
java.util.concurrent.ExecutorService unhealthyGetExecutorService,
long unhealthyGetTimeoutMillis)
public java.util.List<java.lang.String> listSubscriptionNames(pl.allegro.tech.hermes.api.TopicName topicName)
public java.util.List<java.lang.String> listTrackedSubscriptionNames(pl.allegro.tech.hermes.api.TopicName topicName)
public java.util.List<java.lang.String> listFilteredSubscriptionNames(pl.allegro.tech.hermes.api.TopicName topicName,
pl.allegro.tech.hermes.api.Query<pl.allegro.tech.hermes.api.Subscription> query)
public java.util.List<pl.allegro.tech.hermes.api.Subscription> listSubscriptions(pl.allegro.tech.hermes.api.TopicName topicName)
public void createSubscription(pl.allegro.tech.hermes.api.Subscription subscription,
java.lang.String createdBy,
CreatorRights creatorRights,
java.lang.String qualifiedTopicName)
public pl.allegro.tech.hermes.api.Subscription getSubscriptionDetails(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName)
public void removeSubscription(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName,
java.lang.String removedBy)
public void updateSubscription(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName,
pl.allegro.tech.hermes.api.PatchData patch,
java.lang.String modifiedBy)
public void updateSubscriptionState(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName,
pl.allegro.tech.hermes.api.Subscription.State state,
java.lang.String modifiedBy)
public pl.allegro.tech.hermes.api.Subscription.State getSubscriptionState(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName)
public pl.allegro.tech.hermes.api.SubscriptionMetrics getSubscriptionMetrics(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName)
public pl.allegro.tech.hermes.api.SubscriptionHealth getSubscriptionHealth(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName)
public java.util.Optional<pl.allegro.tech.hermes.api.SentMessageTrace> getLatestUndeliveredMessage(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName)
public java.util.List<pl.allegro.tech.hermes.api.SentMessageTrace> getLatestUndeliveredMessagesTrackerLogs(pl.allegro.tech.hermes.api.TopicName topicName,
java.lang.String subscriptionName)
public java.util.List<pl.allegro.tech.hermes.api.MessageTrace> getMessageStatus(java.lang.String qualifiedTopicName,
java.lang.String subscriptionName,
java.lang.String messageId)
public java.util.List<pl.allegro.tech.hermes.api.Subscription> querySubscription(pl.allegro.tech.hermes.api.Query<pl.allegro.tech.hermes.api.Subscription> query)
public java.util.List<pl.allegro.tech.hermes.api.SubscriptionNameWithMetrics> querySubscriptionsMetrics(pl.allegro.tech.hermes.api.Query<pl.allegro.tech.hermes.api.SubscriptionNameWithMetrics> query)
public java.util.List<pl.allegro.tech.hermes.api.Subscription> getAllSubscriptions()
public java.util.List<pl.allegro.tech.hermes.api.Subscription> getForOwnerId(pl.allegro.tech.hermes.api.OwnerId ownerId)
public java.util.List<pl.allegro.tech.hermes.api.UnhealthySubscription> getAllUnhealthy(boolean respectMonitoringSeverity,
java.util.List<java.lang.String> subscriptionNames,
java.util.List<java.lang.String> qualifiedTopicNames)
public java.util.List<pl.allegro.tech.hermes.api.UnhealthySubscription> getUnhealthyForOwner(pl.allegro.tech.hermes.api.OwnerId ownerId,
boolean respectMonitoringSeverity,
java.util.List<java.lang.String> subscriptionNames,
java.util.List<java.lang.String> qualifiedTopicNames)