public final class BlobServerPortHandler extends AbstractRestHandler<DispatcherGateway,EmptyRequestBody,BlobServerPortResponseBody,EmptyMessageParameters>
log
leaderRetriever, localAddressFuture, logger, timeout
Constructor and Description |
---|
BlobServerPortHandler(CompletableFuture<String> localRestAddress,
GatewayRetriever<DispatcherGateway> leaderRetriever,
Time timeout) |
Modifier and Type | Method and Description |
---|---|
protected CompletableFuture<BlobServerPortResponseBody> |
handleRequest(HandlerRequest<EmptyRequestBody,EmptyMessageParameters> request,
DispatcherGateway gateway)
This method is called for every incoming request and returns a
CompletableFuture containing a the response. |
getMessageHeaders, respondAsLeader
channelRead0
acceptInboundMessage, channelRead
channelActive, channelInactive, channelReadComplete, channelRegistered, channelUnregistered, channelWritabilityChanged, exceptionCaught, userEventTriggered
handlerAdded, handlerRemoved, isSharable
public BlobServerPortHandler(CompletableFuture<String> localRestAddress, GatewayRetriever<DispatcherGateway> leaderRetriever, Time timeout)
protected CompletableFuture<BlobServerPortResponseBody> handleRequest(@Nonnull HandlerRequest<EmptyRequestBody,EmptyMessageParameters> request, @Nonnull DispatcherGateway 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<DispatcherGateway,EmptyRequestBody,BlobServerPortResponseBody,EmptyMessageParameters>
request
- request that should be handledgateway
- leader gatewayRestHandlerException
- if the handling failedCopyright © 2014–2018 The Apache Software Foundation. All rights reserved.