stratosphere-efs (empty) → 1.0.0
raw patch · 25 files changed
+1002/−0 lines, 25 filesdep +aesondep +basedep +stratosphere
Dependencies added: aeson, base, stratosphere
Files
- LICENSE.md +20/−0
- gen/Stratosphere/EFS/AccessPoint.hs +74/−0
- gen/Stratosphere/EFS/AccessPoint/AccessPointTagProperty.hs +45/−0
- gen/Stratosphere/EFS/AccessPoint/AccessPointTagProperty.hs-boot +9/−0
- gen/Stratosphere/EFS/AccessPoint/CreationInfoProperty.hs +49/−0
- gen/Stratosphere/EFS/AccessPoint/CreationInfoProperty.hs-boot +9/−0
- gen/Stratosphere/EFS/AccessPoint/PosixUserProperty.hs +54/−0
- gen/Stratosphere/EFS/AccessPoint/PosixUserProperty.hs-boot +9/−0
- gen/Stratosphere/EFS/AccessPoint/RootDirectoryProperty.hs +46/−0
- gen/Stratosphere/EFS/AccessPoint/RootDirectoryProperty.hs-boot +9/−0
- gen/Stratosphere/EFS/FileSystem.hs +154/−0
- gen/Stratosphere/EFS/FileSystem/BackupPolicyProperty.hs +31/−0
- gen/Stratosphere/EFS/FileSystem/BackupPolicyProperty.hs-boot +9/−0
- gen/Stratosphere/EFS/FileSystem/ElasticFileSystemTagProperty.hs +39/−0
- gen/Stratosphere/EFS/FileSystem/ElasticFileSystemTagProperty.hs-boot +9/−0
- gen/Stratosphere/EFS/FileSystem/FileSystemProtectionProperty.hs +40/−0
- gen/Stratosphere/EFS/FileSystem/FileSystemProtectionProperty.hs-boot +9/−0
- gen/Stratosphere/EFS/FileSystem/LifecyclePolicyProperty.hs +59/−0
- gen/Stratosphere/EFS/FileSystem/LifecyclePolicyProperty.hs-boot +9/−0
- gen/Stratosphere/EFS/FileSystem/ReplicationConfigurationProperty.hs +39/−0
- gen/Stratosphere/EFS/FileSystem/ReplicationConfigurationProperty.hs-boot +9/−0
- gen/Stratosphere/EFS/FileSystem/ReplicationDestinationProperty.hs +95/−0
- gen/Stratosphere/EFS/FileSystem/ReplicationDestinationProperty.hs-boot +9/−0
- gen/Stratosphere/EFS/MountTarget.hs +82/−0
- stratosphere-efs.cabal +85/−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/EFS/AccessPoint.hs view
@@ -0,0 +1,74 @@+module Stratosphere.EFS.AccessPoint (+ module Exports, AccessPoint(..), mkAccessPoint+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EFS.AccessPoint.AccessPointTagProperty as Exports+import {-# SOURCE #-} Stratosphere.EFS.AccessPoint.PosixUserProperty as Exports+import {-# SOURCE #-} Stratosphere.EFS.AccessPoint.RootDirectoryProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data AccessPoint+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html>+ AccessPoint {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html#cfn-efs-accesspoint-accesspointtags>+ accessPointTags :: (Prelude.Maybe [AccessPointTagProperty]),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html#cfn-efs-accesspoint-clienttoken>+ clientToken :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html#cfn-efs-accesspoint-filesystemid>+ fileSystemId :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html#cfn-efs-accesspoint-posixuser>+ posixUser :: (Prelude.Maybe PosixUserProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-accesspoint.html#cfn-efs-accesspoint-rootdirectory>+ rootDirectory :: (Prelude.Maybe RootDirectoryProperty)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkAccessPoint :: Value Prelude.Text -> AccessPoint+mkAccessPoint fileSystemId+ = AccessPoint+ {haddock_workaround_ = (), fileSystemId = fileSystemId,+ accessPointTags = Prelude.Nothing, clientToken = Prelude.Nothing,+ posixUser = Prelude.Nothing, rootDirectory = Prelude.Nothing}+instance ToResourceProperties AccessPoint where+ toResourceProperties AccessPoint {..}+ = ResourceProperties+ {awsType = "AWS::EFS::AccessPoint", supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["FileSystemId" JSON..= fileSystemId]+ (Prelude.catMaybes+ [(JSON..=) "AccessPointTags" Prelude.<$> accessPointTags,+ (JSON..=) "ClientToken" Prelude.<$> clientToken,+ (JSON..=) "PosixUser" Prelude.<$> posixUser,+ (JSON..=) "RootDirectory" Prelude.<$> rootDirectory]))}+instance JSON.ToJSON AccessPoint where+ toJSON AccessPoint {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["FileSystemId" JSON..= fileSystemId]+ (Prelude.catMaybes+ [(JSON..=) "AccessPointTags" Prelude.<$> accessPointTags,+ (JSON..=) "ClientToken" Prelude.<$> clientToken,+ (JSON..=) "PosixUser" Prelude.<$> posixUser,+ (JSON..=) "RootDirectory" Prelude.<$> rootDirectory])))+instance Property "AccessPointTags" AccessPoint where+ type PropertyType "AccessPointTags" AccessPoint = [AccessPointTagProperty]+ set newValue AccessPoint {..}+ = AccessPoint {accessPointTags = Prelude.pure newValue, ..}+instance Property "ClientToken" AccessPoint where+ type PropertyType "ClientToken" AccessPoint = Value Prelude.Text+ set newValue AccessPoint {..}+ = AccessPoint {clientToken = Prelude.pure newValue, ..}+instance Property "FileSystemId" AccessPoint where+ type PropertyType "FileSystemId" AccessPoint = Value Prelude.Text+ set newValue AccessPoint {..}+ = AccessPoint {fileSystemId = newValue, ..}+instance Property "PosixUser" AccessPoint where+ type PropertyType "PosixUser" AccessPoint = PosixUserProperty+ set newValue AccessPoint {..}+ = AccessPoint {posixUser = Prelude.pure newValue, ..}+instance Property "RootDirectory" AccessPoint where+ type PropertyType "RootDirectory" AccessPoint = RootDirectoryProperty+ set newValue AccessPoint {..}+ = AccessPoint {rootDirectory = Prelude.pure newValue, ..}
+ gen/Stratosphere/EFS/AccessPoint/AccessPointTagProperty.hs view
@@ -0,0 +1,45 @@+module Stratosphere.EFS.AccessPoint.AccessPointTagProperty (+ AccessPointTagProperty(..), mkAccessPointTagProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data AccessPointTagProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-accesspointtag.html>+ AccessPointTagProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-accesspointtag.html#cfn-efs-accesspoint-accesspointtag-key>+ key :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-accesspointtag.html#cfn-efs-accesspoint-accesspointtag-value>+ value :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkAccessPointTagProperty :: AccessPointTagProperty+mkAccessPointTagProperty+ = AccessPointTagProperty+ {haddock_workaround_ = (), key = Prelude.Nothing,+ value = Prelude.Nothing}+instance ToResourceProperties AccessPointTagProperty where+ toResourceProperties AccessPointTagProperty {..}+ = ResourceProperties+ {awsType = "AWS::EFS::AccessPoint.AccessPointTag",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Key" Prelude.<$> key,+ (JSON..=) "Value" Prelude.<$> value])}+instance JSON.ToJSON AccessPointTagProperty where+ toJSON AccessPointTagProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Key" Prelude.<$> key,+ (JSON..=) "Value" Prelude.<$> value]))+instance Property "Key" AccessPointTagProperty where+ type PropertyType "Key" AccessPointTagProperty = Value Prelude.Text+ set newValue AccessPointTagProperty {..}+ = AccessPointTagProperty {key = Prelude.pure newValue, ..}+instance Property "Value" AccessPointTagProperty where+ type PropertyType "Value" AccessPointTagProperty = Value Prelude.Text+ set newValue AccessPointTagProperty {..}+ = AccessPointTagProperty {value = Prelude.pure newValue, ..}
+ gen/Stratosphere/EFS/AccessPoint/AccessPointTagProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EFS.AccessPoint.AccessPointTagProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data AccessPointTagProperty :: Prelude.Type+instance ToResourceProperties AccessPointTagProperty+instance Prelude.Eq AccessPointTagProperty+instance Prelude.Show AccessPointTagProperty+instance JSON.ToJSON AccessPointTagProperty
+ gen/Stratosphere/EFS/AccessPoint/CreationInfoProperty.hs view
@@ -0,0 +1,49 @@+module Stratosphere.EFS.AccessPoint.CreationInfoProperty (+ CreationInfoProperty(..), mkCreationInfoProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CreationInfoProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-creationinfo.html>+ CreationInfoProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-creationinfo.html#cfn-efs-accesspoint-creationinfo-ownergid>+ ownerGid :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-creationinfo.html#cfn-efs-accesspoint-creationinfo-owneruid>+ ownerUid :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-creationinfo.html#cfn-efs-accesspoint-creationinfo-permissions>+ permissions :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkCreationInfoProperty ::+ Value Prelude.Text+ -> Value Prelude.Text -> Value Prelude.Text -> CreationInfoProperty+mkCreationInfoProperty ownerGid ownerUid permissions+ = CreationInfoProperty+ {haddock_workaround_ = (), ownerGid = ownerGid,+ ownerUid = ownerUid, permissions = permissions}+instance ToResourceProperties CreationInfoProperty where+ toResourceProperties CreationInfoProperty {..}+ = ResourceProperties+ {awsType = "AWS::EFS::AccessPoint.CreationInfo",+ supportsTags = Prelude.False,+ properties = ["OwnerGid" JSON..= ownerGid,+ "OwnerUid" JSON..= ownerUid, "Permissions" JSON..= permissions]}+instance JSON.ToJSON CreationInfoProperty where+ toJSON CreationInfoProperty {..}+ = JSON.object+ ["OwnerGid" JSON..= ownerGid, "OwnerUid" JSON..= ownerUid,+ "Permissions" JSON..= permissions]+instance Property "OwnerGid" CreationInfoProperty where+ type PropertyType "OwnerGid" CreationInfoProperty = Value Prelude.Text+ set newValue CreationInfoProperty {..}+ = CreationInfoProperty {ownerGid = newValue, ..}+instance Property "OwnerUid" CreationInfoProperty where+ type PropertyType "OwnerUid" CreationInfoProperty = Value Prelude.Text+ set newValue CreationInfoProperty {..}+ = CreationInfoProperty {ownerUid = newValue, ..}+instance Property "Permissions" CreationInfoProperty where+ type PropertyType "Permissions" CreationInfoProperty = Value Prelude.Text+ set newValue CreationInfoProperty {..}+ = CreationInfoProperty {permissions = newValue, ..}
+ gen/Stratosphere/EFS/AccessPoint/CreationInfoProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EFS.AccessPoint.CreationInfoProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CreationInfoProperty :: Prelude.Type+instance ToResourceProperties CreationInfoProperty+instance Prelude.Eq CreationInfoProperty+instance Prelude.Show CreationInfoProperty+instance JSON.ToJSON CreationInfoProperty
+ gen/Stratosphere/EFS/AccessPoint/PosixUserProperty.hs view
@@ -0,0 +1,54 @@+module Stratosphere.EFS.AccessPoint.PosixUserProperty (+ PosixUserProperty(..), mkPosixUserProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data PosixUserProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-posixuser.html>+ PosixUserProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-posixuser.html#cfn-efs-accesspoint-posixuser-gid>+ gid :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-posixuser.html#cfn-efs-accesspoint-posixuser-secondarygids>+ secondaryGids :: (Prelude.Maybe (ValueList Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-posixuser.html#cfn-efs-accesspoint-posixuser-uid>+ uid :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkPosixUserProperty ::+ Value Prelude.Text -> Value Prelude.Text -> PosixUserProperty+mkPosixUserProperty gid uid+ = PosixUserProperty+ {haddock_workaround_ = (), gid = gid, uid = uid,+ secondaryGids = Prelude.Nothing}+instance ToResourceProperties PosixUserProperty where+ toResourceProperties PosixUserProperty {..}+ = ResourceProperties+ {awsType = "AWS::EFS::AccessPoint.PosixUser",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["Gid" JSON..= gid, "Uid" JSON..= uid]+ (Prelude.catMaybes+ [(JSON..=) "SecondaryGids" Prelude.<$> secondaryGids]))}+instance JSON.ToJSON PosixUserProperty where+ toJSON PosixUserProperty {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["Gid" JSON..= gid, "Uid" JSON..= uid]+ (Prelude.catMaybes+ [(JSON..=) "SecondaryGids" Prelude.<$> secondaryGids])))+instance Property "Gid" PosixUserProperty where+ type PropertyType "Gid" PosixUserProperty = Value Prelude.Text+ set newValue PosixUserProperty {..}+ = PosixUserProperty {gid = newValue, ..}+instance Property "SecondaryGids" PosixUserProperty where+ type PropertyType "SecondaryGids" PosixUserProperty = ValueList Prelude.Text+ set newValue PosixUserProperty {..}+ = PosixUserProperty {secondaryGids = Prelude.pure newValue, ..}+instance Property "Uid" PosixUserProperty where+ type PropertyType "Uid" PosixUserProperty = Value Prelude.Text+ set newValue PosixUserProperty {..}+ = PosixUserProperty {uid = newValue, ..}
+ gen/Stratosphere/EFS/AccessPoint/PosixUserProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EFS.AccessPoint.PosixUserProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data PosixUserProperty :: Prelude.Type+instance ToResourceProperties PosixUserProperty+instance Prelude.Eq PosixUserProperty+instance Prelude.Show PosixUserProperty+instance JSON.ToJSON PosixUserProperty
+ gen/Stratosphere/EFS/AccessPoint/RootDirectoryProperty.hs view
@@ -0,0 +1,46 @@+module Stratosphere.EFS.AccessPoint.RootDirectoryProperty (+ module Exports, RootDirectoryProperty(..), mkRootDirectoryProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EFS.AccessPoint.CreationInfoProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data RootDirectoryProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-rootdirectory.html>+ RootDirectoryProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-rootdirectory.html#cfn-efs-accesspoint-rootdirectory-creationinfo>+ creationInfo :: (Prelude.Maybe CreationInfoProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-accesspoint-rootdirectory.html#cfn-efs-accesspoint-rootdirectory-path>+ path :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkRootDirectoryProperty :: RootDirectoryProperty+mkRootDirectoryProperty+ = RootDirectoryProperty+ {haddock_workaround_ = (), creationInfo = Prelude.Nothing,+ path = Prelude.Nothing}+instance ToResourceProperties RootDirectoryProperty where+ toResourceProperties RootDirectoryProperty {..}+ = ResourceProperties+ {awsType = "AWS::EFS::AccessPoint.RootDirectory",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "CreationInfo" Prelude.<$> creationInfo,+ (JSON..=) "Path" Prelude.<$> path])}+instance JSON.ToJSON RootDirectoryProperty where+ toJSON RootDirectoryProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "CreationInfo" Prelude.<$> creationInfo,+ (JSON..=) "Path" Prelude.<$> path]))+instance Property "CreationInfo" RootDirectoryProperty where+ type PropertyType "CreationInfo" RootDirectoryProperty = CreationInfoProperty+ set newValue RootDirectoryProperty {..}+ = RootDirectoryProperty {creationInfo = Prelude.pure newValue, ..}+instance Property "Path" RootDirectoryProperty where+ type PropertyType "Path" RootDirectoryProperty = Value Prelude.Text+ set newValue RootDirectoryProperty {..}+ = RootDirectoryProperty {path = Prelude.pure newValue, ..}
+ gen/Stratosphere/EFS/AccessPoint/RootDirectoryProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EFS.AccessPoint.RootDirectoryProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data RootDirectoryProperty :: Prelude.Type+instance ToResourceProperties RootDirectoryProperty+instance Prelude.Eq RootDirectoryProperty+instance Prelude.Show RootDirectoryProperty+instance JSON.ToJSON RootDirectoryProperty
+ gen/Stratosphere/EFS/FileSystem.hs view
@@ -0,0 +1,154 @@+module Stratosphere.EFS.FileSystem (+ module Exports, FileSystem(..), mkFileSystem+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EFS.FileSystem.BackupPolicyProperty as Exports+import {-# SOURCE #-} Stratosphere.EFS.FileSystem.ElasticFileSystemTagProperty as Exports+import {-# SOURCE #-} Stratosphere.EFS.FileSystem.FileSystemProtectionProperty as Exports+import {-# SOURCE #-} Stratosphere.EFS.FileSystem.LifecyclePolicyProperty as Exports+import {-# SOURCE #-} Stratosphere.EFS.FileSystem.ReplicationConfigurationProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data FileSystem+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html>+ FileSystem {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-availabilityzonename>+ availabilityZoneName :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-backuppolicy>+ backupPolicy :: (Prelude.Maybe BackupPolicyProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-bypasspolicylockoutsafetycheck>+ bypassPolicyLockoutSafetyCheck :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-encrypted>+ encrypted :: (Prelude.Maybe (Value Prelude.Bool)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-filesystempolicy>+ fileSystemPolicy :: (Prelude.Maybe JSON.Object),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-filesystemprotection>+ fileSystemProtection :: (Prelude.Maybe FileSystemProtectionProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-filesystemtags>+ fileSystemTags :: (Prelude.Maybe [ElasticFileSystemTagProperty]),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-kmskeyid>+ kmsKeyId :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-lifecyclepolicies>+ lifecyclePolicies :: (Prelude.Maybe [LifecyclePolicyProperty]),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-performancemode>+ performanceMode :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-provisionedthroughputinmibps>+ provisionedThroughputInMibps :: (Prelude.Maybe (Value Prelude.Double)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-replicationconfiguration>+ replicationConfiguration :: (Prelude.Maybe ReplicationConfigurationProperty),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-throughputmode>+ throughputMode :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkFileSystem :: FileSystem+mkFileSystem+ = FileSystem+ {haddock_workaround_ = (), availabilityZoneName = Prelude.Nothing,+ backupPolicy = Prelude.Nothing,+ bypassPolicyLockoutSafetyCheck = Prelude.Nothing,+ encrypted = Prelude.Nothing, fileSystemPolicy = Prelude.Nothing,+ fileSystemProtection = Prelude.Nothing,+ fileSystemTags = Prelude.Nothing, kmsKeyId = Prelude.Nothing,+ lifecyclePolicies = Prelude.Nothing,+ performanceMode = Prelude.Nothing,+ provisionedThroughputInMibps = Prelude.Nothing,+ replicationConfiguration = Prelude.Nothing,+ throughputMode = Prelude.Nothing}+instance ToResourceProperties FileSystem where+ toResourceProperties FileSystem {..}+ = ResourceProperties+ {awsType = "AWS::EFS::FileSystem", supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "AvailabilityZoneName" Prelude.<$> availabilityZoneName,+ (JSON..=) "BackupPolicy" Prelude.<$> backupPolicy,+ (JSON..=) "BypassPolicyLockoutSafetyCheck"+ Prelude.<$> bypassPolicyLockoutSafetyCheck,+ (JSON..=) "Encrypted" Prelude.<$> encrypted,+ (JSON..=) "FileSystemPolicy" Prelude.<$> fileSystemPolicy,+ (JSON..=) "FileSystemProtection" Prelude.<$> fileSystemProtection,+ (JSON..=) "FileSystemTags" Prelude.<$> fileSystemTags,+ (JSON..=) "KmsKeyId" Prelude.<$> kmsKeyId,+ (JSON..=) "LifecyclePolicies" Prelude.<$> lifecyclePolicies,+ (JSON..=) "PerformanceMode" Prelude.<$> performanceMode,+ (JSON..=) "ProvisionedThroughputInMibps"+ Prelude.<$> provisionedThroughputInMibps,+ (JSON..=) "ReplicationConfiguration"+ Prelude.<$> replicationConfiguration,+ (JSON..=) "ThroughputMode" Prelude.<$> throughputMode])}+instance JSON.ToJSON FileSystem where+ toJSON FileSystem {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "AvailabilityZoneName" Prelude.<$> availabilityZoneName,+ (JSON..=) "BackupPolicy" Prelude.<$> backupPolicy,+ (JSON..=) "BypassPolicyLockoutSafetyCheck"+ Prelude.<$> bypassPolicyLockoutSafetyCheck,+ (JSON..=) "Encrypted" Prelude.<$> encrypted,+ (JSON..=) "FileSystemPolicy" Prelude.<$> fileSystemPolicy,+ (JSON..=) "FileSystemProtection" Prelude.<$> fileSystemProtection,+ (JSON..=) "FileSystemTags" Prelude.<$> fileSystemTags,+ (JSON..=) "KmsKeyId" Prelude.<$> kmsKeyId,+ (JSON..=) "LifecyclePolicies" Prelude.<$> lifecyclePolicies,+ (JSON..=) "PerformanceMode" Prelude.<$> performanceMode,+ (JSON..=) "ProvisionedThroughputInMibps"+ Prelude.<$> provisionedThroughputInMibps,+ (JSON..=) "ReplicationConfiguration"+ Prelude.<$> replicationConfiguration,+ (JSON..=) "ThroughputMode" Prelude.<$> throughputMode]))+instance Property "AvailabilityZoneName" FileSystem where+ type PropertyType "AvailabilityZoneName" FileSystem = Value Prelude.Text+ set newValue FileSystem {..}+ = FileSystem {availabilityZoneName = Prelude.pure newValue, ..}+instance Property "BackupPolicy" FileSystem where+ type PropertyType "BackupPolicy" FileSystem = BackupPolicyProperty+ set newValue FileSystem {..}+ = FileSystem {backupPolicy = Prelude.pure newValue, ..}+instance Property "BypassPolicyLockoutSafetyCheck" FileSystem where+ type PropertyType "BypassPolicyLockoutSafetyCheck" FileSystem = Value Prelude.Bool+ set newValue FileSystem {..}+ = FileSystem+ {bypassPolicyLockoutSafetyCheck = Prelude.pure newValue, ..}+instance Property "Encrypted" FileSystem where+ type PropertyType "Encrypted" FileSystem = Value Prelude.Bool+ set newValue FileSystem {..}+ = FileSystem {encrypted = Prelude.pure newValue, ..}+instance Property "FileSystemPolicy" FileSystem where+ type PropertyType "FileSystemPolicy" FileSystem = JSON.Object+ set newValue FileSystem {..}+ = FileSystem {fileSystemPolicy = Prelude.pure newValue, ..}+instance Property "FileSystemProtection" FileSystem where+ type PropertyType "FileSystemProtection" FileSystem = FileSystemProtectionProperty+ set newValue FileSystem {..}+ = FileSystem {fileSystemProtection = Prelude.pure newValue, ..}+instance Property "FileSystemTags" FileSystem where+ type PropertyType "FileSystemTags" FileSystem = [ElasticFileSystemTagProperty]+ set newValue FileSystem {..}+ = FileSystem {fileSystemTags = Prelude.pure newValue, ..}+instance Property "KmsKeyId" FileSystem where+ type PropertyType "KmsKeyId" FileSystem = Value Prelude.Text+ set newValue FileSystem {..}+ = FileSystem {kmsKeyId = Prelude.pure newValue, ..}+instance Property "LifecyclePolicies" FileSystem where+ type PropertyType "LifecyclePolicies" FileSystem = [LifecyclePolicyProperty]+ set newValue FileSystem {..}+ = FileSystem {lifecyclePolicies = Prelude.pure newValue, ..}+instance Property "PerformanceMode" FileSystem where+ type PropertyType "PerformanceMode" FileSystem = Value Prelude.Text+ set newValue FileSystem {..}+ = FileSystem {performanceMode = Prelude.pure newValue, ..}+instance Property "ProvisionedThroughputInMibps" FileSystem where+ type PropertyType "ProvisionedThroughputInMibps" FileSystem = Value Prelude.Double+ set newValue FileSystem {..}+ = FileSystem+ {provisionedThroughputInMibps = Prelude.pure newValue, ..}+instance Property "ReplicationConfiguration" FileSystem where+ type PropertyType "ReplicationConfiguration" FileSystem = ReplicationConfigurationProperty+ set newValue FileSystem {..}+ = FileSystem {replicationConfiguration = Prelude.pure newValue, ..}+instance Property "ThroughputMode" FileSystem where+ type PropertyType "ThroughputMode" FileSystem = Value Prelude.Text+ set newValue FileSystem {..}+ = FileSystem {throughputMode = Prelude.pure newValue, ..}
+ gen/Stratosphere/EFS/FileSystem/BackupPolicyProperty.hs view
@@ -0,0 +1,31 @@+module Stratosphere.EFS.FileSystem.BackupPolicyProperty (+ BackupPolicyProperty(..), mkBackupPolicyProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data BackupPolicyProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-backuppolicy.html>+ BackupPolicyProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-backuppolicy.html#cfn-efs-filesystem-backuppolicy-status>+ status :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkBackupPolicyProperty ::+ Value Prelude.Text -> BackupPolicyProperty+mkBackupPolicyProperty status+ = BackupPolicyProperty {haddock_workaround_ = (), status = status}+instance ToResourceProperties BackupPolicyProperty where+ toResourceProperties BackupPolicyProperty {..}+ = ResourceProperties+ {awsType = "AWS::EFS::FileSystem.BackupPolicy",+ supportsTags = Prelude.False,+ properties = ["Status" JSON..= status]}+instance JSON.ToJSON BackupPolicyProperty where+ toJSON BackupPolicyProperty {..}+ = JSON.object ["Status" JSON..= status]+instance Property "Status" BackupPolicyProperty where+ type PropertyType "Status" BackupPolicyProperty = Value Prelude.Text+ set newValue BackupPolicyProperty {..}+ = BackupPolicyProperty {status = newValue, ..}
+ gen/Stratosphere/EFS/FileSystem/BackupPolicyProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EFS.FileSystem.BackupPolicyProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data BackupPolicyProperty :: Prelude.Type+instance ToResourceProperties BackupPolicyProperty+instance Prelude.Eq BackupPolicyProperty+instance Prelude.Show BackupPolicyProperty+instance JSON.ToJSON BackupPolicyProperty
+ gen/Stratosphere/EFS/FileSystem/ElasticFileSystemTagProperty.hs view
@@ -0,0 +1,39 @@+module Stratosphere.EFS.FileSystem.ElasticFileSystemTagProperty (+ ElasticFileSystemTagProperty(..), mkElasticFileSystemTagProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ElasticFileSystemTagProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-elasticfilesystemtag.html>+ ElasticFileSystemTagProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-elasticfilesystemtag.html#cfn-efs-filesystem-elasticfilesystemtag-key>+ key :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-elasticfilesystemtag.html#cfn-efs-filesystem-elasticfilesystemtag-value>+ value :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkElasticFileSystemTagProperty ::+ Value Prelude.Text+ -> Value Prelude.Text -> ElasticFileSystemTagProperty+mkElasticFileSystemTagProperty key value+ = ElasticFileSystemTagProperty+ {haddock_workaround_ = (), key = key, value = value}+instance ToResourceProperties ElasticFileSystemTagProperty where+ toResourceProperties ElasticFileSystemTagProperty {..}+ = ResourceProperties+ {awsType = "AWS::EFS::FileSystem.ElasticFileSystemTag",+ supportsTags = Prelude.False,+ properties = ["Key" JSON..= key, "Value" JSON..= value]}+instance JSON.ToJSON ElasticFileSystemTagProperty where+ toJSON ElasticFileSystemTagProperty {..}+ = JSON.object ["Key" JSON..= key, "Value" JSON..= value]+instance Property "Key" ElasticFileSystemTagProperty where+ type PropertyType "Key" ElasticFileSystemTagProperty = Value Prelude.Text+ set newValue ElasticFileSystemTagProperty {..}+ = ElasticFileSystemTagProperty {key = newValue, ..}+instance Property "Value" ElasticFileSystemTagProperty where+ type PropertyType "Value" ElasticFileSystemTagProperty = Value Prelude.Text+ set newValue ElasticFileSystemTagProperty {..}+ = ElasticFileSystemTagProperty {value = newValue, ..}
+ gen/Stratosphere/EFS/FileSystem/ElasticFileSystemTagProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EFS.FileSystem.ElasticFileSystemTagProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ElasticFileSystemTagProperty :: Prelude.Type+instance ToResourceProperties ElasticFileSystemTagProperty+instance Prelude.Eq ElasticFileSystemTagProperty+instance Prelude.Show ElasticFileSystemTagProperty+instance JSON.ToJSON ElasticFileSystemTagProperty
+ gen/Stratosphere/EFS/FileSystem/FileSystemProtectionProperty.hs view
@@ -0,0 +1,40 @@+module Stratosphere.EFS.FileSystem.FileSystemProtectionProperty (+ FileSystemProtectionProperty(..), mkFileSystemProtectionProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data FileSystemProtectionProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-filesystemprotection.html>+ FileSystemProtectionProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-filesystemprotection.html#cfn-efs-filesystem-filesystemprotection-replicationoverwriteprotection>+ replicationOverwriteProtection :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkFileSystemProtectionProperty :: FileSystemProtectionProperty+mkFileSystemProtectionProperty+ = FileSystemProtectionProperty+ {haddock_workaround_ = (),+ replicationOverwriteProtection = Prelude.Nothing}+instance ToResourceProperties FileSystemProtectionProperty where+ toResourceProperties FileSystemProtectionProperty {..}+ = ResourceProperties+ {awsType = "AWS::EFS::FileSystem.FileSystemProtection",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "ReplicationOverwriteProtection"+ Prelude.<$> replicationOverwriteProtection])}+instance JSON.ToJSON FileSystemProtectionProperty where+ toJSON FileSystemProtectionProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "ReplicationOverwriteProtection"+ Prelude.<$> replicationOverwriteProtection]))+instance Property "ReplicationOverwriteProtection" FileSystemProtectionProperty where+ type PropertyType "ReplicationOverwriteProtection" FileSystemProtectionProperty = Value Prelude.Text+ set newValue FileSystemProtectionProperty {..}+ = FileSystemProtectionProperty+ {replicationOverwriteProtection = Prelude.pure newValue, ..}
+ gen/Stratosphere/EFS/FileSystem/FileSystemProtectionProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EFS.FileSystem.FileSystemProtectionProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data FileSystemProtectionProperty :: Prelude.Type+instance ToResourceProperties FileSystemProtectionProperty+instance Prelude.Eq FileSystemProtectionProperty+instance Prelude.Show FileSystemProtectionProperty+instance JSON.ToJSON FileSystemProtectionProperty
+ gen/Stratosphere/EFS/FileSystem/LifecyclePolicyProperty.hs view
@@ -0,0 +1,59 @@+module Stratosphere.EFS.FileSystem.LifecyclePolicyProperty (+ LifecyclePolicyProperty(..), mkLifecyclePolicyProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data LifecyclePolicyProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-lifecyclepolicy.html>+ LifecyclePolicyProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-lifecyclepolicy.html#cfn-efs-filesystem-lifecyclepolicy-transitiontoarchive>+ transitionToArchive :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-lifecyclepolicy.html#cfn-efs-filesystem-lifecyclepolicy-transitiontoia>+ transitionToIA :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-lifecyclepolicy.html#cfn-efs-filesystem-lifecyclepolicy-transitiontoprimarystorageclass>+ transitionToPrimaryStorageClass :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkLifecyclePolicyProperty :: LifecyclePolicyProperty+mkLifecyclePolicyProperty+ = LifecyclePolicyProperty+ {haddock_workaround_ = (), transitionToArchive = Prelude.Nothing,+ transitionToIA = Prelude.Nothing,+ transitionToPrimaryStorageClass = Prelude.Nothing}+instance ToResourceProperties LifecyclePolicyProperty where+ toResourceProperties LifecyclePolicyProperty {..}+ = ResourceProperties+ {awsType = "AWS::EFS::FileSystem.LifecyclePolicy",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "TransitionToArchive" Prelude.<$> transitionToArchive,+ (JSON..=) "TransitionToIA" Prelude.<$> transitionToIA,+ (JSON..=) "TransitionToPrimaryStorageClass"+ Prelude.<$> transitionToPrimaryStorageClass])}+instance JSON.ToJSON LifecyclePolicyProperty where+ toJSON LifecyclePolicyProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "TransitionToArchive" Prelude.<$> transitionToArchive,+ (JSON..=) "TransitionToIA" Prelude.<$> transitionToIA,+ (JSON..=) "TransitionToPrimaryStorageClass"+ Prelude.<$> transitionToPrimaryStorageClass]))+instance Property "TransitionToArchive" LifecyclePolicyProperty where+ type PropertyType "TransitionToArchive" LifecyclePolicyProperty = Value Prelude.Text+ set newValue LifecyclePolicyProperty {..}+ = LifecyclePolicyProperty+ {transitionToArchive = Prelude.pure newValue, ..}+instance Property "TransitionToIA" LifecyclePolicyProperty where+ type PropertyType "TransitionToIA" LifecyclePolicyProperty = Value Prelude.Text+ set newValue LifecyclePolicyProperty {..}+ = LifecyclePolicyProperty+ {transitionToIA = Prelude.pure newValue, ..}+instance Property "TransitionToPrimaryStorageClass" LifecyclePolicyProperty where+ type PropertyType "TransitionToPrimaryStorageClass" LifecyclePolicyProperty = Value Prelude.Text+ set newValue LifecyclePolicyProperty {..}+ = LifecyclePolicyProperty+ {transitionToPrimaryStorageClass = Prelude.pure newValue, ..}
+ gen/Stratosphere/EFS/FileSystem/LifecyclePolicyProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EFS.FileSystem.LifecyclePolicyProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data LifecyclePolicyProperty :: Prelude.Type+instance ToResourceProperties LifecyclePolicyProperty+instance Prelude.Eq LifecyclePolicyProperty+instance Prelude.Show LifecyclePolicyProperty+instance JSON.ToJSON LifecyclePolicyProperty
+ gen/Stratosphere/EFS/FileSystem/ReplicationConfigurationProperty.hs view
@@ -0,0 +1,39 @@+module Stratosphere.EFS.FileSystem.ReplicationConfigurationProperty (+ module Exports, ReplicationConfigurationProperty(..),+ mkReplicationConfigurationProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.EFS.FileSystem.ReplicationDestinationProperty as Exports+import Stratosphere.ResourceProperties+data ReplicationConfigurationProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationconfiguration.html>+ ReplicationConfigurationProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationconfiguration.html#cfn-efs-filesystem-replicationconfiguration-destinations>+ destinations :: (Prelude.Maybe [ReplicationDestinationProperty])}+ deriving stock (Prelude.Eq, Prelude.Show)+mkReplicationConfigurationProperty ::+ ReplicationConfigurationProperty+mkReplicationConfigurationProperty+ = ReplicationConfigurationProperty+ {haddock_workaround_ = (), destinations = Prelude.Nothing}+instance ToResourceProperties ReplicationConfigurationProperty where+ toResourceProperties ReplicationConfigurationProperty {..}+ = ResourceProperties+ {awsType = "AWS::EFS::FileSystem.ReplicationConfiguration",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Destinations" Prelude.<$> destinations])}+instance JSON.ToJSON ReplicationConfigurationProperty where+ toJSON ReplicationConfigurationProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "Destinations" Prelude.<$> destinations]))+instance Property "Destinations" ReplicationConfigurationProperty where+ type PropertyType "Destinations" ReplicationConfigurationProperty = [ReplicationDestinationProperty]+ set newValue ReplicationConfigurationProperty {..}+ = ReplicationConfigurationProperty+ {destinations = Prelude.pure newValue, ..}
+ gen/Stratosphere/EFS/FileSystem/ReplicationConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EFS.FileSystem.ReplicationConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ReplicationConfigurationProperty :: Prelude.Type+instance ToResourceProperties ReplicationConfigurationProperty+instance Prelude.Eq ReplicationConfigurationProperty+instance Prelude.Show ReplicationConfigurationProperty+instance JSON.ToJSON ReplicationConfigurationProperty
+ gen/Stratosphere/EFS/FileSystem/ReplicationDestinationProperty.hs view
@@ -0,0 +1,95 @@+module Stratosphere.EFS.FileSystem.ReplicationDestinationProperty (+ ReplicationDestinationProperty(..),+ mkReplicationDestinationProperty+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ReplicationDestinationProperty+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationdestination.html>+ ReplicationDestinationProperty {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationdestination.html#cfn-efs-filesystem-replicationdestination-availabilityzonename>+ availabilityZoneName :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationdestination.html#cfn-efs-filesystem-replicationdestination-filesystemid>+ fileSystemId :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationdestination.html#cfn-efs-filesystem-replicationdestination-kmskeyid>+ kmsKeyId :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationdestination.html#cfn-efs-filesystem-replicationdestination-region>+ region :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationdestination.html#cfn-efs-filesystem-replicationdestination-rolearn>+ roleArn :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationdestination.html#cfn-efs-filesystem-replicationdestination-status>+ status :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationdestination.html#cfn-efs-filesystem-replicationdestination-statusmessage>+ statusMessage :: (Prelude.Maybe (Value Prelude.Text))}+ deriving stock (Prelude.Eq, Prelude.Show)+mkReplicationDestinationProperty :: ReplicationDestinationProperty+mkReplicationDestinationProperty+ = ReplicationDestinationProperty+ {haddock_workaround_ = (), availabilityZoneName = Prelude.Nothing,+ fileSystemId = Prelude.Nothing, kmsKeyId = Prelude.Nothing,+ region = Prelude.Nothing, roleArn = Prelude.Nothing,+ status = Prelude.Nothing, statusMessage = Prelude.Nothing}+instance ToResourceProperties ReplicationDestinationProperty where+ toResourceProperties ReplicationDestinationProperty {..}+ = ResourceProperties+ {awsType = "AWS::EFS::FileSystem.ReplicationDestination",+ supportsTags = Prelude.False,+ properties = Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "AvailabilityZoneName" Prelude.<$> availabilityZoneName,+ (JSON..=) "FileSystemId" Prelude.<$> fileSystemId,+ (JSON..=) "KmsKeyId" Prelude.<$> kmsKeyId,+ (JSON..=) "Region" Prelude.<$> region,+ (JSON..=) "RoleArn" Prelude.<$> roleArn,+ (JSON..=) "Status" Prelude.<$> status,+ (JSON..=) "StatusMessage" Prelude.<$> statusMessage])}+instance JSON.ToJSON ReplicationDestinationProperty where+ toJSON ReplicationDestinationProperty {..}+ = JSON.object+ (Prelude.fromList+ (Prelude.catMaybes+ [(JSON..=) "AvailabilityZoneName" Prelude.<$> availabilityZoneName,+ (JSON..=) "FileSystemId" Prelude.<$> fileSystemId,+ (JSON..=) "KmsKeyId" Prelude.<$> kmsKeyId,+ (JSON..=) "Region" Prelude.<$> region,+ (JSON..=) "RoleArn" Prelude.<$> roleArn,+ (JSON..=) "Status" Prelude.<$> status,+ (JSON..=) "StatusMessage" Prelude.<$> statusMessage]))+instance Property "AvailabilityZoneName" ReplicationDestinationProperty where+ type PropertyType "AvailabilityZoneName" ReplicationDestinationProperty = Value Prelude.Text+ set newValue ReplicationDestinationProperty {..}+ = ReplicationDestinationProperty+ {availabilityZoneName = Prelude.pure newValue, ..}+instance Property "FileSystemId" ReplicationDestinationProperty where+ type PropertyType "FileSystemId" ReplicationDestinationProperty = Value Prelude.Text+ set newValue ReplicationDestinationProperty {..}+ = ReplicationDestinationProperty+ {fileSystemId = Prelude.pure newValue, ..}+instance Property "KmsKeyId" ReplicationDestinationProperty where+ type PropertyType "KmsKeyId" ReplicationDestinationProperty = Value Prelude.Text+ set newValue ReplicationDestinationProperty {..}+ = ReplicationDestinationProperty+ {kmsKeyId = Prelude.pure newValue, ..}+instance Property "Region" ReplicationDestinationProperty where+ type PropertyType "Region" ReplicationDestinationProperty = Value Prelude.Text+ set newValue ReplicationDestinationProperty {..}+ = ReplicationDestinationProperty+ {region = Prelude.pure newValue, ..}+instance Property "RoleArn" ReplicationDestinationProperty where+ type PropertyType "RoleArn" ReplicationDestinationProperty = Value Prelude.Text+ set newValue ReplicationDestinationProperty {..}+ = ReplicationDestinationProperty+ {roleArn = Prelude.pure newValue, ..}+instance Property "Status" ReplicationDestinationProperty where+ type PropertyType "Status" ReplicationDestinationProperty = Value Prelude.Text+ set newValue ReplicationDestinationProperty {..}+ = ReplicationDestinationProperty+ {status = Prelude.pure newValue, ..}+instance Property "StatusMessage" ReplicationDestinationProperty where+ type PropertyType "StatusMessage" ReplicationDestinationProperty = Value Prelude.Text+ set newValue ReplicationDestinationProperty {..}+ = ReplicationDestinationProperty+ {statusMessage = Prelude.pure newValue, ..}
+ gen/Stratosphere/EFS/FileSystem/ReplicationDestinationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.EFS.FileSystem.ReplicationDestinationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ReplicationDestinationProperty :: Prelude.Type+instance ToResourceProperties ReplicationDestinationProperty+instance Prelude.Eq ReplicationDestinationProperty+instance Prelude.Show ReplicationDestinationProperty+instance JSON.ToJSON ReplicationDestinationProperty
+ gen/Stratosphere/EFS/MountTarget.hs view
@@ -0,0 +1,82 @@+module Stratosphere.EFS.MountTarget (+ MountTarget(..), mkMountTarget+ ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data MountTarget+ = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html>+ MountTarget {haddock_workaround_ :: (),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-filesystemid>+ fileSystemId :: (Value Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-ipaddress>+ ipAddress :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-ipaddresstype>+ ipAddressType :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-ipv6address>+ ipv6Address :: (Prelude.Maybe (Value Prelude.Text)),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-securitygroups>+ securityGroups :: (ValueList Prelude.Text),+ -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-subnetid>+ subnetId :: (Value Prelude.Text)}+ deriving stock (Prelude.Eq, Prelude.Show)+mkMountTarget ::+ Value Prelude.Text+ -> ValueList Prelude.Text -> Value Prelude.Text -> MountTarget+mkMountTarget fileSystemId securityGroups subnetId+ = MountTarget+ {haddock_workaround_ = (), fileSystemId = fileSystemId,+ securityGroups = securityGroups, subnetId = subnetId,+ ipAddress = Prelude.Nothing, ipAddressType = Prelude.Nothing,+ ipv6Address = Prelude.Nothing}+instance ToResourceProperties MountTarget where+ toResourceProperties MountTarget {..}+ = ResourceProperties+ {awsType = "AWS::EFS::MountTarget", supportsTags = Prelude.False,+ properties = Prelude.fromList+ ((Prelude.<>)+ ["FileSystemId" JSON..= fileSystemId,+ "SecurityGroups" JSON..= securityGroups,+ "SubnetId" JSON..= subnetId]+ (Prelude.catMaybes+ [(JSON..=) "IpAddress" Prelude.<$> ipAddress,+ (JSON..=) "IpAddressType" Prelude.<$> ipAddressType,+ (JSON..=) "Ipv6Address" Prelude.<$> ipv6Address]))}+instance JSON.ToJSON MountTarget where+ toJSON MountTarget {..}+ = JSON.object+ (Prelude.fromList+ ((Prelude.<>)+ ["FileSystemId" JSON..= fileSystemId,+ "SecurityGroups" JSON..= securityGroups,+ "SubnetId" JSON..= subnetId]+ (Prelude.catMaybes+ [(JSON..=) "IpAddress" Prelude.<$> ipAddress,+ (JSON..=) "IpAddressType" Prelude.<$> ipAddressType,+ (JSON..=) "Ipv6Address" Prelude.<$> ipv6Address])))+instance Property "FileSystemId" MountTarget where+ type PropertyType "FileSystemId" MountTarget = Value Prelude.Text+ set newValue MountTarget {..}+ = MountTarget {fileSystemId = newValue, ..}+instance Property "IpAddress" MountTarget where+ type PropertyType "IpAddress" MountTarget = Value Prelude.Text+ set newValue MountTarget {..}+ = MountTarget {ipAddress = Prelude.pure newValue, ..}+instance Property "IpAddressType" MountTarget where+ type PropertyType "IpAddressType" MountTarget = Value Prelude.Text+ set newValue MountTarget {..}+ = MountTarget {ipAddressType = Prelude.pure newValue, ..}+instance Property "Ipv6Address" MountTarget where+ type PropertyType "Ipv6Address" MountTarget = Value Prelude.Text+ set newValue MountTarget {..}+ = MountTarget {ipv6Address = Prelude.pure newValue, ..}+instance Property "SecurityGroups" MountTarget where+ type PropertyType "SecurityGroups" MountTarget = ValueList Prelude.Text+ set newValue MountTarget {..}+ = MountTarget {securityGroups = newValue, ..}+instance Property "SubnetId" MountTarget where+ type PropertyType "SubnetId" MountTarget = Value Prelude.Text+ set newValue MountTarget {..}+ = MountTarget {subnetId = newValue, ..}
+ stratosphere-efs.cabal view
@@ -0,0 +1,85 @@+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-efs+version: 1.0.0+synopsis: Stratosphere integration for AWS EFS.+description: Integration into stratosphere to generate resources and properties for AWS EFS+category: AWS, Cloud, EFS+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.EFS.AccessPoint+ Stratosphere.EFS.AccessPoint.AccessPointTagProperty+ Stratosphere.EFS.AccessPoint.CreationInfoProperty+ Stratosphere.EFS.AccessPoint.PosixUserProperty+ Stratosphere.EFS.AccessPoint.RootDirectoryProperty+ Stratosphere.EFS.FileSystem+ Stratosphere.EFS.FileSystem.BackupPolicyProperty+ Stratosphere.EFS.FileSystem.ElasticFileSystemTagProperty+ Stratosphere.EFS.FileSystem.FileSystemProtectionProperty+ Stratosphere.EFS.FileSystem.LifecyclePolicyProperty+ Stratosphere.EFS.FileSystem.ReplicationConfigurationProperty+ Stratosphere.EFS.FileSystem.ReplicationDestinationProperty+ Stratosphere.EFS.MountTarget+ other-modules:+ Paths_stratosphere_efs+ 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