Class ProducerHandler

java.lang.Object
org.eclipse.jetty.websocket.api.WebSocketAdapter
org.apache.pulsar.websocket.AbstractWebSocketHandler
org.apache.pulsar.websocket.ProducerHandler
All Implemented Interfaces:
Closeable, AutoCloseable, org.eclipse.jetty.websocket.api.WebSocketConnectionListener, org.eclipse.jetty.websocket.api.WebSocketListener

public class ProducerHandler extends AbstractWebSocketHandler
Websocket end-point url handler to handle incoming message coming from client. Websocket end-point url handler to handle incoming message coming from client.

On every produced message from client it calls broker to persists it.

  • Field Details

    • ENTRY_LATENCY_BUCKETS_USEC

      public static final List<Long> ENTRY_LATENCY_BUCKETS_USEC
  • Constructor Details

    • ProducerHandler

      public ProducerHandler(WebSocketService service, javax.servlet.http.HttpServletRequest request, org.eclipse.jetty.websocket.servlet.ServletUpgradeResponse response)
  • Method Details

    • close

      public void close() throws IOException
      Throws:
      IOException
    • onWebSocketText

      public void onWebSocketText(String message)
      Specified by:
      onWebSocketText in interface org.eclipse.jetty.websocket.api.WebSocketListener
      Overrides:
      onWebSocketText in class org.eclipse.jetty.websocket.api.WebSocketAdapter
    • getProducer

      public org.apache.pulsar.client.api.Producer<byte[]> getProducer()
    • getAndResetNumMsgsSent

      public long getAndResetNumMsgsSent()
    • getAndResetNumBytesSent

      public long getAndResetNumBytesSent()
    • getAndResetNumMsgsFailed

      public long getAndResetNumMsgsFailed()
    • getAndResetPublishLatencyStatsUSec

      public long[] getAndResetPublishLatencyStatsUSec()
    • getPublishLatencyStatsUSec

      public StatsBuckets getPublishLatencyStatsUSec()
    • getMsgPublishedCounter

      public long getMsgPublishedCounter()
    • isAuthorized

      protected Boolean isAuthorized(String authRole, AuthenticationDataSource authenticationData) throws Exception
      Specified by:
      isAuthorized in class AbstractWebSocketHandler
      Throws:
      Exception
    • getProducerBuilder

      protected org.apache.pulsar.client.api.ProducerBuilder<byte[]> getProducerBuilder(org.apache.pulsar.client.api.PulsarClient client)