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 Details

    • TopicLookup

      public TopicLookup()
  • Method Details

    • lookupTopicAsync

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

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