Class AbstractSqlGatewayRestHandler<R extends org.apache.flink.runtime.rest.messages.RequestBody,P extends org.apache.flink.runtime.rest.messages.ResponseBody,M extends org.apache.flink.runtime.rest.messages.MessageParameters>
- java.lang.Object
-
- org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandlerAdapter
-
- org.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandlerAdapter
-
- org.apache.flink.shaded.netty4.io.netty.channel.SimpleChannelInboundHandler<org.apache.flink.runtime.rest.handler.router.RoutedRequest>
-
- org.apache.flink.runtime.rest.handler.LeaderRetrievalHandler<T>
-
- org.apache.flink.runtime.rest.handler.AbstractHandler<org.apache.flink.runtime.webmonitor.NonLeaderRetrievalRestfulGateway,R,M>
-
- org.apache.flink.table.gateway.rest.handler.AbstractSqlGatewayRestHandler<R,P,M>
-
- Type Parameters:
R- type of incoming requestsP- type of outgoing responses
- All Implemented Interfaces:
AutoCloseable,org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandler,org.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandler,org.apache.flink.util.AutoCloseableAsync
- Direct Known Subclasses:
AbstractOperationHandler,CloseSessionHandler,CompleteStatementHandler,ConfigureSessionHandler,ExecuteStatementHandler,FetchResultsHandler,GetApiVersionHandler,GetInfoHandler,GetSessionConfigHandler,OpenSessionHandler,TriggerSessionHeartbeatHandler
public abstract class AbstractSqlGatewayRestHandler<R extends org.apache.flink.runtime.rest.messages.RequestBody,P extends org.apache.flink.runtime.rest.messages.ResponseBody,M extends org.apache.flink.runtime.rest.messages.MessageParameters> extends org.apache.flink.runtime.rest.handler.AbstractHandler<org.apache.flink.runtime.webmonitor.NonLeaderRetrievalRestfulGateway,R,M>Super class for sql gateway handlers that work withRequestBodys andResponseBodys.
-
-
Field Summary
Fields Modifier and Type Field Description protected org.apache.flink.table.gateway.api.SqlGatewayServiceservice
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract CompletableFuture<P>handleRequest(SqlGatewayRestAPIVersion version, org.apache.flink.runtime.rest.handler.HandlerRequest<R> request)This method is called for every incoming request and returns aCompletableFuturecontaining a the response.protected CompletableFuture<Void>respondToRequest(org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandlerContext ctx, org.apache.flink.shaded.netty4.io.netty.handler.codec.http.HttpRequest httpRequest, org.apache.flink.runtime.rest.handler.HandlerRequest<R> handlerRequest, org.apache.flink.runtime.webmonitor.NonLeaderRetrievalRestfulGateway gateway)-
Methods inherited from class org.apache.flink.runtime.rest.handler.AbstractHandler
closeAsync, closeHandlerAsync, respondAsLeader
-
Methods inherited from class org.apache.flink.runtime.rest.handler.LeaderRetrievalHandler
channelRead0, getTimeout
-
Methods inherited from class org.apache.flink.shaded.netty4.io.netty.channel.SimpleChannelInboundHandler
acceptInboundMessage, channelRead
-
Methods inherited from class org.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandlerAdapter
channelActive, channelInactive, channelReadComplete, channelRegistered, channelUnregistered, channelWritabilityChanged, exceptionCaught, userEventTriggered
-
Methods inherited from class org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, handlerAdded, handlerRemoved, isSharable
-
-
-
-
Method Detail
-
respondToRequest
protected CompletableFuture<Void> respondToRequest(org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandlerContext ctx, org.apache.flink.shaded.netty4.io.netty.handler.codec.http.HttpRequest httpRequest, org.apache.flink.runtime.rest.handler.HandlerRequest<R> handlerRequest, org.apache.flink.runtime.webmonitor.NonLeaderRetrievalRestfulGateway gateway)
-
handleRequest
protected abstract CompletableFuture<P> handleRequest(@Nullable SqlGatewayRestAPIVersion version, @Nonnull org.apache.flink.runtime.rest.handler.HandlerRequest<R> request) throws org.apache.flink.runtime.rest.handler.RestHandlerException
This method is called for every incoming request and returns aCompletableFuturecontaining a the response.Implementations may decide whether to throw
RestHandlerExceptions or fail the returnedCompletableFuturewith aRestHandlerException.Failing the future with another exception type or throwing unchecked exceptions is regarded as an implementation error as it does not allow us to provide a meaningful HTTP status code. In this case a
HttpResponseStatus.INTERNAL_SERVER_ERRORwill be returned.- Parameters:
version- request versionrequest- request that should be handled- Returns:
- future containing a handler response
- Throws:
org.apache.flink.runtime.rest.handler.RestHandlerException- if the handling failed
-
-