Interface CfnLifecyclePolicy.PolicyDetailsProperty

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

@Stability(Stable) public static interface CfnLifecyclePolicy.PolicyDetailsProperty extends software.amazon.jsii.JsiiSerializable
Specifies the configuration of a lifecycle policy.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.dlm.*;
 Object crossRegionCopyTargets;
 Object excludeTags;
 Object excludeVolumeTypes;
 PolicyDetailsProperty policyDetailsProperty = PolicyDetailsProperty.builder()
         .actions(List.of(ActionProperty.builder()
                 .crossRegionCopy(List.of(CrossRegionCopyActionProperty.builder()
                         .encryptionConfiguration(EncryptionConfigurationProperty.builder()
                                 .encrypted(false)
                                 // the properties below are optional
                                 .cmkArn("cmkArn")
                                 .build())
                         .target("target")
                         // the properties below are optional
                         .retainRule(CrossRegionCopyRetainRuleProperty.builder()
                                 .interval(123)
                                 .intervalUnit("intervalUnit")
                                 .build())
                         .build()))
                 .name("name")
                 .build()))
         .copyTags(false)
         .createInterval(123)
         .crossRegionCopyTargets(crossRegionCopyTargets)
         .eventSource(EventSourceProperty.builder()
                 .type("type")
                 // the properties below are optional
                 .parameters(EventParametersProperty.builder()
                         .eventType("eventType")
                         .snapshotOwner(List.of("snapshotOwner"))
                         // the properties below are optional
                         .descriptionRegex("descriptionRegex")
                         .build())
                 .build())
         .exclusions(ExclusionsProperty.builder()
                 .excludeBootVolumes(false)
                 .excludeTags(excludeTags)
                 .excludeVolumeTypes(excludeVolumeTypes)
                 .build())
         .extendDeletion(false)
         .parameters(ParametersProperty.builder()
                 .excludeBootVolume(false)
                 .excludeDataVolumeTags(List.of(CfnTag.builder()
                         .key("key")
                         .value("value")
                         .build()))
                 .noReboot(false)
                 .build())
         .policyLanguage("policyLanguage")
         .policyType("policyType")
         .resourceLocations(List.of("resourceLocations"))
         .resourceType("resourceType")
         .resourceTypes(List.of("resourceTypes"))
         .retainInterval(123)
         .schedules(List.of(ScheduleProperty.builder()
                 .archiveRule(ArchiveRuleProperty.builder()
                         .retainRule(ArchiveRetainRuleProperty.builder()
                                 .retentionArchiveTier(RetentionArchiveTierProperty.builder()
                                         .count(123)
                                         .interval(123)
                                         .intervalUnit("intervalUnit")
                                         .build())
                                 .build())
                         .build())
                 .copyTags(false)
                 .createRule(CreateRuleProperty.builder()
                         .cronExpression("cronExpression")
                         .interval(123)
                         .intervalUnit("intervalUnit")
                         .location("location")
                         .scripts(List.of(ScriptProperty.builder()
                                 .executeOperationOnScriptFailure(false)
                                 .executionHandler("executionHandler")
                                 .executionHandlerService("executionHandlerService")
                                 .executionTimeout(123)
                                 .maximumRetryCount(123)
                                 .stages(List.of("stages"))
                                 .build()))
                         .times(List.of("times"))
                         .build())
                 .crossRegionCopyRules(List.of(CrossRegionCopyRuleProperty.builder()
                         .encrypted(false)
                         // the properties below are optional
                         .cmkArn("cmkArn")
                         .copyTags(false)
                         .deprecateRule(CrossRegionCopyDeprecateRuleProperty.builder()
                                 .interval(123)
                                 .intervalUnit("intervalUnit")
                                 .build())
                         .retainRule(CrossRegionCopyRetainRuleProperty.builder()
                                 .interval(123)
                                 .intervalUnit("intervalUnit")
                                 .build())
                         .target("target")
                         .targetRegion("targetRegion")
                         .build()))
                 .deprecateRule(DeprecateRuleProperty.builder()
                         .count(123)
                         .interval(123)
                         .intervalUnit("intervalUnit")
                         .build())
                 .fastRestoreRule(FastRestoreRuleProperty.builder()
                         .availabilityZones(List.of("availabilityZones"))
                         .count(123)
                         .interval(123)
                         .intervalUnit("intervalUnit")
                         .build())
                 .name("name")
                 .retainRule(RetainRuleProperty.builder()
                         .count(123)
                         .interval(123)
                         .intervalUnit("intervalUnit")
                         .build())
                 .shareRules(List.of(ShareRuleProperty.builder()
                         .targetAccounts(List.of("targetAccounts"))
                         .unshareInterval(123)
                         .unshareIntervalUnit("unshareIntervalUnit")
                         .build()))
                 .tagsToAdd(List.of(CfnTag.builder()
                         .key("key")
                         .value("value")
                         .build()))
                 .variableTags(List.of(CfnTag.builder()
                         .key("key")
                         .value("value")
                         .build()))
                 .build()))
         .targetTags(List.of(CfnTag.builder()
                 .key("key")
                 .value("value")
                 .build()))
         .build();
 

See Also: