protected ProgressEvent handleRequest()

in aws-events-connection/src/main/java/software/amazon/events/connection/UpdateHandler.java [30:55]


    protected ProgressEvent<ResourceModel, CallbackContext> handleRequest(
            final AmazonWebServicesClientProxy proxy,
            final ResourceHandlerRequest<ResourceModel> request,
            final CallbackContext callbackContext,
            final ProxyClient<EventBridgeClient> proxyClient,
            final Logger logger) {

        this.logger = logger;

        Utils.verifyAuthorizationTypeParameterMapping(request.getDesiredResourceState());

        return ProgressEvent.progress(request.getDesiredResourceState(), callbackContext)
                .then(progress ->
                        proxy.initiate("AWS-Events-Connection::Update", proxyClient, progress.getResourceModel(), progress.getCallbackContext())
                                .translateToServiceRequest(model -> Translator.translateToUpdateRequest(model))
                                .makeServiceCall(this::updateResource)
                                .progress())
                .then(progress ->
                        proxy.initiate("AWS-Events-Connection::PostUpdateStabilize", proxyClient, progress.getResourceModel(), progress.getCallbackContext())
                                .translateToServiceRequest(Function.identity())
                                .backoffDelay(BACK_OFF_DELAY)
                                .makeServiceCall(EMPTY_CALL)
                                .stabilize((awsRequest, response, proxyInvocation, model, context) -> isStabilized(proxyClient, model))
                                .progress())
                .then(progress -> new ReadHandler().handleRequest(proxy, request, callbackContext, proxyClient, logger));
    }