in aws-connect-user/src/main/java/software/amazon/connect/user/UpdateHandler.java [278:297]
private ProgressEvent<ResourceModel, CallbackContext> tagResource(final AmazonWebServicesClientProxy proxy,
final ProxyClient<ConnectClient> proxyClient,
final ResourceModel desiredStateModel,
final Set<Tag> tagsToAdd,
final ProgressEvent<ResourceModel, CallbackContext> progress,
final CallbackContext context,
final Logger logger) {
final String userArn = desiredStateModel.getUserArn();
if (tagsToAdd.size() > 0) {
logger.log(String.format("Tags have been modified(addition/TagValue updated) in the update operation, " +
"Calling TagResource API for user:%s", userArn));
return proxy.initiate("connect::tagResource", proxyClient, desiredStateModel, context)
.translateToServiceRequest(desired -> translateToTagRequest(userArn, tagsToAdd))
.makeServiceCall((req, clientProxy) -> invoke(req, clientProxy, clientProxy.client()::tagResource, logger))
.done(response -> ProgressEvent.progress(desiredStateModel, context));
}
logger.log(String.format("No new tags or change in value for existing keys in update operation," +
" skipping TagResource API call for user:%s", userArn));
return progress;
}