private ProgressEvent deleteAcl()

in aws-memorydb-acl/src/main/java/software/amazon/memorydb/acl/DeleteHandler.java [52:76]


    private ProgressEvent<ResourceModel, CallbackContext> deleteAcl(final AmazonWebServicesClientProxy proxy,
        final ProxyClient<MemoryDbClient> proxyClient,
        final ProgressEvent<ResourceModel, CallbackContext> progress,
        final ResourceHandlerRequest<ResourceModel> request,
        final Logger logger) {
        return proxy.initiate("AWS-MemoryDB-ACL::Delete", proxyClient,
            request.getDesiredResourceState(), progress.getCallbackContext())
            .translateToServiceRequest(Translator::translateToDeleteRequest)
            .backoffDelay(STABILIZATION_DELAY)
            .makeServiceCall((modelRequest, proxyInvocation) -> {
                return handleExceptions(() -> {
                    try {
                        return proxyInvocation.injectCredentialsAndInvokeV2(modelRequest,
                            proxyInvocation.client()::deleteACL);
                    } catch (final InvalidAclStateException e) {
                        //Out of band flow
                        return null;
                    }
                });
            })
            .stabilize((deleteUserRequest, deleteUserResponse, proxyInvocation, model, context) -> isAclDeleted(
                proxyInvocation, model, logger))
            .done((deleteUserRequest, deleteUserResponse, proxyInvocation, model, context) -> ProgressEvent
                .defaultSuccessHandler(null));
    }