R
- response typepublic abstract class AbstractExecutionGraphHandler<R extends ResponseBody,M extends JobMessageParameters> extends AbstractRestHandler<RestfulGateway,EmptyRequestBody,R,M>
AccessExecutionGraph
based REST handlers.log, MAPPER
leaderRetriever, localAddressFuture, logger, responseHeaders, timeout
Modifier | Constructor and Description |
---|---|
protected |
AbstractExecutionGraphHandler(CompletableFuture<String> localRestAddress,
GatewayRetriever<? extends RestfulGateway> leaderRetriever,
Time timeout,
Map<String,String> responseHeaders,
MessageHeaders<EmptyRequestBody,R,M> messageHeaders,
ExecutionGraphCache executionGraphCache,
Executor executor) |
Modifier and Type | Method and Description |
---|---|
protected abstract R |
handleRequest(HandlerRequest<EmptyRequestBody,M> request,
AccessExecutionGraph executionGraph)
Called for each request after the corresponding
AccessExecutionGraph has been retrieved from the
ExecutionGraphCache . |
protected CompletableFuture<R> |
handleRequest(HandlerRequest<EmptyRequestBody,M> request,
RestfulGateway gateway)
This method is called for every incoming request and returns a
CompletableFuture containing a the response. |
getMessageHeaders, respondToRequest
closeAsync, closeHandlerAsync, respondAsLeader
channelRead0
acceptInboundMessage, channelRead
channelActive, channelInactive, channelReadComplete, channelRegistered, channelUnregistered, channelWritabilityChanged, exceptionCaught, userEventTriggered
handlerAdded, handlerRemoved, isSharable
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
close
protected AbstractExecutionGraphHandler(CompletableFuture<String> localRestAddress, GatewayRetriever<? extends RestfulGateway> leaderRetriever, Time timeout, Map<String,String> responseHeaders, MessageHeaders<EmptyRequestBody,R,M> messageHeaders, ExecutionGraphCache executionGraphCache, Executor executor)
protected CompletableFuture<R> handleRequest(@Nonnull HandlerRequest<EmptyRequestBody,M> request, @Nonnull RestfulGateway gateway) throws RestHandlerException
AbstractRestHandler
CompletableFuture
containing a the response.
Implementations may decide whether to throw RestHandlerException
s or fail the returned
CompletableFuture
with a RestHandlerException
.
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.
handleRequest
in class AbstractRestHandler<RestfulGateway,EmptyRequestBody,R extends ResponseBody,M extends JobMessageParameters>
request
- request that should be handledgateway
- leader gatewayRestHandlerException
- if the handling failedprotected abstract R handleRequest(HandlerRequest<EmptyRequestBody,M> request, AccessExecutionGraph executionGraph) throws RestHandlerException
AccessExecutionGraph
has been retrieved from the
ExecutionGraphCache
.request
- for further informationexecutionGraph
- for which the handler was calledRestHandlerException
- if the handler could not process the requestCopyright © 2014–2019 The Apache Software Foundation. All rights reserved.