in aws-amplifyuibuilder-theme/src/main/java/software/amazon/amplifyuibuilder/theme/UpdateHandler.java [15:44]
protected ProgressEvent<ResourceModel, CallbackContext> handleRequest(
final AmazonWebServicesClientProxy proxy,
final ResourceHandlerRequest<ResourceModel> request,
final CallbackContext callbackContext,
final ProxyClient<AmplifyUiBuilderClient> proxyClient,
final Logger logger) {
this.logger = logger;
ResourceModel model = request.getDesiredResourceState();
// To pass contract test: contract_update_without_create
if (model.getId() == null || model.getId().equals("")) {
throw new CfnNotFoundException(ResourceModel.TYPE_NAME, model.getId());
}
return ProgressEvent.progress(model, callbackContext)
.then(progress ->
proxy.initiate("AWS-AmplifyUIBuilder-Theme::Update", proxyClient, model, progress.getCallbackContext())
.translateToServiceRequest(Translator::translateToUpdateRequest)
.makeServiceCall((updateThemeRequest, proxyInvocation) -> (UpdateThemeResponse) ClientWrapper.execute(
proxy,
updateThemeRequest,
proxyInvocation.client()::updateTheme,
ResourceModel.TYPE_NAME,
model.getId(),
logger
))
.progress())
.then(progress -> new ReadHandler().handleRequest(proxy, request, callbackContext, proxyClient, logger));
}