public ProgressEvent handleRequest()

in aws-ecr-replicationconfiguration/src/main/java/software/amazon/ecr/replicationconfiguration/ListHandler.java [22:59]


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

        final EcrClient client = proxyClient.client();

        DescribeRegistryResponse response;

        try {
            response = describeRegistryResource(proxy, client);
            logger.log(String.format("%s [%s] List Read Successful", ResourceModel.TYPE_NAME, response.replicationConfiguration()));
        } catch (AwsServiceException e) {
            return ProgressEvent.<ResourceModel, CallbackContext>builder()
                    .status(OperationStatus.FAILED)
                    .resourceModels(emptyList())
                    .errorCode(HandlerErrorCode.GeneralServiceException)
                    .message(e.getMessage())
                    .build();
        }

        List<ResourceModel> models;
        if (hasExistingResource(response)) {
            ResourceModel returnModel = Response.generateResourceModel(request.getAwsAccountId(), response);
            models = singletonList(returnModel);
        } else {
            // If no resource exists then return success with empty list.
            models = emptyList();
        }

        return ProgressEvent.<ResourceModel, CallbackContext>builder()
                .resourceModels(models)
                .status(OperationStatus.SUCCESS)
                .nextToken(null)
                .build();
    }