in aws-wafv2-rulegroup/src/main/java/com/amazonaws/wafv2/rulegroup/CreateHandler.java [95:126]
private ExceptionTranslationWrapper<CreateRuleGroupResponse> createRuleGroupExceptionWrapper(
final AmazonWebServicesClientProxy proxy, final ResourceModel model) {
return new ExceptionTranslationWrapper<CreateRuleGroupResponse>() {
@Override
public CreateRuleGroupResponse doWithTranslation() throws RuntimeException {
final CreateRuleGroupRequest.Builder createRuleGroupRequestBuilder = CreateRuleGroupRequest.builder()
.name(model.getName())
.scope(model.getScope())
.description(model.getDescription())
.visibilityConfig(StatementCommonsConverter.INSTANCE.convert(model.getVisibilityConfig()))
.rules(Optional.ofNullable(model.getRules()).orElse(ImmutableList.of()).stream()
.map(rule -> Converter.INSTANCE.convert(rule))
.collect(Collectors.toList()))
.capacity(new Long(model.getCapacity().intValue()));
if (MapUtils.isNotEmpty(model.getCustomResponseBodies())) {
createRuleGroupRequestBuilder.customResponseBodies(
Converter.INSTANCE.convert(model.getCustomResponseBodies()));
}
if (!CollectionUtils.isNullOrEmpty(model.getTags())) {
createRuleGroupRequestBuilder.tags(model.getTags().stream()
.map(Converter.INSTANCE::convert)
.collect(Collectors.toList()));
}
final CreateRuleGroupResponse response = proxy.injectCredentialsAndInvokeV2(
createRuleGroupRequestBuilder.build(), client::createRuleGroup);
return response;
}
};
}