Class SubscriptionsEndpoint


  • @Path("topics/{topicName}/subscriptions")
    public class SubscriptionsEndpoint
    extends java.lang.Object
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      javax.ws.rs.core.Response create​(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.Subscription get​(java.lang.String qualifiedTopicName, java.lang.String subscriptionName)  
      pl.allegro.tech.hermes.api.SubscriptionHealth getHealth​(java.lang.String qualifiedTopicName, java.lang.String subscriptionName)  
      javax.ws.rs.core.Response getLatestUndeliveredMessage​(java.lang.String qualifiedTopicName, java.lang.String subscriptionName)  
      javax.ws.rs.core.Response getLatestUndeliveredMessages​(java.lang.String qualifiedTopicName, java.lang.String subscriptionName)  
      javax.ws.rs.core.Response getMessageTrace​(java.lang.String qualifiedTopicName, java.lang.String subscriptionName, java.lang.String messageId)  
      pl.allegro.tech.hermes.api.SubscriptionMetrics getMetrics​(java.lang.String qualifiedTopicName, java.lang.String subscriptionName)  
      pl.allegro.tech.hermes.api.PersistentSubscriptionMetrics getPersistentMetrics​(java.lang.String qualifiedTopicName, java.lang.String subscriptionName)  
      pl.allegro.tech.hermes.api.Subscription.State getState​(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.Response remove​(java.lang.String qualifiedTopicName, java.lang.String subscriptionId, javax.ws.rs.container.ContainerRequestContext requestContext)  
      javax.ws.rs.core.Response retransmit​(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.Response update​(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.Response updateState​(java.lang.String qualifiedTopicName, java.lang.String subscriptionName, pl.allegro.tech.hermes.api.Subscription.State state, javax.ws.rs.container.ContainerRequestContext requestContext)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 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)