private ProgressEvent createImage()

in image/src/main/java/software/amazon/imagebuilder/image/CreateHandler.java [43:69]


    private ProgressEvent<ResourceModel, CallbackContext> createImage(
            final AmazonWebServicesClientProxy proxy,
            final ResourceHandlerRequest<ResourceModel> request) {

        ResourceModel model = request.getDesiredResourceState();
        CreateImageResponse response;
        try {
            response = proxy.injectCredentialsAndInvokeV2(RequestUtil.generateCreateImageRequest(model),
                    ClientBuilder.getImageBuilderClient()::createImage);
        } catch (final ResourceAlreadyExistsException e) {
            logger.log(e.getMessage());
            throw new CfnAlreadyExistsException(ResourceModel.TYPE_NAME, Objects.toString(model.getPrimaryIdentifier()));
        } catch (final InvalidParameterException e) {
            logger.log(e.getMessage());
            throw new CfnInvalidRequestException(ResourceModel.TYPE_NAME);
        }

        model.setArn(response.imageBuildVersionArn());

        CallbackContext stabilizationContext = CallbackContext.builder()
                .imageCreationInvoked(true)
                .build();
        return ProgressEvent.defaultInProgressHandler(
                stabilizationContext,
                10,
                model);
    }