protected ProgressEvent handleRequest()

in aws-amplifyuibuilder-component/src/main/java/software/amazon/amplifyuibuilder/component/DeleteHandler.java [14:42]


  protected ProgressEvent<ResourceModel, CallbackContext> handleRequest(
    final AmazonWebServicesClientProxy proxy,
    final ResourceHandlerRequest<ResourceModel> request,
    final CallbackContext callbackContext,
    final ProxyClient<AmplifyUiBuilderClient> proxyClient,
    final Logger logger
  ) {
    this.logger = logger;
    logger.log("DeleteHandler invoked");
    // Progress Chain
    // https://github.com/aws-cloudformation/cloudformation-cli-java-plugin/blob/master/src/main/java/software/amazon/cloudformation/proxy/CallChain.java
    return ProgressEvent
      .progress(request.getDesiredResourceState(), callbackContext)
      .then(
        progress ->
          proxy
            .initiate(
              "AWS-AmplifyUIBuilder-Component::Delete",
              proxyClient,
              progress.getResourceModel(),
              progress.getCallbackContext()
            )
            .translateToServiceRequest(Translator::translateToDeleteRequest)
            .makeServiceCall(this::deleteComponent)
            .progress()
      )
      // Return the successful progress event without resource model
      .then(progress -> ProgressEvent.defaultSuccessHandler(null));
  }