in infrastructure-configuration/src/main/java/software/amazon/imagebuilder/infrastructureconfiguration/CreateHandler.java [19:46]
public ProgressEvent<ResourceModel, CallbackContext> handleRequest(
final AmazonWebServicesClientProxy proxy,
final ResourceHandlerRequest<ResourceModel> request,
final CallbackContext callbackContext,
final Logger logger) {
this.clientProxy = proxy;
this.logger = logger;
final ResourceModel model = request.getDesiredResourceState();
CreateInfrastructureConfigurationResponse response;
try {
response = proxy.injectCredentialsAndInvokeV2(RequestUtil.generateCreateInfrastructureConfigurationRequest(model),
ClientBuilder.getImageBuilderClient()::createInfrastructureConfiguration);
} catch (final ResourceAlreadyExistsException e) {
logger.log(e.getMessage());
throw new CfnAlreadyExistsException(ResourceModel.TYPE_NAME, "InfrastructureConfigurationArn");
} catch (final InvalidParameterException e) {
logger.log(e.getMessage());
throw new CfnInvalidRequestException(ResourceModel.TYPE_NAME);
}
model.setArn(response.infrastructureConfigurationArn());
return ProgressEvent.<ResourceModel, CallbackContext>builder()
.resourceModel(model)
.status(OperationStatus.SUCCESS)
.build();
}