protected ProgressEvent handleRequest()

in aws-amplify-app/src/main/java/software/amazon/amplify/app/UpdateHandler.java [28:59]


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

        this.logger = logger;
        final ResourceModel model = request.getDesiredResourceState();
        logger.log("INFO: requesting with model: " + model);

        return ProgressEvent.progress(model, callbackContext)
            .then(progress ->
                proxy.initiate("AWS-Amplify-App::Update", proxyClient, model, callbackContext)
                    .translateToServiceRequest(Translator::translateToUpdateRequest)
                    .makeServiceCall((updateAppRequest, proxyInvocation) -> {
                        UpdateAppResponse updateAppResponse = (UpdateAppResponse) ClientWrapper.execute(
                                proxy,
                                updateAppRequest,
                                proxyInvocation.client()::updateApp,
                                ResourceModel.TYPE_NAME,
                                model.getArn(),
                                logger
                        );
                        setResourceModelId(model, updateAppResponse.app());
                        updateTags(proxy, proxyClient, model, convertToResourceTags(model.getTags()));
                        return updateAppResponse;
                    })
                    .progress()
            )
            .then(progress -> new ReadHandler().handleRequest(proxy, request, callbackContext, proxyClient, logger));
    }