Class TopicLookup


  • @Path("/v2/destination/")
    public class TopicLookup
    extends TopicLookupBase
    The path for this handler is marked as "v2" even though it refers to Pulsar 1.x topic name format. The lookup API was already /v2/ in Pulsar 1.x. This was internally versioned at Yahoo to not clash with an earlier API. Since we're adding now the "Pulsar v2" we cannot rename this topic lookup into /v1. Rather the difference here would be : lookup/v2/destination/persistent/prop/cluster/ns/topic vs lookup/v2/topic/persistent/prop/ns/topic.
    • Constructor Detail

      • TopicLookup

        public TopicLookup()
    • Method Detail

      • lookupTopicAsync

        @GET
        @Path("{topic-domain}/{property}/{cluster}/{namespace}/{topic}")
        @Produces("application/json")
        public void lookupTopicAsync​(@PathParam("topic-domain")
                                     java.lang.String topicDomain,
                                     @PathParam("property")
                                     java.lang.String property,
                                     @PathParam("cluster")
                                     java.lang.String cluster,
                                     @PathParam("namespace")
                                     java.lang.String namespace,
                                     @PathParam("topic") @Encoded
                                     java.lang.String encodedTopic,
                                     @QueryParam("authoritative") @DefaultValue("false")
                                     boolean authoritative,
                                     @Suspended
                                     javax.ws.rs.container.AsyncResponse asyncResponse,
                                     @QueryParam("listenerName")
                                     java.lang.String listenerName,
                                     @HeaderParam("X-Pulsar-ListenerName")
                                     java.lang.String listenerNameHeader)
      • getNamespaceBundle

        @GET
        @Path("{topic-domain}/{property}/{cluster}/{namespace}/{topic}/bundle")
        @Produces("application/json")
        public java.lang.String getNamespaceBundle​(@PathParam("topic-domain")
                                                   java.lang.String topicDomain,
                                                   @PathParam("property")
                                                   java.lang.String property,
                                                   @PathParam("cluster")
                                                   java.lang.String cluster,
                                                   @PathParam("namespace")
                                                   java.lang.String namespace,
                                                   @PathParam("topic") @Encoded
                                                   java.lang.String encodedTopic)