in aws-memorydb-cluster/src/main/java/software/amazon/memorydb/cluster/UpdateHandler.java [32:55]
protected ProgressEvent<ResourceModel, CallbackContext> handleRequest(final AmazonWebServicesClientProxy proxy,
final ResourceHandlerRequest<ResourceModel> request,
final CallbackContext callbackContext,
final ProxyClient<MemoryDbClient> proxyClient,
final Logger logger) {
logger.log(String.format("Resource model: %s", request.getDesiredResourceState()));
return ProgressEvent.progress(request.getDesiredResourceState(), callbackContext)
.then(progress -> updateCluster(proxy, proxyClient, progress, request, ClusterUpdateFieldType.DESCRIPTION, logger))
.then(progress -> updateCluster(proxy, proxyClient, progress, request, ClusterUpdateFieldType.SECURITY_GROUP_IDS, logger))
.then(progress -> updateCluster(proxy, proxyClient, progress, request, ClusterUpdateFieldType.MAINTENANCE_WINDOW, logger))
.then(progress -> updateCluster(proxy, proxyClient, progress, request, ClusterUpdateFieldType.SNS_TOPIC_ARN, logger))
.then(progress -> updateCluster(proxy, proxyClient, progress, request, ClusterUpdateFieldType.SNS_TOPIC_STATUS, logger))
.then(progress -> updateCluster(proxy, proxyClient, progress, request, ClusterUpdateFieldType.SNAPSHOT_WINDOW, logger))
.then(progress -> updateCluster(proxy, proxyClient, progress, request, ClusterUpdateFieldType.SNAPSHOT_RETENTION_LIMIT, logger))
.then(progress -> updateCluster(proxy, proxyClient, progress, request, ClusterUpdateFieldType.NODE_TYPE, logger))
.then(progress -> updateCluster(proxy, proxyClient, progress, request, ClusterUpdateFieldType.ENGINE_VERSION, logger))
.then(progress -> updateCluster(proxy, proxyClient, progress, request, ClusterUpdateFieldType.PARAMETER_GROUP_NAME, logger))
.then(progress -> updateCluster(proxy, proxyClient, progress, request, ClusterUpdateFieldType.REPLICA_CONFIGURATION, logger))
.then(progress -> updateCluster(proxy, proxyClient, progress, request, ClusterUpdateFieldType.SHARD_CONFIGURATION, logger))
.then(progress -> updateCluster(proxy, proxyClient, progress, request, ClusterUpdateFieldType.ACL_NAME, logger))
.then(progress -> describeClusters(proxy, progress, proxyClient))
.then(progress -> tagResource(proxy, proxyClient, progress, request, logger))
.then(progress -> ProgressEvent.defaultSuccessHandler(progress.getResourceModel()));
}