Package org.apache.pulsar.websocket
Class ProducerHandler
- java.lang.Object
-
- org.eclipse.jetty.websocket.api.WebSocketAdapter
-
- org.apache.pulsar.websocket.AbstractWebSocketHandler
-
- org.apache.pulsar.websocket.ProducerHandler
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.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 Summary
Fields Modifier and Type Field Description static java.util.List<java.lang.Long>ENTRY_LATENCY_BUCKETS_USEC-
Fields inherited from class org.apache.pulsar.websocket.AbstractWebSocketHandler
queryParams, request, service, topic
-
-
Constructor Summary
Constructors Constructor Description ProducerHandler(WebSocketService service, javax.servlet.http.HttpServletRequest request, org.eclipse.jetty.websocket.servlet.ServletUpgradeResponse response)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()longgetAndResetNumBytesSent()longgetAndResetNumMsgsFailed()longgetAndResetNumMsgsSent()long[]getAndResetPublishLatencyStatsUSec()longgetMsgPublishedCounter()org.apache.pulsar.client.api.Producer<byte[]>getProducer()protected org.apache.pulsar.client.api.ProducerBuilder<byte[]>getProducerBuilder(org.apache.pulsar.client.api.PulsarClient client)StatsBucketsgetPublishLatencyStatsUSec()protected java.lang.BooleanisAuthorized(java.lang.String authRole, org.apache.pulsar.broker.authentication.AuthenticationDataSource authenticationData)voidonWebSocketText(java.lang.String message)-
Methods inherited from class org.apache.pulsar.websocket.AbstractWebSocketHandler
checkAuth, checkAuthentication, close, close, getErrorCode, getErrorMessage, getPingFuture, onWebSocketClose, onWebSocketConnect, onWebSocketError
-
-
-
-
Constructor Detail
-
ProducerHandler
public ProducerHandler(WebSocketService service, javax.servlet.http.HttpServletRequest request, org.eclipse.jetty.websocket.servlet.ServletUpgradeResponse response)
-
-
Method Detail
-
close
public void close() throws java.io.IOException- Throws:
java.io.IOException
-
onWebSocketText
public void onWebSocketText(java.lang.String message)
- Specified by:
onWebSocketTextin interfaceorg.eclipse.jetty.websocket.api.WebSocketListener- Overrides:
onWebSocketTextin classorg.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 java.lang.Boolean isAuthorized(java.lang.String authRole, org.apache.pulsar.broker.authentication.AuthenticationDataSource authenticationData) throws java.lang.Exception- Specified by:
isAuthorizedin classAbstractWebSocketHandler- Throws:
java.lang.Exception
-
getProducerBuilder
protected org.apache.pulsar.client.api.ProducerBuilder<byte[]> getProducerBuilder(org.apache.pulsar.client.api.PulsarClient client)
-
-