protected ProgressEvent deleteRepositoryPermissionsPolicy()

in aws-codeartifact-repository/src/main/java/software/amazon/codeartifact/repository/UpdateHandler.java [195:224]


    protected ProgressEvent<ResourceModel, CallbackContext> deleteRepositoryPermissionsPolicy(
        final AmazonWebServicesClientProxy proxy,
        final ProgressEvent<ResourceModel, CallbackContext> progress,
        final CallbackContext callbackContext,
        final ResourceHandlerRequest<ResourceModel> request,
        final ProxyClient<CodeartifactClient> proxyClient,
        final Logger logger
    ) {
        final ResourceModel desiredModel = request.getDesiredResourceState();
        final ResourceModel previousModel = request.getPreviousResourceState();

        if (desiredModel.getPermissionsPolicyDocument() != null || previousModel.getPermissionsPolicyDocument() == null) {
            return ProgressEvent.progress(desiredModel, callbackContext);
        }

        return proxy.initiate("AWS-CodeArtifact-Repository::Update::DeleteRepositoryPermissionsPolicy", proxyClient, progress.getResourceModel(), progress.getCallbackContext())
            .translateToServiceRequest(Translator::translateDeletePermissionsPolicyRequest)
            .makeServiceCall((awsRequest, client) -> {
                DeleteRepositoryPermissionsPolicyResponse awsResponse = null;
                try {
                    awsResponse = client.injectCredentialsAndInvokeV2(awsRequest, client.client()::deleteRepositoryPermissionsPolicy);
                    logger.log("Repository permission policy successfully deleted.");
                } catch (final AwsServiceException e) {
                    String domainName = desiredModel.getDomainName();
                    Translator.throwCfnException(e, Constants.DELETE_REPOSITORY_POLICY, domainName);
                }
                return awsResponse;
            })
            .progress();
    }