Class RescalingHandlers.RescalingStatusHandler
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<T,EmptyRequestBody,AsynchronousOperationResult<V>,M>
AbstractAsynchronousOperationHandlers<AsynchronousJobOperationKey,Acknowledge>.StatusHandler<RestfulGateway,AsynchronousOperationInfo,RescalingStatusMessageParameters>
org.apache.flink.runtime.rest.handler.job.rescaling.RescalingHandlers.RescalingStatusHandler
- 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
- Enclosing class:
- RescalingHandlers
public class RescalingHandlers.RescalingStatusHandler
extends AbstractAsynchronousOperationHandlers<AsynchronousJobOperationKey,Acknowledge>.StatusHandler<RestfulGateway,AsynchronousOperationInfo,RescalingStatusMessageParameters>
Handler which reports the status of the rescaling operation.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandler
org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandler.Sharable -
Field Summary
Fields inherited from class org.apache.flink.runtime.rest.handler.AbstractHandler
log, MAPPERFields inherited from class org.apache.flink.runtime.rest.handler.LeaderRetrievalHandler
leaderRetriever, logger, responseHeaders, timeout -
Constructor Summary
ConstructorsConstructorDescriptionRescalingStatusHandler(GatewayRetriever<? extends RestfulGateway> leaderRetriever, Duration timeout, Map<String, String> responseHeaders) -
Method Summary
Modifier and TypeMethodDescriptionprotected AsynchronousOperationInfoexceptionalOperationResultResponse(Throwable throwable) Create an exceptional operation result from the givenThrowable.protected AsynchronousJobOperationKeygetOperationKey(HandlerRequest<EmptyRequestBody> request) Extract the operation key under which the operation result future is stored.handleRequest(HandlerRequest<EmptyRequestBody> request, RestfulGateway gateway) This method is called for every incoming request and returns aCompletableFuturecontaining a the response.protected AsynchronousOperationInfooperationResultResponse(Acknowledge operationResult) Create the operation result from the given value.Methods inherited from class org.apache.flink.runtime.rest.handler.async.AbstractAsynchronousOperationHandlers.StatusHandler
closeHandlerAsyncMethods inherited from class org.apache.flink.runtime.rest.handler.AbstractRestHandler
getMessageHeaders, respondToRequestMethods inherited from class org.apache.flink.runtime.rest.handler.AbstractHandler
closeAsync, respondAsLeaderMethods inherited from class org.apache.flink.runtime.rest.handler.LeaderRetrievalHandler
channelRead0, getTimeoutMethods inherited from class org.apache.flink.shaded.netty4.io.netty.channel.SimpleChannelInboundHandler
acceptInboundMessage, channelReadMethods inherited from class org.apache.flink.shaded.netty4.io.netty.channel.ChannelInboundHandlerAdapter
channelActive, channelInactive, channelReadComplete, channelRegistered, channelUnregistered, channelWritabilityChanged, exceptionCaught, userEventTriggeredMethods inherited from class org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, handlerAdded, handlerRemoved, isSharableMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.flink.util.AutoCloseableAsync
closeMethods inherited from interface org.apache.flink.shaded.netty4.io.netty.channel.ChannelHandler
handlerAdded, handlerRemoved
-
Constructor Details
-
RescalingStatusHandler
public RescalingStatusHandler(GatewayRetriever<? extends RestfulGateway> leaderRetriever, Duration timeout, Map<String, String> responseHeaders)
-
-
Method Details
-
handleRequest
public CompletableFuture<AsynchronousOperationResult<AsynchronousOperationInfo>> handleRequest(@Nonnull HandlerRequest<EmptyRequestBody> request, @Nonnull RestfulGateway gateway) throws RestHandlerException Description copied from class:AbstractRestHandlerThis 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.- Overrides:
handleRequestin classAbstractAsynchronousOperationHandlers<AsynchronousJobOperationKey,Acknowledge>.StatusHandler<RestfulGateway, AsynchronousOperationInfo, RescalingStatusMessageParameters> - Parameters:
request- request that should be handledgateway- leader gateway- Returns:
- future containing a handler response
- Throws:
RestHandlerException- if the handling failed
-
getOperationKey
Description copied from class:AbstractAsynchronousOperationHandlers.StatusHandlerExtract the operation key under which the operation result future is stored.- Specified by:
getOperationKeyin classAbstractAsynchronousOperationHandlers<AsynchronousJobOperationKey,Acknowledge>.StatusHandler<RestfulGateway, AsynchronousOperationInfo, RescalingStatusMessageParameters> - Parameters:
request- with which the status handler has been called- Returns:
- Operation key under which the operation result future is stored
-
exceptionalOperationResultResponse
Description copied from class:AbstractAsynchronousOperationHandlers.StatusHandlerCreate an exceptional operation result from the givenThrowable. This method is called if the asynchronous operation failed.- Specified by:
exceptionalOperationResultResponsein classAbstractAsynchronousOperationHandlers<AsynchronousJobOperationKey,Acknowledge>.StatusHandler<RestfulGateway, AsynchronousOperationInfo, RescalingStatusMessageParameters> - Parameters:
throwable- failure of the asynchronous operation- Returns:
- Exceptional operation result
-
operationResultResponse
Description copied from class:AbstractAsynchronousOperationHandlers.StatusHandlerCreate the operation result from the given value.- Specified by:
operationResultResponsein classAbstractAsynchronousOperationHandlers<AsynchronousJobOperationKey,Acknowledge>.StatusHandler<RestfulGateway, AsynchronousOperationInfo, RescalingStatusMessageParameters> - Parameters:
operationResult- of the asynchronous operation- Returns:
- Operation result
-