Class SubscriptionsEndpoint
- java.lang.Object
-
- pl.allegro.tech.hermes.management.api.SubscriptionsEndpoint
-
@Path("topics/{topicName}/subscriptions") public class SubscriptionsEndpoint extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description SubscriptionsEndpoint(SubscriptionService subscriptionService, TopicService topicService, MultiDCAwareService multiDCAwareService)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description javax.ws.rs.core.Responsecreate(java.lang.String qualifiedTopicName, pl.allegro.tech.hermes.api.Subscription subscription, javax.ws.rs.container.ContainerRequestContext requestContext)java.util.List<pl.allegro.tech.hermes.api.ConsumerGroup>describeConsumerGroups(java.lang.String qualifiedTopicName, java.lang.String subscriptionName)pl.allegro.tech.hermes.api.Subscriptionget(java.lang.String qualifiedTopicName, java.lang.String subscriptionName)pl.allegro.tech.hermes.api.SubscriptionHealthgetHealth(java.lang.String qualifiedTopicName, java.lang.String subscriptionName)javax.ws.rs.core.ResponsegetLatestUndeliveredMessage(java.lang.String qualifiedTopicName, java.lang.String subscriptionName)javax.ws.rs.core.ResponsegetLatestUndeliveredMessages(java.lang.String qualifiedTopicName, java.lang.String subscriptionName)javax.ws.rs.core.ResponsegetMessageTrace(java.lang.String qualifiedTopicName, java.lang.String subscriptionName, java.lang.String messageId)pl.allegro.tech.hermes.api.SubscriptionMetricsgetMetrics(java.lang.String qualifiedTopicName, java.lang.String subscriptionName)pl.allegro.tech.hermes.api.PersistentSubscriptionMetricsgetPersistentMetrics(java.lang.String qualifiedTopicName, java.lang.String subscriptionName)pl.allegro.tech.hermes.api.Subscription.StategetState(java.lang.String qualifiedTopicName, java.lang.String subscriptionName)java.util.List<java.lang.String>list(java.lang.String qualifiedTopicName, boolean tracked)java.util.List<java.lang.String>queryList(java.lang.String qualifiedTopicName, pl.allegro.tech.hermes.api.Query<pl.allegro.tech.hermes.api.Subscription> query)javax.ws.rs.core.Responseremove(java.lang.String qualifiedTopicName, java.lang.String subscriptionId, javax.ws.rs.container.ContainerRequestContext requestContext)javax.ws.rs.core.Responseretransmit(java.lang.String qualifiedTopicName, java.lang.String subscriptionName, boolean dryRun, @Valid pl.allegro.tech.hermes.api.OffsetRetransmissionDate offsetRetransmissionDate, javax.ws.rs.container.ContainerRequestContext requestContext)javax.ws.rs.core.Responseupdate(java.lang.String qualifiedTopicName, java.lang.String subscriptionName, pl.allegro.tech.hermes.api.PatchData patch, javax.ws.rs.container.ContainerRequestContext requestContext)javax.ws.rs.core.ResponseupdateState(java.lang.String qualifiedTopicName, java.lang.String subscriptionName, pl.allegro.tech.hermes.api.Subscription.State state, javax.ws.rs.container.ContainerRequestContext requestContext)
-
-
-
Constructor Detail
-
SubscriptionsEndpoint
@Autowired public SubscriptionsEndpoint(SubscriptionService subscriptionService, TopicService topicService, MultiDCAwareService multiDCAwareService)
-
-
Method Detail
-
list
@GET @Produces("application/json") public java.util.List<java.lang.String> list(@PathParam("topicName") java.lang.String qualifiedTopicName, @DefaultValue("false") @QueryParam("tracked") boolean tracked)
-
queryList
@POST @Consumes("application/json") @Produces("application/json") @Path("/query") public java.util.List<java.lang.String> queryList(@PathParam("topicName") java.lang.String qualifiedTopicName, pl.allegro.tech.hermes.api.Query<pl.allegro.tech.hermes.api.Subscription> query)
-
create
@POST @Consumes("application/json") @RolesAllowed("any") public javax.ws.rs.core.Response create(@PathParam("topicName") java.lang.String qualifiedTopicName, pl.allegro.tech.hermes.api.Subscription subscription, @Context javax.ws.rs.container.ContainerRequestContext requestContext)
-
get
@GET @Produces("application/json") @Path("/{subscriptionName}") public pl.allegro.tech.hermes.api.Subscription get(@PathParam("topicName") java.lang.String qualifiedTopicName, @PathParam("subscriptionName") java.lang.String subscriptionName)
-
getState
@GET @Produces("application/json") @Path("/{subscriptionName}/state") public pl.allegro.tech.hermes.api.Subscription.State getState(@PathParam("topicName") java.lang.String qualifiedTopicName, @PathParam("subscriptionName") java.lang.String subscriptionName)
-
getLatestUndeliveredMessage
@GET @Produces("application/json") @Path("/{subscriptionName}/undelivered/last") public javax.ws.rs.core.Response getLatestUndeliveredMessage(@PathParam("topicName") java.lang.String qualifiedTopicName, @PathParam("subscriptionName") java.lang.String subscriptionName)
-
getLatestUndeliveredMessages
@GET @Produces("application/json") @Path("/{subscriptionName}/undelivered") public javax.ws.rs.core.Response getLatestUndeliveredMessages(@PathParam("topicName") java.lang.String qualifiedTopicName, @PathParam("subscriptionName") java.lang.String subscriptionName)
-
getMetrics
@GET @Produces("application/json") @Path("/{subscriptionName}/metrics") public pl.allegro.tech.hermes.api.SubscriptionMetrics getMetrics(@PathParam("topicName") java.lang.String qualifiedTopicName, @PathParam("subscriptionName") java.lang.String subscriptionName)
-
getPersistentMetrics
@GET @Produces("application/json") @Path("/{subscriptionName}/metrics/persistent") public pl.allegro.tech.hermes.api.PersistentSubscriptionMetrics getPersistentMetrics(@PathParam("topicName") java.lang.String qualifiedTopicName, @PathParam("subscriptionName") java.lang.String subscriptionName)
-
getHealth
@GET @Produces("application/json") @Path("/{subscriptionName}/health") public pl.allegro.tech.hermes.api.SubscriptionHealth getHealth(@PathParam("topicName") java.lang.String qualifiedTopicName, @PathParam("subscriptionName") java.lang.String subscriptionName)
-
updateState
@PUT @Consumes("application/json") @Path("/{subscriptionName}/state") @RolesAllowed({"admin","topicOwner","subscriptionOwner"}) public javax.ws.rs.core.Response updateState(@PathParam("topicName") java.lang.String qualifiedTopicName, @PathParam("subscriptionName") java.lang.String subscriptionName, pl.allegro.tech.hermes.api.Subscription.State state, @Context javax.ws.rs.container.ContainerRequestContext requestContext)
-
remove
@DELETE @Path("/{subscriptionName}") @RolesAllowed({"admin","topicOwner","subscriptionOwner"}) public javax.ws.rs.core.Response remove(@PathParam("topicName") java.lang.String qualifiedTopicName, @PathParam("subscriptionName") java.lang.String subscriptionId, @Context javax.ws.rs.container.ContainerRequestContext requestContext)
-
update
@PUT @Consumes("application/json") @Path("/{subscriptionName}") @RolesAllowed({"admin","topicOwner","subscriptionOwner"}) public javax.ws.rs.core.Response update(@PathParam("topicName") java.lang.String qualifiedTopicName, @PathParam("subscriptionName") java.lang.String subscriptionName, pl.allegro.tech.hermes.api.PatchData patch, @Context javax.ws.rs.container.ContainerRequestContext requestContext)
-
retransmit
@PUT @Consumes("application/json") @Produces("application/json") @Path("/{subscriptionName}/retransmission") @RolesAllowed({"admin","topicOwner","subscriptionOwner"}) public javax.ws.rs.core.Response retransmit(@PathParam("topicName") java.lang.String qualifiedTopicName, @PathParam("subscriptionName") java.lang.String subscriptionName, @DefaultValue("false") @QueryParam("dryRun") boolean dryRun, @Valid @Valid pl.allegro.tech.hermes.api.OffsetRetransmissionDate offsetRetransmissionDate, @Context javax.ws.rs.container.ContainerRequestContext requestContext)
-
getMessageTrace
@GET @Produces("application/json") @Path("/{subscriptionName}/events/{messageId}/trace") public javax.ws.rs.core.Response getMessageTrace(@PathParam("topicName") java.lang.String qualifiedTopicName, @PathParam("subscriptionName") java.lang.String subscriptionName, @PathParam("messageId") java.lang.String messageId)
-
describeConsumerGroups
@GET @Produces("application/json") @Path("/{subscriptionName}/consumer-groups") public java.util.List<pl.allegro.tech.hermes.api.ConsumerGroup> describeConsumerGroups(@PathParam("topicName") java.lang.String qualifiedTopicName, @PathParam("subscriptionName") java.lang.String subscriptionName)
-
-