in aws-sns-topicpolicy/src/main/java/software/amazon/sns/topicpolicy/BaseHandlerStd.java [123:148]
protected ProgressEvent<ResourceModel, CallbackContext> handleDelete(
final AmazonWebServicesClientProxy proxy,
final ProxyClient<SnsClient> proxyClient,
final ResourceHandlerRequest<ResourceModel> request,
final ProgressEvent<ResourceModel, CallbackContext> progress,
final List<String> topics,
final String action,
final String handler,
final Logger logger) {
final ResourceModel model = request.getDesiredResourceState();
final CallbackContext callbackContext = progress.getCallbackContext();
for (final String topicArn : topics) {
final String defaultPolicy = Translator.getDefaultPolicy(request, topicArn);
final ProgressEvent<ResourceModel, CallbackContext> progressEvent = proxy
.initiate(handler + topicArn.hashCode(), proxyClient, model, callbackContext)
.translateToServiceRequest((resouceModel) -> Translator.translateToRequest(topicArn, defaultPolicy))
.makeServiceCall(
(topicRequest, snsClient) -> invokeSetTopicAttributes(topicRequest, snsClient, action, logger))
.success();
if (!progressEvent.isSuccess()) {
return progressEvent;
}
}
return ProgressEvent.progress(model, callbackContext);
}