in aws-wafv2-webacl/src/main/java/com/amazonaws/wafv2/webacl/CreateHandler.java [94:122]
private ExceptionTranslationWrapper<CreateWebAclResponse> createWebACLExceptionWrapper(
final AmazonWebServicesClientProxy proxy, final ResourceModel model) {
return new ExceptionTranslationWrapper<CreateWebAclResponse>() {
@Override
public CreateWebAclResponse doWithTranslation() throws RuntimeException {
final CreateWebAclRequest.Builder createWebAclRequest = CreateWebAclRequest.builder()
.name(model.getName())
.scope(model.getScope())
.description(model.getDescription())
.defaultAction(StatementCommonsConverter.INSTANCE.convert(model.getDefaultAction()))
.visibilityConfig(StatementCommonsConverter.INSTANCE.convert(model.getVisibilityConfig()))
.rules(Optional.ofNullable(model.getRules()).orElse(ImmutableList.of()).stream()
.map(rule -> Converter.INSTANCE.convert(rule))
.collect(Collectors.toList()));
if (MapUtils.isNotEmpty(model.getCustomResponseBodies())) {
createWebAclRequest.customResponseBodies(
Converter.INSTANCE.convert(model.getCustomResponseBodies()));
}
if (!CollectionUtils.isNullOrEmpty(model.getTags())) {
createWebAclRequest.tags(model.getTags().stream()
.map(Converter.INSTANCE::convert)
.collect(Collectors.toList()));
}
final CreateWebAclResponse response = proxy.injectCredentialsAndInvokeV2(
createWebAclRequest.build(), client::createWebACL);
return response;
}
};
}