Class AbstractExecutionGraphHandler<R extends ResponseBody,M extends JobMessageParameters>
- 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<RoutedRequest>
-
- org.apache.flink.runtime.rest.handler.LeaderRetrievalHandler<T>
-
- org.apache.flink.runtime.rest.handler.AbstractHandler<T,R,M>
-
- org.apache.flink.runtime.rest.handler.AbstractRestHandler<RestfulGateway,EmptyRequestBody,R,M>
-
- org.apache.flink.runtime.rest.handler.job.AbstractExecutionGraphHandler<R,M>
-
- Type Parameters:
R
- response typeM
- job message parameter type
- All Implemented Interfaces:
AutoCloseable
,org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandler
,org.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandler
,AutoCloseableAsync
- Direct Known Subclasses:
AbstractAccessExecutionGraphHandler
,JobExceptionsHandler
public abstract class AbstractExecutionGraphHandler<R extends ResponseBody,M extends JobMessageParameters> extends AbstractRestHandler<RestfulGateway,EmptyRequestBody,R,M>
Base class for allExecutionGraphInfo
based REST handlers.
-
-
Field Summary
-
Fields inherited from class org.apache.flink.runtime.rest.handler.AbstractHandler
log, MAPPER
-
Fields inherited from class org.apache.flink.runtime.rest.handler.LeaderRetrievalHandler
leaderRetriever, logger, responseHeaders, timeout
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractExecutionGraphHandler(GatewayRetriever<? extends RestfulGateway> leaderRetriever, Duration timeout, Map<String,String> responseHeaders, MessageHeaders<EmptyRequestBody,R,M> messageHeaders, ExecutionGraphCache executionGraphCache, Executor executor)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract R
handleRequest(HandlerRequest<EmptyRequestBody> request, ExecutionGraphInfo executionGraphInfo)
Called for each request after the correspondingExecutionGraphInfo
has been retrieved from theExecutionGraphCache
.protected CompletableFuture<R>
handleRequest(HandlerRequest<EmptyRequestBody> request, RestfulGateway gateway)
This method is called for every incoming request and returns aCompletableFuture
containing a the response.-
Methods inherited from class org.apache.flink.runtime.rest.handler.AbstractRestHandler
getMessageHeaders, respondToRequest
-
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
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.flink.util.AutoCloseableAsync
close
-
-
-
-
Constructor Detail
-
AbstractExecutionGraphHandler
protected AbstractExecutionGraphHandler(GatewayRetriever<? extends RestfulGateway> leaderRetriever, Duration timeout, Map<String,String> responseHeaders, MessageHeaders<EmptyRequestBody,R,M> messageHeaders, ExecutionGraphCache executionGraphCache, Executor executor)
-
-
Method Detail
-
handleRequest
protected CompletableFuture<R> handleRequest(@Nonnull HandlerRequest<EmptyRequestBody> request, @Nonnull RestfulGateway gateway) throws RestHandlerException
Description copied from class:AbstractRestHandler
This method is called for every incoming request and returns aCompletableFuture
containing a the response.Implementations may decide whether to throw
RestHandlerException
s or fail the returnedCompletableFuture
with 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_ERROR
will be returned.- Specified by:
handleRequest
in classAbstractRestHandler<RestfulGateway,EmptyRequestBody,R extends ResponseBody,M extends JobMessageParameters>
- Parameters:
request
- request that should be handledgateway
- leader gateway- Returns:
- future containing a handler response
- Throws:
RestHandlerException
- if the handling failed
-
handleRequest
protected abstract R handleRequest(HandlerRequest<EmptyRequestBody> request, ExecutionGraphInfo executionGraphInfo) throws RestHandlerException
Called for each request after the correspondingExecutionGraphInfo
has been retrieved from theExecutionGraphCache
.- Parameters:
request
- for further informationexecutionGraphInfo
- for which the handler was called- Returns:
- Response
- Throws:
RestHandlerException
- if the handler could not process the request
-
-