Interface CfnMailManagerRuleSetPropsMixin.RuleProperty

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
CfnMailManagerRuleSetPropsMixin.RuleProperty.Jsii$Proxy
Enclosing class:
CfnMailManagerRuleSetPropsMixin

@Stability(Stable) public static interface CfnMailManagerRuleSetPropsMixin.RuleProperty extends software.amazon.jsii.JsiiSerializable
A rule contains conditions, "unless conditions" and actions.

For each envelope recipient of an email, if all conditions match and none of the "unless conditions" match, then all of the actions are executed sequentially. If no conditions are provided, the rule always applies and the actions are implicitly executed. If only "unless conditions" are provided, the rule applies if the email does not match the evaluation of the "unless conditions".

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.cfnpropertymixins.services.ses.*;
 Object drop;
 RuleProperty ruleProperty = RuleProperty.builder()
         .actions(List.of(RuleActionProperty.builder()
                 .addHeader(AddHeaderActionProperty.builder()
                         .headerName("headerName")
                         .headerValue("headerValue")
                         .build())
                 .archive(ArchiveActionProperty.builder()
                         .actionFailurePolicy("actionFailurePolicy")
                         .targetArchive("targetArchive")
                         .build())
                 .deliverToMailbox(DeliverToMailboxActionProperty.builder()
                         .actionFailurePolicy("actionFailurePolicy")
                         .mailboxArn("mailboxArn")
                         .roleArn("roleArn")
                         .build())
                 .deliverToQBusiness(DeliverToQBusinessActionProperty.builder()
                         .actionFailurePolicy("actionFailurePolicy")
                         .applicationId("applicationId")
                         .indexId("indexId")
                         .roleArn("roleArn")
                         .build())
                 .drop(drop)
                 .publishToSns(SnsActionProperty.builder()
                         .actionFailurePolicy("actionFailurePolicy")
                         .encoding("encoding")
                         .payloadType("payloadType")
                         .roleArn("roleArn")
                         .topicArn("topicArn")
                         .build())
                 .relay(RelayActionProperty.builder()
                         .actionFailurePolicy("actionFailurePolicy")
                         .mailFrom("mailFrom")
                         .relay("relay")
                         .build())
                 .replaceRecipient(ReplaceRecipientActionProperty.builder()
                         .replaceWith(List.of("replaceWith"))
                         .build())
                 .send(SendActionProperty.builder()
                         .actionFailurePolicy("actionFailurePolicy")
                         .roleArn("roleArn")
                         .build())
                 .writeToS3(S3ActionProperty.builder()
                         .actionFailurePolicy("actionFailurePolicy")
                         .roleArn("roleArn")
                         .s3Bucket("s3Bucket")
                         .s3Prefix("s3Prefix")
                         .s3SseKmsKeyId("s3SseKmsKeyId")
                         .build())
                 .build()))
         .conditions(List.of(RuleConditionProperty.builder()
                 .booleanExpression(RuleBooleanExpressionProperty.builder()
                         .evaluate(RuleBooleanToEvaluateProperty.builder()
                                 .analysis(AnalysisProperty.builder()
                                         .analyzer("analyzer")
                                         .resultField("resultField")
                                         .build())
                                 .attribute("attribute")
                                 .isInAddressList(RuleIsInAddressListProperty.builder()
                                         .addressLists(List.of("addressLists"))
                                         .attribute("attribute")
                                         .build())
                                 .build())
                         .operator("operator")
                         .build())
                 .dmarcExpression(RuleDmarcExpressionProperty.builder()
                         .operator("operator")
                         .values(List.of("values"))
                         .build())
                 .ipExpression(RuleIpExpressionProperty.builder()
                         .evaluate(RuleIpToEvaluateProperty.builder()
                                 .attribute("attribute")
                                 .build())
                         .operator("operator")
                         .values(List.of("values"))
                         .build())
                 .numberExpression(RuleNumberExpressionProperty.builder()
                         .evaluate(RuleNumberToEvaluateProperty.builder()
                                 .attribute("attribute")
                                 .build())
                         .operator("operator")
                         .value(123)
                         .build())
                 .stringExpression(RuleStringExpressionProperty.builder()
                         .evaluate(RuleStringToEvaluateProperty.builder()
                                 .analysis(AnalysisProperty.builder()
                                         .analyzer("analyzer")
                                         .resultField("resultField")
                                         .build())
                                 .attribute("attribute")
                                 .mimeHeaderAttribute("mimeHeaderAttribute")
                                 .build())
                         .operator("operator")
                         .values(List.of("values"))
                         .build())
                 .verdictExpression(RuleVerdictExpressionProperty.builder()
                         .evaluate(RuleVerdictToEvaluateProperty.builder()
                                 .analysis(AnalysisProperty.builder()
                                         .analyzer("analyzer")
                                         .resultField("resultField")
                                         .build())
                                 .attribute("attribute")
                                 .build())
                         .operator("operator")
                         .values(List.of("values"))
                         .build())
                 .build()))
         .name("name")
         .unless(List.of(RuleConditionProperty.builder()
                 .booleanExpression(RuleBooleanExpressionProperty.builder()
                         .evaluate(RuleBooleanToEvaluateProperty.builder()
                                 .analysis(AnalysisProperty.builder()
                                         .analyzer("analyzer")
                                         .resultField("resultField")
                                         .build())
                                 .attribute("attribute")
                                 .isInAddressList(RuleIsInAddressListProperty.builder()
                                         .addressLists(List.of("addressLists"))
                                         .attribute("attribute")
                                         .build())
                                 .build())
                         .operator("operator")
                         .build())
                 .dmarcExpression(RuleDmarcExpressionProperty.builder()
                         .operator("operator")
                         .values(List.of("values"))
                         .build())
                 .ipExpression(RuleIpExpressionProperty.builder()
                         .evaluate(RuleIpToEvaluateProperty.builder()
                                 .attribute("attribute")
                                 .build())
                         .operator("operator")
                         .values(List.of("values"))
                         .build())
                 .numberExpression(RuleNumberExpressionProperty.builder()
                         .evaluate(RuleNumberToEvaluateProperty.builder()
                                 .attribute("attribute")
                                 .build())
                         .operator("operator")
                         .value(123)
                         .build())
                 .stringExpression(RuleStringExpressionProperty.builder()
                         .evaluate(RuleStringToEvaluateProperty.builder()
                                 .analysis(AnalysisProperty.builder()
                                         .analyzer("analyzer")
                                         .resultField("resultField")
                                         .build())
                                 .attribute("attribute")
                                 .mimeHeaderAttribute("mimeHeaderAttribute")
                                 .build())
                         .operator("operator")
                         .values(List.of("values"))
                         .build())
                 .verdictExpression(RuleVerdictExpressionProperty.builder()
                         .evaluate(RuleVerdictToEvaluateProperty.builder()
                                 .analysis(AnalysisProperty.builder()
                                         .analyzer("analyzer")
                                         .resultField("resultField")
                                         .build())
                                 .attribute("attribute")
                                 .build())
                         .operator("operator")
                         .values(List.of("values"))
                         .build())
                 .build()))
         .build();
 

See Also: