Class TopicsEndpoint


  • @Component
    @Path("/topics")
    public class TopicsEndpoint
    extends java.lang.Object
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      javax.ws.rs.core.Response create​(pl.allegro.tech.hermes.api.TopicWithSchema topicWithSchema, javax.ws.rs.container.ContainerRequestContext requestContext)  
      pl.allegro.tech.hermes.api.TopicWithSchema get​(java.lang.String qualifiedTopicName)  
      pl.allegro.tech.hermes.api.TopicMetrics getMetrics​(java.lang.String qualifiedTopicName)  
      java.util.List<pl.allegro.tech.hermes.api.MessageTextPreview> getPreview​(java.lang.String qualifiedTopicName)  
      byte[] getPreviewRaw​(java.lang.String qualifiedTopicName, java.lang.Integer idx)  
      java.util.List<java.lang.String> list​(java.lang.String groupName, boolean tracked)  
      java.util.List<pl.allegro.tech.hermes.api.Topic> listForOwner​(java.lang.String ownerSourceName, java.lang.String id)  
      java.lang.String preview​(java.lang.String qualifiedTopicName, java.lang.String brokersClusterName, java.lang.Integer partition, java.lang.Long offset)  
      java.util.List<java.lang.String> queryList​(java.lang.String groupName, pl.allegro.tech.hermes.api.Query<pl.allegro.tech.hermes.api.Topic> query)  
      javax.ws.rs.core.Response remove​(java.lang.String qualifiedTopicName, javax.ws.rs.container.ContainerRequestContext requestContext)  
      javax.ws.rs.core.Response update​(java.lang.String qualifiedTopicName, pl.allegro.tech.hermes.api.PatchData patch, 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​(@DefaultValue("") @QueryParam("groupName")
                                                     java.lang.String groupName,
                                                     @DefaultValue("false") @QueryParam("tracked")
                                                     boolean tracked)
      • queryList

        @POST
        @Consumes("application/json")
        @Produces("application/json")
        @Path("/query")
        public java.util.List<java.lang.String> queryList​(@DefaultValue("") @QueryParam("groupName")
                                                          java.lang.String groupName,
                                                          pl.allegro.tech.hermes.api.Query<pl.allegro.tech.hermes.api.Topic> query)
      • create

        @POST
        @Consumes("application/json")
        @Produces("application/json")
        @RolesAllowed("any")
        public javax.ws.rs.core.Response create​(pl.allegro.tech.hermes.api.TopicWithSchema topicWithSchema,
                                                @Context
                                                javax.ws.rs.container.ContainerRequestContext requestContext)
      • remove

        @DELETE
        @Produces("application/json")
        @Path("/{topicName}")
        @RolesAllowed({"admin","topicOwner"})
        public javax.ws.rs.core.Response remove​(@PathParam("topicName")
                                                java.lang.String qualifiedTopicName,
                                                @Context
                                                javax.ws.rs.container.ContainerRequestContext requestContext)
      • update

        @PUT
        @Consumes("application/json")
        @Produces("application/json")
        @Path("/{topicName}")
        @RolesAllowed({"admin","topicOwner"})
        public javax.ws.rs.core.Response update​(@PathParam("topicName")
                                                java.lang.String qualifiedTopicName,
                                                pl.allegro.tech.hermes.api.PatchData patch,
                                                @Context
                                                javax.ws.rs.container.ContainerRequestContext requestContext)
      • get

        @GET
        @Produces("application/json")
        @Path("/{topicName}")
        public pl.allegro.tech.hermes.api.TopicWithSchema get​(@PathParam("topicName")
                                                              java.lang.String qualifiedTopicName)
      • getMetrics

        @GET
        @Produces("application/json")
        @Path("/{topicName}/metrics")
        public pl.allegro.tech.hermes.api.TopicMetrics getMetrics​(@PathParam("topicName")
                                                                  java.lang.String qualifiedTopicName)
      • getPreview

        @GET
        @Produces("application/json")
        @Path("/{topicName}/preview")
        public java.util.List<pl.allegro.tech.hermes.api.MessageTextPreview> getPreview​(@PathParam("topicName")
                                                                                        java.lang.String qualifiedTopicName)
      • getPreviewRaw

        @GET
        @Produces("application/octet-stream")
        @Path("/{topicName}/preview/{idx}")
        public byte[] getPreviewRaw​(@PathParam("topicName")
                                    java.lang.String qualifiedTopicName,
                                    @PathParam("idx")
                                    java.lang.Integer idx)
      • preview

        @GET
        @Produces("application/json")
        @Path("/{topicName}/preview/cluster/{brokersClusterName}/partition/{partition}/offset/{offset}")
        @RolesAllowed("admin")
        public java.lang.String preview​(@PathParam("topicName")
                                        java.lang.String qualifiedTopicName,
                                        @PathParam("brokersClusterName")
                                        java.lang.String brokersClusterName,
                                        @PathParam("partition")
                                        java.lang.Integer partition,
                                        @PathParam("offset")
                                        java.lang.Long offset)
      • listForOwner

        @GET
        @Produces("application/json")
        @Path("/owner/{ownerSourceName}/{ownerId}")
        public java.util.List<pl.allegro.tech.hermes.api.Topic> listForOwner​(@PathParam("ownerSourceName")
                                                                             java.lang.String ownerSourceName,
                                                                             @PathParam("ownerId")
                                                                             java.lang.String id)