stratosphere-dlm (empty) → 1.0.0
raw patch · 55 files changed
+1921/−0 lines, 55 filesdep +aesondep +basedep +stratosphere
Dependencies added: aeson, base, stratosphere
Files
- LICENSE.md +20/−0
- gen/Stratosphere/DLM/LifecyclePolicy.hs +138/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ActionProperty.hs +43/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ActionProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ArchiveRetainRuleProperty.hs +34/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ArchiveRetainRuleProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ArchiveRuleProperty.hs +32/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ArchiveRuleProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/CreateRuleProperty.hs +80/−0
- gen/Stratosphere/DLM/LifecyclePolicy/CreateRuleProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyActionProperty.hs +63/−0
- gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyActionProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyDeprecateRuleProperty.hs +44/−0
- gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyDeprecateRuleProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyRetainRuleProperty.hs +43/−0
- gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyRetainRuleProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyRuleProperty.hs +97/−0
- gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyRuleProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyTargetProperty.hs +37/−0
- gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyTargetProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyTargetsProperty.hs +6/−0
- gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyTargetsProperty.hs-boot +6/−0
- gen/Stratosphere/DLM/LifecyclePolicy/DeprecateRuleProperty.hs +53/−0
- gen/Stratosphere/DLM/LifecyclePolicy/DeprecateRuleProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/EncryptionConfigurationProperty.hs +48/−0
- gen/Stratosphere/DLM/LifecyclePolicy/EncryptionConfigurationProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/EventParametersProperty.hs +58/−0
- gen/Stratosphere/DLM/LifecyclePolicy/EventParametersProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/EventSourceProperty.hs +48/−0
- gen/Stratosphere/DLM/LifecyclePolicy/EventSourceProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ExcludeTagsProperty.hs +5/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ExcludeTagsProperty.hs-boot +5/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ExcludeVolumeTypesListProperty.hs +5/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ExcludeVolumeTypesListProperty.hs-boot +5/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ExclusionsProperty.hs +58/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ExclusionsProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/FastRestoreRuleProperty.hs +64/−0
- gen/Stratosphere/DLM/LifecyclePolicy/FastRestoreRuleProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ParametersProperty.hs +59/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ParametersProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/PolicyDetailsProperty.hs +180/−0
- gen/Stratosphere/DLM/LifecyclePolicy/PolicyDetailsProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/RetainRuleProperty.hs +53/−0
- gen/Stratosphere/DLM/LifecyclePolicy/RetainRuleProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/RetentionArchiveTierProperty.hs +55/−0
- gen/Stratosphere/DLM/LifecyclePolicy/RetentionArchiveTierProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ScheduleProperty.hs +131/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ScheduleProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ScriptProperty.hs +87/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ScriptProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ShareRuleProperty.hs +55/−0
- gen/Stratosphere/DLM/LifecyclePolicy/ShareRuleProperty.hs-boot +9/−0
- gen/Stratosphere/DLM/LifecyclePolicy/VolumeTypeValuesProperty.hs +6/−0
- gen/Stratosphere/DLM/LifecyclePolicy/VolumeTypeValuesProperty.hs-boot +6/−0
- stratosphere-dlm.cabal +99/−0
+ LICENSE.md view
@@ -0,0 +1,20 @@+Copyright (c) 2016 David Reaver+Copyright (c) 2022 Markus Schirp++Permission is hereby granted, free of charge, to any person obtaining a copy of+this software and associated documentation files (the "Software"), to deal in+the Software without restriction, including without limitation the rights to+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies+of the Software, and to permit persons to whom the Software is furnished to do+so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in all+copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+SOFTWARE.
+ gen/Stratosphere/DLM/LifecyclePolicy.hs view
@@ -0,0 +1,138 @@+module Stratosphere.DLM.LifecyclePolicy (+ module Exports, LifecyclePolicy(..), mkLifecyclePolicy+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyTargetsProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.ExclusionsProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.PolicyDetailsProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data LifecyclePolicy+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html>+ LifecyclePolicy {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-copytags>+ copyTags :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-createinterval>+ createInterval :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-crossregioncopytargets>+ crossRegionCopyTargets :: (Prelude.Maybe CrossRegionCopyTargetsProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-defaultpolicy>+ defaultPolicy :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-description>+ description :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-exclusions>+ exclusions :: (Prelude.Maybe ExclusionsProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-executionrolearn>+ executionRoleArn :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-extenddeletion>+ extendDeletion :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-policydetails>+ policyDetails :: (Prelude.Maybe PolicyDetailsProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-retaininterval>+ retainInterval :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-state>+ state :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dlm-lifecyclepolicy.html#cfn-dlm-lifecyclepolicy-tags>+ tags :: (Prelude.Maybe [Tag])}+ deriving stock (Prelude.Eq, Prelude.Show)+mkLifecyclePolicy :: LifecyclePolicy+mkLifecyclePolicy+ = LifecyclePolicy+ {haddock_workaround_ = (), copyTags = Prelude.Nothing,+ createInterval = Prelude.Nothing,+ crossRegionCopyTargets = Prelude.Nothing,+ defaultPolicy = Prelude.Nothing, description = Prelude.Nothing,+ exclusions = Prelude.Nothing, executionRoleArn = Prelude.Nothing,+ extendDeletion = Prelude.Nothing, policyDetails = Prelude.Nothing,+ retainInterval = Prelude.Nothing, state = Prelude.Nothing,+ tags = Prelude.Nothing}+instance ToResourceProperties LifecyclePolicy where+ toResourceProperties LifecyclePolicy {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy",+ supportsTags = Prelude.True,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "CopyTags" Prelude.<$> copyTags,+ (JSON..=) "CreateInterval" Prelude.<$> createInterval,+ (JSON..=) "CrossRegionCopyTargets"+ Prelude.<$> crossRegionCopyTargets,+ (JSON..=) "DefaultPolicy" Prelude.<$> defaultPolicy,+ (JSON..=) "Description" Prelude.<$> description,+ (JSON..=) "Exclusions" Prelude.<$> exclusions,+ (JSON..=) "ExecutionRoleArn" Prelude.<$> executionRoleArn,+ (JSON..=) "ExtendDeletion" Prelude.<$> extendDeletion,+ (JSON..=) "PolicyDetails" Prelude.<$> policyDetails,+ (JSON..=) "RetainInterval" Prelude.<$> retainInterval,+ (JSON..=) "State" Prelude.<$> state,+ (JSON..=) "Tags" Prelude.<$> tags])}+instance JSON.ToJSON LifecyclePolicy where+ toJSON LifecyclePolicy {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "CopyTags" Prelude.<$> copyTags,+ (JSON..=) "CreateInterval" Prelude.<$> createInterval,+ (JSON..=) "CrossRegionCopyTargets"+ Prelude.<$> crossRegionCopyTargets,+ (JSON..=) "DefaultPolicy" Prelude.<$> defaultPolicy,+ (JSON..=) "Description" Prelude.<$> description,+ (JSON..=) "Exclusions" Prelude.<$> exclusions,+ (JSON..=) "ExecutionRoleArn" Prelude.<$> executionRoleArn,+ (JSON..=) "ExtendDeletion" Prelude.<$> extendDeletion,+ (JSON..=) "PolicyDetails" Prelude.<$> policyDetails,+ (JSON..=) "RetainInterval" Prelude.<$> retainInterval,+ (JSON..=) "State" Prelude.<$> state,+ (JSON..=) "Tags" Prelude.<$> tags]))+instance Property "CopyTags" LifecyclePolicy where+ type PropertyType "CopyTags" LifecyclePolicy = Value Prelude.Bool+ set newValue LifecyclePolicy {..}+ = LifecyclePolicy {copyTags = Prelude.pure newValue, ..}+instance Property "CreateInterval" LifecyclePolicy where+ type PropertyType "CreateInterval" LifecyclePolicy = Value Prelude.Integer+ set newValue LifecyclePolicy {..}+ = LifecyclePolicy {createInterval = Prelude.pure newValue, ..}+instance Property "CrossRegionCopyTargets" LifecyclePolicy where+ type PropertyType "CrossRegionCopyTargets" LifecyclePolicy = CrossRegionCopyTargetsProperty+ set newValue LifecyclePolicy {..}+ = LifecyclePolicy+ {crossRegionCopyTargets = Prelude.pure newValue, ..}+instance Property "DefaultPolicy" LifecyclePolicy where+ type PropertyType "DefaultPolicy" LifecyclePolicy = Value Prelude.Text+ set newValue LifecyclePolicy {..}+ = LifecyclePolicy {defaultPolicy = Prelude.pure newValue, ..}+instance Property "Description" LifecyclePolicy where+ type PropertyType "Description" LifecyclePolicy = Value Prelude.Text+ set newValue LifecyclePolicy {..}+ = LifecyclePolicy {description = Prelude.pure newValue, ..}+instance Property "Exclusions" LifecyclePolicy where+ type PropertyType "Exclusions" LifecyclePolicy = ExclusionsProperty+ set newValue LifecyclePolicy {..}+ = LifecyclePolicy {exclusions = Prelude.pure newValue, ..}+instance Property "ExecutionRoleArn" LifecyclePolicy where+ type PropertyType "ExecutionRoleArn" LifecyclePolicy = Value Prelude.Text+ set newValue LifecyclePolicy {..}+ = LifecyclePolicy {executionRoleArn = Prelude.pure newValue, ..}+instance Property "ExtendDeletion" LifecyclePolicy where+ type PropertyType "ExtendDeletion" LifecyclePolicy = Value Prelude.Bool+ set newValue LifecyclePolicy {..}+ = LifecyclePolicy {extendDeletion = Prelude.pure newValue, ..}+instance Property "PolicyDetails" LifecyclePolicy where+ type PropertyType "PolicyDetails" LifecyclePolicy = PolicyDetailsProperty+ set newValue LifecyclePolicy {..}+ = LifecyclePolicy {policyDetails = Prelude.pure newValue, ..}+instance Property "RetainInterval" LifecyclePolicy where+ type PropertyType "RetainInterval" LifecyclePolicy = Value Prelude.Integer+ set newValue LifecyclePolicy {..}+ = LifecyclePolicy {retainInterval = Prelude.pure newValue, ..}+instance Property "State" LifecyclePolicy where+ type PropertyType "State" LifecyclePolicy = Value Prelude.Text+ set newValue LifecyclePolicy {..}+ = LifecyclePolicy {state = Prelude.pure newValue, ..}+instance Property "Tags" LifecyclePolicy where+ type PropertyType "Tags" LifecyclePolicy = [Tag]+ set newValue LifecyclePolicy {..}+ = LifecyclePolicy {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/ActionProperty.hs view
@@ -0,0 +1,43 @@+module Stratosphere.DLM.LifecyclePolicy.ActionProperty (+ module Exports, ActionProperty(..), mkActionProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyActionProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ActionProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-action.html>+ ActionProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-action.html#cfn-dlm-lifecyclepolicy-action-crossregioncopy>+ crossRegionCopy :: [CrossRegionCopyActionProperty],+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-action.html#cfn-dlm-lifecyclepolicy-action-name>+ name :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkActionProperty ::+ [CrossRegionCopyActionProperty]+ -> Value Prelude.Text -> ActionProperty+mkActionProperty crossRegionCopy name+ = ActionProperty+ {haddock_workaround_ = (), crossRegionCopy = crossRegionCopy,+ name = name}+instance ToResourceProperties ActionProperty where+ toResourceProperties ActionProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.Action",+ supportsTags = Prelude.False,+ properties = ["CrossRegionCopy" JSON..= crossRegionCopy,+ "Name" JSON..= name]}+instance JSON.ToJSON ActionProperty where+ toJSON ActionProperty {..}+ = JSON.object+ ["CrossRegionCopy" JSON..= crossRegionCopy, "Name" JSON..= name]+instance Property "CrossRegionCopy" ActionProperty where+ type PropertyType "CrossRegionCopy" ActionProperty = [CrossRegionCopyActionProperty]+ set newValue ActionProperty {..}+ = ActionProperty {crossRegionCopy = newValue, ..}+instance Property "Name" ActionProperty where+ type PropertyType "Name" ActionProperty = Value Prelude.Text+ set newValue ActionProperty {..}+ = ActionProperty {name = newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/ActionProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.ActionProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ActionProperty :: Prelude.Type+instance ToResourceProperties ActionProperty+instance Prelude.Eq ActionProperty+instance Prelude.Show ActionProperty+instance JSON.ToJSON ActionProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/ArchiveRetainRuleProperty.hs view
@@ -0,0 +1,34 @@+module Stratosphere.DLM.LifecyclePolicy.ArchiveRetainRuleProperty (+ module Exports, ArchiveRetainRuleProperty(..),+ mkArchiveRetainRuleProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.RetentionArchiveTierProperty as Exports+import Stratosphere.ResourceProperties+data ArchiveRetainRuleProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-archiveretainrule.html>+ ArchiveRetainRuleProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-archiveretainrule.html#cfn-dlm-lifecyclepolicy-archiveretainrule-retentionarchivetier>+ retentionArchiveTier :: RetentionArchiveTierProperty}+ deriving stock (Prelude.Eq, Prelude.Show)+mkArchiveRetainRuleProperty ::+ RetentionArchiveTierProperty -> ArchiveRetainRuleProperty+mkArchiveRetainRuleProperty retentionArchiveTier+ = ArchiveRetainRuleProperty+ {haddock_workaround_ = (),+ retentionArchiveTier = retentionArchiveTier}+instance ToResourceProperties ArchiveRetainRuleProperty where+ toResourceProperties ArchiveRetainRuleProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.ArchiveRetainRule",+ supportsTags = Prelude.False,+ properties = ["RetentionArchiveTier" JSON..= retentionArchiveTier]}+instance JSON.ToJSON ArchiveRetainRuleProperty where+ toJSON ArchiveRetainRuleProperty {..}+ = JSON.object ["RetentionArchiveTier" JSON..= retentionArchiveTier]+instance Property "RetentionArchiveTier" ArchiveRetainRuleProperty where+ type PropertyType "RetentionArchiveTier" ArchiveRetainRuleProperty = RetentionArchiveTierProperty+ set newValue ArchiveRetainRuleProperty {..}+ = ArchiveRetainRuleProperty {retentionArchiveTier = newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/ArchiveRetainRuleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.ArchiveRetainRuleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ArchiveRetainRuleProperty :: Prelude.Type+instance ToResourceProperties ArchiveRetainRuleProperty+instance Prelude.Eq ArchiveRetainRuleProperty+instance Prelude.Show ArchiveRetainRuleProperty+instance JSON.ToJSON ArchiveRetainRuleProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/ArchiveRuleProperty.hs view
@@ -0,0 +1,32 @@+module Stratosphere.DLM.LifecyclePolicy.ArchiveRuleProperty (+ module Exports, ArchiveRuleProperty(..), mkArchiveRuleProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.ArchiveRetainRuleProperty as Exports+import Stratosphere.ResourceProperties+data ArchiveRuleProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-archiverule.html>+ ArchiveRuleProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-archiverule.html#cfn-dlm-lifecyclepolicy-archiverule-retainrule>+ retainRule :: ArchiveRetainRuleProperty}+ deriving stock (Prelude.Eq, Prelude.Show)+mkArchiveRuleProperty ::+ ArchiveRetainRuleProperty -> ArchiveRuleProperty+mkArchiveRuleProperty retainRule+ = ArchiveRuleProperty+ {haddock_workaround_ = (), retainRule = retainRule}+instance ToResourceProperties ArchiveRuleProperty where+ toResourceProperties ArchiveRuleProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.ArchiveRule",+ supportsTags = Prelude.False,+ properties = ["RetainRule" JSON..= retainRule]}+instance JSON.ToJSON ArchiveRuleProperty where+ toJSON ArchiveRuleProperty {..}+ = JSON.object ["RetainRule" JSON..= retainRule]+instance Property "RetainRule" ArchiveRuleProperty where+ type PropertyType "RetainRule" ArchiveRuleProperty = ArchiveRetainRuleProperty+ set newValue ArchiveRuleProperty {..}+ = ArchiveRuleProperty {retainRule = newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/ArchiveRuleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.ArchiveRuleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ArchiveRuleProperty :: Prelude.Type+instance ToResourceProperties ArchiveRuleProperty+instance Prelude.Eq ArchiveRuleProperty+instance Prelude.Show ArchiveRuleProperty+instance JSON.ToJSON ArchiveRuleProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/CreateRuleProperty.hs view
@@ -0,0 +1,80 @@+module Stratosphere.DLM.LifecyclePolicy.CreateRuleProperty (+ module Exports, CreateRuleProperty(..), mkCreateRuleProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.ScriptProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CreateRuleProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html>+ CreateRuleProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html#cfn-dlm-lifecyclepolicy-createrule-cronexpression>+ cronExpression :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html#cfn-dlm-lifecyclepolicy-createrule-interval>+ interval :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html#cfn-dlm-lifecyclepolicy-createrule-intervalunit>+ intervalUnit :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html#cfn-dlm-lifecyclepolicy-createrule-location>+ location :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html#cfn-dlm-lifecyclepolicy-createrule-scripts>+ scripts :: (Prelude.Maybe [ScriptProperty]),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-createrule.html#cfn-dlm-lifecyclepolicy-createrule-times>+ times :: (Prelude.Maybe (ValueList Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkCreateRuleProperty :: CreateRuleProperty+mkCreateRuleProperty+ = CreateRuleProperty+ {haddock_workaround_ = (), cronExpression = Prelude.Nothing,+ interval = Prelude.Nothing, intervalUnit = Prelude.Nothing,+ location = Prelude.Nothing, scripts = Prelude.Nothing,+ times = Prelude.Nothing}+instance ToResourceProperties CreateRuleProperty where+ toResourceProperties CreateRuleProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.CreateRule",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "CronExpression" Prelude.<$> cronExpression,+ (JSON..=) "Interval" Prelude.<$> interval,+ (JSON..=) "IntervalUnit" Prelude.<$> intervalUnit,+ (JSON..=) "Location" Prelude.<$> location,+ (JSON..=) "Scripts" Prelude.<$> scripts,+ (JSON..=) "Times" Prelude.<$> times])}+instance JSON.ToJSON CreateRuleProperty where+ toJSON CreateRuleProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "CronExpression" Prelude.<$> cronExpression,+ (JSON..=) "Interval" Prelude.<$> interval,+ (JSON..=) "IntervalUnit" Prelude.<$> intervalUnit,+ (JSON..=) "Location" Prelude.<$> location,+ (JSON..=) "Scripts" Prelude.<$> scripts,+ (JSON..=) "Times" Prelude.<$> times]))+instance Property "CronExpression" CreateRuleProperty where+ type PropertyType "CronExpression" CreateRuleProperty = Value Prelude.Text+ set newValue CreateRuleProperty {..}+ = CreateRuleProperty {cronExpression = Prelude.pure newValue, ..}+instance Property "Interval" CreateRuleProperty where+ type PropertyType "Interval" CreateRuleProperty = Value Prelude.Integer+ set newValue CreateRuleProperty {..}+ = CreateRuleProperty {interval = Prelude.pure newValue, ..}+instance Property "IntervalUnit" CreateRuleProperty where+ type PropertyType "IntervalUnit" CreateRuleProperty = Value Prelude.Text+ set newValue CreateRuleProperty {..}+ = CreateRuleProperty {intervalUnit = Prelude.pure newValue, ..}+instance Property "Location" CreateRuleProperty where+ type PropertyType "Location" CreateRuleProperty = Value Prelude.Text+ set newValue CreateRuleProperty {..}+ = CreateRuleProperty {location = Prelude.pure newValue, ..}+instance Property "Scripts" CreateRuleProperty where+ type PropertyType "Scripts" CreateRuleProperty = [ScriptProperty]+ set newValue CreateRuleProperty {..}+ = CreateRuleProperty {scripts = Prelude.pure newValue, ..}+instance Property "Times" CreateRuleProperty where+ type PropertyType "Times" CreateRuleProperty = ValueList Prelude.Text+ set newValue CreateRuleProperty {..}+ = CreateRuleProperty {times = Prelude.pure newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/CreateRuleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.CreateRuleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CreateRuleProperty :: Prelude.Type+instance ToResourceProperties CreateRuleProperty+instance Prelude.Eq CreateRuleProperty+instance Prelude.Show CreateRuleProperty+instance JSON.ToJSON CreateRuleProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyActionProperty.hs view
@@ -0,0 +1,63 @@+module Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyActionProperty (+ module Exports, CrossRegionCopyActionProperty(..),+ mkCrossRegionCopyActionProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyRetainRuleProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.EncryptionConfigurationProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CrossRegionCopyActionProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyaction.html>+ CrossRegionCopyActionProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyaction.html#cfn-dlm-lifecyclepolicy-crossregioncopyaction-encryptionconfiguration>+ encryptionConfiguration :: EncryptionConfigurationProperty,+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyaction.html#cfn-dlm-lifecyclepolicy-crossregioncopyaction-retainrule>+ retainRule :: (Prelude.Maybe CrossRegionCopyRetainRuleProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyaction.html#cfn-dlm-lifecyclepolicy-crossregioncopyaction-target>+ target :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkCrossRegionCopyActionProperty ::+ EncryptionConfigurationProperty+ -> Value Prelude.Text -> CrossRegionCopyActionProperty+mkCrossRegionCopyActionProperty encryptionConfiguration target+ = CrossRegionCopyActionProperty+ {haddock_workaround_ = (),+ encryptionConfiguration = encryptionConfiguration, target = target,+ retainRule = Prelude.Nothing}+instance ToResourceProperties CrossRegionCopyActionProperty where+ toResourceProperties CrossRegionCopyActionProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.CrossRegionCopyAction",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["EncryptionConfiguration" JSON..= encryptionConfiguration,+ "Target" JSON..= target]+ (Prelude.catMaybes+ [(JSON..=) "RetainRule" Prelude.<$> retainRule]))}+instance JSON.ToJSON CrossRegionCopyActionProperty where+ toJSON CrossRegionCopyActionProperty {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["EncryptionConfiguration" JSON..= encryptionConfiguration,+ "Target" JSON..= target]+ (Prelude.catMaybes+ [(JSON..=) "RetainRule" Prelude.<$> retainRule])))+instance Property "EncryptionConfiguration" CrossRegionCopyActionProperty where+ type PropertyType "EncryptionConfiguration" CrossRegionCopyActionProperty = EncryptionConfigurationProperty+ set newValue CrossRegionCopyActionProperty {..}+ = CrossRegionCopyActionProperty+ {encryptionConfiguration = newValue, ..}+instance Property "RetainRule" CrossRegionCopyActionProperty where+ type PropertyType "RetainRule" CrossRegionCopyActionProperty = CrossRegionCopyRetainRuleProperty+ set newValue CrossRegionCopyActionProperty {..}+ = CrossRegionCopyActionProperty+ {retainRule = Prelude.pure newValue, ..}+instance Property "Target" CrossRegionCopyActionProperty where+ type PropertyType "Target" CrossRegionCopyActionProperty = Value Prelude.Text+ set newValue CrossRegionCopyActionProperty {..}+ = CrossRegionCopyActionProperty {target = newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyActionProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyActionProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CrossRegionCopyActionProperty :: Prelude.Type+instance ToResourceProperties CrossRegionCopyActionProperty+instance Prelude.Eq CrossRegionCopyActionProperty+instance Prelude.Show CrossRegionCopyActionProperty+instance JSON.ToJSON CrossRegionCopyActionProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyDeprecateRuleProperty.hs view
@@ -0,0 +1,44 @@+module Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyDeprecateRuleProperty (+ CrossRegionCopyDeprecateRuleProperty(..),+ mkCrossRegionCopyDeprecateRuleProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CrossRegionCopyDeprecateRuleProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopydeprecaterule.html>+ CrossRegionCopyDeprecateRuleProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopydeprecaterule.html#cfn-dlm-lifecyclepolicy-crossregioncopydeprecaterule-interval>+ interval :: (Value Prelude.Integer),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopydeprecaterule.html#cfn-dlm-lifecyclepolicy-crossregioncopydeprecaterule-intervalunit>+ intervalUnit :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkCrossRegionCopyDeprecateRuleProperty ::+ Value Prelude.Integer+ -> Value Prelude.Text -> CrossRegionCopyDeprecateRuleProperty+mkCrossRegionCopyDeprecateRuleProperty interval intervalUnit+ = CrossRegionCopyDeprecateRuleProperty+ {haddock_workaround_ = (), interval = interval,+ intervalUnit = intervalUnit}+instance ToResourceProperties CrossRegionCopyDeprecateRuleProperty where+ toResourceProperties CrossRegionCopyDeprecateRuleProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.CrossRegionCopyDeprecateRule",+ supportsTags = Prelude.False,+ properties = ["Interval" JSON..= interval,+ "IntervalUnit" JSON..= intervalUnit]}+instance JSON.ToJSON CrossRegionCopyDeprecateRuleProperty where+ toJSON CrossRegionCopyDeprecateRuleProperty {..}+ = JSON.object+ ["Interval" JSON..= interval, "IntervalUnit" JSON..= intervalUnit]+instance Property "Interval" CrossRegionCopyDeprecateRuleProperty where+ type PropertyType "Interval" CrossRegionCopyDeprecateRuleProperty = Value Prelude.Integer+ set newValue CrossRegionCopyDeprecateRuleProperty {..}+ = CrossRegionCopyDeprecateRuleProperty {interval = newValue, ..}+instance Property "IntervalUnit" CrossRegionCopyDeprecateRuleProperty where+ type PropertyType "IntervalUnit" CrossRegionCopyDeprecateRuleProperty = Value Prelude.Text+ set newValue CrossRegionCopyDeprecateRuleProperty {..}+ = CrossRegionCopyDeprecateRuleProperty+ {intervalUnit = newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyDeprecateRuleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyDeprecateRuleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CrossRegionCopyDeprecateRuleProperty :: Prelude.Type+instance ToResourceProperties CrossRegionCopyDeprecateRuleProperty+instance Prelude.Eq CrossRegionCopyDeprecateRuleProperty+instance Prelude.Show CrossRegionCopyDeprecateRuleProperty+instance JSON.ToJSON CrossRegionCopyDeprecateRuleProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyRetainRuleProperty.hs view
@@ -0,0 +1,43 @@+module Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyRetainRuleProperty (+ CrossRegionCopyRetainRuleProperty(..),+ mkCrossRegionCopyRetainRuleProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CrossRegionCopyRetainRuleProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyretainrule.html>+ CrossRegionCopyRetainRuleProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyretainrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyretainrule-interval>+ interval :: (Value Prelude.Integer),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyretainrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyretainrule-intervalunit>+ intervalUnit :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkCrossRegionCopyRetainRuleProperty ::+ Value Prelude.Integer+ -> Value Prelude.Text -> CrossRegionCopyRetainRuleProperty+mkCrossRegionCopyRetainRuleProperty interval intervalUnit+ = CrossRegionCopyRetainRuleProperty+ {haddock_workaround_ = (), interval = interval,+ intervalUnit = intervalUnit}+instance ToResourceProperties CrossRegionCopyRetainRuleProperty where+ toResourceProperties CrossRegionCopyRetainRuleProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.CrossRegionCopyRetainRule",+ supportsTags = Prelude.False,+ properties = ["Interval" JSON..= interval,+ "IntervalUnit" JSON..= intervalUnit]}+instance JSON.ToJSON CrossRegionCopyRetainRuleProperty where+ toJSON CrossRegionCopyRetainRuleProperty {..}+ = JSON.object+ ["Interval" JSON..= interval, "IntervalUnit" JSON..= intervalUnit]+instance Property "Interval" CrossRegionCopyRetainRuleProperty where+ type PropertyType "Interval" CrossRegionCopyRetainRuleProperty = Value Prelude.Integer+ set newValue CrossRegionCopyRetainRuleProperty {..}+ = CrossRegionCopyRetainRuleProperty {interval = newValue, ..}+instance Property "IntervalUnit" CrossRegionCopyRetainRuleProperty where+ type PropertyType "IntervalUnit" CrossRegionCopyRetainRuleProperty = Value Prelude.Text+ set newValue CrossRegionCopyRetainRuleProperty {..}+ = CrossRegionCopyRetainRuleProperty {intervalUnit = newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyRetainRuleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyRetainRuleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CrossRegionCopyRetainRuleProperty :: Prelude.Type+instance ToResourceProperties CrossRegionCopyRetainRuleProperty+instance Prelude.Eq CrossRegionCopyRetainRuleProperty+instance Prelude.Show CrossRegionCopyRetainRuleProperty+instance JSON.ToJSON CrossRegionCopyRetainRuleProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyRuleProperty.hs view
@@ -0,0 +1,97 @@+module Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyRuleProperty (+ module Exports, CrossRegionCopyRuleProperty(..),+ mkCrossRegionCopyRuleProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyDeprecateRuleProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyRetainRuleProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CrossRegionCopyRuleProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyrule.html>+ CrossRegionCopyRuleProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyrule-cmkarn>+ cmkArn :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyrule-copytags>+ copyTags :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyrule-deprecaterule>+ deprecateRule :: (Prelude.Maybe CrossRegionCopyDeprecateRuleProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyrule-encrypted>+ encrypted :: (Value Prelude.Bool),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyrule-retainrule>+ retainRule :: (Prelude.Maybe CrossRegionCopyRetainRuleProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyrule-target>+ target :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopyrule.html#cfn-dlm-lifecyclepolicy-crossregioncopyrule-targetregion>+ targetRegion :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkCrossRegionCopyRuleProperty ::+ Value Prelude.Bool -> CrossRegionCopyRuleProperty+mkCrossRegionCopyRuleProperty encrypted+ = CrossRegionCopyRuleProperty+ {haddock_workaround_ = (), encrypted = encrypted,+ cmkArn = Prelude.Nothing, copyTags = Prelude.Nothing,+ deprecateRule = Prelude.Nothing, retainRule = Prelude.Nothing,+ target = Prelude.Nothing, targetRegion = Prelude.Nothing}+instance ToResourceProperties CrossRegionCopyRuleProperty where+ toResourceProperties CrossRegionCopyRuleProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.CrossRegionCopyRule",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["Encrypted" JSON..= encrypted]+ (Prelude.catMaybes+ [(JSON..=) "CmkArn" Prelude.<$> cmkArn,+ (JSON..=) "CopyTags" Prelude.<$> copyTags,+ (JSON..=) "DeprecateRule" Prelude.<$> deprecateRule,+ (JSON..=) "RetainRule" Prelude.<$> retainRule,+ (JSON..=) "Target" Prelude.<$> target,+ (JSON..=) "TargetRegion" Prelude.<$> targetRegion]))}+instance JSON.ToJSON CrossRegionCopyRuleProperty where+ toJSON CrossRegionCopyRuleProperty {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["Encrypted" JSON..= encrypted]+ (Prelude.catMaybes+ [(JSON..=) "CmkArn" Prelude.<$> cmkArn,+ (JSON..=) "CopyTags" Prelude.<$> copyTags,+ (JSON..=) "DeprecateRule" Prelude.<$> deprecateRule,+ (JSON..=) "RetainRule" Prelude.<$> retainRule,+ (JSON..=) "Target" Prelude.<$> target,+ (JSON..=) "TargetRegion" Prelude.<$> targetRegion])))+instance Property "CmkArn" CrossRegionCopyRuleProperty where+ type PropertyType "CmkArn" CrossRegionCopyRuleProperty = Value Prelude.Text+ set newValue CrossRegionCopyRuleProperty {..}+ = CrossRegionCopyRuleProperty {cmkArn = Prelude.pure newValue, ..}+instance Property "CopyTags" CrossRegionCopyRuleProperty where+ type PropertyType "CopyTags" CrossRegionCopyRuleProperty = Value Prelude.Bool+ set newValue CrossRegionCopyRuleProperty {..}+ = CrossRegionCopyRuleProperty+ {copyTags = Prelude.pure newValue, ..}+instance Property "DeprecateRule" CrossRegionCopyRuleProperty where+ type PropertyType "DeprecateRule" CrossRegionCopyRuleProperty = CrossRegionCopyDeprecateRuleProperty+ set newValue CrossRegionCopyRuleProperty {..}+ = CrossRegionCopyRuleProperty+ {deprecateRule = Prelude.pure newValue, ..}+instance Property "Encrypted" CrossRegionCopyRuleProperty where+ type PropertyType "Encrypted" CrossRegionCopyRuleProperty = Value Prelude.Bool+ set newValue CrossRegionCopyRuleProperty {..}+ = CrossRegionCopyRuleProperty {encrypted = newValue, ..}+instance Property "RetainRule" CrossRegionCopyRuleProperty where+ type PropertyType "RetainRule" CrossRegionCopyRuleProperty = CrossRegionCopyRetainRuleProperty+ set newValue CrossRegionCopyRuleProperty {..}+ = CrossRegionCopyRuleProperty+ {retainRule = Prelude.pure newValue, ..}+instance Property "Target" CrossRegionCopyRuleProperty where+ type PropertyType "Target" CrossRegionCopyRuleProperty = Value Prelude.Text+ set newValue CrossRegionCopyRuleProperty {..}+ = CrossRegionCopyRuleProperty {target = Prelude.pure newValue, ..}+instance Property "TargetRegion" CrossRegionCopyRuleProperty where+ type PropertyType "TargetRegion" CrossRegionCopyRuleProperty = Value Prelude.Text+ set newValue CrossRegionCopyRuleProperty {..}+ = CrossRegionCopyRuleProperty+ {targetRegion = Prelude.pure newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyRuleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyRuleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CrossRegionCopyRuleProperty :: Prelude.Type+instance ToResourceProperties CrossRegionCopyRuleProperty+instance Prelude.Eq CrossRegionCopyRuleProperty+instance Prelude.Show CrossRegionCopyRuleProperty+instance JSON.ToJSON CrossRegionCopyRuleProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyTargetProperty.hs view
@@ -0,0 +1,37 @@+module Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyTargetProperty (+ CrossRegionCopyTargetProperty(..), mkCrossRegionCopyTargetProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CrossRegionCopyTargetProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopytarget.html>+ CrossRegionCopyTargetProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-crossregioncopytarget.html#cfn-dlm-lifecyclepolicy-crossregioncopytarget-targetregion>+ targetRegion :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkCrossRegionCopyTargetProperty :: CrossRegionCopyTargetProperty+mkCrossRegionCopyTargetProperty+ = CrossRegionCopyTargetProperty+ {haddock_workaround_ = (), targetRegion = Prelude.Nothing}+instance ToResourceProperties CrossRegionCopyTargetProperty where+ toResourceProperties CrossRegionCopyTargetProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.CrossRegionCopyTarget",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "TargetRegion" Prelude.<$> targetRegion])}+instance JSON.ToJSON CrossRegionCopyTargetProperty where+ toJSON CrossRegionCopyTargetProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "TargetRegion" Prelude.<$> targetRegion]))+instance Property "TargetRegion" CrossRegionCopyTargetProperty where+ type PropertyType "TargetRegion" CrossRegionCopyTargetProperty = Value Prelude.Text+ set newValue CrossRegionCopyTargetProperty {..}+ = CrossRegionCopyTargetProperty+ {targetRegion = Prelude.pure newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyTargetProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyTargetProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CrossRegionCopyTargetProperty :: Prelude.Type+instance ToResourceProperties CrossRegionCopyTargetProperty+instance Prelude.Eq CrossRegionCopyTargetProperty+instance Prelude.Show CrossRegionCopyTargetProperty+instance JSON.ToJSON CrossRegionCopyTargetProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyTargetsProperty.hs view
@@ -0,0 +1,6 @@+module Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyTargetsProperty (+ module Exports, CrossRegionCopyTargetsProperty+ ) where+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyTargetProperty as Exports+type CrossRegionCopyTargetsProperty =+ [CrossRegionCopyTargetProperty]
+ gen/Stratosphere/DLM/LifecyclePolicy/CrossRegionCopyTargetsProperty.hs-boot view
@@ -0,0 +1,6 @@+module Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyTargetsProperty (+ module Exports, CrossRegionCopyTargetsProperty+ ) where+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyTargetProperty as Exports+type CrossRegionCopyTargetsProperty =+ [CrossRegionCopyTargetProperty]
+ gen/Stratosphere/DLM/LifecyclePolicy/DeprecateRuleProperty.hs view
@@ -0,0 +1,53 @@+module Stratosphere.DLM.LifecyclePolicy.DeprecateRuleProperty (+ DeprecateRuleProperty(..), mkDeprecateRuleProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data DeprecateRuleProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-deprecaterule.html>+ DeprecateRuleProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-deprecaterule.html#cfn-dlm-lifecyclepolicy-deprecaterule-count>+ count :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-deprecaterule.html#cfn-dlm-lifecyclepolicy-deprecaterule-interval>+ interval :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-deprecaterule.html#cfn-dlm-lifecyclepolicy-deprecaterule-intervalunit>+ intervalUnit :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkDeprecateRuleProperty :: DeprecateRuleProperty+mkDeprecateRuleProperty+ = DeprecateRuleProperty+ {haddock_workaround_ = (), count = Prelude.Nothing,+ interval = Prelude.Nothing, intervalUnit = Prelude.Nothing}+instance ToResourceProperties DeprecateRuleProperty where+ toResourceProperties DeprecateRuleProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.DeprecateRule",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Count" Prelude.<$> count,+ (JSON..=) "Interval" Prelude.<$> interval,+ (JSON..=) "IntervalUnit" Prelude.<$> intervalUnit])}+instance JSON.ToJSON DeprecateRuleProperty where+ toJSON DeprecateRuleProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Count" Prelude.<$> count,+ (JSON..=) "Interval" Prelude.<$> interval,+ (JSON..=) "IntervalUnit" Prelude.<$> intervalUnit]))+instance Property "Count" DeprecateRuleProperty where+ type PropertyType "Count" DeprecateRuleProperty = Value Prelude.Integer+ set newValue DeprecateRuleProperty {..}+ = DeprecateRuleProperty {count = Prelude.pure newValue, ..}+instance Property "Interval" DeprecateRuleProperty where+ type PropertyType "Interval" DeprecateRuleProperty = Value Prelude.Integer+ set newValue DeprecateRuleProperty {..}+ = DeprecateRuleProperty {interval = Prelude.pure newValue, ..}+instance Property "IntervalUnit" DeprecateRuleProperty where+ type PropertyType "IntervalUnit" DeprecateRuleProperty = Value Prelude.Text+ set newValue DeprecateRuleProperty {..}+ = DeprecateRuleProperty {intervalUnit = Prelude.pure newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/DeprecateRuleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.DeprecateRuleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data DeprecateRuleProperty :: Prelude.Type+instance ToResourceProperties DeprecateRuleProperty+instance Prelude.Eq DeprecateRuleProperty+instance Prelude.Show DeprecateRuleProperty+instance JSON.ToJSON DeprecateRuleProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/EncryptionConfigurationProperty.hs view
@@ -0,0 +1,48 @@+module Stratosphere.DLM.LifecyclePolicy.EncryptionConfigurationProperty (+ EncryptionConfigurationProperty(..),+ mkEncryptionConfigurationProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EncryptionConfigurationProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-encryptionconfiguration.html>+ EncryptionConfigurationProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-encryptionconfiguration.html#cfn-dlm-lifecyclepolicy-encryptionconfiguration-cmkarn>+ cmkArn :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-encryptionconfiguration.html#cfn-dlm-lifecyclepolicy-encryptionconfiguration-encrypted>+ encrypted :: (Value Prelude.Bool)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkEncryptionConfigurationProperty ::+ Value Prelude.Bool -> EncryptionConfigurationProperty+mkEncryptionConfigurationProperty encrypted+ = EncryptionConfigurationProperty+ {haddock_workaround_ = (), encrypted = encrypted,+ cmkArn = Prelude.Nothing}+instance ToResourceProperties EncryptionConfigurationProperty where+ toResourceProperties EncryptionConfigurationProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.EncryptionConfiguration",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["Encrypted" JSON..= encrypted]+ (Prelude.catMaybes [(JSON..=) "CmkArn" Prelude.<$> cmkArn]))}+instance JSON.ToJSON EncryptionConfigurationProperty where+ toJSON EncryptionConfigurationProperty {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["Encrypted" JSON..= encrypted]+ (Prelude.catMaybes [(JSON..=) "CmkArn" Prelude.<$> cmkArn])))+instance Property "CmkArn" EncryptionConfigurationProperty where+ type PropertyType "CmkArn" EncryptionConfigurationProperty = Value Prelude.Text+ set newValue EncryptionConfigurationProperty {..}+ = EncryptionConfigurationProperty+ {cmkArn = Prelude.pure newValue, ..}+instance Property "Encrypted" EncryptionConfigurationProperty where+ type PropertyType "Encrypted" EncryptionConfigurationProperty = Value Prelude.Bool+ set newValue EncryptionConfigurationProperty {..}+ = EncryptionConfigurationProperty {encrypted = newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/EncryptionConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.EncryptionConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EncryptionConfigurationProperty :: Prelude.Type+instance ToResourceProperties EncryptionConfigurationProperty+instance Prelude.Eq EncryptionConfigurationProperty+instance Prelude.Show EncryptionConfigurationProperty+instance JSON.ToJSON EncryptionConfigurationProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/EventParametersProperty.hs view
@@ -0,0 +1,58 @@+module Stratosphere.DLM.LifecyclePolicy.EventParametersProperty (+ EventParametersProperty(..), mkEventParametersProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EventParametersProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-eventparameters.html>+ EventParametersProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-eventparameters.html#cfn-dlm-lifecyclepolicy-eventparameters-descriptionregex>+ descriptionRegex :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-eventparameters.html#cfn-dlm-lifecyclepolicy-eventparameters-eventtype>+ eventType :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-eventparameters.html#cfn-dlm-lifecyclepolicy-eventparameters-snapshotowner>+ snapshotOwner :: (ValueList Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkEventParametersProperty ::+ Value Prelude.Text+ -> ValueList Prelude.Text -> EventParametersProperty+mkEventParametersProperty eventType snapshotOwner+ = EventParametersProperty+ {haddock_workaround_ = (), eventType = eventType,+ snapshotOwner = snapshotOwner, descriptionRegex = Prelude.Nothing}+instance ToResourceProperties EventParametersProperty where+ toResourceProperties EventParametersProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.EventParameters",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["EventType" JSON..= eventType,+ "SnapshotOwner" JSON..= snapshotOwner]+ (Prelude.catMaybes+ [(JSON..=) "DescriptionRegex" Prelude.<$> descriptionRegex]))}+instance JSON.ToJSON EventParametersProperty where+ toJSON EventParametersProperty {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["EventType" JSON..= eventType,+ "SnapshotOwner" JSON..= snapshotOwner]+ (Prelude.catMaybes+ [(JSON..=) "DescriptionRegex" Prelude.<$> descriptionRegex])))+instance Property "DescriptionRegex" EventParametersProperty where+ type PropertyType "DescriptionRegex" EventParametersProperty = Value Prelude.Text+ set newValue EventParametersProperty {..}+ = EventParametersProperty+ {descriptionRegex = Prelude.pure newValue, ..}+instance Property "EventType" EventParametersProperty where+ type PropertyType "EventType" EventParametersProperty = Value Prelude.Text+ set newValue EventParametersProperty {..}+ = EventParametersProperty {eventType = newValue, ..}+instance Property "SnapshotOwner" EventParametersProperty where+ type PropertyType "SnapshotOwner" EventParametersProperty = ValueList Prelude.Text+ set newValue EventParametersProperty {..}+ = EventParametersProperty {snapshotOwner = newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/EventParametersProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.EventParametersProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EventParametersProperty :: Prelude.Type+instance ToResourceProperties EventParametersProperty+instance Prelude.Eq EventParametersProperty+instance Prelude.Show EventParametersProperty+instance JSON.ToJSON EventParametersProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/EventSourceProperty.hs view
@@ -0,0 +1,48 @@+module Stratosphere.DLM.LifecyclePolicy.EventSourceProperty (+ module Exports, EventSourceProperty(..), mkEventSourceProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.EventParametersProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EventSourceProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-eventsource.html>+ EventSourceProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-eventsource.html#cfn-dlm-lifecyclepolicy-eventsource-parameters>+ parameters :: (Prelude.Maybe EventParametersProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-eventsource.html#cfn-dlm-lifecyclepolicy-eventsource-type>+ type' :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkEventSourceProperty :: Value Prelude.Text -> EventSourceProperty+mkEventSourceProperty type'+ = EventSourceProperty+ {haddock_workaround_ = (), type' = type',+ parameters = Prelude.Nothing}+instance ToResourceProperties EventSourceProperty where+ toResourceProperties EventSourceProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.EventSource",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["Type" JSON..= type']+ (Prelude.catMaybes+ [(JSON..=) "Parameters" Prelude.<$> parameters]))}+instance JSON.ToJSON EventSourceProperty where+ toJSON EventSourceProperty {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["Type" JSON..= type']+ (Prelude.catMaybes+ [(JSON..=) "Parameters" Prelude.<$> parameters])))+instance Property "Parameters" EventSourceProperty where+ type PropertyType "Parameters" EventSourceProperty = EventParametersProperty+ set newValue EventSourceProperty {..}+ = EventSourceProperty {parameters = Prelude.pure newValue, ..}+instance Property "Type" EventSourceProperty where+ type PropertyType "Type" EventSourceProperty = Value Prelude.Text+ set newValue EventSourceProperty {..}+ = EventSourceProperty {type' = newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/EventSourceProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.EventSourceProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EventSourceProperty :: Prelude.Type+instance ToResourceProperties EventSourceProperty+instance Prelude.Eq EventSourceProperty+instance Prelude.Show EventSourceProperty+instance JSON.ToJSON EventSourceProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/ExcludeTagsProperty.hs view
@@ -0,0 +1,5 @@+module Stratosphere.DLM.LifecyclePolicy.ExcludeTagsProperty (+ ExcludeTagsProperty+ ) where+import Stratosphere.Tag+type ExcludeTagsProperty = [Tag]
+ gen/Stratosphere/DLM/LifecyclePolicy/ExcludeTagsProperty.hs-boot view
@@ -0,0 +1,5 @@+module Stratosphere.DLM.LifecyclePolicy.ExcludeTagsProperty (+ ExcludeTagsProperty+ ) where+import Stratosphere.Tag+type ExcludeTagsProperty = [Tag]
+ gen/Stratosphere/DLM/LifecyclePolicy/ExcludeVolumeTypesListProperty.hs view
@@ -0,0 +1,5 @@+module Stratosphere.DLM.LifecyclePolicy.ExcludeVolumeTypesListProperty (+ module Exports, ExcludeVolumeTypesListProperty+ ) where+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.VolumeTypeValuesProperty as Exports+type ExcludeVolumeTypesListProperty = [VolumeTypeValuesProperty]
+ gen/Stratosphere/DLM/LifecyclePolicy/ExcludeVolumeTypesListProperty.hs-boot view
@@ -0,0 +1,5 @@+module Stratosphere.DLM.LifecyclePolicy.ExcludeVolumeTypesListProperty (+ module Exports, ExcludeVolumeTypesListProperty+ ) where+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.VolumeTypeValuesProperty as Exports+type ExcludeVolumeTypesListProperty = [VolumeTypeValuesProperty]
+ gen/Stratosphere/DLM/LifecyclePolicy/ExclusionsProperty.hs view
@@ -0,0 +1,58 @@+module Stratosphere.DLM.LifecyclePolicy.ExclusionsProperty (+ module Exports, ExclusionsProperty(..), mkExclusionsProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.ExcludeTagsProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.ExcludeVolumeTypesListProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ExclusionsProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-exclusions.html>+ ExclusionsProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-exclusions.html#cfn-dlm-lifecyclepolicy-exclusions-excludebootvolumes>+ excludeBootVolumes :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-exclusions.html#cfn-dlm-lifecyclepolicy-exclusions-excludetags>+ excludeTags :: (Prelude.Maybe ExcludeTagsProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-exclusions.html#cfn-dlm-lifecyclepolicy-exclusions-excludevolumetypes>+ excludeVolumeTypes :: (Prelude.Maybe ExcludeVolumeTypesListProperty)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkExclusionsProperty :: ExclusionsProperty+mkExclusionsProperty+ = ExclusionsProperty+ {haddock_workaround_ = (), excludeBootVolumes = Prelude.Nothing,+ excludeTags = Prelude.Nothing,+ excludeVolumeTypes = Prelude.Nothing}+instance ToResourceProperties ExclusionsProperty where+ toResourceProperties ExclusionsProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.Exclusions",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "ExcludeBootVolumes" Prelude.<$> excludeBootVolumes,+ (JSON..=) "ExcludeTags" Prelude.<$> excludeTags,+ (JSON..=) "ExcludeVolumeTypes" Prelude.<$> excludeVolumeTypes])}+instance JSON.ToJSON ExclusionsProperty where+ toJSON ExclusionsProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "ExcludeBootVolumes" Prelude.<$> excludeBootVolumes,+ (JSON..=) "ExcludeTags" Prelude.<$> excludeTags,+ (JSON..=) "ExcludeVolumeTypes" Prelude.<$> excludeVolumeTypes]))+instance Property "ExcludeBootVolumes" ExclusionsProperty where+ type PropertyType "ExcludeBootVolumes" ExclusionsProperty = Value Prelude.Bool+ set newValue ExclusionsProperty {..}+ = ExclusionsProperty+ {excludeBootVolumes = Prelude.pure newValue, ..}+instance Property "ExcludeTags" ExclusionsProperty where+ type PropertyType "ExcludeTags" ExclusionsProperty = ExcludeTagsProperty+ set newValue ExclusionsProperty {..}+ = ExclusionsProperty {excludeTags = Prelude.pure newValue, ..}+instance Property "ExcludeVolumeTypes" ExclusionsProperty where+ type PropertyType "ExcludeVolumeTypes" ExclusionsProperty = ExcludeVolumeTypesListProperty+ set newValue ExclusionsProperty {..}+ = ExclusionsProperty+ {excludeVolumeTypes = Prelude.pure newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/ExclusionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.ExclusionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ExclusionsProperty :: Prelude.Type+instance ToResourceProperties ExclusionsProperty+instance Prelude.Eq ExclusionsProperty+instance Prelude.Show ExclusionsProperty+instance JSON.ToJSON ExclusionsProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/FastRestoreRuleProperty.hs view
@@ -0,0 +1,64 @@+module Stratosphere.DLM.LifecyclePolicy.FastRestoreRuleProperty (+ FastRestoreRuleProperty(..), mkFastRestoreRuleProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data FastRestoreRuleProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html>+ FastRestoreRuleProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-availabilityzones>+ availabilityZones :: (Prelude.Maybe (ValueList Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-count>+ count :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-interval>+ interval :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-fastrestorerule.html#cfn-dlm-lifecyclepolicy-fastrestorerule-intervalunit>+ intervalUnit :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkFastRestoreRuleProperty :: FastRestoreRuleProperty+mkFastRestoreRuleProperty+ = FastRestoreRuleProperty+ {haddock_workaround_ = (), availabilityZones = Prelude.Nothing,+ count = Prelude.Nothing, interval = Prelude.Nothing,+ intervalUnit = Prelude.Nothing}+instance ToResourceProperties FastRestoreRuleProperty where+ toResourceProperties FastRestoreRuleProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.FastRestoreRule",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "AvailabilityZones" Prelude.<$> availabilityZones,+ (JSON..=) "Count" Prelude.<$> count,+ (JSON..=) "Interval" Prelude.<$> interval,+ (JSON..=) "IntervalUnit" Prelude.<$> intervalUnit])}+instance JSON.ToJSON FastRestoreRuleProperty where+ toJSON FastRestoreRuleProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "AvailabilityZones" Prelude.<$> availabilityZones,+ (JSON..=) "Count" Prelude.<$> count,+ (JSON..=) "Interval" Prelude.<$> interval,+ (JSON..=) "IntervalUnit" Prelude.<$> intervalUnit]))+instance Property "AvailabilityZones" FastRestoreRuleProperty where+ type PropertyType "AvailabilityZones" FastRestoreRuleProperty = ValueList Prelude.Text+ set newValue FastRestoreRuleProperty {..}+ = FastRestoreRuleProperty+ {availabilityZones = Prelude.pure newValue, ..}+instance Property "Count" FastRestoreRuleProperty where+ type PropertyType "Count" FastRestoreRuleProperty = Value Prelude.Integer+ set newValue FastRestoreRuleProperty {..}+ = FastRestoreRuleProperty {count = Prelude.pure newValue, ..}+instance Property "Interval" FastRestoreRuleProperty where+ type PropertyType "Interval" FastRestoreRuleProperty = Value Prelude.Integer+ set newValue FastRestoreRuleProperty {..}+ = FastRestoreRuleProperty {interval = Prelude.pure newValue, ..}+instance Property "IntervalUnit" FastRestoreRuleProperty where+ type PropertyType "IntervalUnit" FastRestoreRuleProperty = Value Prelude.Text+ set newValue FastRestoreRuleProperty {..}+ = FastRestoreRuleProperty+ {intervalUnit = Prelude.pure newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/FastRestoreRuleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.FastRestoreRuleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data FastRestoreRuleProperty :: Prelude.Type+instance ToResourceProperties FastRestoreRuleProperty+instance Prelude.Eq FastRestoreRuleProperty+instance Prelude.Show FastRestoreRuleProperty+instance JSON.ToJSON FastRestoreRuleProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/ParametersProperty.hs view
@@ -0,0 +1,59 @@+module Stratosphere.DLM.LifecyclePolicy.ParametersProperty (+ ParametersProperty(..), mkParametersProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data ParametersProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-parameters.html>+ ParametersProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-parameters.html#cfn-dlm-lifecyclepolicy-parameters-excludebootvolume>+ excludeBootVolume :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-parameters.html#cfn-dlm-lifecyclepolicy-parameters-excludedatavolumetags>+ excludeDataVolumeTags :: (Prelude.Maybe [Tag]),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-parameters.html#cfn-dlm-lifecyclepolicy-parameters-noreboot>+ noReboot :: (Prelude.Maybe (Value Prelude.Bool))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkParametersProperty :: ParametersProperty+mkParametersProperty+ = ParametersProperty+ {haddock_workaround_ = (), excludeBootVolume = Prelude.Nothing,+ excludeDataVolumeTags = Prelude.Nothing,+ noReboot = Prelude.Nothing}+instance ToResourceProperties ParametersProperty where+ toResourceProperties ParametersProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.Parameters",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "ExcludeBootVolume" Prelude.<$> excludeBootVolume,+ (JSON..=) "ExcludeDataVolumeTags"+ Prelude.<$> excludeDataVolumeTags,+ (JSON..=) "NoReboot" Prelude.<$> noReboot])}+instance JSON.ToJSON ParametersProperty where+ toJSON ParametersProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "ExcludeBootVolume" Prelude.<$> excludeBootVolume,+ (JSON..=) "ExcludeDataVolumeTags"+ Prelude.<$> excludeDataVolumeTags,+ (JSON..=) "NoReboot" Prelude.<$> noReboot]))+instance Property "ExcludeBootVolume" ParametersProperty where+ type PropertyType "ExcludeBootVolume" ParametersProperty = Value Prelude.Bool+ set newValue ParametersProperty {..}+ = ParametersProperty+ {excludeBootVolume = Prelude.pure newValue, ..}+instance Property "ExcludeDataVolumeTags" ParametersProperty where+ type PropertyType "ExcludeDataVolumeTags" ParametersProperty = [Tag]+ set newValue ParametersProperty {..}+ = ParametersProperty+ {excludeDataVolumeTags = Prelude.pure newValue, ..}+instance Property "NoReboot" ParametersProperty where+ type PropertyType "NoReboot" ParametersProperty = Value Prelude.Bool+ set newValue ParametersProperty {..}+ = ParametersProperty {noReboot = Prelude.pure newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/ParametersProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.ParametersProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ParametersProperty :: Prelude.Type+instance ToResourceProperties ParametersProperty+instance Prelude.Eq ParametersProperty+instance Prelude.Show ParametersProperty+instance JSON.ToJSON ParametersProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/PolicyDetailsProperty.hs view
@@ -0,0 +1,180 @@+module Stratosphere.DLM.LifecyclePolicy.PolicyDetailsProperty (+ module Exports, PolicyDetailsProperty(..), mkPolicyDetailsProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.ActionProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyTargetsProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.EventSourceProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.ExclusionsProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.ParametersProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.ScheduleProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data PolicyDetailsProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html>+ PolicyDetailsProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-actions>+ actions :: (Prelude.Maybe [ActionProperty]),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-copytags>+ copyTags :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-createinterval>+ createInterval :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-crossregioncopytargets>+ crossRegionCopyTargets :: (Prelude.Maybe CrossRegionCopyTargetsProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-eventsource>+ eventSource :: (Prelude.Maybe EventSourceProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-exclusions>+ exclusions :: (Prelude.Maybe ExclusionsProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-extenddeletion>+ extendDeletion :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-parameters>+ parameters :: (Prelude.Maybe ParametersProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-policylanguage>+ policyLanguage :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-policytype>+ policyType :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-resourcelocations>+ resourceLocations :: (Prelude.Maybe (ValueList Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-resourcetype>+ resourceType :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-resourcetypes>+ resourceTypes :: (Prelude.Maybe (ValueList Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-retaininterval>+ retainInterval :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-schedules>+ schedules :: (Prelude.Maybe [ScheduleProperty]),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-policydetails.html#cfn-dlm-lifecyclepolicy-policydetails-targettags>+ targetTags :: (Prelude.Maybe [Tag])}+ deriving stock (Prelude.Eq, Prelude.Show)+mkPolicyDetailsProperty :: PolicyDetailsProperty+mkPolicyDetailsProperty+ = PolicyDetailsProperty+ {haddock_workaround_ = (), actions = Prelude.Nothing,+ copyTags = Prelude.Nothing, createInterval = Prelude.Nothing,+ crossRegionCopyTargets = Prelude.Nothing,+ eventSource = Prelude.Nothing, exclusions = Prelude.Nothing,+ extendDeletion = Prelude.Nothing, parameters = Prelude.Nothing,+ policyLanguage = Prelude.Nothing, policyType = Prelude.Nothing,+ resourceLocations = Prelude.Nothing,+ resourceType = Prelude.Nothing, resourceTypes = Prelude.Nothing,+ retainInterval = Prelude.Nothing, schedules = Prelude.Nothing,+ targetTags = Prelude.Nothing}+instance ToResourceProperties PolicyDetailsProperty where+ toResourceProperties PolicyDetailsProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.PolicyDetails",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Actions" Prelude.<$> actions,+ (JSON..=) "CopyTags" Prelude.<$> copyTags,+ (JSON..=) "CreateInterval" Prelude.<$> createInterval,+ (JSON..=) "CrossRegionCopyTargets"+ Prelude.<$> crossRegionCopyTargets,+ (JSON..=) "EventSource" Prelude.<$> eventSource,+ (JSON..=) "Exclusions" Prelude.<$> exclusions,+ (JSON..=) "ExtendDeletion" Prelude.<$> extendDeletion,+ (JSON..=) "Parameters" Prelude.<$> parameters,+ (JSON..=) "PolicyLanguage" Prelude.<$> policyLanguage,+ (JSON..=) "PolicyType" Prelude.<$> policyType,+ (JSON..=) "ResourceLocations" Prelude.<$> resourceLocations,+ (JSON..=) "ResourceType" Prelude.<$> resourceType,+ (JSON..=) "ResourceTypes" Prelude.<$> resourceTypes,+ (JSON..=) "RetainInterval" Prelude.<$> retainInterval,+ (JSON..=) "Schedules" Prelude.<$> schedules,+ (JSON..=) "TargetTags" Prelude.<$> targetTags])}+instance JSON.ToJSON PolicyDetailsProperty where+ toJSON PolicyDetailsProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Actions" Prelude.<$> actions,+ (JSON..=) "CopyTags" Prelude.<$> copyTags,+ (JSON..=) "CreateInterval" Prelude.<$> createInterval,+ (JSON..=) "CrossRegionCopyTargets"+ Prelude.<$> crossRegionCopyTargets,+ (JSON..=) "EventSource" Prelude.<$> eventSource,+ (JSON..=) "Exclusions" Prelude.<$> exclusions,+ (JSON..=) "ExtendDeletion" Prelude.<$> extendDeletion,+ (JSON..=) "Parameters" Prelude.<$> parameters,+ (JSON..=) "PolicyLanguage" Prelude.<$> policyLanguage,+ (JSON..=) "PolicyType" Prelude.<$> policyType,+ (JSON..=) "ResourceLocations" Prelude.<$> resourceLocations,+ (JSON..=) "ResourceType" Prelude.<$> resourceType,+ (JSON..=) "ResourceTypes" Prelude.<$> resourceTypes,+ (JSON..=) "RetainInterval" Prelude.<$> retainInterval,+ (JSON..=) "Schedules" Prelude.<$> schedules,+ (JSON..=) "TargetTags" Prelude.<$> targetTags]))+instance Property "Actions" PolicyDetailsProperty where+ type PropertyType "Actions" PolicyDetailsProperty = [ActionProperty]+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty {actions = Prelude.pure newValue, ..}+instance Property "CopyTags" PolicyDetailsProperty where+ type PropertyType "CopyTags" PolicyDetailsProperty = Value Prelude.Bool+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty {copyTags = Prelude.pure newValue, ..}+instance Property "CreateInterval" PolicyDetailsProperty where+ type PropertyType "CreateInterval" PolicyDetailsProperty = Value Prelude.Integer+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty+ {createInterval = Prelude.pure newValue, ..}+instance Property "CrossRegionCopyTargets" PolicyDetailsProperty where+ type PropertyType "CrossRegionCopyTargets" PolicyDetailsProperty = CrossRegionCopyTargetsProperty+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty+ {crossRegionCopyTargets = Prelude.pure newValue, ..}+instance Property "EventSource" PolicyDetailsProperty where+ type PropertyType "EventSource" PolicyDetailsProperty = EventSourceProperty+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty {eventSource = Prelude.pure newValue, ..}+instance Property "Exclusions" PolicyDetailsProperty where+ type PropertyType "Exclusions" PolicyDetailsProperty = ExclusionsProperty+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty {exclusions = Prelude.pure newValue, ..}+instance Property "ExtendDeletion" PolicyDetailsProperty where+ type PropertyType "ExtendDeletion" PolicyDetailsProperty = Value Prelude.Bool+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty+ {extendDeletion = Prelude.pure newValue, ..}+instance Property "Parameters" PolicyDetailsProperty where+ type PropertyType "Parameters" PolicyDetailsProperty = ParametersProperty+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty {parameters = Prelude.pure newValue, ..}+instance Property "PolicyLanguage" PolicyDetailsProperty where+ type PropertyType "PolicyLanguage" PolicyDetailsProperty = Value Prelude.Text+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty+ {policyLanguage = Prelude.pure newValue, ..}+instance Property "PolicyType" PolicyDetailsProperty where+ type PropertyType "PolicyType" PolicyDetailsProperty = Value Prelude.Text+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty {policyType = Prelude.pure newValue, ..}+instance Property "ResourceLocations" PolicyDetailsProperty where+ type PropertyType "ResourceLocations" PolicyDetailsProperty = ValueList Prelude.Text+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty+ {resourceLocations = Prelude.pure newValue, ..}+instance Property "ResourceType" PolicyDetailsProperty where+ type PropertyType "ResourceType" PolicyDetailsProperty = Value Prelude.Text+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty {resourceType = Prelude.pure newValue, ..}+instance Property "ResourceTypes" PolicyDetailsProperty where+ type PropertyType "ResourceTypes" PolicyDetailsProperty = ValueList Prelude.Text+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty {resourceTypes = Prelude.pure newValue, ..}+instance Property "RetainInterval" PolicyDetailsProperty where+ type PropertyType "RetainInterval" PolicyDetailsProperty = Value Prelude.Integer+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty+ {retainInterval = Prelude.pure newValue, ..}+instance Property "Schedules" PolicyDetailsProperty where+ type PropertyType "Schedules" PolicyDetailsProperty = [ScheduleProperty]+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty {schedules = Prelude.pure newValue, ..}+instance Property "TargetTags" PolicyDetailsProperty where+ type PropertyType "TargetTags" PolicyDetailsProperty = [Tag]+ set newValue PolicyDetailsProperty {..}+ = PolicyDetailsProperty {targetTags = Prelude.pure newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/PolicyDetailsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.PolicyDetailsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data PolicyDetailsProperty :: Prelude.Type+instance ToResourceProperties PolicyDetailsProperty+instance Prelude.Eq PolicyDetailsProperty+instance Prelude.Show PolicyDetailsProperty+instance JSON.ToJSON PolicyDetailsProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/RetainRuleProperty.hs view
@@ -0,0 +1,53 @@+module Stratosphere.DLM.LifecyclePolicy.RetainRuleProperty (+ RetainRuleProperty(..), mkRetainRuleProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data RetainRuleProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retainrule.html>+ RetainRuleProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retainrule.html#cfn-dlm-lifecyclepolicy-retainrule-count>+ count :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retainrule.html#cfn-dlm-lifecyclepolicy-retainrule-interval>+ interval :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retainrule.html#cfn-dlm-lifecyclepolicy-retainrule-intervalunit>+ intervalUnit :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkRetainRuleProperty :: RetainRuleProperty+mkRetainRuleProperty+ = RetainRuleProperty+ {haddock_workaround_ = (), count = Prelude.Nothing,+ interval = Prelude.Nothing, intervalUnit = Prelude.Nothing}+instance ToResourceProperties RetainRuleProperty where+ toResourceProperties RetainRuleProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.RetainRule",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Count" Prelude.<$> count,+ (JSON..=) "Interval" Prelude.<$> interval,+ (JSON..=) "IntervalUnit" Prelude.<$> intervalUnit])}+instance JSON.ToJSON RetainRuleProperty where+ toJSON RetainRuleProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Count" Prelude.<$> count,+ (JSON..=) "Interval" Prelude.<$> interval,+ (JSON..=) "IntervalUnit" Prelude.<$> intervalUnit]))+instance Property "Count" RetainRuleProperty where+ type PropertyType "Count" RetainRuleProperty = Value Prelude.Integer+ set newValue RetainRuleProperty {..}+ = RetainRuleProperty {count = Prelude.pure newValue, ..}+instance Property "Interval" RetainRuleProperty where+ type PropertyType "Interval" RetainRuleProperty = Value Prelude.Integer+ set newValue RetainRuleProperty {..}+ = RetainRuleProperty {interval = Prelude.pure newValue, ..}+instance Property "IntervalUnit" RetainRuleProperty where+ type PropertyType "IntervalUnit" RetainRuleProperty = Value Prelude.Text+ set newValue RetainRuleProperty {..}+ = RetainRuleProperty {intervalUnit = Prelude.pure newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/RetainRuleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.RetainRuleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data RetainRuleProperty :: Prelude.Type+instance ToResourceProperties RetainRuleProperty+instance Prelude.Eq RetainRuleProperty+instance Prelude.Show RetainRuleProperty+instance JSON.ToJSON RetainRuleProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/RetentionArchiveTierProperty.hs view
@@ -0,0 +1,55 @@+module Stratosphere.DLM.LifecyclePolicy.RetentionArchiveTierProperty (+ RetentionArchiveTierProperty(..), mkRetentionArchiveTierProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data RetentionArchiveTierProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retentionarchivetier.html>+ RetentionArchiveTierProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retentionarchivetier.html#cfn-dlm-lifecyclepolicy-retentionarchivetier-count>+ count :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retentionarchivetier.html#cfn-dlm-lifecyclepolicy-retentionarchivetier-interval>+ interval :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-retentionarchivetier.html#cfn-dlm-lifecyclepolicy-retentionarchivetier-intervalunit>+ intervalUnit :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkRetentionArchiveTierProperty :: RetentionArchiveTierProperty+mkRetentionArchiveTierProperty+ = RetentionArchiveTierProperty+ {haddock_workaround_ = (), count = Prelude.Nothing,+ interval = Prelude.Nothing, intervalUnit = Prelude.Nothing}+instance ToResourceProperties RetentionArchiveTierProperty where+ toResourceProperties RetentionArchiveTierProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.RetentionArchiveTier",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Count" Prelude.<$> count,+ (JSON..=) "Interval" Prelude.<$> interval,+ (JSON..=) "IntervalUnit" Prelude.<$> intervalUnit])}+instance JSON.ToJSON RetentionArchiveTierProperty where+ toJSON RetentionArchiveTierProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Count" Prelude.<$> count,+ (JSON..=) "Interval" Prelude.<$> interval,+ (JSON..=) "IntervalUnit" Prelude.<$> intervalUnit]))+instance Property "Count" RetentionArchiveTierProperty where+ type PropertyType "Count" RetentionArchiveTierProperty = Value Prelude.Integer+ set newValue RetentionArchiveTierProperty {..}+ = RetentionArchiveTierProperty {count = Prelude.pure newValue, ..}+instance Property "Interval" RetentionArchiveTierProperty where+ type PropertyType "Interval" RetentionArchiveTierProperty = Value Prelude.Integer+ set newValue RetentionArchiveTierProperty {..}+ = RetentionArchiveTierProperty+ {interval = Prelude.pure newValue, ..}+instance Property "IntervalUnit" RetentionArchiveTierProperty where+ type PropertyType "IntervalUnit" RetentionArchiveTierProperty = Value Prelude.Text+ set newValue RetentionArchiveTierProperty {..}+ = RetentionArchiveTierProperty+ {intervalUnit = Prelude.pure newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/RetentionArchiveTierProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.RetentionArchiveTierProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data RetentionArchiveTierProperty :: Prelude.Type+instance ToResourceProperties RetentionArchiveTierProperty+instance Prelude.Eq RetentionArchiveTierProperty+instance Prelude.Show RetentionArchiveTierProperty+instance JSON.ToJSON RetentionArchiveTierProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/ScheduleProperty.hs view
@@ -0,0 +1,131 @@+module Stratosphere.DLM.LifecyclePolicy.ScheduleProperty (+ module Exports, ScheduleProperty(..), mkScheduleProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.ArchiveRuleProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.CreateRuleProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyRuleProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.DeprecateRuleProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.FastRestoreRuleProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.RetainRuleProperty as Exports+import {-# SOURCE #-} Stratosphere.DLM.LifecyclePolicy.ShareRuleProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data ScheduleProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html>+ ScheduleProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-archiverule>+ archiveRule :: (Prelude.Maybe ArchiveRuleProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-copytags>+ copyTags :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-createrule>+ createRule :: (Prelude.Maybe CreateRuleProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-crossregioncopyrules>+ crossRegionCopyRules :: (Prelude.Maybe [CrossRegionCopyRuleProperty]),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-deprecaterule>+ deprecateRule :: (Prelude.Maybe DeprecateRuleProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-fastrestorerule>+ fastRestoreRule :: (Prelude.Maybe FastRestoreRuleProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-name>+ name :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-retainrule>+ retainRule :: (Prelude.Maybe RetainRuleProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-sharerules>+ shareRules :: (Prelude.Maybe [ShareRuleProperty]),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-tagstoadd>+ tagsToAdd :: (Prelude.Maybe [Tag]),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-schedule.html#cfn-dlm-lifecyclepolicy-schedule-variabletags>+ variableTags :: (Prelude.Maybe [Tag])}+ deriving stock (Prelude.Eq, Prelude.Show)+mkScheduleProperty :: ScheduleProperty+mkScheduleProperty+ = ScheduleProperty+ {haddock_workaround_ = (), archiveRule = Prelude.Nothing,+ copyTags = Prelude.Nothing, createRule = Prelude.Nothing,+ crossRegionCopyRules = Prelude.Nothing,+ deprecateRule = Prelude.Nothing, fastRestoreRule = Prelude.Nothing,+ name = Prelude.Nothing, retainRule = Prelude.Nothing,+ shareRules = Prelude.Nothing, tagsToAdd = Prelude.Nothing,+ variableTags = Prelude.Nothing}+instance ToResourceProperties ScheduleProperty where+ toResourceProperties ScheduleProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.Schedule",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "ArchiveRule" Prelude.<$> archiveRule,+ (JSON..=) "CopyTags" Prelude.<$> copyTags,+ (JSON..=) "CreateRule" Prelude.<$> createRule,+ (JSON..=) "CrossRegionCopyRules" Prelude.<$> crossRegionCopyRules,+ (JSON..=) "DeprecateRule" Prelude.<$> deprecateRule,+ (JSON..=) "FastRestoreRule" Prelude.<$> fastRestoreRule,+ (JSON..=) "Name" Prelude.<$> name,+ (JSON..=) "RetainRule" Prelude.<$> retainRule,+ (JSON..=) "ShareRules" Prelude.<$> shareRules,+ (JSON..=) "TagsToAdd" Prelude.<$> tagsToAdd,+ (JSON..=) "VariableTags" Prelude.<$> variableTags])}+instance JSON.ToJSON ScheduleProperty where+ toJSON ScheduleProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "ArchiveRule" Prelude.<$> archiveRule,+ (JSON..=) "CopyTags" Prelude.<$> copyTags,+ (JSON..=) "CreateRule" Prelude.<$> createRule,+ (JSON..=) "CrossRegionCopyRules" Prelude.<$> crossRegionCopyRules,+ (JSON..=) "DeprecateRule" Prelude.<$> deprecateRule,+ (JSON..=) "FastRestoreRule" Prelude.<$> fastRestoreRule,+ (JSON..=) "Name" Prelude.<$> name,+ (JSON..=) "RetainRule" Prelude.<$> retainRule,+ (JSON..=) "ShareRules" Prelude.<$> shareRules,+ (JSON..=) "TagsToAdd" Prelude.<$> tagsToAdd,+ (JSON..=) "VariableTags" Prelude.<$> variableTags]))+instance Property "ArchiveRule" ScheduleProperty where+ type PropertyType "ArchiveRule" ScheduleProperty = ArchiveRuleProperty+ set newValue ScheduleProperty {..}+ = ScheduleProperty {archiveRule = Prelude.pure newValue, ..}+instance Property "CopyTags" ScheduleProperty where+ type PropertyType "CopyTags" ScheduleProperty = Value Prelude.Bool+ set newValue ScheduleProperty {..}+ = ScheduleProperty {copyTags = Prelude.pure newValue, ..}+instance Property "CreateRule" ScheduleProperty where+ type PropertyType "CreateRule" ScheduleProperty = CreateRuleProperty+ set newValue ScheduleProperty {..}+ = ScheduleProperty {createRule = Prelude.pure newValue, ..}+instance Property "CrossRegionCopyRules" ScheduleProperty where+ type PropertyType "CrossRegionCopyRules" ScheduleProperty = [CrossRegionCopyRuleProperty]+ set newValue ScheduleProperty {..}+ = ScheduleProperty+ {crossRegionCopyRules = Prelude.pure newValue, ..}+instance Property "DeprecateRule" ScheduleProperty where+ type PropertyType "DeprecateRule" ScheduleProperty = DeprecateRuleProperty+ set newValue ScheduleProperty {..}+ = ScheduleProperty {deprecateRule = Prelude.pure newValue, ..}+instance Property "FastRestoreRule" ScheduleProperty where+ type PropertyType "FastRestoreRule" ScheduleProperty = FastRestoreRuleProperty+ set newValue ScheduleProperty {..}+ = ScheduleProperty {fastRestoreRule = Prelude.pure newValue, ..}+instance Property "Name" ScheduleProperty where+ type PropertyType "Name" ScheduleProperty = Value Prelude.Text+ set newValue ScheduleProperty {..}+ = ScheduleProperty {name = Prelude.pure newValue, ..}+instance Property "RetainRule" ScheduleProperty where+ type PropertyType "RetainRule" ScheduleProperty = RetainRuleProperty+ set newValue ScheduleProperty {..}+ = ScheduleProperty {retainRule = Prelude.pure newValue, ..}+instance Property "ShareRules" ScheduleProperty where+ type PropertyType "ShareRules" ScheduleProperty = [ShareRuleProperty]+ set newValue ScheduleProperty {..}+ = ScheduleProperty {shareRules = Prelude.pure newValue, ..}+instance Property "TagsToAdd" ScheduleProperty where+ type PropertyType "TagsToAdd" ScheduleProperty = [Tag]+ set newValue ScheduleProperty {..}+ = ScheduleProperty {tagsToAdd = Prelude.pure newValue, ..}+instance Property "VariableTags" ScheduleProperty where+ type PropertyType "VariableTags" ScheduleProperty = [Tag]+ set newValue ScheduleProperty {..}+ = ScheduleProperty {variableTags = Prelude.pure newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/ScheduleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.ScheduleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ScheduleProperty :: Prelude.Type+instance ToResourceProperties ScheduleProperty+instance Prelude.Eq ScheduleProperty+instance Prelude.Show ScheduleProperty+instance JSON.ToJSON ScheduleProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/ScriptProperty.hs view
@@ -0,0 +1,87 @@+module Stratosphere.DLM.LifecyclePolicy.ScriptProperty (+ ScriptProperty(..), mkScriptProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ScriptProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-script.html>+ ScriptProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-script.html#cfn-dlm-lifecyclepolicy-script-executeoperationonscriptfailure>+ executeOperationOnScriptFailure :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-script.html#cfn-dlm-lifecyclepolicy-script-executionhandler>+ executionHandler :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-script.html#cfn-dlm-lifecyclepolicy-script-executionhandlerservice>+ executionHandlerService :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-script.html#cfn-dlm-lifecyclepolicy-script-executiontimeout>+ executionTimeout :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-script.html#cfn-dlm-lifecyclepolicy-script-maximumretrycount>+ maximumRetryCount :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-script.html#cfn-dlm-lifecyclepolicy-script-stages>+ stages :: (Prelude.Maybe (ValueList Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkScriptProperty :: ScriptProperty+mkScriptProperty+ = ScriptProperty+ {haddock_workaround_ = (),+ executeOperationOnScriptFailure = Prelude.Nothing,+ executionHandler = Prelude.Nothing,+ executionHandlerService = Prelude.Nothing,+ executionTimeout = Prelude.Nothing,+ maximumRetryCount = Prelude.Nothing, stages = Prelude.Nothing}+instance ToResourceProperties ScriptProperty where+ toResourceProperties ScriptProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.Script",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "ExecuteOperationOnScriptFailure"+ Prelude.<$> executeOperationOnScriptFailure,+ (JSON..=) "ExecutionHandler" Prelude.<$> executionHandler,+ (JSON..=) "ExecutionHandlerService"+ Prelude.<$> executionHandlerService,+ (JSON..=) "ExecutionTimeout" Prelude.<$> executionTimeout,+ (JSON..=) "MaximumRetryCount" Prelude.<$> maximumRetryCount,+ (JSON..=) "Stages" Prelude.<$> stages])}+instance JSON.ToJSON ScriptProperty where+ toJSON ScriptProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "ExecuteOperationOnScriptFailure"+ Prelude.<$> executeOperationOnScriptFailure,+ (JSON..=) "ExecutionHandler" Prelude.<$> executionHandler,+ (JSON..=) "ExecutionHandlerService"+ Prelude.<$> executionHandlerService,+ (JSON..=) "ExecutionTimeout" Prelude.<$> executionTimeout,+ (JSON..=) "MaximumRetryCount" Prelude.<$> maximumRetryCount,+ (JSON..=) "Stages" Prelude.<$> stages]))+instance Property "ExecuteOperationOnScriptFailure" ScriptProperty where+ type PropertyType "ExecuteOperationOnScriptFailure" ScriptProperty = Value Prelude.Bool+ set newValue ScriptProperty {..}+ = ScriptProperty+ {executeOperationOnScriptFailure = Prelude.pure newValue, ..}+instance Property "ExecutionHandler" ScriptProperty where+ type PropertyType "ExecutionHandler" ScriptProperty = Value Prelude.Text+ set newValue ScriptProperty {..}+ = ScriptProperty {executionHandler = Prelude.pure newValue, ..}+instance Property "ExecutionHandlerService" ScriptProperty where+ type PropertyType "ExecutionHandlerService" ScriptProperty = Value Prelude.Text+ set newValue ScriptProperty {..}+ = ScriptProperty+ {executionHandlerService = Prelude.pure newValue, ..}+instance Property "ExecutionTimeout" ScriptProperty where+ type PropertyType "ExecutionTimeout" ScriptProperty = Value Prelude.Integer+ set newValue ScriptProperty {..}+ = ScriptProperty {executionTimeout = Prelude.pure newValue, ..}+instance Property "MaximumRetryCount" ScriptProperty where+ type PropertyType "MaximumRetryCount" ScriptProperty = Value Prelude.Integer+ set newValue ScriptProperty {..}+ = ScriptProperty {maximumRetryCount = Prelude.pure newValue, ..}+instance Property "Stages" ScriptProperty where+ type PropertyType "Stages" ScriptProperty = ValueList Prelude.Text+ set newValue ScriptProperty {..}+ = ScriptProperty {stages = Prelude.pure newValue, ..}
+ gen/Stratosphere/DLM/LifecyclePolicy/ScriptProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.ScriptProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ScriptProperty :: Prelude.Type+instance ToResourceProperties ScriptProperty+instance Prelude.Eq ScriptProperty+instance Prelude.Show ScriptProperty+instance JSON.ToJSON ScriptProperty
@@ -0,0 +1,55 @@+module Stratosphere.DLM.LifecyclePolicy.ShareRuleProperty (+ ShareRuleProperty(..), mkShareRuleProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ShareRuleProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-sharerule.html>+ ShareRuleProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-sharerule.html#cfn-dlm-lifecyclepolicy-sharerule-targetaccounts>+ targetAccounts :: (Prelude.Maybe (ValueList Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-sharerule.html#cfn-dlm-lifecyclepolicy-sharerule-unshareinterval>+ unshareInterval :: (Prelude.Maybe (Value Prelude.Integer)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dlm-lifecyclepolicy-sharerule.html#cfn-dlm-lifecyclepolicy-sharerule-unshareintervalunit>+ unshareIntervalUnit :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkShareRuleProperty :: ShareRuleProperty+mkShareRuleProperty+ = ShareRuleProperty+ {haddock_workaround_ = (), targetAccounts = Prelude.Nothing,+ unshareInterval = Prelude.Nothing,+ unshareIntervalUnit = Prelude.Nothing}+instance ToResourceProperties ShareRuleProperty where+ toResourceProperties ShareRuleProperty {..}+ = ResourceProperties+ {awsType = "AWS::DLM::LifecyclePolicy.ShareRule",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "TargetAccounts" Prelude.<$> targetAccounts,+ (JSON..=) "UnshareInterval" Prelude.<$> unshareInterval,+ (JSON..=) "UnshareIntervalUnit" Prelude.<$> unshareIntervalUnit])}+instance JSON.ToJSON ShareRuleProperty where+ toJSON ShareRuleProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "TargetAccounts" Prelude.<$> targetAccounts,+ (JSON..=) "UnshareInterval" Prelude.<$> unshareInterval,+ (JSON..=) "UnshareIntervalUnit" Prelude.<$> unshareIntervalUnit]))+instance Property "TargetAccounts" ShareRuleProperty where+ type PropertyType "TargetAccounts" ShareRuleProperty = ValueList Prelude.Text+ set newValue ShareRuleProperty {..}+ = ShareRuleProperty {targetAccounts = Prelude.pure newValue, ..}+instance Property "UnshareInterval" ShareRuleProperty where+ type PropertyType "UnshareInterval" ShareRuleProperty = Value Prelude.Integer+ set newValue ShareRuleProperty {..}+ = ShareRuleProperty {unshareInterval = Prelude.pure newValue, ..}+instance Property "UnshareIntervalUnit" ShareRuleProperty where+ type PropertyType "UnshareIntervalUnit" ShareRuleProperty = Value Prelude.Text+ set newValue ShareRuleProperty {..}+ = ShareRuleProperty+ {unshareIntervalUnit = Prelude.pure newValue, ..}
@@ -0,0 +1,9 @@+module Stratosphere.DLM.LifecyclePolicy.ShareRuleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ShareRuleProperty :: Prelude.Type+instance ToResourceProperties ShareRuleProperty+instance Prelude.Eq ShareRuleProperty+instance Prelude.Show ShareRuleProperty+instance JSON.ToJSON ShareRuleProperty
+ gen/Stratosphere/DLM/LifecyclePolicy/VolumeTypeValuesProperty.hs view
@@ -0,0 +1,6 @@+module Stratosphere.DLM.LifecyclePolicy.VolumeTypeValuesProperty (+ VolumeTypeValuesProperty+ ) where+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Value+type VolumeTypeValuesProperty = Value Prelude.Text
+ gen/Stratosphere/DLM/LifecyclePolicy/VolumeTypeValuesProperty.hs-boot view
@@ -0,0 +1,6 @@+module Stratosphere.DLM.LifecyclePolicy.VolumeTypeValuesProperty (+ VolumeTypeValuesProperty+ ) where+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Value+type VolumeTypeValuesProperty = Value Prelude.Text
+ stratosphere-dlm.cabal view
@@ -0,0 +1,99 @@+cabal-version: 1.12++-- This file has been generated from package.yaml by hpack version 0.38.2.+--+-- see: https://github.com/sol/hpack++name: stratosphere-dlm+version: 1.0.0+synopsis: Stratosphere integration for AWS DLM.+description: Integration into stratosphere to generate resources and properties for AWS DLM+category: AWS, Cloud, DLM+stability: experimental+homepage: https://github.com/mbj/stratosphere#readme+bug-reports: https://github.com/mbj/stratosphere/issues+maintainer: Markus Schirp+license: MIT+license-file: LICENSE.md+build-type: Simple++source-repository head+ type: git+ location: https://github.com/mbj/stratosphere++flag development+ description: Run GHC with development flags+ manual: True+ default: False++library+ exposed-modules:+ Stratosphere.DLM.LifecyclePolicy+ Stratosphere.DLM.LifecyclePolicy.ActionProperty+ Stratosphere.DLM.LifecyclePolicy.ArchiveRetainRuleProperty+ Stratosphere.DLM.LifecyclePolicy.ArchiveRuleProperty+ Stratosphere.DLM.LifecyclePolicy.CreateRuleProperty+ Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyActionProperty+ Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyDeprecateRuleProperty+ Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyRetainRuleProperty+ Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyRuleProperty+ Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyTargetProperty+ Stratosphere.DLM.LifecyclePolicy.CrossRegionCopyTargetsProperty+ Stratosphere.DLM.LifecyclePolicy.DeprecateRuleProperty+ Stratosphere.DLM.LifecyclePolicy.EncryptionConfigurationProperty+ Stratosphere.DLM.LifecyclePolicy.EventParametersProperty+ Stratosphere.DLM.LifecyclePolicy.EventSourceProperty+ Stratosphere.DLM.LifecyclePolicy.ExcludeTagsProperty+ Stratosphere.DLM.LifecyclePolicy.ExcludeVolumeTypesListProperty+ Stratosphere.DLM.LifecyclePolicy.ExclusionsProperty+ Stratosphere.DLM.LifecyclePolicy.FastRestoreRuleProperty+ Stratosphere.DLM.LifecyclePolicy.ParametersProperty+ Stratosphere.DLM.LifecyclePolicy.PolicyDetailsProperty+ Stratosphere.DLM.LifecyclePolicy.RetainRuleProperty+ Stratosphere.DLM.LifecyclePolicy.RetentionArchiveTierProperty+ Stratosphere.DLM.LifecyclePolicy.ScheduleProperty+ Stratosphere.DLM.LifecyclePolicy.ScriptProperty+ Stratosphere.DLM.LifecyclePolicy.ShareRuleProperty+ Stratosphere.DLM.LifecyclePolicy.VolumeTypeValuesProperty+ other-modules:+ Paths_stratosphere_dlm+ hs-source-dirs:+ gen+ default-extensions:+ DataKinds+ DeriveGeneric+ DerivingStrategies+ DerivingVia+ DuplicateRecordFields+ FlexibleContexts+ FlexibleInstances+ GADTs+ GeneralizedNewtypeDeriving+ InstanceSigs+ LambdaCase+ MultiParamTypeClasses+ NoFieldSelectors+ NoImplicitPrelude+ NumericUnderscores+ OverloadedLists+ OverloadedRecordDot+ OverloadedStrings+ PolyKinds+ RecordWildCards+ ScopedTypeVariables+ StandaloneDeriving+ Strict+ TemplateHaskell+ TupleSections+ TypeApplications+ TypeFamilies+ ghc-options: -Wall -Wcompat -Widentities -Wimplicit-prelude -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-local-signatures -Wmissing-signatures -Wmonomorphism-restriction -Wredundant-constraints -fhide-source-paths -funbox-strict-fields -optP-Wno-nonportable-include-path -Wno-unused-imports+ build-depends:+ aeson ==2.*+ , base >=4.8 && <4.22+ , stratosphere ==1.0.0+ default-language: Haskell2010+ if flag(development)+ ghc-options: -Werror+ else+ ghc-options: -Wwarn