Class AbstractServerHandler<REQ extends MessageBody,RESP extends MessageBody>
- java.lang.Object
-
- org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandlerAdapter
-
- org.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandlerAdapter
-
- org.apache.flink.queryablestate.network.AbstractServerHandler<REQ,RESP>
-
- Type Parameters:
REQ
- the type of request the server expects to receive.RESP
- the type of response the server will send.
- All Implemented Interfaces:
org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandler
,org.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandler
- Direct Known Subclasses:
KvStateClientProxyHandler
,KvStateServerHandler
@Internal @Sharable public abstract class AbstractServerHandler<REQ extends MessageBody,RESP extends MessageBody> extends org.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandlerAdapter
The base class of every handler used by anAbstractServerBase
.
-
-
Field Summary
Fields Modifier and Type Field Description protected ExecutorService
queryExecutor
Thread pool for query execution.
-
Constructor Summary
Constructors Constructor Description AbstractServerHandler(AbstractServerBase<REQ,RESP> server, MessageSerializer<REQ,RESP> serializer, KvStateRequestStats stats)
Create the handler.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
channelActive(org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandlerContext ctx)
void
channelInactive(org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandlerContext ctx)
void
channelRead(org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandlerContext ctx, Object msg)
void
exceptionCaught(org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandlerContext ctx, Throwable cause)
protected String
getServerName()
abstract CompletableFuture<RESP>
handleRequest(long requestId, REQ request)
Handles an incoming request and returns aCompletableFuture
containing the corresponding response.abstract CompletableFuture<Void>
shutdown()
Shuts down any handler-specific resources, e.g. thread pools etc and returns aCompletableFuture
.-
Methods inherited from class org.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandlerAdapter
channelReadComplete, channelRegistered, channelUnregistered, channelWritabilityChanged, userEventTriggered
-
Methods inherited from class org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, handlerAdded, handlerRemoved, isSharable
-
-
-
-
Field Detail
-
queryExecutor
protected final ExecutorService queryExecutor
Thread pool for query execution.
-
-
Constructor Detail
-
AbstractServerHandler
public AbstractServerHandler(AbstractServerBase<REQ,RESP> server, MessageSerializer<REQ,RESP> serializer, KvStateRequestStats stats)
Create the handler.- Parameters:
serializer
- the serializer used to (de-)serialize messagesstats
- statistics collector
-
-
Method Detail
-
getServerName
protected String getServerName()
-
channelActive
public void channelActive(org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandlerContext ctx) throws Exception
- Specified by:
channelActive
in interfaceorg.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandler
- Overrides:
channelActive
in classorg.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandlerAdapter
- Throws:
Exception
-
channelInactive
public void channelInactive(org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandlerContext ctx) throws Exception
- Specified by:
channelInactive
in interfaceorg.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandler
- Overrides:
channelInactive
in classorg.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandlerAdapter
- Throws:
Exception
-
channelRead
public void channelRead(org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandlerContext ctx, Object msg) throws Exception
- Specified by:
channelRead
in interfaceorg.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandler
- Overrides:
channelRead
in classorg.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandlerAdapter
- Throws:
Exception
-
exceptionCaught
public void exceptionCaught(org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandlerContext ctx, Throwable cause) throws Exception
- Specified by:
exceptionCaught
in interfaceorg.apache.flink.shaded.netty4.io.netty.channel.ChannelHandler
- Specified by:
exceptionCaught
in interfaceorg.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandler
- Overrides:
exceptionCaught
in classorg.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandlerAdapter
- Throws:
Exception
-
handleRequest
public abstract CompletableFuture<RESP> handleRequest(long requestId, REQ request)
Handles an incoming request and returns aCompletableFuture
containing the corresponding response.NOTE: This method is called by multiple threads.
- Parameters:
requestId
- the id of the received request to be handled.request
- the request to be handled.- Returns:
- A future with the response to be forwarded to the client.
-
shutdown
public abstract CompletableFuture<Void> shutdown()
Shuts down any handler-specific resources, e.g. thread pools etc and returns aCompletableFuture
.If an exception is thrown during the shutdown process, then that exception will be included in the returned future.
- Returns:
- A
CompletableFuture
that will be completed when the shutdown process actually finishes.
-
-