packages feed

stratosphere-datasync (empty) → 1.0.0

raw patch · 93 files changed

+3593/−0 lines, 93 filesdep +aesondep +basedep +stratosphere

Dependencies added: aeson, base, stratosphere

Files

+ 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/DataSync/Agent.hs view
@@ -0,0 +1,78 @@+module Stratosphere.DataSync.Agent (+        Agent(..), mkAgent+    ) 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 Agent+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html>+    Agent {haddock_workaround_ :: (),+           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html#cfn-datasync-agent-activationkey>+           activationKey :: (Prelude.Maybe (Value Prelude.Text)),+           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html#cfn-datasync-agent-agentname>+           agentName :: (Prelude.Maybe (Value Prelude.Text)),+           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html#cfn-datasync-agent-securitygrouparns>+           securityGroupArns :: (Prelude.Maybe (ValueList Prelude.Text)),+           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html#cfn-datasync-agent-subnetarns>+           subnetArns :: (Prelude.Maybe (ValueList Prelude.Text)),+           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html#cfn-datasync-agent-tags>+           tags :: (Prelude.Maybe [Tag]),+           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-agent.html#cfn-datasync-agent-vpcendpointid>+           vpcEndpointId :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkAgent :: Agent+mkAgent+  = Agent+      {haddock_workaround_ = (), activationKey = Prelude.Nothing,+       agentName = Prelude.Nothing, securityGroupArns = Prelude.Nothing,+       subnetArns = Prelude.Nothing, tags = Prelude.Nothing,+       vpcEndpointId = Prelude.Nothing}+instance ToResourceProperties Agent where+  toResourceProperties Agent {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Agent", supportsTags = Prelude.True,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "ActivationKey" Prelude.<$> activationKey,+                            (JSON..=) "AgentName" Prelude.<$> agentName,+                            (JSON..=) "SecurityGroupArns" Prelude.<$> securityGroupArns,+                            (JSON..=) "SubnetArns" Prelude.<$> subnetArns,+                            (JSON..=) "Tags" Prelude.<$> tags,+                            (JSON..=) "VpcEndpointId" Prelude.<$> vpcEndpointId])}+instance JSON.ToJSON Agent where+  toJSON Agent {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "ActivationKey" Prelude.<$> activationKey,+               (JSON..=) "AgentName" Prelude.<$> agentName,+               (JSON..=) "SecurityGroupArns" Prelude.<$> securityGroupArns,+               (JSON..=) "SubnetArns" Prelude.<$> subnetArns,+               (JSON..=) "Tags" Prelude.<$> tags,+               (JSON..=) "VpcEndpointId" Prelude.<$> vpcEndpointId]))+instance Property "ActivationKey" Agent where+  type PropertyType "ActivationKey" Agent = Value Prelude.Text+  set newValue Agent {..}+    = Agent {activationKey = Prelude.pure newValue, ..}+instance Property "AgentName" Agent where+  type PropertyType "AgentName" Agent = Value Prelude.Text+  set newValue Agent {..}+    = Agent {agentName = Prelude.pure newValue, ..}+instance Property "SecurityGroupArns" Agent where+  type PropertyType "SecurityGroupArns" Agent = ValueList Prelude.Text+  set newValue Agent {..}+    = Agent {securityGroupArns = Prelude.pure newValue, ..}+instance Property "SubnetArns" Agent where+  type PropertyType "SubnetArns" Agent = ValueList Prelude.Text+  set newValue Agent {..}+    = Agent {subnetArns = Prelude.pure newValue, ..}+instance Property "Tags" Agent where+  type PropertyType "Tags" Agent = [Tag]+  set newValue Agent {..} = Agent {tags = Prelude.pure newValue, ..}+instance Property "VpcEndpointId" Agent where+  type PropertyType "VpcEndpointId" Agent = Value Prelude.Text+  set newValue Agent {..}+    = Agent {vpcEndpointId = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationAzureBlob.hs view
@@ -0,0 +1,128 @@+module Stratosphere.DataSync.LocationAzureBlob (+        module Exports, LocationAzureBlob(..), mkLocationAzureBlob+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.LocationAzureBlob.AzureBlobSasConfigurationProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.LocationAzureBlob.CmkSecretConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.LocationAzureBlob.CustomSecretConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data LocationAzureBlob+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationazureblob.html>+    LocationAzureBlob {haddock_workaround_ :: (),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationazureblob.html#cfn-datasync-locationazureblob-agentarns>+                       agentArns :: (Prelude.Maybe (ValueList Prelude.Text)),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationazureblob.html#cfn-datasync-locationazureblob-azureaccesstier>+                       azureAccessTier :: (Prelude.Maybe (Value Prelude.Text)),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationazureblob.html#cfn-datasync-locationazureblob-azureblobauthenticationtype>+                       azureBlobAuthenticationType :: (Value Prelude.Text),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationazureblob.html#cfn-datasync-locationazureblob-azureblobcontainerurl>+                       azureBlobContainerUrl :: (Prelude.Maybe (Value Prelude.Text)),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationazureblob.html#cfn-datasync-locationazureblob-azureblobsasconfiguration>+                       azureBlobSasConfiguration :: (Prelude.Maybe AzureBlobSasConfigurationProperty),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationazureblob.html#cfn-datasync-locationazureblob-azureblobtype>+                       azureBlobType :: (Prelude.Maybe (Value Prelude.Text)),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationazureblob.html#cfn-datasync-locationazureblob-cmksecretconfig>+                       cmkSecretConfig :: (Prelude.Maybe CmkSecretConfigProperty),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationazureblob.html#cfn-datasync-locationazureblob-customsecretconfig>+                       customSecretConfig :: (Prelude.Maybe CustomSecretConfigProperty),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationazureblob.html#cfn-datasync-locationazureblob-subdirectory>+                       subdirectory :: (Prelude.Maybe (Value Prelude.Text)),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationazureblob.html#cfn-datasync-locationazureblob-tags>+                       tags :: (Prelude.Maybe [Tag])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkLocationAzureBlob :: Value Prelude.Text -> LocationAzureBlob+mkLocationAzureBlob azureBlobAuthenticationType+  = LocationAzureBlob+      {haddock_workaround_ = (),+       azureBlobAuthenticationType = azureBlobAuthenticationType,+       agentArns = Prelude.Nothing, azureAccessTier = Prelude.Nothing,+       azureBlobContainerUrl = Prelude.Nothing,+       azureBlobSasConfiguration = Prelude.Nothing,+       azureBlobType = Prelude.Nothing, cmkSecretConfig = Prelude.Nothing,+       customSecretConfig = Prelude.Nothing,+       subdirectory = Prelude.Nothing, tags = Prelude.Nothing}+instance ToResourceProperties LocationAzureBlob where+  toResourceProperties LocationAzureBlob {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationAzureBlob",+         supportsTags = Prelude.True,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["AzureBlobAuthenticationType" JSON..= azureBlobAuthenticationType]+                           (Prelude.catMaybes+                              [(JSON..=) "AgentArns" Prelude.<$> agentArns,+                               (JSON..=) "AzureAccessTier" Prelude.<$> azureAccessTier,+                               (JSON..=) "AzureBlobContainerUrl"+                                 Prelude.<$> azureBlobContainerUrl,+                               (JSON..=) "AzureBlobSasConfiguration"+                                 Prelude.<$> azureBlobSasConfiguration,+                               (JSON..=) "AzureBlobType" Prelude.<$> azureBlobType,+                               (JSON..=) "CmkSecretConfig" Prelude.<$> cmkSecretConfig,+                               (JSON..=) "CustomSecretConfig" Prelude.<$> customSecretConfig,+                               (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                               (JSON..=) "Tags" Prelude.<$> tags]))}+instance JSON.ToJSON LocationAzureBlob where+  toJSON LocationAzureBlob {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["AzureBlobAuthenticationType" JSON..= azureBlobAuthenticationType]+              (Prelude.catMaybes+                 [(JSON..=) "AgentArns" Prelude.<$> agentArns,+                  (JSON..=) "AzureAccessTier" Prelude.<$> azureAccessTier,+                  (JSON..=) "AzureBlobContainerUrl"+                    Prelude.<$> azureBlobContainerUrl,+                  (JSON..=) "AzureBlobSasConfiguration"+                    Prelude.<$> azureBlobSasConfiguration,+                  (JSON..=) "AzureBlobType" Prelude.<$> azureBlobType,+                  (JSON..=) "CmkSecretConfig" Prelude.<$> cmkSecretConfig,+                  (JSON..=) "CustomSecretConfig" Prelude.<$> customSecretConfig,+                  (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                  (JSON..=) "Tags" Prelude.<$> tags])))+instance Property "AgentArns" LocationAzureBlob where+  type PropertyType "AgentArns" LocationAzureBlob = ValueList Prelude.Text+  set newValue LocationAzureBlob {..}+    = LocationAzureBlob {agentArns = Prelude.pure newValue, ..}+instance Property "AzureAccessTier" LocationAzureBlob where+  type PropertyType "AzureAccessTier" LocationAzureBlob = Value Prelude.Text+  set newValue LocationAzureBlob {..}+    = LocationAzureBlob {azureAccessTier = Prelude.pure newValue, ..}+instance Property "AzureBlobAuthenticationType" LocationAzureBlob where+  type PropertyType "AzureBlobAuthenticationType" LocationAzureBlob = Value Prelude.Text+  set newValue LocationAzureBlob {..}+    = LocationAzureBlob {azureBlobAuthenticationType = newValue, ..}+instance Property "AzureBlobContainerUrl" LocationAzureBlob where+  type PropertyType "AzureBlobContainerUrl" LocationAzureBlob = Value Prelude.Text+  set newValue LocationAzureBlob {..}+    = LocationAzureBlob+        {azureBlobContainerUrl = Prelude.pure newValue, ..}+instance Property "AzureBlobSasConfiguration" LocationAzureBlob where+  type PropertyType "AzureBlobSasConfiguration" LocationAzureBlob = AzureBlobSasConfigurationProperty+  set newValue LocationAzureBlob {..}+    = LocationAzureBlob+        {azureBlobSasConfiguration = Prelude.pure newValue, ..}+instance Property "AzureBlobType" LocationAzureBlob where+  type PropertyType "AzureBlobType" LocationAzureBlob = Value Prelude.Text+  set newValue LocationAzureBlob {..}+    = LocationAzureBlob {azureBlobType = Prelude.pure newValue, ..}+instance Property "CmkSecretConfig" LocationAzureBlob where+  type PropertyType "CmkSecretConfig" LocationAzureBlob = CmkSecretConfigProperty+  set newValue LocationAzureBlob {..}+    = LocationAzureBlob {cmkSecretConfig = Prelude.pure newValue, ..}+instance Property "CustomSecretConfig" LocationAzureBlob where+  type PropertyType "CustomSecretConfig" LocationAzureBlob = CustomSecretConfigProperty+  set newValue LocationAzureBlob {..}+    = LocationAzureBlob+        {customSecretConfig = Prelude.pure newValue, ..}+instance Property "Subdirectory" LocationAzureBlob where+  type PropertyType "Subdirectory" LocationAzureBlob = Value Prelude.Text+  set newValue LocationAzureBlob {..}+    = LocationAzureBlob {subdirectory = Prelude.pure newValue, ..}+instance Property "Tags" LocationAzureBlob where+  type PropertyType "Tags" LocationAzureBlob = [Tag]+  set newValue LocationAzureBlob {..}+    = LocationAzureBlob {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationAzureBlob/AzureBlobSasConfigurationProperty.hs view
@@ -0,0 +1,34 @@+module Stratosphere.DataSync.LocationAzureBlob.AzureBlobSasConfigurationProperty (+        AzureBlobSasConfigurationProperty(..),+        mkAzureBlobSasConfigurationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data AzureBlobSasConfigurationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationazureblob-azureblobsasconfiguration.html>+    AzureBlobSasConfigurationProperty {haddock_workaround_ :: (),+                                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationazureblob-azureblobsasconfiguration.html#cfn-datasync-locationazureblob-azureblobsasconfiguration-azureblobsastoken>+                                       azureBlobSasToken :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkAzureBlobSasConfigurationProperty ::+  Value Prelude.Text -> AzureBlobSasConfigurationProperty+mkAzureBlobSasConfigurationProperty azureBlobSasToken+  = AzureBlobSasConfigurationProperty+      {haddock_workaround_ = (), azureBlobSasToken = azureBlobSasToken}+instance ToResourceProperties AzureBlobSasConfigurationProperty where+  toResourceProperties AzureBlobSasConfigurationProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationAzureBlob.AzureBlobSasConfiguration",+         supportsTags = Prelude.False,+         properties = ["AzureBlobSasToken" JSON..= azureBlobSasToken]}+instance JSON.ToJSON AzureBlobSasConfigurationProperty where+  toJSON AzureBlobSasConfigurationProperty {..}+    = JSON.object ["AzureBlobSasToken" JSON..= azureBlobSasToken]+instance Property "AzureBlobSasToken" AzureBlobSasConfigurationProperty where+  type PropertyType "AzureBlobSasToken" AzureBlobSasConfigurationProperty = Value Prelude.Text+  set newValue AzureBlobSasConfigurationProperty {..}+    = AzureBlobSasConfigurationProperty+        {azureBlobSasToken = newValue, ..}
+ gen/Stratosphere/DataSync/LocationAzureBlob/AzureBlobSasConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationAzureBlob.AzureBlobSasConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data AzureBlobSasConfigurationProperty :: Prelude.Type+instance ToResourceProperties AzureBlobSasConfigurationProperty+instance Prelude.Eq AzureBlobSasConfigurationProperty+instance Prelude.Show AzureBlobSasConfigurationProperty+instance JSON.ToJSON AzureBlobSasConfigurationProperty
+ gen/Stratosphere/DataSync/LocationAzureBlob/CmkSecretConfigProperty.hs view
@@ -0,0 +1,45 @@+module Stratosphere.DataSync.LocationAzureBlob.CmkSecretConfigProperty (+        CmkSecretConfigProperty(..), mkCmkSecretConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CmkSecretConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationazureblob-cmksecretconfig.html>+    CmkSecretConfigProperty {haddock_workaround_ :: (),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationazureblob-cmksecretconfig.html#cfn-datasync-locationazureblob-cmksecretconfig-kmskeyarn>+                             kmsKeyArn :: (Prelude.Maybe (Value Prelude.Text)),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationazureblob-cmksecretconfig.html#cfn-datasync-locationazureblob-cmksecretconfig-secretarn>+                             secretArn :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCmkSecretConfigProperty :: CmkSecretConfigProperty+mkCmkSecretConfigProperty+  = CmkSecretConfigProperty+      {haddock_workaround_ = (), kmsKeyArn = Prelude.Nothing,+       secretArn = Prelude.Nothing}+instance ToResourceProperties CmkSecretConfigProperty where+  toResourceProperties CmkSecretConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationAzureBlob.CmkSecretConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "KmsKeyArn" Prelude.<$> kmsKeyArn,+                            (JSON..=) "SecretArn" Prelude.<$> secretArn])}+instance JSON.ToJSON CmkSecretConfigProperty where+  toJSON CmkSecretConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "KmsKeyArn" Prelude.<$> kmsKeyArn,+               (JSON..=) "SecretArn" Prelude.<$> secretArn]))+instance Property "KmsKeyArn" CmkSecretConfigProperty where+  type PropertyType "KmsKeyArn" CmkSecretConfigProperty = Value Prelude.Text+  set newValue CmkSecretConfigProperty {..}+    = CmkSecretConfigProperty {kmsKeyArn = Prelude.pure newValue, ..}+instance Property "SecretArn" CmkSecretConfigProperty where+  type PropertyType "SecretArn" CmkSecretConfigProperty = Value Prelude.Text+  set newValue CmkSecretConfigProperty {..}+    = CmkSecretConfigProperty {secretArn = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationAzureBlob/CmkSecretConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationAzureBlob.CmkSecretConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CmkSecretConfigProperty :: Prelude.Type+instance ToResourceProperties CmkSecretConfigProperty+instance Prelude.Eq CmkSecretConfigProperty+instance Prelude.Show CmkSecretConfigProperty+instance JSON.ToJSON CmkSecretConfigProperty
+ gen/Stratosphere/DataSync/LocationAzureBlob/CustomSecretConfigProperty.hs view
@@ -0,0 +1,43 @@+module Stratosphere.DataSync.LocationAzureBlob.CustomSecretConfigProperty (+        CustomSecretConfigProperty(..), mkCustomSecretConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CustomSecretConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationazureblob-customsecretconfig.html>+    CustomSecretConfigProperty {haddock_workaround_ :: (),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationazureblob-customsecretconfig.html#cfn-datasync-locationazureblob-customsecretconfig-secretaccessrolearn>+                                secretAccessRoleArn :: (Value Prelude.Text),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationazureblob-customsecretconfig.html#cfn-datasync-locationazureblob-customsecretconfig-secretarn>+                                secretArn :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCustomSecretConfigProperty ::+  Value Prelude.Text+  -> Value Prelude.Text -> CustomSecretConfigProperty+mkCustomSecretConfigProperty secretAccessRoleArn secretArn+  = CustomSecretConfigProperty+      {haddock_workaround_ = (),+       secretAccessRoleArn = secretAccessRoleArn, secretArn = secretArn}+instance ToResourceProperties CustomSecretConfigProperty where+  toResourceProperties CustomSecretConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationAzureBlob.CustomSecretConfig",+         supportsTags = Prelude.False,+         properties = ["SecretAccessRoleArn" JSON..= secretAccessRoleArn,+                       "SecretArn" JSON..= secretArn]}+instance JSON.ToJSON CustomSecretConfigProperty where+  toJSON CustomSecretConfigProperty {..}+    = JSON.object+        ["SecretAccessRoleArn" JSON..= secretAccessRoleArn,+         "SecretArn" JSON..= secretArn]+instance Property "SecretAccessRoleArn" CustomSecretConfigProperty where+  type PropertyType "SecretAccessRoleArn" CustomSecretConfigProperty = Value Prelude.Text+  set newValue CustomSecretConfigProperty {..}+    = CustomSecretConfigProperty {secretAccessRoleArn = newValue, ..}+instance Property "SecretArn" CustomSecretConfigProperty where+  type PropertyType "SecretArn" CustomSecretConfigProperty = Value Prelude.Text+  set newValue CustomSecretConfigProperty {..}+    = CustomSecretConfigProperty {secretArn = newValue, ..}
+ gen/Stratosphere/DataSync/LocationAzureBlob/CustomSecretConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationAzureBlob.CustomSecretConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CustomSecretConfigProperty :: Prelude.Type+instance ToResourceProperties CustomSecretConfigProperty+instance Prelude.Eq CustomSecretConfigProperty+instance Prelude.Show CustomSecretConfigProperty+instance JSON.ToJSON CustomSecretConfigProperty
+ gen/Stratosphere/DataSync/LocationAzureBlob/ManagedSecretConfigProperty.hs view
@@ -0,0 +1,32 @@+module Stratosphere.DataSync.LocationAzureBlob.ManagedSecretConfigProperty (+        ManagedSecretConfigProperty(..), mkManagedSecretConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ManagedSecretConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationazureblob-managedsecretconfig.html>+    ManagedSecretConfigProperty {haddock_workaround_ :: (),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationazureblob-managedsecretconfig.html#cfn-datasync-locationazureblob-managedsecretconfig-secretarn>+                                 secretArn :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkManagedSecretConfigProperty ::+  Value Prelude.Text -> ManagedSecretConfigProperty+mkManagedSecretConfigProperty secretArn+  = ManagedSecretConfigProperty+      {haddock_workaround_ = (), secretArn = secretArn}+instance ToResourceProperties ManagedSecretConfigProperty where+  toResourceProperties ManagedSecretConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationAzureBlob.ManagedSecretConfig",+         supportsTags = Prelude.False,+         properties = ["SecretArn" JSON..= secretArn]}+instance JSON.ToJSON ManagedSecretConfigProperty where+  toJSON ManagedSecretConfigProperty {..}+    = JSON.object ["SecretArn" JSON..= secretArn]+instance Property "SecretArn" ManagedSecretConfigProperty where+  type PropertyType "SecretArn" ManagedSecretConfigProperty = Value Prelude.Text+  set newValue ManagedSecretConfigProperty {..}+    = ManagedSecretConfigProperty {secretArn = newValue, ..}
+ gen/Stratosphere/DataSync/LocationAzureBlob/ManagedSecretConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationAzureBlob.ManagedSecretConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ManagedSecretConfigProperty :: Prelude.Type+instance ToResourceProperties ManagedSecretConfigProperty+instance Prelude.Eq ManagedSecretConfigProperty+instance Prelude.Show ManagedSecretConfigProperty+instance JSON.ToJSON ManagedSecretConfigProperty
+ gen/Stratosphere/DataSync/LocationEFS.hs view
@@ -0,0 +1,95 @@+module Stratosphere.DataSync.LocationEFS (+        module Exports, LocationEFS(..), mkLocationEFS+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.LocationEFS.Ec2ConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data LocationEFS+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html>+    LocationEFS {haddock_workaround_ :: (),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html#cfn-datasync-locationefs-accesspointarn>+                 accessPointArn :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html#cfn-datasync-locationefs-ec2config>+                 ec2Config :: Ec2ConfigProperty,+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html#cfn-datasync-locationefs-efsfilesystemarn>+                 efsFilesystemArn :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html#cfn-datasync-locationefs-filesystemaccessrolearn>+                 fileSystemAccessRoleArn :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html#cfn-datasync-locationefs-intransitencryption>+                 inTransitEncryption :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html#cfn-datasync-locationefs-subdirectory>+                 subdirectory :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationefs.html#cfn-datasync-locationefs-tags>+                 tags :: (Prelude.Maybe [Tag])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkLocationEFS :: Ec2ConfigProperty -> LocationEFS+mkLocationEFS ec2Config+  = LocationEFS+      {haddock_workaround_ = (), ec2Config = ec2Config,+       accessPointArn = Prelude.Nothing,+       efsFilesystemArn = Prelude.Nothing,+       fileSystemAccessRoleArn = Prelude.Nothing,+       inTransitEncryption = Prelude.Nothing,+       subdirectory = Prelude.Nothing, tags = Prelude.Nothing}+instance ToResourceProperties LocationEFS where+  toResourceProperties LocationEFS {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationEFS",+         supportsTags = Prelude.True,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["Ec2Config" JSON..= ec2Config]+                           (Prelude.catMaybes+                              [(JSON..=) "AccessPointArn" Prelude.<$> accessPointArn,+                               (JSON..=) "EfsFilesystemArn" Prelude.<$> efsFilesystemArn,+                               (JSON..=) "FileSystemAccessRoleArn"+                                 Prelude.<$> fileSystemAccessRoleArn,+                               (JSON..=) "InTransitEncryption" Prelude.<$> inTransitEncryption,+                               (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                               (JSON..=) "Tags" Prelude.<$> tags]))}+instance JSON.ToJSON LocationEFS where+  toJSON LocationEFS {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["Ec2Config" JSON..= ec2Config]+              (Prelude.catMaybes+                 [(JSON..=) "AccessPointArn" Prelude.<$> accessPointArn,+                  (JSON..=) "EfsFilesystemArn" Prelude.<$> efsFilesystemArn,+                  (JSON..=) "FileSystemAccessRoleArn"+                    Prelude.<$> fileSystemAccessRoleArn,+                  (JSON..=) "InTransitEncryption" Prelude.<$> inTransitEncryption,+                  (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                  (JSON..=) "Tags" Prelude.<$> tags])))+instance Property "AccessPointArn" LocationEFS where+  type PropertyType "AccessPointArn" LocationEFS = Value Prelude.Text+  set newValue LocationEFS {..}+    = LocationEFS {accessPointArn = Prelude.pure newValue, ..}+instance Property "Ec2Config" LocationEFS where+  type PropertyType "Ec2Config" LocationEFS = Ec2ConfigProperty+  set newValue LocationEFS {..}+    = LocationEFS {ec2Config = newValue, ..}+instance Property "EfsFilesystemArn" LocationEFS where+  type PropertyType "EfsFilesystemArn" LocationEFS = Value Prelude.Text+  set newValue LocationEFS {..}+    = LocationEFS {efsFilesystemArn = Prelude.pure newValue, ..}+instance Property "FileSystemAccessRoleArn" LocationEFS where+  type PropertyType "FileSystemAccessRoleArn" LocationEFS = Value Prelude.Text+  set newValue LocationEFS {..}+    = LocationEFS {fileSystemAccessRoleArn = Prelude.pure newValue, ..}+instance Property "InTransitEncryption" LocationEFS where+  type PropertyType "InTransitEncryption" LocationEFS = Value Prelude.Text+  set newValue LocationEFS {..}+    = LocationEFS {inTransitEncryption = Prelude.pure newValue, ..}+instance Property "Subdirectory" LocationEFS where+  type PropertyType "Subdirectory" LocationEFS = Value Prelude.Text+  set newValue LocationEFS {..}+    = LocationEFS {subdirectory = Prelude.pure newValue, ..}+instance Property "Tags" LocationEFS where+  type PropertyType "Tags" LocationEFS = [Tag]+  set newValue LocationEFS {..}+    = LocationEFS {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationEFS/Ec2ConfigProperty.hs view
@@ -0,0 +1,42 @@+module Stratosphere.DataSync.LocationEFS.Ec2ConfigProperty (+        Ec2ConfigProperty(..), mkEc2ConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data Ec2ConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationefs-ec2config.html>+    Ec2ConfigProperty {haddock_workaround_ :: (),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationefs-ec2config.html#cfn-datasync-locationefs-ec2config-securitygrouparns>+                       securityGroupArns :: (ValueList Prelude.Text),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationefs-ec2config.html#cfn-datasync-locationefs-ec2config-subnetarn>+                       subnetArn :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEc2ConfigProperty ::+  ValueList Prelude.Text -> Value Prelude.Text -> Ec2ConfigProperty+mkEc2ConfigProperty securityGroupArns subnetArn+  = Ec2ConfigProperty+      {haddock_workaround_ = (), securityGroupArns = securityGroupArns,+       subnetArn = subnetArn}+instance ToResourceProperties Ec2ConfigProperty where+  toResourceProperties Ec2ConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationEFS.Ec2Config",+         supportsTags = Prelude.False,+         properties = ["SecurityGroupArns" JSON..= securityGroupArns,+                       "SubnetArn" JSON..= subnetArn]}+instance JSON.ToJSON Ec2ConfigProperty where+  toJSON Ec2ConfigProperty {..}+    = JSON.object+        ["SecurityGroupArns" JSON..= securityGroupArns,+         "SubnetArn" JSON..= subnetArn]+instance Property "SecurityGroupArns" Ec2ConfigProperty where+  type PropertyType "SecurityGroupArns" Ec2ConfigProperty = ValueList Prelude.Text+  set newValue Ec2ConfigProperty {..}+    = Ec2ConfigProperty {securityGroupArns = newValue, ..}+instance Property "SubnetArn" Ec2ConfigProperty where+  type PropertyType "SubnetArn" Ec2ConfigProperty = Value Prelude.Text+  set newValue Ec2ConfigProperty {..}+    = Ec2ConfigProperty {subnetArn = newValue, ..}
+ gen/Stratosphere/DataSync/LocationEFS/Ec2ConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationEFS.Ec2ConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data Ec2ConfigProperty :: Prelude.Type+instance ToResourceProperties Ec2ConfigProperty+instance Prelude.Eq Ec2ConfigProperty+instance Prelude.Show Ec2ConfigProperty+instance JSON.ToJSON Ec2ConfigProperty
+ gen/Stratosphere/DataSync/LocationFSxLustre.hs view
@@ -0,0 +1,65 @@+module Stratosphere.DataSync.LocationFSxLustre (+        LocationFSxLustre(..), mkLocationFSxLustre+    ) 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 LocationFSxLustre+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxlustre.html>+    LocationFSxLustre {haddock_workaround_ :: (),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxlustre.html#cfn-datasync-locationfsxlustre-fsxfilesystemarn>+                       fsxFilesystemArn :: (Prelude.Maybe (Value Prelude.Text)),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxlustre.html#cfn-datasync-locationfsxlustre-securitygrouparns>+                       securityGroupArns :: (ValueList Prelude.Text),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxlustre.html#cfn-datasync-locationfsxlustre-subdirectory>+                       subdirectory :: (Prelude.Maybe (Value Prelude.Text)),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxlustre.html#cfn-datasync-locationfsxlustre-tags>+                       tags :: (Prelude.Maybe [Tag])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkLocationFSxLustre :: ValueList Prelude.Text -> LocationFSxLustre+mkLocationFSxLustre securityGroupArns+  = LocationFSxLustre+      {haddock_workaround_ = (), securityGroupArns = securityGroupArns,+       fsxFilesystemArn = Prelude.Nothing, subdirectory = Prelude.Nothing,+       tags = Prelude.Nothing}+instance ToResourceProperties LocationFSxLustre where+  toResourceProperties LocationFSxLustre {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationFSxLustre",+         supportsTags = Prelude.True,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["SecurityGroupArns" JSON..= securityGroupArns]+                           (Prelude.catMaybes+                              [(JSON..=) "FsxFilesystemArn" Prelude.<$> fsxFilesystemArn,+                               (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                               (JSON..=) "Tags" Prelude.<$> tags]))}+instance JSON.ToJSON LocationFSxLustre where+  toJSON LocationFSxLustre {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["SecurityGroupArns" JSON..= securityGroupArns]+              (Prelude.catMaybes+                 [(JSON..=) "FsxFilesystemArn" Prelude.<$> fsxFilesystemArn,+                  (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                  (JSON..=) "Tags" Prelude.<$> tags])))+instance Property "FsxFilesystemArn" LocationFSxLustre where+  type PropertyType "FsxFilesystemArn" LocationFSxLustre = Value Prelude.Text+  set newValue LocationFSxLustre {..}+    = LocationFSxLustre {fsxFilesystemArn = Prelude.pure newValue, ..}+instance Property "SecurityGroupArns" LocationFSxLustre where+  type PropertyType "SecurityGroupArns" LocationFSxLustre = ValueList Prelude.Text+  set newValue LocationFSxLustre {..}+    = LocationFSxLustre {securityGroupArns = newValue, ..}+instance Property "Subdirectory" LocationFSxLustre where+  type PropertyType "Subdirectory" LocationFSxLustre = Value Prelude.Text+  set newValue LocationFSxLustre {..}+    = LocationFSxLustre {subdirectory = Prelude.pure newValue, ..}+instance Property "Tags" LocationFSxLustre where+  type PropertyType "Tags" LocationFSxLustre = [Tag]+  set newValue LocationFSxLustre {..}+    = LocationFSxLustre {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationFSxONTAP.hs view
@@ -0,0 +1,76 @@+module Stratosphere.DataSync.LocationFSxONTAP (+        module Exports, LocationFSxONTAP(..), mkLocationFSxONTAP+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.LocationFSxONTAP.ProtocolProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data LocationFSxONTAP+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxontap.html>+    LocationFSxONTAP {haddock_workaround_ :: (),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxontap.html#cfn-datasync-locationfsxontap-protocol>+                      protocol :: (Prelude.Maybe ProtocolProperty),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxontap.html#cfn-datasync-locationfsxontap-securitygrouparns>+                      securityGroupArns :: (ValueList Prelude.Text),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxontap.html#cfn-datasync-locationfsxontap-storagevirtualmachinearn>+                      storageVirtualMachineArn :: (Value Prelude.Text),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxontap.html#cfn-datasync-locationfsxontap-subdirectory>+                      subdirectory :: (Prelude.Maybe (Value Prelude.Text)),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxontap.html#cfn-datasync-locationfsxontap-tags>+                      tags :: (Prelude.Maybe [Tag])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkLocationFSxONTAP ::+  ValueList Prelude.Text -> Value Prelude.Text -> LocationFSxONTAP+mkLocationFSxONTAP securityGroupArns storageVirtualMachineArn+  = LocationFSxONTAP+      {haddock_workaround_ = (), securityGroupArns = securityGroupArns,+       storageVirtualMachineArn = storageVirtualMachineArn,+       protocol = Prelude.Nothing, subdirectory = Prelude.Nothing,+       tags = Prelude.Nothing}+instance ToResourceProperties LocationFSxONTAP where+  toResourceProperties LocationFSxONTAP {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationFSxONTAP",+         supportsTags = Prelude.True,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["SecurityGroupArns" JSON..= securityGroupArns,+                            "StorageVirtualMachineArn" JSON..= storageVirtualMachineArn]+                           (Prelude.catMaybes+                              [(JSON..=) "Protocol" Prelude.<$> protocol,+                               (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                               (JSON..=) "Tags" Prelude.<$> tags]))}+instance JSON.ToJSON LocationFSxONTAP where+  toJSON LocationFSxONTAP {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["SecurityGroupArns" JSON..= securityGroupArns,+               "StorageVirtualMachineArn" JSON..= storageVirtualMachineArn]+              (Prelude.catMaybes+                 [(JSON..=) "Protocol" Prelude.<$> protocol,+                  (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                  (JSON..=) "Tags" Prelude.<$> tags])))+instance Property "Protocol" LocationFSxONTAP where+  type PropertyType "Protocol" LocationFSxONTAP = ProtocolProperty+  set newValue LocationFSxONTAP {..}+    = LocationFSxONTAP {protocol = Prelude.pure newValue, ..}+instance Property "SecurityGroupArns" LocationFSxONTAP where+  type PropertyType "SecurityGroupArns" LocationFSxONTAP = ValueList Prelude.Text+  set newValue LocationFSxONTAP {..}+    = LocationFSxONTAP {securityGroupArns = newValue, ..}+instance Property "StorageVirtualMachineArn" LocationFSxONTAP where+  type PropertyType "StorageVirtualMachineArn" LocationFSxONTAP = Value Prelude.Text+  set newValue LocationFSxONTAP {..}+    = LocationFSxONTAP {storageVirtualMachineArn = newValue, ..}+instance Property "Subdirectory" LocationFSxONTAP where+  type PropertyType "Subdirectory" LocationFSxONTAP = Value Prelude.Text+  set newValue LocationFSxONTAP {..}+    = LocationFSxONTAP {subdirectory = Prelude.pure newValue, ..}+instance Property "Tags" LocationFSxONTAP where+  type PropertyType "Tags" LocationFSxONTAP = [Tag]+  set newValue LocationFSxONTAP {..}+    = LocationFSxONTAP {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationFSxONTAP/NFSProperty.hs view
@@ -0,0 +1,31 @@+module Stratosphere.DataSync.LocationFSxONTAP.NFSProperty (+        module Exports, NFSProperty(..), mkNFSProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.LocationFSxONTAP.NfsMountOptionsProperty as Exports+import Stratosphere.ResourceProperties+data NFSProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxontap-nfs.html>+    NFSProperty {haddock_workaround_ :: (),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxontap-nfs.html#cfn-datasync-locationfsxontap-nfs-mountoptions>+                 mountOptions :: NfsMountOptionsProperty}+  deriving stock (Prelude.Eq, Prelude.Show)+mkNFSProperty :: NfsMountOptionsProperty -> NFSProperty+mkNFSProperty mountOptions+  = NFSProperty+      {haddock_workaround_ = (), mountOptions = mountOptions}+instance ToResourceProperties NFSProperty where+  toResourceProperties NFSProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationFSxONTAP.NFS",+         supportsTags = Prelude.False,+         properties = ["MountOptions" JSON..= mountOptions]}+instance JSON.ToJSON NFSProperty where+  toJSON NFSProperty {..}+    = JSON.object ["MountOptions" JSON..= mountOptions]+instance Property "MountOptions" NFSProperty where+  type PropertyType "MountOptions" NFSProperty = NfsMountOptionsProperty+  set newValue NFSProperty {..}+    = NFSProperty {mountOptions = newValue, ..}
+ gen/Stratosphere/DataSync/LocationFSxONTAP/NFSProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationFSxONTAP.NFSProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data NFSProperty :: Prelude.Type+instance ToResourceProperties NFSProperty+instance Prelude.Eq NFSProperty+instance Prelude.Show NFSProperty+instance JSON.ToJSON NFSProperty
+ gen/Stratosphere/DataSync/LocationFSxONTAP/NfsMountOptionsProperty.hs view
@@ -0,0 +1,34 @@+module Stratosphere.DataSync.LocationFSxONTAP.NfsMountOptionsProperty (+        NfsMountOptionsProperty(..), mkNfsMountOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data NfsMountOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxontap-nfsmountoptions.html>+    NfsMountOptionsProperty {haddock_workaround_ :: (),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxontap-nfsmountoptions.html#cfn-datasync-locationfsxontap-nfsmountoptions-version>+                             version :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkNfsMountOptionsProperty :: NfsMountOptionsProperty+mkNfsMountOptionsProperty+  = NfsMountOptionsProperty+      {haddock_workaround_ = (), version = Prelude.Nothing}+instance ToResourceProperties NfsMountOptionsProperty where+  toResourceProperties NfsMountOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationFSxONTAP.NfsMountOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes [(JSON..=) "Version" Prelude.<$> version])}+instance JSON.ToJSON NfsMountOptionsProperty where+  toJSON NfsMountOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes [(JSON..=) "Version" Prelude.<$> version]))+instance Property "Version" NfsMountOptionsProperty where+  type PropertyType "Version" NfsMountOptionsProperty = Value Prelude.Text+  set newValue NfsMountOptionsProperty {..}+    = NfsMountOptionsProperty {version = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationFSxONTAP/NfsMountOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationFSxONTAP.NfsMountOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data NfsMountOptionsProperty :: Prelude.Type+instance ToResourceProperties NfsMountOptionsProperty+instance Prelude.Eq NfsMountOptionsProperty+instance Prelude.Show NfsMountOptionsProperty+instance JSON.ToJSON NfsMountOptionsProperty
+ gen/Stratosphere/DataSync/LocationFSxONTAP/ProtocolProperty.hs view
@@ -0,0 +1,46 @@+module Stratosphere.DataSync.LocationFSxONTAP.ProtocolProperty (+        module Exports, ProtocolProperty(..), mkProtocolProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.LocationFSxONTAP.NFSProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.LocationFSxONTAP.SMBProperty as Exports+import Stratosphere.ResourceProperties+data ProtocolProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxontap-protocol.html>+    ProtocolProperty {haddock_workaround_ :: (),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxontap-protocol.html#cfn-datasync-locationfsxontap-protocol-nfs>+                      nFS :: (Prelude.Maybe NFSProperty),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxontap-protocol.html#cfn-datasync-locationfsxontap-protocol-smb>+                      sMB :: (Prelude.Maybe SMBProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkProtocolProperty :: ProtocolProperty+mkProtocolProperty+  = ProtocolProperty+      {haddock_workaround_ = (), nFS = Prelude.Nothing,+       sMB = Prelude.Nothing}+instance ToResourceProperties ProtocolProperty where+  toResourceProperties ProtocolProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationFSxONTAP.Protocol",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "NFS" Prelude.<$> nFS,+                            (JSON..=) "SMB" Prelude.<$> sMB])}+instance JSON.ToJSON ProtocolProperty where+  toJSON ProtocolProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "NFS" Prelude.<$> nFS,+               (JSON..=) "SMB" Prelude.<$> sMB]))+instance Property "NFS" ProtocolProperty where+  type PropertyType "NFS" ProtocolProperty = NFSProperty+  set newValue ProtocolProperty {..}+    = ProtocolProperty {nFS = Prelude.pure newValue, ..}+instance Property "SMB" ProtocolProperty where+  type PropertyType "SMB" ProtocolProperty = SMBProperty+  set newValue ProtocolProperty {..}+    = ProtocolProperty {sMB = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationFSxONTAP/ProtocolProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationFSxONTAP.ProtocolProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ProtocolProperty :: Prelude.Type+instance ToResourceProperties ProtocolProperty+instance Prelude.Eq ProtocolProperty+instance Prelude.Show ProtocolProperty+instance JSON.ToJSON ProtocolProperty
+ gen/Stratosphere/DataSync/LocationFSxONTAP/SMBProperty.hs view
@@ -0,0 +1,61 @@+module Stratosphere.DataSync.LocationFSxONTAP.SMBProperty (+        module Exports, SMBProperty(..), mkSMBProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.LocationFSxONTAP.SmbMountOptionsProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SMBProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxontap-smb.html>+    SMBProperty {haddock_workaround_ :: (),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxontap-smb.html#cfn-datasync-locationfsxontap-smb-domain>+                 domain :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxontap-smb.html#cfn-datasync-locationfsxontap-smb-mountoptions>+                 mountOptions :: SmbMountOptionsProperty,+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxontap-smb.html#cfn-datasync-locationfsxontap-smb-password>+                 password :: (Value Prelude.Text),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxontap-smb.html#cfn-datasync-locationfsxontap-smb-user>+                 user :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSMBProperty ::+  SmbMountOptionsProperty+  -> Value Prelude.Text -> Value Prelude.Text -> SMBProperty+mkSMBProperty mountOptions password user+  = SMBProperty+      {haddock_workaround_ = (), mountOptions = mountOptions,+       password = password, user = user, domain = Prelude.Nothing}+instance ToResourceProperties SMBProperty where+  toResourceProperties SMBProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationFSxONTAP.SMB",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["MountOptions" JSON..= mountOptions, "Password" JSON..= password,+                            "User" JSON..= user]+                           (Prelude.catMaybes [(JSON..=) "Domain" Prelude.<$> domain]))}+instance JSON.ToJSON SMBProperty where+  toJSON SMBProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["MountOptions" JSON..= mountOptions, "Password" JSON..= password,+               "User" JSON..= user]+              (Prelude.catMaybes [(JSON..=) "Domain" Prelude.<$> domain])))+instance Property "Domain" SMBProperty where+  type PropertyType "Domain" SMBProperty = Value Prelude.Text+  set newValue SMBProperty {..}+    = SMBProperty {domain = Prelude.pure newValue, ..}+instance Property "MountOptions" SMBProperty where+  type PropertyType "MountOptions" SMBProperty = SmbMountOptionsProperty+  set newValue SMBProperty {..}+    = SMBProperty {mountOptions = newValue, ..}+instance Property "Password" SMBProperty where+  type PropertyType "Password" SMBProperty = Value Prelude.Text+  set newValue SMBProperty {..}+    = SMBProperty {password = newValue, ..}+instance Property "User" SMBProperty where+  type PropertyType "User" SMBProperty = Value Prelude.Text+  set newValue SMBProperty {..} = SMBProperty {user = newValue, ..}
+ gen/Stratosphere/DataSync/LocationFSxONTAP/SMBProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationFSxONTAP.SMBProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SMBProperty :: Prelude.Type+instance ToResourceProperties SMBProperty+instance Prelude.Eq SMBProperty+instance Prelude.Show SMBProperty+instance JSON.ToJSON SMBProperty
+ gen/Stratosphere/DataSync/LocationFSxONTAP/SmbMountOptionsProperty.hs view
@@ -0,0 +1,34 @@+module Stratosphere.DataSync.LocationFSxONTAP.SmbMountOptionsProperty (+        SmbMountOptionsProperty(..), mkSmbMountOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SmbMountOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxontap-smbmountoptions.html>+    SmbMountOptionsProperty {haddock_workaround_ :: (),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxontap-smbmountoptions.html#cfn-datasync-locationfsxontap-smbmountoptions-version>+                             version :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSmbMountOptionsProperty :: SmbMountOptionsProperty+mkSmbMountOptionsProperty+  = SmbMountOptionsProperty+      {haddock_workaround_ = (), version = Prelude.Nothing}+instance ToResourceProperties SmbMountOptionsProperty where+  toResourceProperties SmbMountOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationFSxONTAP.SmbMountOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes [(JSON..=) "Version" Prelude.<$> version])}+instance JSON.ToJSON SmbMountOptionsProperty where+  toJSON SmbMountOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes [(JSON..=) "Version" Prelude.<$> version]))+instance Property "Version" SmbMountOptionsProperty where+  type PropertyType "Version" SmbMountOptionsProperty = Value Prelude.Text+  set newValue SmbMountOptionsProperty {..}+    = SmbMountOptionsProperty {version = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationFSxONTAP/SmbMountOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationFSxONTAP.SmbMountOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SmbMountOptionsProperty :: Prelude.Type+instance ToResourceProperties SmbMountOptionsProperty+instance Prelude.Eq SmbMountOptionsProperty+instance Prelude.Show SmbMountOptionsProperty+instance JSON.ToJSON SmbMountOptionsProperty
+ gen/Stratosphere/DataSync/LocationFSxOpenZFS.hs view
@@ -0,0 +1,76 @@+module Stratosphere.DataSync.LocationFSxOpenZFS (+        module Exports, LocationFSxOpenZFS(..), mkLocationFSxOpenZFS+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.LocationFSxOpenZFS.ProtocolProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data LocationFSxOpenZFS+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxopenzfs.html>+    LocationFSxOpenZFS {haddock_workaround_ :: (),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxopenzfs.html#cfn-datasync-locationfsxopenzfs-fsxfilesystemarn>+                        fsxFilesystemArn :: (Prelude.Maybe (Value Prelude.Text)),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxopenzfs.html#cfn-datasync-locationfsxopenzfs-protocol>+                        protocol :: ProtocolProperty,+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxopenzfs.html#cfn-datasync-locationfsxopenzfs-securitygrouparns>+                        securityGroupArns :: (ValueList Prelude.Text),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxopenzfs.html#cfn-datasync-locationfsxopenzfs-subdirectory>+                        subdirectory :: (Prelude.Maybe (Value Prelude.Text)),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxopenzfs.html#cfn-datasync-locationfsxopenzfs-tags>+                        tags :: (Prelude.Maybe [Tag])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkLocationFSxOpenZFS ::+  ProtocolProperty -> ValueList Prelude.Text -> LocationFSxOpenZFS+mkLocationFSxOpenZFS protocol securityGroupArns+  = LocationFSxOpenZFS+      {haddock_workaround_ = (), protocol = protocol,+       securityGroupArns = securityGroupArns,+       fsxFilesystemArn = Prelude.Nothing, subdirectory = Prelude.Nothing,+       tags = Prelude.Nothing}+instance ToResourceProperties LocationFSxOpenZFS where+  toResourceProperties LocationFSxOpenZFS {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationFSxOpenZFS",+         supportsTags = Prelude.True,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["Protocol" JSON..= protocol,+                            "SecurityGroupArns" JSON..= securityGroupArns]+                           (Prelude.catMaybes+                              [(JSON..=) "FsxFilesystemArn" Prelude.<$> fsxFilesystemArn,+                               (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                               (JSON..=) "Tags" Prelude.<$> tags]))}+instance JSON.ToJSON LocationFSxOpenZFS where+  toJSON LocationFSxOpenZFS {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["Protocol" JSON..= protocol,+               "SecurityGroupArns" JSON..= securityGroupArns]+              (Prelude.catMaybes+                 [(JSON..=) "FsxFilesystemArn" Prelude.<$> fsxFilesystemArn,+                  (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                  (JSON..=) "Tags" Prelude.<$> tags])))+instance Property "FsxFilesystemArn" LocationFSxOpenZFS where+  type PropertyType "FsxFilesystemArn" LocationFSxOpenZFS = Value Prelude.Text+  set newValue LocationFSxOpenZFS {..}+    = LocationFSxOpenZFS {fsxFilesystemArn = Prelude.pure newValue, ..}+instance Property "Protocol" LocationFSxOpenZFS where+  type PropertyType "Protocol" LocationFSxOpenZFS = ProtocolProperty+  set newValue LocationFSxOpenZFS {..}+    = LocationFSxOpenZFS {protocol = newValue, ..}+instance Property "SecurityGroupArns" LocationFSxOpenZFS where+  type PropertyType "SecurityGroupArns" LocationFSxOpenZFS = ValueList Prelude.Text+  set newValue LocationFSxOpenZFS {..}+    = LocationFSxOpenZFS {securityGroupArns = newValue, ..}+instance Property "Subdirectory" LocationFSxOpenZFS where+  type PropertyType "Subdirectory" LocationFSxOpenZFS = Value Prelude.Text+  set newValue LocationFSxOpenZFS {..}+    = LocationFSxOpenZFS {subdirectory = Prelude.pure newValue, ..}+instance Property "Tags" LocationFSxOpenZFS where+  type PropertyType "Tags" LocationFSxOpenZFS = [Tag]+  set newValue LocationFSxOpenZFS {..}+    = LocationFSxOpenZFS {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationFSxOpenZFS/MountOptionsProperty.hs view
@@ -0,0 +1,34 @@+module Stratosphere.DataSync.LocationFSxOpenZFS.MountOptionsProperty (+        MountOptionsProperty(..), mkMountOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data MountOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxopenzfs-mountoptions.html>+    MountOptionsProperty {haddock_workaround_ :: (),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxopenzfs-mountoptions.html#cfn-datasync-locationfsxopenzfs-mountoptions-version>+                          version :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkMountOptionsProperty :: MountOptionsProperty+mkMountOptionsProperty+  = MountOptionsProperty+      {haddock_workaround_ = (), version = Prelude.Nothing}+instance ToResourceProperties MountOptionsProperty where+  toResourceProperties MountOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationFSxOpenZFS.MountOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes [(JSON..=) "Version" Prelude.<$> version])}+instance JSON.ToJSON MountOptionsProperty where+  toJSON MountOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes [(JSON..=) "Version" Prelude.<$> version]))+instance Property "Version" MountOptionsProperty where+  type PropertyType "Version" MountOptionsProperty = Value Prelude.Text+  set newValue MountOptionsProperty {..}+    = MountOptionsProperty {version = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationFSxOpenZFS/MountOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationFSxOpenZFS.MountOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data MountOptionsProperty :: Prelude.Type+instance ToResourceProperties MountOptionsProperty+instance Prelude.Eq MountOptionsProperty+instance Prelude.Show MountOptionsProperty+instance JSON.ToJSON MountOptionsProperty
+ gen/Stratosphere/DataSync/LocationFSxOpenZFS/NFSProperty.hs view
@@ -0,0 +1,31 @@+module Stratosphere.DataSync.LocationFSxOpenZFS.NFSProperty (+        module Exports, NFSProperty(..), mkNFSProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.LocationFSxOpenZFS.MountOptionsProperty as Exports+import Stratosphere.ResourceProperties+data NFSProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxopenzfs-nfs.html>+    NFSProperty {haddock_workaround_ :: (),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxopenzfs-nfs.html#cfn-datasync-locationfsxopenzfs-nfs-mountoptions>+                 mountOptions :: MountOptionsProperty}+  deriving stock (Prelude.Eq, Prelude.Show)+mkNFSProperty :: MountOptionsProperty -> NFSProperty+mkNFSProperty mountOptions+  = NFSProperty+      {haddock_workaround_ = (), mountOptions = mountOptions}+instance ToResourceProperties NFSProperty where+  toResourceProperties NFSProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationFSxOpenZFS.NFS",+         supportsTags = Prelude.False,+         properties = ["MountOptions" JSON..= mountOptions]}+instance JSON.ToJSON NFSProperty where+  toJSON NFSProperty {..}+    = JSON.object ["MountOptions" JSON..= mountOptions]+instance Property "MountOptions" NFSProperty where+  type PropertyType "MountOptions" NFSProperty = MountOptionsProperty+  set newValue NFSProperty {..}+    = NFSProperty {mountOptions = newValue, ..}
+ gen/Stratosphere/DataSync/LocationFSxOpenZFS/NFSProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationFSxOpenZFS.NFSProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data NFSProperty :: Prelude.Type+instance ToResourceProperties NFSProperty+instance Prelude.Eq NFSProperty+instance Prelude.Show NFSProperty+instance JSON.ToJSON NFSProperty
+ gen/Stratosphere/DataSync/LocationFSxOpenZFS/ProtocolProperty.hs view
@@ -0,0 +1,34 @@+module Stratosphere.DataSync.LocationFSxOpenZFS.ProtocolProperty (+        module Exports, ProtocolProperty(..), mkProtocolProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.LocationFSxOpenZFS.NFSProperty as Exports+import Stratosphere.ResourceProperties+data ProtocolProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxopenzfs-protocol.html>+    ProtocolProperty {haddock_workaround_ :: (),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationfsxopenzfs-protocol.html#cfn-datasync-locationfsxopenzfs-protocol-nfs>+                      nFS :: (Prelude.Maybe NFSProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkProtocolProperty :: ProtocolProperty+mkProtocolProperty+  = ProtocolProperty+      {haddock_workaround_ = (), nFS = Prelude.Nothing}+instance ToResourceProperties ProtocolProperty where+  toResourceProperties ProtocolProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationFSxOpenZFS.Protocol",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes [(JSON..=) "NFS" Prelude.<$> nFS])}+instance JSON.ToJSON ProtocolProperty where+  toJSON ProtocolProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes [(JSON..=) "NFS" Prelude.<$> nFS]))+instance Property "NFS" ProtocolProperty where+  type PropertyType "NFS" ProtocolProperty = NFSProperty+  set newValue ProtocolProperty {..}+    = ProtocolProperty {nFS = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationFSxOpenZFS/ProtocolProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationFSxOpenZFS.ProtocolProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ProtocolProperty :: Prelude.Type+instance ToResourceProperties ProtocolProperty+instance Prelude.Eq ProtocolProperty+instance Prelude.Show ProtocolProperty+instance JSON.ToJSON ProtocolProperty
+ gen/Stratosphere/DataSync/LocationFSxWindows.hs view
@@ -0,0 +1,91 @@+module Stratosphere.DataSync.LocationFSxWindows (+        LocationFSxWindows(..), mkLocationFSxWindows+    ) 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 LocationFSxWindows+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html>+    LocationFSxWindows {haddock_workaround_ :: (),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html#cfn-datasync-locationfsxwindows-domain>+                        domain :: (Prelude.Maybe (Value Prelude.Text)),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html#cfn-datasync-locationfsxwindows-fsxfilesystemarn>+                        fsxFilesystemArn :: (Prelude.Maybe (Value Prelude.Text)),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html#cfn-datasync-locationfsxwindows-password>+                        password :: (Prelude.Maybe (Value Prelude.Text)),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html#cfn-datasync-locationfsxwindows-securitygrouparns>+                        securityGroupArns :: (ValueList Prelude.Text),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html#cfn-datasync-locationfsxwindows-subdirectory>+                        subdirectory :: (Prelude.Maybe (Value Prelude.Text)),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html#cfn-datasync-locationfsxwindows-tags>+                        tags :: (Prelude.Maybe [Tag]),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationfsxwindows.html#cfn-datasync-locationfsxwindows-user>+                        user :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkLocationFSxWindows ::+  ValueList Prelude.Text -> Value Prelude.Text -> LocationFSxWindows+mkLocationFSxWindows securityGroupArns user+  = LocationFSxWindows+      {haddock_workaround_ = (), securityGroupArns = securityGroupArns,+       user = user, domain = Prelude.Nothing,+       fsxFilesystemArn = Prelude.Nothing, password = Prelude.Nothing,+       subdirectory = Prelude.Nothing, tags = Prelude.Nothing}+instance ToResourceProperties LocationFSxWindows where+  toResourceProperties LocationFSxWindows {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationFSxWindows",+         supportsTags = Prelude.True,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["SecurityGroupArns" JSON..= securityGroupArns,+                            "User" JSON..= user]+                           (Prelude.catMaybes+                              [(JSON..=) "Domain" Prelude.<$> domain,+                               (JSON..=) "FsxFilesystemArn" Prelude.<$> fsxFilesystemArn,+                               (JSON..=) "Password" Prelude.<$> password,+                               (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                               (JSON..=) "Tags" Prelude.<$> tags]))}+instance JSON.ToJSON LocationFSxWindows where+  toJSON LocationFSxWindows {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["SecurityGroupArns" JSON..= securityGroupArns,+               "User" JSON..= user]+              (Prelude.catMaybes+                 [(JSON..=) "Domain" Prelude.<$> domain,+                  (JSON..=) "FsxFilesystemArn" Prelude.<$> fsxFilesystemArn,+                  (JSON..=) "Password" Prelude.<$> password,+                  (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                  (JSON..=) "Tags" Prelude.<$> tags])))+instance Property "Domain" LocationFSxWindows where+  type PropertyType "Domain" LocationFSxWindows = Value Prelude.Text+  set newValue LocationFSxWindows {..}+    = LocationFSxWindows {domain = Prelude.pure newValue, ..}+instance Property "FsxFilesystemArn" LocationFSxWindows where+  type PropertyType "FsxFilesystemArn" LocationFSxWindows = Value Prelude.Text+  set newValue LocationFSxWindows {..}+    = LocationFSxWindows {fsxFilesystemArn = Prelude.pure newValue, ..}+instance Property "Password" LocationFSxWindows where+  type PropertyType "Password" LocationFSxWindows = Value Prelude.Text+  set newValue LocationFSxWindows {..}+    = LocationFSxWindows {password = Prelude.pure newValue, ..}+instance Property "SecurityGroupArns" LocationFSxWindows where+  type PropertyType "SecurityGroupArns" LocationFSxWindows = ValueList Prelude.Text+  set newValue LocationFSxWindows {..}+    = LocationFSxWindows {securityGroupArns = newValue, ..}+instance Property "Subdirectory" LocationFSxWindows where+  type PropertyType "Subdirectory" LocationFSxWindows = Value Prelude.Text+  set newValue LocationFSxWindows {..}+    = LocationFSxWindows {subdirectory = Prelude.pure newValue, ..}+instance Property "Tags" LocationFSxWindows where+  type PropertyType "Tags" LocationFSxWindows = [Tag]+  set newValue LocationFSxWindows {..}+    = LocationFSxWindows {tags = Prelude.pure newValue, ..}+instance Property "User" LocationFSxWindows where+  type PropertyType "User" LocationFSxWindows = Value Prelude.Text+  set newValue LocationFSxWindows {..}+    = LocationFSxWindows {user = newValue, ..}
+ gen/Stratosphere/DataSync/LocationHDFS.hs view
@@ -0,0 +1,147 @@+module Stratosphere.DataSync.LocationHDFS (+        module Exports, LocationHDFS(..), mkLocationHDFS+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.LocationHDFS.NameNodeProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.LocationHDFS.QopConfigurationProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data LocationHDFS+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html>+    LocationHDFS {haddock_workaround_ :: (),+                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html#cfn-datasync-locationhdfs-agentarns>+                  agentArns :: (ValueList Prelude.Text),+                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html#cfn-datasync-locationhdfs-authenticationtype>+                  authenticationType :: (Value Prelude.Text),+                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html#cfn-datasync-locationhdfs-blocksize>+                  blockSize :: (Prelude.Maybe (Value Prelude.Integer)),+                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html#cfn-datasync-locationhdfs-kerberoskeytab>+                  kerberosKeytab :: (Prelude.Maybe (Value Prelude.Text)),+                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html#cfn-datasync-locationhdfs-kerberoskrb5conf>+                  kerberosKrb5Conf :: (Prelude.Maybe (Value Prelude.Text)),+                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html#cfn-datasync-locationhdfs-kerberosprincipal>+                  kerberosPrincipal :: (Prelude.Maybe (Value Prelude.Text)),+                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html#cfn-datasync-locationhdfs-kmskeyprovideruri>+                  kmsKeyProviderUri :: (Prelude.Maybe (Value Prelude.Text)),+                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html#cfn-datasync-locationhdfs-namenodes>+                  nameNodes :: [NameNodeProperty],+                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html#cfn-datasync-locationhdfs-qopconfiguration>+                  qopConfiguration :: (Prelude.Maybe QopConfigurationProperty),+                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html#cfn-datasync-locationhdfs-replicationfactor>+                  replicationFactor :: (Prelude.Maybe (Value Prelude.Integer)),+                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html#cfn-datasync-locationhdfs-simpleuser>+                  simpleUser :: (Prelude.Maybe (Value Prelude.Text)),+                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html#cfn-datasync-locationhdfs-subdirectory>+                  subdirectory :: (Prelude.Maybe (Value Prelude.Text)),+                  -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationhdfs.html#cfn-datasync-locationhdfs-tags>+                  tags :: (Prelude.Maybe [Tag])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkLocationHDFS ::+  ValueList Prelude.Text+  -> Value Prelude.Text -> [NameNodeProperty] -> LocationHDFS+mkLocationHDFS agentArns authenticationType nameNodes+  = LocationHDFS+      {haddock_workaround_ = (), agentArns = agentArns,+       authenticationType = authenticationType, nameNodes = nameNodes,+       blockSize = Prelude.Nothing, kerberosKeytab = Prelude.Nothing,+       kerberosKrb5Conf = Prelude.Nothing,+       kerberosPrincipal = Prelude.Nothing,+       kmsKeyProviderUri = Prelude.Nothing,+       qopConfiguration = Prelude.Nothing,+       replicationFactor = Prelude.Nothing, simpleUser = Prelude.Nothing,+       subdirectory = Prelude.Nothing, tags = Prelude.Nothing}+instance ToResourceProperties LocationHDFS where+  toResourceProperties LocationHDFS {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationHDFS",+         supportsTags = Prelude.True,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["AgentArns" JSON..= agentArns,+                            "AuthenticationType" JSON..= authenticationType,+                            "NameNodes" JSON..= nameNodes]+                           (Prelude.catMaybes+                              [(JSON..=) "BlockSize" Prelude.<$> blockSize,+                               (JSON..=) "KerberosKeytab" Prelude.<$> kerberosKeytab,+                               (JSON..=) "KerberosKrb5Conf" Prelude.<$> kerberosKrb5Conf,+                               (JSON..=) "KerberosPrincipal" Prelude.<$> kerberosPrincipal,+                               (JSON..=) "KmsKeyProviderUri" Prelude.<$> kmsKeyProviderUri,+                               (JSON..=) "QopConfiguration" Prelude.<$> qopConfiguration,+                               (JSON..=) "ReplicationFactor" Prelude.<$> replicationFactor,+                               (JSON..=) "SimpleUser" Prelude.<$> simpleUser,+                               (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                               (JSON..=) "Tags" Prelude.<$> tags]))}+instance JSON.ToJSON LocationHDFS where+  toJSON LocationHDFS {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["AgentArns" JSON..= agentArns,+               "AuthenticationType" JSON..= authenticationType,+               "NameNodes" JSON..= nameNodes]+              (Prelude.catMaybes+                 [(JSON..=) "BlockSize" Prelude.<$> blockSize,+                  (JSON..=) "KerberosKeytab" Prelude.<$> kerberosKeytab,+                  (JSON..=) "KerberosKrb5Conf" Prelude.<$> kerberosKrb5Conf,+                  (JSON..=) "KerberosPrincipal" Prelude.<$> kerberosPrincipal,+                  (JSON..=) "KmsKeyProviderUri" Prelude.<$> kmsKeyProviderUri,+                  (JSON..=) "QopConfiguration" Prelude.<$> qopConfiguration,+                  (JSON..=) "ReplicationFactor" Prelude.<$> replicationFactor,+                  (JSON..=) "SimpleUser" Prelude.<$> simpleUser,+                  (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                  (JSON..=) "Tags" Prelude.<$> tags])))+instance Property "AgentArns" LocationHDFS where+  type PropertyType "AgentArns" LocationHDFS = ValueList Prelude.Text+  set newValue LocationHDFS {..}+    = LocationHDFS {agentArns = newValue, ..}+instance Property "AuthenticationType" LocationHDFS where+  type PropertyType "AuthenticationType" LocationHDFS = Value Prelude.Text+  set newValue LocationHDFS {..}+    = LocationHDFS {authenticationType = newValue, ..}+instance Property "BlockSize" LocationHDFS where+  type PropertyType "BlockSize" LocationHDFS = Value Prelude.Integer+  set newValue LocationHDFS {..}+    = LocationHDFS {blockSize = Prelude.pure newValue, ..}+instance Property "KerberosKeytab" LocationHDFS where+  type PropertyType "KerberosKeytab" LocationHDFS = Value Prelude.Text+  set newValue LocationHDFS {..}+    = LocationHDFS {kerberosKeytab = Prelude.pure newValue, ..}+instance Property "KerberosKrb5Conf" LocationHDFS where+  type PropertyType "KerberosKrb5Conf" LocationHDFS = Value Prelude.Text+  set newValue LocationHDFS {..}+    = LocationHDFS {kerberosKrb5Conf = Prelude.pure newValue, ..}+instance Property "KerberosPrincipal" LocationHDFS where+  type PropertyType "KerberosPrincipal" LocationHDFS = Value Prelude.Text+  set newValue LocationHDFS {..}+    = LocationHDFS {kerberosPrincipal = Prelude.pure newValue, ..}+instance Property "KmsKeyProviderUri" LocationHDFS where+  type PropertyType "KmsKeyProviderUri" LocationHDFS = Value Prelude.Text+  set newValue LocationHDFS {..}+    = LocationHDFS {kmsKeyProviderUri = Prelude.pure newValue, ..}+instance Property "NameNodes" LocationHDFS where+  type PropertyType "NameNodes" LocationHDFS = [NameNodeProperty]+  set newValue LocationHDFS {..}+    = LocationHDFS {nameNodes = newValue, ..}+instance Property "QopConfiguration" LocationHDFS where+  type PropertyType "QopConfiguration" LocationHDFS = QopConfigurationProperty+  set newValue LocationHDFS {..}+    = LocationHDFS {qopConfiguration = Prelude.pure newValue, ..}+instance Property "ReplicationFactor" LocationHDFS where+  type PropertyType "ReplicationFactor" LocationHDFS = Value Prelude.Integer+  set newValue LocationHDFS {..}+    = LocationHDFS {replicationFactor = Prelude.pure newValue, ..}+instance Property "SimpleUser" LocationHDFS where+  type PropertyType "SimpleUser" LocationHDFS = Value Prelude.Text+  set newValue LocationHDFS {..}+    = LocationHDFS {simpleUser = Prelude.pure newValue, ..}+instance Property "Subdirectory" LocationHDFS where+  type PropertyType "Subdirectory" LocationHDFS = Value Prelude.Text+  set newValue LocationHDFS {..}+    = LocationHDFS {subdirectory = Prelude.pure newValue, ..}+instance Property "Tags" LocationHDFS where+  type PropertyType "Tags" LocationHDFS = [Tag]+  set newValue LocationHDFS {..}+    = LocationHDFS {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationHDFS/NameNodeProperty.hs view
@@ -0,0 +1,38 @@+module Stratosphere.DataSync.LocationHDFS.NameNodeProperty (+        NameNodeProperty(..), mkNameNodeProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data NameNodeProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationhdfs-namenode.html>+    NameNodeProperty {haddock_workaround_ :: (),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationhdfs-namenode.html#cfn-datasync-locationhdfs-namenode-hostname>+                      hostname :: (Value Prelude.Text),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationhdfs-namenode.html#cfn-datasync-locationhdfs-namenode-port>+                      port :: (Value Prelude.Integer)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkNameNodeProperty ::+  Value Prelude.Text -> Value Prelude.Integer -> NameNodeProperty+mkNameNodeProperty hostname port+  = NameNodeProperty+      {haddock_workaround_ = (), hostname = hostname, port = port}+instance ToResourceProperties NameNodeProperty where+  toResourceProperties NameNodeProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationHDFS.NameNode",+         supportsTags = Prelude.False,+         properties = ["Hostname" JSON..= hostname, "Port" JSON..= port]}+instance JSON.ToJSON NameNodeProperty where+  toJSON NameNodeProperty {..}+    = JSON.object ["Hostname" JSON..= hostname, "Port" JSON..= port]+instance Property "Hostname" NameNodeProperty where+  type PropertyType "Hostname" NameNodeProperty = Value Prelude.Text+  set newValue NameNodeProperty {..}+    = NameNodeProperty {hostname = newValue, ..}+instance Property "Port" NameNodeProperty where+  type PropertyType "Port" NameNodeProperty = Value Prelude.Integer+  set newValue NameNodeProperty {..}+    = NameNodeProperty {port = newValue, ..}
+ gen/Stratosphere/DataSync/LocationHDFS/NameNodeProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationHDFS.NameNodeProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data NameNodeProperty :: Prelude.Type+instance ToResourceProperties NameNodeProperty+instance Prelude.Eq NameNodeProperty+instance Prelude.Show NameNodeProperty+instance JSON.ToJSON NameNodeProperty
+ gen/Stratosphere/DataSync/LocationHDFS/QopConfigurationProperty.hs view
@@ -0,0 +1,50 @@+module Stratosphere.DataSync.LocationHDFS.QopConfigurationProperty (+        QopConfigurationProperty(..), mkQopConfigurationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data QopConfigurationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationhdfs-qopconfiguration.html>+    QopConfigurationProperty {haddock_workaround_ :: (),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationhdfs-qopconfiguration.html#cfn-datasync-locationhdfs-qopconfiguration-datatransferprotection>+                              dataTransferProtection :: (Prelude.Maybe (Value Prelude.Text)),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationhdfs-qopconfiguration.html#cfn-datasync-locationhdfs-qopconfiguration-rpcprotection>+                              rpcProtection :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkQopConfigurationProperty :: QopConfigurationProperty+mkQopConfigurationProperty+  = QopConfigurationProperty+      {haddock_workaround_ = (),+       dataTransferProtection = Prelude.Nothing,+       rpcProtection = Prelude.Nothing}+instance ToResourceProperties QopConfigurationProperty where+  toResourceProperties QopConfigurationProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationHDFS.QopConfiguration",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "DataTransferProtection"+                              Prelude.<$> dataTransferProtection,+                            (JSON..=) "RpcProtection" Prelude.<$> rpcProtection])}+instance JSON.ToJSON QopConfigurationProperty where+  toJSON QopConfigurationProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "DataTransferProtection"+                 Prelude.<$> dataTransferProtection,+               (JSON..=) "RpcProtection" Prelude.<$> rpcProtection]))+instance Property "DataTransferProtection" QopConfigurationProperty where+  type PropertyType "DataTransferProtection" QopConfigurationProperty = Value Prelude.Text+  set newValue QopConfigurationProperty {..}+    = QopConfigurationProperty+        {dataTransferProtection = Prelude.pure newValue, ..}+instance Property "RpcProtection" QopConfigurationProperty where+  type PropertyType "RpcProtection" QopConfigurationProperty = Value Prelude.Text+  set newValue QopConfigurationProperty {..}+    = QopConfigurationProperty+        {rpcProtection = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationHDFS/QopConfigurationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationHDFS.QopConfigurationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data QopConfigurationProperty :: Prelude.Type+instance ToResourceProperties QopConfigurationProperty+instance Prelude.Eq QopConfigurationProperty+instance Prelude.Show QopConfigurationProperty+instance JSON.ToJSON QopConfigurationProperty
+ gen/Stratosphere/DataSync/LocationNFS.hs view
@@ -0,0 +1,75 @@+module Stratosphere.DataSync.LocationNFS (+        module Exports, LocationNFS(..), mkLocationNFS+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.LocationNFS.MountOptionsProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.LocationNFS.OnPremConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data LocationNFS+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html>+    LocationNFS {haddock_workaround_ :: (),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html#cfn-datasync-locationnfs-mountoptions>+                 mountOptions :: (Prelude.Maybe MountOptionsProperty),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html#cfn-datasync-locationnfs-onpremconfig>+                 onPremConfig :: OnPremConfigProperty,+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html#cfn-datasync-locationnfs-serverhostname>+                 serverHostname :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html#cfn-datasync-locationnfs-subdirectory>+                 subdirectory :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html#cfn-datasync-locationnfs-tags>+                 tags :: (Prelude.Maybe [Tag])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkLocationNFS :: OnPremConfigProperty -> LocationNFS+mkLocationNFS onPremConfig+  = LocationNFS+      {haddock_workaround_ = (), onPremConfig = onPremConfig,+       mountOptions = Prelude.Nothing, serverHostname = Prelude.Nothing,+       subdirectory = Prelude.Nothing, tags = Prelude.Nothing}+instance ToResourceProperties LocationNFS where+  toResourceProperties LocationNFS {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationNFS",+         supportsTags = Prelude.True,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["OnPremConfig" JSON..= onPremConfig]+                           (Prelude.catMaybes+                              [(JSON..=) "MountOptions" Prelude.<$> mountOptions,+                               (JSON..=) "ServerHostname" Prelude.<$> serverHostname,+                               (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                               (JSON..=) "Tags" Prelude.<$> tags]))}+instance JSON.ToJSON LocationNFS where+  toJSON LocationNFS {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["OnPremConfig" JSON..= onPremConfig]+              (Prelude.catMaybes+                 [(JSON..=) "MountOptions" Prelude.<$> mountOptions,+                  (JSON..=) "ServerHostname" Prelude.<$> serverHostname,+                  (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                  (JSON..=) "Tags" Prelude.<$> tags])))+instance Property "MountOptions" LocationNFS where+  type PropertyType "MountOptions" LocationNFS = MountOptionsProperty+  set newValue LocationNFS {..}+    = LocationNFS {mountOptions = Prelude.pure newValue, ..}+instance Property "OnPremConfig" LocationNFS where+  type PropertyType "OnPremConfig" LocationNFS = OnPremConfigProperty+  set newValue LocationNFS {..}+    = LocationNFS {onPremConfig = newValue, ..}+instance Property "ServerHostname" LocationNFS where+  type PropertyType "ServerHostname" LocationNFS = Value Prelude.Text+  set newValue LocationNFS {..}+    = LocationNFS {serverHostname = Prelude.pure newValue, ..}+instance Property "Subdirectory" LocationNFS where+  type PropertyType "Subdirectory" LocationNFS = Value Prelude.Text+  set newValue LocationNFS {..}+    = LocationNFS {subdirectory = Prelude.pure newValue, ..}+instance Property "Tags" LocationNFS where+  type PropertyType "Tags" LocationNFS = [Tag]+  set newValue LocationNFS {..}+    = LocationNFS {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationNFS/MountOptionsProperty.hs view
@@ -0,0 +1,34 @@+module Stratosphere.DataSync.LocationNFS.MountOptionsProperty (+        MountOptionsProperty(..), mkMountOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data MountOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationnfs-mountoptions.html>+    MountOptionsProperty {haddock_workaround_ :: (),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationnfs-mountoptions.html#cfn-datasync-locationnfs-mountoptions-version>+                          version :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkMountOptionsProperty :: MountOptionsProperty+mkMountOptionsProperty+  = MountOptionsProperty+      {haddock_workaround_ = (), version = Prelude.Nothing}+instance ToResourceProperties MountOptionsProperty where+  toResourceProperties MountOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationNFS.MountOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes [(JSON..=) "Version" Prelude.<$> version])}+instance JSON.ToJSON MountOptionsProperty where+  toJSON MountOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes [(JSON..=) "Version" Prelude.<$> version]))+instance Property "Version" MountOptionsProperty where+  type PropertyType "Version" MountOptionsProperty = Value Prelude.Text+  set newValue MountOptionsProperty {..}+    = MountOptionsProperty {version = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationNFS/MountOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationNFS.MountOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data MountOptionsProperty :: Prelude.Type+instance ToResourceProperties MountOptionsProperty+instance Prelude.Eq MountOptionsProperty+instance Prelude.Show MountOptionsProperty+instance JSON.ToJSON MountOptionsProperty
+ gen/Stratosphere/DataSync/LocationNFS/OnPremConfigProperty.hs view
@@ -0,0 +1,32 @@+module Stratosphere.DataSync.LocationNFS.OnPremConfigProperty (+        OnPremConfigProperty(..), mkOnPremConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data OnPremConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationnfs-onpremconfig.html>+    OnPremConfigProperty {haddock_workaround_ :: (),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationnfs-onpremconfig.html#cfn-datasync-locationnfs-onpremconfig-agentarns>+                          agentArns :: (ValueList Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkOnPremConfigProperty ::+  ValueList Prelude.Text -> OnPremConfigProperty+mkOnPremConfigProperty agentArns+  = OnPremConfigProperty+      {haddock_workaround_ = (), agentArns = agentArns}+instance ToResourceProperties OnPremConfigProperty where+  toResourceProperties OnPremConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationNFS.OnPremConfig",+         supportsTags = Prelude.False,+         properties = ["AgentArns" JSON..= agentArns]}+instance JSON.ToJSON OnPremConfigProperty where+  toJSON OnPremConfigProperty {..}+    = JSON.object ["AgentArns" JSON..= agentArns]+instance Property "AgentArns" OnPremConfigProperty where+  type PropertyType "AgentArns" OnPremConfigProperty = ValueList Prelude.Text+  set newValue OnPremConfigProperty {..}+    = OnPremConfigProperty {agentArns = newValue, ..}
+ gen/Stratosphere/DataSync/LocationNFS/OnPremConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationNFS.OnPremConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data OnPremConfigProperty :: Prelude.Type+instance ToResourceProperties OnPremConfigProperty+instance Prelude.Eq OnPremConfigProperty+instance Prelude.Show OnPremConfigProperty+instance JSON.ToJSON OnPremConfigProperty
+ gen/Stratosphere/DataSync/LocationObjectStorage.hs view
@@ -0,0 +1,139 @@+module Stratosphere.DataSync.LocationObjectStorage (+        module Exports, LocationObjectStorage(..), mkLocationObjectStorage+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.LocationObjectStorage.CmkSecretConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.LocationObjectStorage.CustomSecretConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data LocationObjectStorage+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html>+    LocationObjectStorage {haddock_workaround_ :: (),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-accesskey>+                           accessKey :: (Prelude.Maybe (Value Prelude.Text)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-agentarns>+                           agentArns :: (Prelude.Maybe (ValueList Prelude.Text)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-bucketname>+                           bucketName :: (Prelude.Maybe (Value Prelude.Text)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-cmksecretconfig>+                           cmkSecretConfig :: (Prelude.Maybe CmkSecretConfigProperty),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-customsecretconfig>+                           customSecretConfig :: (Prelude.Maybe CustomSecretConfigProperty),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-secretkey>+                           secretKey :: (Prelude.Maybe (Value Prelude.Text)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-servercertificate>+                           serverCertificate :: (Prelude.Maybe (Value Prelude.Text)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-serverhostname>+                           serverHostname :: (Prelude.Maybe (Value Prelude.Text)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-serverport>+                           serverPort :: (Prelude.Maybe (Value Prelude.Integer)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-serverprotocol>+                           serverProtocol :: (Prelude.Maybe (Value Prelude.Text)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-subdirectory>+                           subdirectory :: (Prelude.Maybe (Value Prelude.Text)),+                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationobjectstorage.html#cfn-datasync-locationobjectstorage-tags>+                           tags :: (Prelude.Maybe [Tag])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkLocationObjectStorage :: LocationObjectStorage+mkLocationObjectStorage+  = LocationObjectStorage+      {haddock_workaround_ = (), accessKey = Prelude.Nothing,+       agentArns = Prelude.Nothing, bucketName = Prelude.Nothing,+       cmkSecretConfig = Prelude.Nothing,+       customSecretConfig = Prelude.Nothing, secretKey = Prelude.Nothing,+       serverCertificate = Prelude.Nothing,+       serverHostname = Prelude.Nothing, serverPort = Prelude.Nothing,+       serverProtocol = Prelude.Nothing, subdirectory = Prelude.Nothing,+       tags = Prelude.Nothing}+instance ToResourceProperties LocationObjectStorage where+  toResourceProperties LocationObjectStorage {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationObjectStorage",+         supportsTags = Prelude.True,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "AccessKey" Prelude.<$> accessKey,+                            (JSON..=) "AgentArns" Prelude.<$> agentArns,+                            (JSON..=) "BucketName" Prelude.<$> bucketName,+                            (JSON..=) "CmkSecretConfig" Prelude.<$> cmkSecretConfig,+                            (JSON..=) "CustomSecretConfig" Prelude.<$> customSecretConfig,+                            (JSON..=) "SecretKey" Prelude.<$> secretKey,+                            (JSON..=) "ServerCertificate" Prelude.<$> serverCertificate,+                            (JSON..=) "ServerHostname" Prelude.<$> serverHostname,+                            (JSON..=) "ServerPort" Prelude.<$> serverPort,+                            (JSON..=) "ServerProtocol" Prelude.<$> serverProtocol,+                            (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                            (JSON..=) "Tags" Prelude.<$> tags])}+instance JSON.ToJSON LocationObjectStorage where+  toJSON LocationObjectStorage {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "AccessKey" Prelude.<$> accessKey,+               (JSON..=) "AgentArns" Prelude.<$> agentArns,+               (JSON..=) "BucketName" Prelude.<$> bucketName,+               (JSON..=) "CmkSecretConfig" Prelude.<$> cmkSecretConfig,+               (JSON..=) "CustomSecretConfig" Prelude.<$> customSecretConfig,+               (JSON..=) "SecretKey" Prelude.<$> secretKey,+               (JSON..=) "ServerCertificate" Prelude.<$> serverCertificate,+               (JSON..=) "ServerHostname" Prelude.<$> serverHostname,+               (JSON..=) "ServerPort" Prelude.<$> serverPort,+               (JSON..=) "ServerProtocol" Prelude.<$> serverProtocol,+               (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+               (JSON..=) "Tags" Prelude.<$> tags]))+instance Property "AccessKey" LocationObjectStorage where+  type PropertyType "AccessKey" LocationObjectStorage = Value Prelude.Text+  set newValue LocationObjectStorage {..}+    = LocationObjectStorage {accessKey = Prelude.pure newValue, ..}+instance Property "AgentArns" LocationObjectStorage where+  type PropertyType "AgentArns" LocationObjectStorage = ValueList Prelude.Text+  set newValue LocationObjectStorage {..}+    = LocationObjectStorage {agentArns = Prelude.pure newValue, ..}+instance Property "BucketName" LocationObjectStorage where+  type PropertyType "BucketName" LocationObjectStorage = Value Prelude.Text+  set newValue LocationObjectStorage {..}+    = LocationObjectStorage {bucketName = Prelude.pure newValue, ..}+instance Property "CmkSecretConfig" LocationObjectStorage where+  type PropertyType "CmkSecretConfig" LocationObjectStorage = CmkSecretConfigProperty+  set newValue LocationObjectStorage {..}+    = LocationObjectStorage+        {cmkSecretConfig = Prelude.pure newValue, ..}+instance Property "CustomSecretConfig" LocationObjectStorage where+  type PropertyType "CustomSecretConfig" LocationObjectStorage = CustomSecretConfigProperty+  set newValue LocationObjectStorage {..}+    = LocationObjectStorage+        {customSecretConfig = Prelude.pure newValue, ..}+instance Property "SecretKey" LocationObjectStorage where+  type PropertyType "SecretKey" LocationObjectStorage = Value Prelude.Text+  set newValue LocationObjectStorage {..}+    = LocationObjectStorage {secretKey = Prelude.pure newValue, ..}+instance Property "ServerCertificate" LocationObjectStorage where+  type PropertyType "ServerCertificate" LocationObjectStorage = Value Prelude.Text+  set newValue LocationObjectStorage {..}+    = LocationObjectStorage+        {serverCertificate = Prelude.pure newValue, ..}+instance Property "ServerHostname" LocationObjectStorage where+  type PropertyType "ServerHostname" LocationObjectStorage = Value Prelude.Text+  set newValue LocationObjectStorage {..}+    = LocationObjectStorage+        {serverHostname = Prelude.pure newValue, ..}+instance Property "ServerPort" LocationObjectStorage where+  type PropertyType "ServerPort" LocationObjectStorage = Value Prelude.Integer+  set newValue LocationObjectStorage {..}+    = LocationObjectStorage {serverPort = Prelude.pure newValue, ..}+instance Property "ServerProtocol" LocationObjectStorage where+  type PropertyType "ServerProtocol" LocationObjectStorage = Value Prelude.Text+  set newValue LocationObjectStorage {..}+    = LocationObjectStorage+        {serverProtocol = Prelude.pure newValue, ..}+instance Property "Subdirectory" LocationObjectStorage where+  type PropertyType "Subdirectory" LocationObjectStorage = Value Prelude.Text+  set newValue LocationObjectStorage {..}+    = LocationObjectStorage {subdirectory = Prelude.pure newValue, ..}+instance Property "Tags" LocationObjectStorage where+  type PropertyType "Tags" LocationObjectStorage = [Tag]+  set newValue LocationObjectStorage {..}+    = LocationObjectStorage {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationObjectStorage/CmkSecretConfigProperty.hs view
@@ -0,0 +1,45 @@+module Stratosphere.DataSync.LocationObjectStorage.CmkSecretConfigProperty (+        CmkSecretConfigProperty(..), mkCmkSecretConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CmkSecretConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationobjectstorage-cmksecretconfig.html>+    CmkSecretConfigProperty {haddock_workaround_ :: (),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationobjectstorage-cmksecretconfig.html#cfn-datasync-locationobjectstorage-cmksecretconfig-kmskeyarn>+                             kmsKeyArn :: (Prelude.Maybe (Value Prelude.Text)),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationobjectstorage-cmksecretconfig.html#cfn-datasync-locationobjectstorage-cmksecretconfig-secretarn>+                             secretArn :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCmkSecretConfigProperty :: CmkSecretConfigProperty+mkCmkSecretConfigProperty+  = CmkSecretConfigProperty+      {haddock_workaround_ = (), kmsKeyArn = Prelude.Nothing,+       secretArn = Prelude.Nothing}+instance ToResourceProperties CmkSecretConfigProperty where+  toResourceProperties CmkSecretConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationObjectStorage.CmkSecretConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "KmsKeyArn" Prelude.<$> kmsKeyArn,+                            (JSON..=) "SecretArn" Prelude.<$> secretArn])}+instance JSON.ToJSON CmkSecretConfigProperty where+  toJSON CmkSecretConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "KmsKeyArn" Prelude.<$> kmsKeyArn,+               (JSON..=) "SecretArn" Prelude.<$> secretArn]))+instance Property "KmsKeyArn" CmkSecretConfigProperty where+  type PropertyType "KmsKeyArn" CmkSecretConfigProperty = Value Prelude.Text+  set newValue CmkSecretConfigProperty {..}+    = CmkSecretConfigProperty {kmsKeyArn = Prelude.pure newValue, ..}+instance Property "SecretArn" CmkSecretConfigProperty where+  type PropertyType "SecretArn" CmkSecretConfigProperty = Value Prelude.Text+  set newValue CmkSecretConfigProperty {..}+    = CmkSecretConfigProperty {secretArn = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationObjectStorage/CmkSecretConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationObjectStorage.CmkSecretConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CmkSecretConfigProperty :: Prelude.Type+instance ToResourceProperties CmkSecretConfigProperty+instance Prelude.Eq CmkSecretConfigProperty+instance Prelude.Show CmkSecretConfigProperty+instance JSON.ToJSON CmkSecretConfigProperty
+ gen/Stratosphere/DataSync/LocationObjectStorage/CustomSecretConfigProperty.hs view
@@ -0,0 +1,43 @@+module Stratosphere.DataSync.LocationObjectStorage.CustomSecretConfigProperty (+        CustomSecretConfigProperty(..), mkCustomSecretConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CustomSecretConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationobjectstorage-customsecretconfig.html>+    CustomSecretConfigProperty {haddock_workaround_ :: (),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationobjectstorage-customsecretconfig.html#cfn-datasync-locationobjectstorage-customsecretconfig-secretaccessrolearn>+                                secretAccessRoleArn :: (Value Prelude.Text),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationobjectstorage-customsecretconfig.html#cfn-datasync-locationobjectstorage-customsecretconfig-secretarn>+                                secretArn :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCustomSecretConfigProperty ::+  Value Prelude.Text+  -> Value Prelude.Text -> CustomSecretConfigProperty+mkCustomSecretConfigProperty secretAccessRoleArn secretArn+  = CustomSecretConfigProperty+      {haddock_workaround_ = (),+       secretAccessRoleArn = secretAccessRoleArn, secretArn = secretArn}+instance ToResourceProperties CustomSecretConfigProperty where+  toResourceProperties CustomSecretConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationObjectStorage.CustomSecretConfig",+         supportsTags = Prelude.False,+         properties = ["SecretAccessRoleArn" JSON..= secretAccessRoleArn,+                       "SecretArn" JSON..= secretArn]}+instance JSON.ToJSON CustomSecretConfigProperty where+  toJSON CustomSecretConfigProperty {..}+    = JSON.object+        ["SecretAccessRoleArn" JSON..= secretAccessRoleArn,+         "SecretArn" JSON..= secretArn]+instance Property "SecretAccessRoleArn" CustomSecretConfigProperty where+  type PropertyType "SecretAccessRoleArn" CustomSecretConfigProperty = Value Prelude.Text+  set newValue CustomSecretConfigProperty {..}+    = CustomSecretConfigProperty {secretAccessRoleArn = newValue, ..}+instance Property "SecretArn" CustomSecretConfigProperty where+  type PropertyType "SecretArn" CustomSecretConfigProperty = Value Prelude.Text+  set newValue CustomSecretConfigProperty {..}+    = CustomSecretConfigProperty {secretArn = newValue, ..}
+ gen/Stratosphere/DataSync/LocationObjectStorage/CustomSecretConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationObjectStorage.CustomSecretConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CustomSecretConfigProperty :: Prelude.Type+instance ToResourceProperties CustomSecretConfigProperty+instance Prelude.Eq CustomSecretConfigProperty+instance Prelude.Show CustomSecretConfigProperty+instance JSON.ToJSON CustomSecretConfigProperty
+ gen/Stratosphere/DataSync/LocationObjectStorage/ManagedSecretConfigProperty.hs view
@@ -0,0 +1,32 @@+module Stratosphere.DataSync.LocationObjectStorage.ManagedSecretConfigProperty (+        ManagedSecretConfigProperty(..), mkManagedSecretConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ManagedSecretConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationobjectstorage-managedsecretconfig.html>+    ManagedSecretConfigProperty {haddock_workaround_ :: (),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationobjectstorage-managedsecretconfig.html#cfn-datasync-locationobjectstorage-managedsecretconfig-secretarn>+                                 secretArn :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkManagedSecretConfigProperty ::+  Value Prelude.Text -> ManagedSecretConfigProperty+mkManagedSecretConfigProperty secretArn+  = ManagedSecretConfigProperty+      {haddock_workaround_ = (), secretArn = secretArn}+instance ToResourceProperties ManagedSecretConfigProperty where+  toResourceProperties ManagedSecretConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationObjectStorage.ManagedSecretConfig",+         supportsTags = Prelude.False,+         properties = ["SecretArn" JSON..= secretArn]}+instance JSON.ToJSON ManagedSecretConfigProperty where+  toJSON ManagedSecretConfigProperty {..}+    = JSON.object ["SecretArn" JSON..= secretArn]+instance Property "SecretArn" ManagedSecretConfigProperty where+  type PropertyType "SecretArn" ManagedSecretConfigProperty = Value Prelude.Text+  set newValue ManagedSecretConfigProperty {..}+    = ManagedSecretConfigProperty {secretArn = newValue, ..}
+ gen/Stratosphere/DataSync/LocationObjectStorage/ManagedSecretConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationObjectStorage.ManagedSecretConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ManagedSecretConfigProperty :: Prelude.Type+instance ToResourceProperties ManagedSecretConfigProperty+instance Prelude.Eq ManagedSecretConfigProperty+instance Prelude.Show ManagedSecretConfigProperty+instance JSON.ToJSON ManagedSecretConfigProperty
+ gen/Stratosphere/DataSync/LocationS3.hs view
@@ -0,0 +1,73 @@+module Stratosphere.DataSync.LocationS3 (+        module Exports, LocationS3(..), mkLocationS3+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.LocationS3.S3ConfigProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data LocationS3+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html>+    LocationS3 {haddock_workaround_ :: (),+                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html#cfn-datasync-locations3-s3bucketarn>+                s3BucketArn :: (Prelude.Maybe (Value Prelude.Text)),+                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html#cfn-datasync-locations3-s3config>+                s3Config :: S3ConfigProperty,+                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html#cfn-datasync-locations3-s3storageclass>+                s3StorageClass :: (Prelude.Maybe (Value Prelude.Text)),+                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html#cfn-datasync-locations3-subdirectory>+                subdirectory :: (Prelude.Maybe (Value Prelude.Text)),+                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locations3.html#cfn-datasync-locations3-tags>+                tags :: (Prelude.Maybe [Tag])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkLocationS3 :: S3ConfigProperty -> LocationS3+mkLocationS3 s3Config+  = LocationS3+      {haddock_workaround_ = (), s3Config = s3Config,+       s3BucketArn = Prelude.Nothing, s3StorageClass = Prelude.Nothing,+       subdirectory = Prelude.Nothing, tags = Prelude.Nothing}+instance ToResourceProperties LocationS3 where+  toResourceProperties LocationS3 {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationS3",+         supportsTags = Prelude.True,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["S3Config" JSON..= s3Config]+                           (Prelude.catMaybes+                              [(JSON..=) "S3BucketArn" Prelude.<$> s3BucketArn,+                               (JSON..=) "S3StorageClass" Prelude.<$> s3StorageClass,+                               (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                               (JSON..=) "Tags" Prelude.<$> tags]))}+instance JSON.ToJSON LocationS3 where+  toJSON LocationS3 {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["S3Config" JSON..= s3Config]+              (Prelude.catMaybes+                 [(JSON..=) "S3BucketArn" Prelude.<$> s3BucketArn,+                  (JSON..=) "S3StorageClass" Prelude.<$> s3StorageClass,+                  (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                  (JSON..=) "Tags" Prelude.<$> tags])))+instance Property "S3BucketArn" LocationS3 where+  type PropertyType "S3BucketArn" LocationS3 = Value Prelude.Text+  set newValue LocationS3 {..}+    = LocationS3 {s3BucketArn = Prelude.pure newValue, ..}+instance Property "S3Config" LocationS3 where+  type PropertyType "S3Config" LocationS3 = S3ConfigProperty+  set newValue LocationS3 {..} = LocationS3 {s3Config = newValue, ..}+instance Property "S3StorageClass" LocationS3 where+  type PropertyType "S3StorageClass" LocationS3 = Value Prelude.Text+  set newValue LocationS3 {..}+    = LocationS3 {s3StorageClass = Prelude.pure newValue, ..}+instance Property "Subdirectory" LocationS3 where+  type PropertyType "Subdirectory" LocationS3 = Value Prelude.Text+  set newValue LocationS3 {..}+    = LocationS3 {subdirectory = Prelude.pure newValue, ..}+instance Property "Tags" LocationS3 where+  type PropertyType "Tags" LocationS3 = [Tag]+  set newValue LocationS3 {..}+    = LocationS3 {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationS3/S3ConfigProperty.hs view
@@ -0,0 +1,32 @@+module Stratosphere.DataSync.LocationS3.S3ConfigProperty (+        S3ConfigProperty(..), mkS3ConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data S3ConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locations3-s3config.html>+    S3ConfigProperty {haddock_workaround_ :: (),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locations3-s3config.html#cfn-datasync-locations3-s3config-bucketaccessrolearn>+                      bucketAccessRoleArn :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkS3ConfigProperty :: Value Prelude.Text -> S3ConfigProperty+mkS3ConfigProperty bucketAccessRoleArn+  = S3ConfigProperty+      {haddock_workaround_ = (),+       bucketAccessRoleArn = bucketAccessRoleArn}+instance ToResourceProperties S3ConfigProperty where+  toResourceProperties S3ConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationS3.S3Config",+         supportsTags = Prelude.False,+         properties = ["BucketAccessRoleArn" JSON..= bucketAccessRoleArn]}+instance JSON.ToJSON S3ConfigProperty where+  toJSON S3ConfigProperty {..}+    = JSON.object ["BucketAccessRoleArn" JSON..= bucketAccessRoleArn]+instance Property "BucketAccessRoleArn" S3ConfigProperty where+  type PropertyType "BucketAccessRoleArn" S3ConfigProperty = Value Prelude.Text+  set newValue S3ConfigProperty {..}+    = S3ConfigProperty {bucketAccessRoleArn = newValue, ..}
+ gen/Stratosphere/DataSync/LocationS3/S3ConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationS3.S3ConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data S3ConfigProperty :: Prelude.Type+instance ToResourceProperties S3ConfigProperty+instance Prelude.Eq S3ConfigProperty+instance Prelude.Show S3ConfigProperty+instance JSON.ToJSON S3ConfigProperty
+ gen/Stratosphere/DataSync/LocationSMB.hs view
@@ -0,0 +1,164 @@+module Stratosphere.DataSync.LocationSMB (+        module Exports, LocationSMB(..), mkLocationSMB+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.LocationSMB.CmkSecretConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.LocationSMB.CustomSecretConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.LocationSMB.MountOptionsProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data LocationSMB+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html>+    LocationSMB {haddock_workaround_ :: (),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-agentarns>+                 agentArns :: (ValueList Prelude.Text),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-authenticationtype>+                 authenticationType :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-cmksecretconfig>+                 cmkSecretConfig :: (Prelude.Maybe CmkSecretConfigProperty),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-customsecretconfig>+                 customSecretConfig :: (Prelude.Maybe CustomSecretConfigProperty),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-dnsipaddresses>+                 dnsIpAddresses :: (Prelude.Maybe (ValueList Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-domain>+                 domain :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-kerberoskeytab>+                 kerberosKeytab :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-kerberoskrb5conf>+                 kerberosKrb5Conf :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-kerberosprincipal>+                 kerberosPrincipal :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-mountoptions>+                 mountOptions :: (Prelude.Maybe MountOptionsProperty),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-password>+                 password :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-serverhostname>+                 serverHostname :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-subdirectory>+                 subdirectory :: (Prelude.Maybe (Value Prelude.Text)),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-tags>+                 tags :: (Prelude.Maybe [Tag]),+                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationsmb.html#cfn-datasync-locationsmb-user>+                 user :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkLocationSMB :: ValueList Prelude.Text -> LocationSMB+mkLocationSMB agentArns+  = LocationSMB+      {haddock_workaround_ = (), agentArns = agentArns,+       authenticationType = Prelude.Nothing,+       cmkSecretConfig = Prelude.Nothing,+       customSecretConfig = Prelude.Nothing,+       dnsIpAddresses = Prelude.Nothing, domain = Prelude.Nothing,+       kerberosKeytab = Prelude.Nothing,+       kerberosKrb5Conf = Prelude.Nothing,+       kerberosPrincipal = Prelude.Nothing,+       mountOptions = Prelude.Nothing, password = Prelude.Nothing,+       serverHostname = Prelude.Nothing, subdirectory = Prelude.Nothing,+       tags = Prelude.Nothing, user = Prelude.Nothing}+instance ToResourceProperties LocationSMB where+  toResourceProperties LocationSMB {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationSMB",+         supportsTags = Prelude.True,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["AgentArns" JSON..= agentArns]+                           (Prelude.catMaybes+                              [(JSON..=) "AuthenticationType" Prelude.<$> authenticationType,+                               (JSON..=) "CmkSecretConfig" Prelude.<$> cmkSecretConfig,+                               (JSON..=) "CustomSecretConfig" Prelude.<$> customSecretConfig,+                               (JSON..=) "DnsIpAddresses" Prelude.<$> dnsIpAddresses,+                               (JSON..=) "Domain" Prelude.<$> domain,+                               (JSON..=) "KerberosKeytab" Prelude.<$> kerberosKeytab,+                               (JSON..=) "KerberosKrb5Conf" Prelude.<$> kerberosKrb5Conf,+                               (JSON..=) "KerberosPrincipal" Prelude.<$> kerberosPrincipal,+                               (JSON..=) "MountOptions" Prelude.<$> mountOptions,+                               (JSON..=) "Password" Prelude.<$> password,+                               (JSON..=) "ServerHostname" Prelude.<$> serverHostname,+                               (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                               (JSON..=) "Tags" Prelude.<$> tags,+                               (JSON..=) "User" Prelude.<$> user]))}+instance JSON.ToJSON LocationSMB where+  toJSON LocationSMB {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["AgentArns" JSON..= agentArns]+              (Prelude.catMaybes+                 [(JSON..=) "AuthenticationType" Prelude.<$> authenticationType,+                  (JSON..=) "CmkSecretConfig" Prelude.<$> cmkSecretConfig,+                  (JSON..=) "CustomSecretConfig" Prelude.<$> customSecretConfig,+                  (JSON..=) "DnsIpAddresses" Prelude.<$> dnsIpAddresses,+                  (JSON..=) "Domain" Prelude.<$> domain,+                  (JSON..=) "KerberosKeytab" Prelude.<$> kerberosKeytab,+                  (JSON..=) "KerberosKrb5Conf" Prelude.<$> kerberosKrb5Conf,+                  (JSON..=) "KerberosPrincipal" Prelude.<$> kerberosPrincipal,+                  (JSON..=) "MountOptions" Prelude.<$> mountOptions,+                  (JSON..=) "Password" Prelude.<$> password,+                  (JSON..=) "ServerHostname" Prelude.<$> serverHostname,+                  (JSON..=) "Subdirectory" Prelude.<$> subdirectory,+                  (JSON..=) "Tags" Prelude.<$> tags,+                  (JSON..=) "User" Prelude.<$> user])))+instance Property "AgentArns" LocationSMB where+  type PropertyType "AgentArns" LocationSMB = ValueList Prelude.Text+  set newValue LocationSMB {..}+    = LocationSMB {agentArns = newValue, ..}+instance Property "AuthenticationType" LocationSMB where+  type PropertyType "AuthenticationType" LocationSMB = Value Prelude.Text+  set newValue LocationSMB {..}+    = LocationSMB {authenticationType = Prelude.pure newValue, ..}+instance Property "CmkSecretConfig" LocationSMB where+  type PropertyType "CmkSecretConfig" LocationSMB = CmkSecretConfigProperty+  set newValue LocationSMB {..}+    = LocationSMB {cmkSecretConfig = Prelude.pure newValue, ..}+instance Property "CustomSecretConfig" LocationSMB where+  type PropertyType "CustomSecretConfig" LocationSMB = CustomSecretConfigProperty+  set newValue LocationSMB {..}+    = LocationSMB {customSecretConfig = Prelude.pure newValue, ..}+instance Property "DnsIpAddresses" LocationSMB where+  type PropertyType "DnsIpAddresses" LocationSMB = ValueList Prelude.Text+  set newValue LocationSMB {..}+    = LocationSMB {dnsIpAddresses = Prelude.pure newValue, ..}+instance Property "Domain" LocationSMB where+  type PropertyType "Domain" LocationSMB = Value Prelude.Text+  set newValue LocationSMB {..}+    = LocationSMB {domain = Prelude.pure newValue, ..}+instance Property "KerberosKeytab" LocationSMB where+  type PropertyType "KerberosKeytab" LocationSMB = Value Prelude.Text+  set newValue LocationSMB {..}+    = LocationSMB {kerberosKeytab = Prelude.pure newValue, ..}+instance Property "KerberosKrb5Conf" LocationSMB where+  type PropertyType "KerberosKrb5Conf" LocationSMB = Value Prelude.Text+  set newValue LocationSMB {..}+    = LocationSMB {kerberosKrb5Conf = Prelude.pure newValue, ..}+instance Property "KerberosPrincipal" LocationSMB where+  type PropertyType "KerberosPrincipal" LocationSMB = Value Prelude.Text+  set newValue LocationSMB {..}+    = LocationSMB {kerberosPrincipal = Prelude.pure newValue, ..}+instance Property "MountOptions" LocationSMB where+  type PropertyType "MountOptions" LocationSMB = MountOptionsProperty+  set newValue LocationSMB {..}+    = LocationSMB {mountOptions = Prelude.pure newValue, ..}+instance Property "Password" LocationSMB where+  type PropertyType "Password" LocationSMB = Value Prelude.Text+  set newValue LocationSMB {..}+    = LocationSMB {password = Prelude.pure newValue, ..}+instance Property "ServerHostname" LocationSMB where+  type PropertyType "ServerHostname" LocationSMB = Value Prelude.Text+  set newValue LocationSMB {..}+    = LocationSMB {serverHostname = Prelude.pure newValue, ..}+instance Property "Subdirectory" LocationSMB where+  type PropertyType "Subdirectory" LocationSMB = Value Prelude.Text+  set newValue LocationSMB {..}+    = LocationSMB {subdirectory = Prelude.pure newValue, ..}+instance Property "Tags" LocationSMB where+  type PropertyType "Tags" LocationSMB = [Tag]+  set newValue LocationSMB {..}+    = LocationSMB {tags = Prelude.pure newValue, ..}+instance Property "User" LocationSMB where+  type PropertyType "User" LocationSMB = Value Prelude.Text+  set newValue LocationSMB {..}+    = LocationSMB {user = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationSMB/CmkSecretConfigProperty.hs view
@@ -0,0 +1,45 @@+module Stratosphere.DataSync.LocationSMB.CmkSecretConfigProperty (+        CmkSecretConfigProperty(..), mkCmkSecretConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CmkSecretConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-cmksecretconfig.html>+    CmkSecretConfigProperty {haddock_workaround_ :: (),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-cmksecretconfig.html#cfn-datasync-locationsmb-cmksecretconfig-kmskeyarn>+                             kmsKeyArn :: (Prelude.Maybe (Value Prelude.Text)),+                             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-cmksecretconfig.html#cfn-datasync-locationsmb-cmksecretconfig-secretarn>+                             secretArn :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCmkSecretConfigProperty :: CmkSecretConfigProperty+mkCmkSecretConfigProperty+  = CmkSecretConfigProperty+      {haddock_workaround_ = (), kmsKeyArn = Prelude.Nothing,+       secretArn = Prelude.Nothing}+instance ToResourceProperties CmkSecretConfigProperty where+  toResourceProperties CmkSecretConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationSMB.CmkSecretConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "KmsKeyArn" Prelude.<$> kmsKeyArn,+                            (JSON..=) "SecretArn" Prelude.<$> secretArn])}+instance JSON.ToJSON CmkSecretConfigProperty where+  toJSON CmkSecretConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "KmsKeyArn" Prelude.<$> kmsKeyArn,+               (JSON..=) "SecretArn" Prelude.<$> secretArn]))+instance Property "KmsKeyArn" CmkSecretConfigProperty where+  type PropertyType "KmsKeyArn" CmkSecretConfigProperty = Value Prelude.Text+  set newValue CmkSecretConfigProperty {..}+    = CmkSecretConfigProperty {kmsKeyArn = Prelude.pure newValue, ..}+instance Property "SecretArn" CmkSecretConfigProperty where+  type PropertyType "SecretArn" CmkSecretConfigProperty = Value Prelude.Text+  set newValue CmkSecretConfigProperty {..}+    = CmkSecretConfigProperty {secretArn = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationSMB/CmkSecretConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationSMB.CmkSecretConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CmkSecretConfigProperty :: Prelude.Type+instance ToResourceProperties CmkSecretConfigProperty+instance Prelude.Eq CmkSecretConfigProperty+instance Prelude.Show CmkSecretConfigProperty+instance JSON.ToJSON CmkSecretConfigProperty
+ gen/Stratosphere/DataSync/LocationSMB/CustomSecretConfigProperty.hs view
@@ -0,0 +1,43 @@+module Stratosphere.DataSync.LocationSMB.CustomSecretConfigProperty (+        CustomSecretConfigProperty(..), mkCustomSecretConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data CustomSecretConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-customsecretconfig.html>+    CustomSecretConfigProperty {haddock_workaround_ :: (),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-customsecretconfig.html#cfn-datasync-locationsmb-customsecretconfig-secretaccessrolearn>+                                secretAccessRoleArn :: (Value Prelude.Text),+                                -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-customsecretconfig.html#cfn-datasync-locationsmb-customsecretconfig-secretarn>+                                secretArn :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCustomSecretConfigProperty ::+  Value Prelude.Text+  -> Value Prelude.Text -> CustomSecretConfigProperty+mkCustomSecretConfigProperty secretAccessRoleArn secretArn+  = CustomSecretConfigProperty+      {haddock_workaround_ = (),+       secretAccessRoleArn = secretAccessRoleArn, secretArn = secretArn}+instance ToResourceProperties CustomSecretConfigProperty where+  toResourceProperties CustomSecretConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationSMB.CustomSecretConfig",+         supportsTags = Prelude.False,+         properties = ["SecretAccessRoleArn" JSON..= secretAccessRoleArn,+                       "SecretArn" JSON..= secretArn]}+instance JSON.ToJSON CustomSecretConfigProperty where+  toJSON CustomSecretConfigProperty {..}+    = JSON.object+        ["SecretAccessRoleArn" JSON..= secretAccessRoleArn,+         "SecretArn" JSON..= secretArn]+instance Property "SecretAccessRoleArn" CustomSecretConfigProperty where+  type PropertyType "SecretAccessRoleArn" CustomSecretConfigProperty = Value Prelude.Text+  set newValue CustomSecretConfigProperty {..}+    = CustomSecretConfigProperty {secretAccessRoleArn = newValue, ..}+instance Property "SecretArn" CustomSecretConfigProperty where+  type PropertyType "SecretArn" CustomSecretConfigProperty = Value Prelude.Text+  set newValue CustomSecretConfigProperty {..}+    = CustomSecretConfigProperty {secretArn = newValue, ..}
+ gen/Stratosphere/DataSync/LocationSMB/CustomSecretConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationSMB.CustomSecretConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data CustomSecretConfigProperty :: Prelude.Type+instance ToResourceProperties CustomSecretConfigProperty+instance Prelude.Eq CustomSecretConfigProperty+instance Prelude.Show CustomSecretConfigProperty+instance JSON.ToJSON CustomSecretConfigProperty
+ gen/Stratosphere/DataSync/LocationSMB/ManagedSecretConfigProperty.hs view
@@ -0,0 +1,32 @@+module Stratosphere.DataSync.LocationSMB.ManagedSecretConfigProperty (+        ManagedSecretConfigProperty(..), mkManagedSecretConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ManagedSecretConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-managedsecretconfig.html>+    ManagedSecretConfigProperty {haddock_workaround_ :: (),+                                 -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-managedsecretconfig.html#cfn-datasync-locationsmb-managedsecretconfig-secretarn>+                                 secretArn :: (Value Prelude.Text)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkManagedSecretConfigProperty ::+  Value Prelude.Text -> ManagedSecretConfigProperty+mkManagedSecretConfigProperty secretArn+  = ManagedSecretConfigProperty+      {haddock_workaround_ = (), secretArn = secretArn}+instance ToResourceProperties ManagedSecretConfigProperty where+  toResourceProperties ManagedSecretConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationSMB.ManagedSecretConfig",+         supportsTags = Prelude.False,+         properties = ["SecretArn" JSON..= secretArn]}+instance JSON.ToJSON ManagedSecretConfigProperty where+  toJSON ManagedSecretConfigProperty {..}+    = JSON.object ["SecretArn" JSON..= secretArn]+instance Property "SecretArn" ManagedSecretConfigProperty where+  type PropertyType "SecretArn" ManagedSecretConfigProperty = Value Prelude.Text+  set newValue ManagedSecretConfigProperty {..}+    = ManagedSecretConfigProperty {secretArn = newValue, ..}
+ gen/Stratosphere/DataSync/LocationSMB/ManagedSecretConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationSMB.ManagedSecretConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ManagedSecretConfigProperty :: Prelude.Type+instance ToResourceProperties ManagedSecretConfigProperty+instance Prelude.Eq ManagedSecretConfigProperty+instance Prelude.Show ManagedSecretConfigProperty+instance JSON.ToJSON ManagedSecretConfigProperty
+ gen/Stratosphere/DataSync/LocationSMB/MountOptionsProperty.hs view
@@ -0,0 +1,34 @@+module Stratosphere.DataSync.LocationSMB.MountOptionsProperty (+        MountOptionsProperty(..), mkMountOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data MountOptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-mountoptions.html>+    MountOptionsProperty {haddock_workaround_ :: (),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationsmb-mountoptions.html#cfn-datasync-locationsmb-mountoptions-version>+                          version :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkMountOptionsProperty :: MountOptionsProperty+mkMountOptionsProperty+  = MountOptionsProperty+      {haddock_workaround_ = (), version = Prelude.Nothing}+instance ToResourceProperties MountOptionsProperty where+  toResourceProperties MountOptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::LocationSMB.MountOptions",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes [(JSON..=) "Version" Prelude.<$> version])}+instance JSON.ToJSON MountOptionsProperty where+  toJSON MountOptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes [(JSON..=) "Version" Prelude.<$> version]))+instance Property "Version" MountOptionsProperty where+  type PropertyType "Version" MountOptionsProperty = Value Prelude.Text+  set newValue MountOptionsProperty {..}+    = MountOptionsProperty {version = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/LocationSMB/MountOptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.LocationSMB.MountOptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data MountOptionsProperty :: Prelude.Type+instance ToResourceProperties MountOptionsProperty+instance Prelude.Eq MountOptionsProperty+instance Prelude.Show MountOptionsProperty+instance JSON.ToJSON MountOptionsProperty
+ gen/Stratosphere/DataSync/Task.hs view
@@ -0,0 +1,137 @@+module Stratosphere.DataSync.Task (+        module Exports, Task(..), mkTask+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.Task.FilterRuleProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.Task.ManifestConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.Task.OptionsProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.Task.TaskReportConfigProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.Task.TaskScheduleProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data Task+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html>+    Task {haddock_workaround_ :: (),+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-cloudwatchloggrouparn>+          cloudWatchLogGroupArn :: (Prelude.Maybe (Value Prelude.Text)),+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-destinationlocationarn>+          destinationLocationArn :: (Value Prelude.Text),+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-excludes>+          excludes :: (Prelude.Maybe [FilterRuleProperty]),+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-includes>+          includes :: (Prelude.Maybe [FilterRuleProperty]),+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-manifestconfig>+          manifestConfig :: (Prelude.Maybe ManifestConfigProperty),+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-name>+          name :: (Prelude.Maybe (Value Prelude.Text)),+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-options>+          options :: (Prelude.Maybe OptionsProperty),+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-schedule>+          schedule :: (Prelude.Maybe TaskScheduleProperty),+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-sourcelocationarn>+          sourceLocationArn :: (Value Prelude.Text),+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-tags>+          tags :: (Prelude.Maybe [Tag]),+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-taskmode>+          taskMode :: (Prelude.Maybe (Value Prelude.Text)),+          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-task.html#cfn-datasync-task-taskreportconfig>+          taskReportConfig :: (Prelude.Maybe TaskReportConfigProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkTask :: Value Prelude.Text -> Value Prelude.Text -> Task+mkTask destinationLocationArn sourceLocationArn+  = Task+      {haddock_workaround_ = (),+       destinationLocationArn = destinationLocationArn,+       sourceLocationArn = sourceLocationArn,+       cloudWatchLogGroupArn = Prelude.Nothing,+       excludes = Prelude.Nothing, includes = Prelude.Nothing,+       manifestConfig = Prelude.Nothing, name = Prelude.Nothing,+       options = Prelude.Nothing, schedule = Prelude.Nothing,+       tags = Prelude.Nothing, taskMode = Prelude.Nothing,+       taskReportConfig = Prelude.Nothing}+instance ToResourceProperties Task where+  toResourceProperties Task {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Task", supportsTags = Prelude.True,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["DestinationLocationArn" JSON..= destinationLocationArn,+                            "SourceLocationArn" JSON..= sourceLocationArn]+                           (Prelude.catMaybes+                              [(JSON..=) "CloudWatchLogGroupArn"+                                 Prelude.<$> cloudWatchLogGroupArn,+                               (JSON..=) "Excludes" Prelude.<$> excludes,+                               (JSON..=) "Includes" Prelude.<$> includes,+                               (JSON..=) "ManifestConfig" Prelude.<$> manifestConfig,+                               (JSON..=) "Name" Prelude.<$> name,+                               (JSON..=) "Options" Prelude.<$> options,+                               (JSON..=) "Schedule" Prelude.<$> schedule,+                               (JSON..=) "Tags" Prelude.<$> tags,+                               (JSON..=) "TaskMode" Prelude.<$> taskMode,+                               (JSON..=) "TaskReportConfig" Prelude.<$> taskReportConfig]))}+instance JSON.ToJSON Task where+  toJSON Task {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["DestinationLocationArn" JSON..= destinationLocationArn,+               "SourceLocationArn" JSON..= sourceLocationArn]+              (Prelude.catMaybes+                 [(JSON..=) "CloudWatchLogGroupArn"+                    Prelude.<$> cloudWatchLogGroupArn,+                  (JSON..=) "Excludes" Prelude.<$> excludes,+                  (JSON..=) "Includes" Prelude.<$> includes,+                  (JSON..=) "ManifestConfig" Prelude.<$> manifestConfig,+                  (JSON..=) "Name" Prelude.<$> name,+                  (JSON..=) "Options" Prelude.<$> options,+                  (JSON..=) "Schedule" Prelude.<$> schedule,+                  (JSON..=) "Tags" Prelude.<$> tags,+                  (JSON..=) "TaskMode" Prelude.<$> taskMode,+                  (JSON..=) "TaskReportConfig" Prelude.<$> taskReportConfig])))+instance Property "CloudWatchLogGroupArn" Task where+  type PropertyType "CloudWatchLogGroupArn" Task = Value Prelude.Text+  set newValue Task {..}+    = Task {cloudWatchLogGroupArn = Prelude.pure newValue, ..}+instance Property "DestinationLocationArn" Task where+  type PropertyType "DestinationLocationArn" Task = Value Prelude.Text+  set newValue Task {..}+    = Task {destinationLocationArn = newValue, ..}+instance Property "Excludes" Task where+  type PropertyType "Excludes" Task = [FilterRuleProperty]+  set newValue Task {..}+    = Task {excludes = Prelude.pure newValue, ..}+instance Property "Includes" Task where+  type PropertyType "Includes" Task = [FilterRuleProperty]+  set newValue Task {..}+    = Task {includes = Prelude.pure newValue, ..}+instance Property "ManifestConfig" Task where+  type PropertyType "ManifestConfig" Task = ManifestConfigProperty+  set newValue Task {..}+    = Task {manifestConfig = Prelude.pure newValue, ..}+instance Property "Name" Task where+  type PropertyType "Name" Task = Value Prelude.Text+  set newValue Task {..} = Task {name = Prelude.pure newValue, ..}+instance Property "Options" Task where+  type PropertyType "Options" Task = OptionsProperty+  set newValue Task {..} = Task {options = Prelude.pure newValue, ..}+instance Property "Schedule" Task where+  type PropertyType "Schedule" Task = TaskScheduleProperty+  set newValue Task {..}+    = Task {schedule = Prelude.pure newValue, ..}+instance Property "SourceLocationArn" Task where+  type PropertyType "SourceLocationArn" Task = Value Prelude.Text+  set newValue Task {..} = Task {sourceLocationArn = newValue, ..}+instance Property "Tags" Task where+  type PropertyType "Tags" Task = [Tag]+  set newValue Task {..} = Task {tags = Prelude.pure newValue, ..}+instance Property "TaskMode" Task where+  type PropertyType "TaskMode" Task = Value Prelude.Text+  set newValue Task {..}+    = Task {taskMode = Prelude.pure newValue, ..}+instance Property "TaskReportConfig" Task where+  type PropertyType "TaskReportConfig" Task = TaskReportConfigProperty+  set newValue Task {..}+    = Task {taskReportConfig = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/Task/DeletedProperty.hs view
@@ -0,0 +1,36 @@+module Stratosphere.DataSync.Task.DeletedProperty (+        DeletedProperty(..), mkDeletedProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data DeletedProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-deleted.html>+    DeletedProperty {haddock_workaround_ :: (),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-deleted.html#cfn-datasync-task-deleted-reportlevel>+                     reportLevel :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkDeletedProperty :: DeletedProperty+mkDeletedProperty+  = DeletedProperty+      {haddock_workaround_ = (), reportLevel = Prelude.Nothing}+instance ToResourceProperties DeletedProperty where+  toResourceProperties DeletedProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Task.Deleted",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "ReportLevel" Prelude.<$> reportLevel])}+instance JSON.ToJSON DeletedProperty where+  toJSON DeletedProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "ReportLevel" Prelude.<$> reportLevel]))+instance Property "ReportLevel" DeletedProperty where+  type PropertyType "ReportLevel" DeletedProperty = Value Prelude.Text+  set newValue DeletedProperty {..}+    = DeletedProperty {reportLevel = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/Task/DeletedProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.Task.DeletedProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data DeletedProperty :: Prelude.Type+instance ToResourceProperties DeletedProperty+instance Prelude.Eq DeletedProperty+instance Prelude.Show DeletedProperty+instance JSON.ToJSON DeletedProperty
+ gen/Stratosphere/DataSync/Task/DestinationProperty.hs view
@@ -0,0 +1,34 @@+module Stratosphere.DataSync.Task.DestinationProperty (+        module Exports, DestinationProperty(..), mkDestinationProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.Task.TaskReportConfigDestinationS3Property as Exports+import Stratosphere.ResourceProperties+data DestinationProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-destination.html>+    DestinationProperty {haddock_workaround_ :: (),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-destination.html#cfn-datasync-task-destination-s3>+                         s3 :: (Prelude.Maybe TaskReportConfigDestinationS3Property)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkDestinationProperty :: DestinationProperty+mkDestinationProperty+  = DestinationProperty+      {haddock_workaround_ = (), s3 = Prelude.Nothing}+instance ToResourceProperties DestinationProperty where+  toResourceProperties DestinationProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Task.Destination",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes [(JSON..=) "S3" Prelude.<$> s3])}+instance JSON.ToJSON DestinationProperty where+  toJSON DestinationProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes [(JSON..=) "S3" Prelude.<$> s3]))+instance Property "S3" DestinationProperty where+  type PropertyType "S3" DestinationProperty = TaskReportConfigDestinationS3Property+  set newValue DestinationProperty {..}+    = DestinationProperty {s3 = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/Task/DestinationProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.Task.DestinationProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data DestinationProperty :: Prelude.Type+instance ToResourceProperties DestinationProperty+instance Prelude.Eq DestinationProperty+instance Prelude.Show DestinationProperty+instance JSON.ToJSON DestinationProperty
+ gen/Stratosphere/DataSync/Task/FilterRuleProperty.hs view
@@ -0,0 +1,45 @@+module Stratosphere.DataSync.Task.FilterRuleProperty (+        FilterRuleProperty(..), mkFilterRuleProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data FilterRuleProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-filterrule.html>+    FilterRuleProperty {haddock_workaround_ :: (),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-filterrule.html#cfn-datasync-task-filterrule-filtertype>+                        filterType :: (Prelude.Maybe (Value Prelude.Text)),+                        -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-filterrule.html#cfn-datasync-task-filterrule-value>+                        value :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkFilterRuleProperty :: FilterRuleProperty+mkFilterRuleProperty+  = FilterRuleProperty+      {haddock_workaround_ = (), filterType = Prelude.Nothing,+       value = Prelude.Nothing}+instance ToResourceProperties FilterRuleProperty where+  toResourceProperties FilterRuleProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Task.FilterRule",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "FilterType" Prelude.<$> filterType,+                            (JSON..=) "Value" Prelude.<$> value])}+instance JSON.ToJSON FilterRuleProperty where+  toJSON FilterRuleProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "FilterType" Prelude.<$> filterType,+               (JSON..=) "Value" Prelude.<$> value]))+instance Property "FilterType" FilterRuleProperty where+  type PropertyType "FilterType" FilterRuleProperty = Value Prelude.Text+  set newValue FilterRuleProperty {..}+    = FilterRuleProperty {filterType = Prelude.pure newValue, ..}+instance Property "Value" FilterRuleProperty where+  type PropertyType "Value" FilterRuleProperty = Value Prelude.Text+  set newValue FilterRuleProperty {..}+    = FilterRuleProperty {value = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/Task/FilterRuleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.Task.FilterRuleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data FilterRuleProperty :: Prelude.Type+instance ToResourceProperties FilterRuleProperty+instance Prelude.Eq FilterRuleProperty+instance Prelude.Show FilterRuleProperty+instance JSON.ToJSON FilterRuleProperty
+ gen/Stratosphere/DataSync/Task/ManifestConfigProperty.hs view
@@ -0,0 +1,58 @@+module Stratosphere.DataSync.Task.ManifestConfigProperty (+        module Exports, ManifestConfigProperty(..),+        mkManifestConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.Task.SourceProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ManifestConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-manifestconfig.html>+    ManifestConfigProperty {haddock_workaround_ :: (),+                            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-manifestconfig.html#cfn-datasync-task-manifestconfig-action>+                            action :: (Prelude.Maybe (Value Prelude.Text)),+                            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-manifestconfig.html#cfn-datasync-task-manifestconfig-format>+                            format :: (Prelude.Maybe (Value Prelude.Text)),+                            -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-manifestconfig.html#cfn-datasync-task-manifestconfig-source>+                            source :: SourceProperty}+  deriving stock (Prelude.Eq, Prelude.Show)+mkManifestConfigProperty ::+  SourceProperty -> ManifestConfigProperty+mkManifestConfigProperty source+  = ManifestConfigProperty+      {haddock_workaround_ = (), source = source,+       action = Prelude.Nothing, format = Prelude.Nothing}+instance ToResourceProperties ManifestConfigProperty where+  toResourceProperties ManifestConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Task.ManifestConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["Source" JSON..= source]+                           (Prelude.catMaybes+                              [(JSON..=) "Action" Prelude.<$> action,+                               (JSON..=) "Format" Prelude.<$> format]))}+instance JSON.ToJSON ManifestConfigProperty where+  toJSON ManifestConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["Source" JSON..= source]+              (Prelude.catMaybes+                 [(JSON..=) "Action" Prelude.<$> action,+                  (JSON..=) "Format" Prelude.<$> format])))+instance Property "Action" ManifestConfigProperty where+  type PropertyType "Action" ManifestConfigProperty = Value Prelude.Text+  set newValue ManifestConfigProperty {..}+    = ManifestConfigProperty {action = Prelude.pure newValue, ..}+instance Property "Format" ManifestConfigProperty where+  type PropertyType "Format" ManifestConfigProperty = Value Prelude.Text+  set newValue ManifestConfigProperty {..}+    = ManifestConfigProperty {format = Prelude.pure newValue, ..}+instance Property "Source" ManifestConfigProperty where+  type PropertyType "Source" ManifestConfigProperty = SourceProperty+  set newValue ManifestConfigProperty {..}+    = ManifestConfigProperty {source = newValue, ..}
+ gen/Stratosphere/DataSync/Task/ManifestConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.Task.ManifestConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ManifestConfigProperty :: Prelude.Type+instance ToResourceProperties ManifestConfigProperty+instance Prelude.Eq ManifestConfigProperty+instance Prelude.Show ManifestConfigProperty+instance JSON.ToJSON ManifestConfigProperty
+ gen/Stratosphere/DataSync/Task/ManifestConfigSourceS3Property.hs view
@@ -0,0 +1,70 @@+module Stratosphere.DataSync.Task.ManifestConfigSourceS3Property (+        ManifestConfigSourceS3Property(..),+        mkManifestConfigSourceS3Property+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data ManifestConfigSourceS3Property+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-manifestconfigsources3.html>+    ManifestConfigSourceS3Property {haddock_workaround_ :: (),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-manifestconfigsources3.html#cfn-datasync-task-manifestconfigsources3-bucketaccessrolearn>+                                    bucketAccessRoleArn :: (Prelude.Maybe (Value Prelude.Text)),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-manifestconfigsources3.html#cfn-datasync-task-manifestconfigsources3-manifestobjectpath>+                                    manifestObjectPath :: (Prelude.Maybe (Value Prelude.Text)),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-manifestconfigsources3.html#cfn-datasync-task-manifestconfigsources3-manifestobjectversionid>+                                    manifestObjectVersionId :: (Prelude.Maybe (Value Prelude.Text)),+                                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-manifestconfigsources3.html#cfn-datasync-task-manifestconfigsources3-s3bucketarn>+                                    s3BucketArn :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkManifestConfigSourceS3Property :: ManifestConfigSourceS3Property+mkManifestConfigSourceS3Property+  = ManifestConfigSourceS3Property+      {haddock_workaround_ = (), bucketAccessRoleArn = Prelude.Nothing,+       manifestObjectPath = Prelude.Nothing,+       manifestObjectVersionId = Prelude.Nothing,+       s3BucketArn = Prelude.Nothing}+instance ToResourceProperties ManifestConfigSourceS3Property where+  toResourceProperties ManifestConfigSourceS3Property {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Task.ManifestConfigSourceS3",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "BucketAccessRoleArn" Prelude.<$> bucketAccessRoleArn,+                            (JSON..=) "ManifestObjectPath" Prelude.<$> manifestObjectPath,+                            (JSON..=) "ManifestObjectVersionId"+                              Prelude.<$> manifestObjectVersionId,+                            (JSON..=) "S3BucketArn" Prelude.<$> s3BucketArn])}+instance JSON.ToJSON ManifestConfigSourceS3Property where+  toJSON ManifestConfigSourceS3Property {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "BucketAccessRoleArn" Prelude.<$> bucketAccessRoleArn,+               (JSON..=) "ManifestObjectPath" Prelude.<$> manifestObjectPath,+               (JSON..=) "ManifestObjectVersionId"+                 Prelude.<$> manifestObjectVersionId,+               (JSON..=) "S3BucketArn" Prelude.<$> s3BucketArn]))+instance Property "BucketAccessRoleArn" ManifestConfigSourceS3Property where+  type PropertyType "BucketAccessRoleArn" ManifestConfigSourceS3Property = Value Prelude.Text+  set newValue ManifestConfigSourceS3Property {..}+    = ManifestConfigSourceS3Property+        {bucketAccessRoleArn = Prelude.pure newValue, ..}+instance Property "ManifestObjectPath" ManifestConfigSourceS3Property where+  type PropertyType "ManifestObjectPath" ManifestConfigSourceS3Property = Value Prelude.Text+  set newValue ManifestConfigSourceS3Property {..}+    = ManifestConfigSourceS3Property+        {manifestObjectPath = Prelude.pure newValue, ..}+instance Property "ManifestObjectVersionId" ManifestConfigSourceS3Property where+  type PropertyType "ManifestObjectVersionId" ManifestConfigSourceS3Property = Value Prelude.Text+  set newValue ManifestConfigSourceS3Property {..}+    = ManifestConfigSourceS3Property+        {manifestObjectVersionId = Prelude.pure newValue, ..}+instance Property "S3BucketArn" ManifestConfigSourceS3Property where+  type PropertyType "S3BucketArn" ManifestConfigSourceS3Property = Value Prelude.Text+  set newValue ManifestConfigSourceS3Property {..}+    = ManifestConfigSourceS3Property+        {s3BucketArn = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/Task/ManifestConfigSourceS3Property.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.Task.ManifestConfigSourceS3Property where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data ManifestConfigSourceS3Property :: Prelude.Type+instance ToResourceProperties ManifestConfigSourceS3Property+instance Prelude.Eq ManifestConfigSourceS3Property+instance Prelude.Show ManifestConfigSourceS3Property+instance JSON.ToJSON ManifestConfigSourceS3Property
+ gen/Stratosphere/DataSync/Task/OptionsProperty.hs view
@@ -0,0 +1,161 @@+module Stratosphere.DataSync.Task.OptionsProperty (+        OptionsProperty(..), mkOptionsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data OptionsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html>+    OptionsProperty {haddock_workaround_ :: (),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-atime>+                     atime :: (Prelude.Maybe (Value Prelude.Text)),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-bytespersecond>+                     bytesPerSecond :: (Prelude.Maybe (Value Prelude.Integer)),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-gid>+                     gid :: (Prelude.Maybe (Value Prelude.Text)),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-loglevel>+                     logLevel :: (Prelude.Maybe (Value Prelude.Text)),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-mtime>+                     mtime :: (Prelude.Maybe (Value Prelude.Text)),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-objecttags>+                     objectTags :: (Prelude.Maybe (Value Prelude.Text)),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-overwritemode>+                     overwriteMode :: (Prelude.Maybe (Value Prelude.Text)),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-posixpermissions>+                     posixPermissions :: (Prelude.Maybe (Value Prelude.Text)),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-preservedeletedfiles>+                     preserveDeletedFiles :: (Prelude.Maybe (Value Prelude.Text)),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-preservedevices>+                     preserveDevices :: (Prelude.Maybe (Value Prelude.Text)),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-securitydescriptorcopyflags>+                     securityDescriptorCopyFlags :: (Prelude.Maybe (Value Prelude.Text)),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-taskqueueing>+                     taskQueueing :: (Prelude.Maybe (Value Prelude.Text)),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-transfermode>+                     transferMode :: (Prelude.Maybe (Value Prelude.Text)),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-uid>+                     uid :: (Prelude.Maybe (Value Prelude.Text)),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-options.html#cfn-datasync-task-options-verifymode>+                     verifyMode :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkOptionsProperty :: OptionsProperty+mkOptionsProperty+  = OptionsProperty+      {haddock_workaround_ = (), atime = Prelude.Nothing,+       bytesPerSecond = Prelude.Nothing, gid = Prelude.Nothing,+       logLevel = Prelude.Nothing, mtime = Prelude.Nothing,+       objectTags = Prelude.Nothing, overwriteMode = Prelude.Nothing,+       posixPermissions = Prelude.Nothing,+       preserveDeletedFiles = Prelude.Nothing,+       preserveDevices = Prelude.Nothing,+       securityDescriptorCopyFlags = Prelude.Nothing,+       taskQueueing = Prelude.Nothing, transferMode = Prelude.Nothing,+       uid = Prelude.Nothing, verifyMode = Prelude.Nothing}+instance ToResourceProperties OptionsProperty where+  toResourceProperties OptionsProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Task.Options",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "Atime" Prelude.<$> atime,+                            (JSON..=) "BytesPerSecond" Prelude.<$> bytesPerSecond,+                            (JSON..=) "Gid" Prelude.<$> gid,+                            (JSON..=) "LogLevel" Prelude.<$> logLevel,+                            (JSON..=) "Mtime" Prelude.<$> mtime,+                            (JSON..=) "ObjectTags" Prelude.<$> objectTags,+                            (JSON..=) "OverwriteMode" Prelude.<$> overwriteMode,+                            (JSON..=) "PosixPermissions" Prelude.<$> posixPermissions,+                            (JSON..=) "PreserveDeletedFiles" Prelude.<$> preserveDeletedFiles,+                            (JSON..=) "PreserveDevices" Prelude.<$> preserveDevices,+                            (JSON..=) "SecurityDescriptorCopyFlags"+                              Prelude.<$> securityDescriptorCopyFlags,+                            (JSON..=) "TaskQueueing" Prelude.<$> taskQueueing,+                            (JSON..=) "TransferMode" Prelude.<$> transferMode,+                            (JSON..=) "Uid" Prelude.<$> uid,+                            (JSON..=) "VerifyMode" Prelude.<$> verifyMode])}+instance JSON.ToJSON OptionsProperty where+  toJSON OptionsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "Atime" Prelude.<$> atime,+               (JSON..=) "BytesPerSecond" Prelude.<$> bytesPerSecond,+               (JSON..=) "Gid" Prelude.<$> gid,+               (JSON..=) "LogLevel" Prelude.<$> logLevel,+               (JSON..=) "Mtime" Prelude.<$> mtime,+               (JSON..=) "ObjectTags" Prelude.<$> objectTags,+               (JSON..=) "OverwriteMode" Prelude.<$> overwriteMode,+               (JSON..=) "PosixPermissions" Prelude.<$> posixPermissions,+               (JSON..=) "PreserveDeletedFiles" Prelude.<$> preserveDeletedFiles,+               (JSON..=) "PreserveDevices" Prelude.<$> preserveDevices,+               (JSON..=) "SecurityDescriptorCopyFlags"+                 Prelude.<$> securityDescriptorCopyFlags,+               (JSON..=) "TaskQueueing" Prelude.<$> taskQueueing,+               (JSON..=) "TransferMode" Prelude.<$> transferMode,+               (JSON..=) "Uid" Prelude.<$> uid,+               (JSON..=) "VerifyMode" Prelude.<$> verifyMode]))+instance Property "Atime" OptionsProperty where+  type PropertyType "Atime" OptionsProperty = Value Prelude.Text+  set newValue OptionsProperty {..}+    = OptionsProperty {atime = Prelude.pure newValue, ..}+instance Property "BytesPerSecond" OptionsProperty where+  type PropertyType "BytesPerSecond" OptionsProperty = Value Prelude.Integer+  set newValue OptionsProperty {..}+    = OptionsProperty {bytesPerSecond = Prelude.pure newValue, ..}+instance Property "Gid" OptionsProperty where+  type PropertyType "Gid" OptionsProperty = Value Prelude.Text+  set newValue OptionsProperty {..}+    = OptionsProperty {gid = Prelude.pure newValue, ..}+instance Property "LogLevel" OptionsProperty where+  type PropertyType "LogLevel" OptionsProperty = Value Prelude.Text+  set newValue OptionsProperty {..}+    = OptionsProperty {logLevel = Prelude.pure newValue, ..}+instance Property "Mtime" OptionsProperty where+  type PropertyType "Mtime" OptionsProperty = Value Prelude.Text+  set newValue OptionsProperty {..}+    = OptionsProperty {mtime = Prelude.pure newValue, ..}+instance Property "ObjectTags" OptionsProperty where+  type PropertyType "ObjectTags" OptionsProperty = Value Prelude.Text+  set newValue OptionsProperty {..}+    = OptionsProperty {objectTags = Prelude.pure newValue, ..}+instance Property "OverwriteMode" OptionsProperty where+  type PropertyType "OverwriteMode" OptionsProperty = Value Prelude.Text+  set newValue OptionsProperty {..}+    = OptionsProperty {overwriteMode = Prelude.pure newValue, ..}+instance Property "PosixPermissions" OptionsProperty where+  type PropertyType "PosixPermissions" OptionsProperty = Value Prelude.Text+  set newValue OptionsProperty {..}+    = OptionsProperty {posixPermissions = Prelude.pure newValue, ..}+instance Property "PreserveDeletedFiles" OptionsProperty where+  type PropertyType "PreserveDeletedFiles" OptionsProperty = Value Prelude.Text+  set newValue OptionsProperty {..}+    = OptionsProperty+        {preserveDeletedFiles = Prelude.pure newValue, ..}+instance Property "PreserveDevices" OptionsProperty where+  type PropertyType "PreserveDevices" OptionsProperty = Value Prelude.Text+  set newValue OptionsProperty {..}+    = OptionsProperty {preserveDevices = Prelude.pure newValue, ..}+instance Property "SecurityDescriptorCopyFlags" OptionsProperty where+  type PropertyType "SecurityDescriptorCopyFlags" OptionsProperty = Value Prelude.Text+  set newValue OptionsProperty {..}+    = OptionsProperty+        {securityDescriptorCopyFlags = Prelude.pure newValue, ..}+instance Property "TaskQueueing" OptionsProperty where+  type PropertyType "TaskQueueing" OptionsProperty = Value Prelude.Text+  set newValue OptionsProperty {..}+    = OptionsProperty {taskQueueing = Prelude.pure newValue, ..}+instance Property "TransferMode" OptionsProperty where+  type PropertyType "TransferMode" OptionsProperty = Value Prelude.Text+  set newValue OptionsProperty {..}+    = OptionsProperty {transferMode = Prelude.pure newValue, ..}+instance Property "Uid" OptionsProperty where+  type PropertyType "Uid" OptionsProperty = Value Prelude.Text+  set newValue OptionsProperty {..}+    = OptionsProperty {uid = Prelude.pure newValue, ..}+instance Property "VerifyMode" OptionsProperty where+  type PropertyType "VerifyMode" OptionsProperty = Value Prelude.Text+  set newValue OptionsProperty {..}+    = OptionsProperty {verifyMode = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/Task/OptionsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.Task.OptionsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data OptionsProperty :: Prelude.Type+instance ToResourceProperties OptionsProperty+instance Prelude.Eq OptionsProperty+instance Prelude.Show OptionsProperty+instance JSON.ToJSON OptionsProperty
+ gen/Stratosphere/DataSync/Task/OverridesProperty.hs view
@@ -0,0 +1,65 @@+module Stratosphere.DataSync.Task.OverridesProperty (+        module Exports, OverridesProperty(..), mkOverridesProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.Task.DeletedProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.Task.SkippedProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.Task.TransferredProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.Task.VerifiedProperty as Exports+import Stratosphere.ResourceProperties+data OverridesProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-overrides.html>+    OverridesProperty {haddock_workaround_ :: (),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-overrides.html#cfn-datasync-task-overrides-deleted>+                       deleted :: (Prelude.Maybe DeletedProperty),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-overrides.html#cfn-datasync-task-overrides-skipped>+                       skipped :: (Prelude.Maybe SkippedProperty),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-overrides.html#cfn-datasync-task-overrides-transferred>+                       transferred :: (Prelude.Maybe TransferredProperty),+                       -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-overrides.html#cfn-datasync-task-overrides-verified>+                       verified :: (Prelude.Maybe VerifiedProperty)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkOverridesProperty :: OverridesProperty+mkOverridesProperty+  = OverridesProperty+      {haddock_workaround_ = (), deleted = Prelude.Nothing,+       skipped = Prelude.Nothing, transferred = Prelude.Nothing,+       verified = Prelude.Nothing}+instance ToResourceProperties OverridesProperty where+  toResourceProperties OverridesProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Task.Overrides",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "Deleted" Prelude.<$> deleted,+                            (JSON..=) "Skipped" Prelude.<$> skipped,+                            (JSON..=) "Transferred" Prelude.<$> transferred,+                            (JSON..=) "Verified" Prelude.<$> verified])}+instance JSON.ToJSON OverridesProperty where+  toJSON OverridesProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "Deleted" Prelude.<$> deleted,+               (JSON..=) "Skipped" Prelude.<$> skipped,+               (JSON..=) "Transferred" Prelude.<$> transferred,+               (JSON..=) "Verified" Prelude.<$> verified]))+instance Property "Deleted" OverridesProperty where+  type PropertyType "Deleted" OverridesProperty = DeletedProperty+  set newValue OverridesProperty {..}+    = OverridesProperty {deleted = Prelude.pure newValue, ..}+instance Property "Skipped" OverridesProperty where+  type PropertyType "Skipped" OverridesProperty = SkippedProperty+  set newValue OverridesProperty {..}+    = OverridesProperty {skipped = Prelude.pure newValue, ..}+instance Property "Transferred" OverridesProperty where+  type PropertyType "Transferred" OverridesProperty = TransferredProperty+  set newValue OverridesProperty {..}+    = OverridesProperty {transferred = Prelude.pure newValue, ..}+instance Property "Verified" OverridesProperty where+  type PropertyType "Verified" OverridesProperty = VerifiedProperty+  set newValue OverridesProperty {..}+    = OverridesProperty {verified = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/Task/OverridesProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.Task.OverridesProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data OverridesProperty :: Prelude.Type+instance ToResourceProperties OverridesProperty+instance Prelude.Eq OverridesProperty+instance Prelude.Show OverridesProperty+instance JSON.ToJSON OverridesProperty
+ gen/Stratosphere/DataSync/Task/SkippedProperty.hs view
@@ -0,0 +1,36 @@+module Stratosphere.DataSync.Task.SkippedProperty (+        SkippedProperty(..), mkSkippedProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data SkippedProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-skipped.html>+    SkippedProperty {haddock_workaround_ :: (),+                     -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-skipped.html#cfn-datasync-task-skipped-reportlevel>+                     reportLevel :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSkippedProperty :: SkippedProperty+mkSkippedProperty+  = SkippedProperty+      {haddock_workaround_ = (), reportLevel = Prelude.Nothing}+instance ToResourceProperties SkippedProperty where+  toResourceProperties SkippedProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Task.Skipped",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "ReportLevel" Prelude.<$> reportLevel])}+instance JSON.ToJSON SkippedProperty where+  toJSON SkippedProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "ReportLevel" Prelude.<$> reportLevel]))+instance Property "ReportLevel" SkippedProperty where+  type PropertyType "ReportLevel" SkippedProperty = Value Prelude.Text+  set newValue SkippedProperty {..}+    = SkippedProperty {reportLevel = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/Task/SkippedProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.Task.SkippedProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SkippedProperty :: Prelude.Type+instance ToResourceProperties SkippedProperty+instance Prelude.Eq SkippedProperty+instance Prelude.Show SkippedProperty+instance JSON.ToJSON SkippedProperty
+ gen/Stratosphere/DataSync/Task/SourceProperty.hs view
@@ -0,0 +1,33 @@+module Stratosphere.DataSync.Task.SourceProperty (+        module Exports, SourceProperty(..), mkSourceProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.Task.ManifestConfigSourceS3Property as Exports+import Stratosphere.ResourceProperties+data SourceProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-source.html>+    SourceProperty {haddock_workaround_ :: (),+                    -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-source.html#cfn-datasync-task-source-s3>+                    s3 :: (Prelude.Maybe ManifestConfigSourceS3Property)}+  deriving stock (Prelude.Eq, Prelude.Show)+mkSourceProperty :: SourceProperty+mkSourceProperty+  = SourceProperty {haddock_workaround_ = (), s3 = Prelude.Nothing}+instance ToResourceProperties SourceProperty where+  toResourceProperties SourceProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Task.Source",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes [(JSON..=) "S3" Prelude.<$> s3])}+instance JSON.ToJSON SourceProperty where+  toJSON SourceProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes [(JSON..=) "S3" Prelude.<$> s3]))+instance Property "S3" SourceProperty where+  type PropertyType "S3" SourceProperty = ManifestConfigSourceS3Property+  set newValue SourceProperty {..}+    = SourceProperty {s3 = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/Task/SourceProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.Task.SourceProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data SourceProperty :: Prelude.Type+instance ToResourceProperties SourceProperty+instance Prelude.Eq SourceProperty+instance Prelude.Show SourceProperty+instance JSON.ToJSON SourceProperty
+ gen/Stratosphere/DataSync/Task/TaskReportConfigDestinationS3Property.hs view
@@ -0,0 +1,58 @@+module Stratosphere.DataSync.Task.TaskReportConfigDestinationS3Property (+        TaskReportConfigDestinationS3Property(..),+        mkTaskReportConfigDestinationS3Property+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data TaskReportConfigDestinationS3Property+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-taskreportconfigdestinations3.html>+    TaskReportConfigDestinationS3Property {haddock_workaround_ :: (),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-taskreportconfigdestinations3.html#cfn-datasync-task-taskreportconfigdestinations3-bucketaccessrolearn>+                                           bucketAccessRoleArn :: (Prelude.Maybe (Value Prelude.Text)),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-taskreportconfigdestinations3.html#cfn-datasync-task-taskreportconfigdestinations3-s3bucketarn>+                                           s3BucketArn :: (Prelude.Maybe (Value Prelude.Text)),+                                           -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-taskreportconfigdestinations3.html#cfn-datasync-task-taskreportconfigdestinations3-subdirectory>+                                           subdirectory :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkTaskReportConfigDestinationS3Property ::+  TaskReportConfigDestinationS3Property+mkTaskReportConfigDestinationS3Property+  = TaskReportConfigDestinationS3Property+      {haddock_workaround_ = (), bucketAccessRoleArn = Prelude.Nothing,+       s3BucketArn = Prelude.Nothing, subdirectory = Prelude.Nothing}+instance ToResourceProperties TaskReportConfigDestinationS3Property where+  toResourceProperties TaskReportConfigDestinationS3Property {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Task.TaskReportConfigDestinationS3",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "BucketAccessRoleArn" Prelude.<$> bucketAccessRoleArn,+                            (JSON..=) "S3BucketArn" Prelude.<$> s3BucketArn,+                            (JSON..=) "Subdirectory" Prelude.<$> subdirectory])}+instance JSON.ToJSON TaskReportConfigDestinationS3Property where+  toJSON TaskReportConfigDestinationS3Property {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "BucketAccessRoleArn" Prelude.<$> bucketAccessRoleArn,+               (JSON..=) "S3BucketArn" Prelude.<$> s3BucketArn,+               (JSON..=) "Subdirectory" Prelude.<$> subdirectory]))+instance Property "BucketAccessRoleArn" TaskReportConfigDestinationS3Property where+  type PropertyType "BucketAccessRoleArn" TaskReportConfigDestinationS3Property = Value Prelude.Text+  set newValue TaskReportConfigDestinationS3Property {..}+    = TaskReportConfigDestinationS3Property+        {bucketAccessRoleArn = Prelude.pure newValue, ..}+instance Property "S3BucketArn" TaskReportConfigDestinationS3Property where+  type PropertyType "S3BucketArn" TaskReportConfigDestinationS3Property = Value Prelude.Text+  set newValue TaskReportConfigDestinationS3Property {..}+    = TaskReportConfigDestinationS3Property+        {s3BucketArn = Prelude.pure newValue, ..}+instance Property "Subdirectory" TaskReportConfigDestinationS3Property where+  type PropertyType "Subdirectory" TaskReportConfigDestinationS3Property = Value Prelude.Text+  set newValue TaskReportConfigDestinationS3Property {..}+    = TaskReportConfigDestinationS3Property+        {subdirectory = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/Task/TaskReportConfigDestinationS3Property.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.Task.TaskReportConfigDestinationS3Property where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data TaskReportConfigDestinationS3Property :: Prelude.Type+instance ToResourceProperties TaskReportConfigDestinationS3Property+instance Prelude.Eq TaskReportConfigDestinationS3Property+instance Prelude.Show TaskReportConfigDestinationS3Property+instance JSON.ToJSON TaskReportConfigDestinationS3Property
+ gen/Stratosphere/DataSync/Task/TaskReportConfigProperty.hs view
@@ -0,0 +1,79 @@+module Stratosphere.DataSync.Task.TaskReportConfigProperty (+        module Exports, TaskReportConfigProperty(..),+        mkTaskReportConfigProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DataSync.Task.DestinationProperty as Exports+import {-# SOURCE #-} Stratosphere.DataSync.Task.OverridesProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Value+data TaskReportConfigProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-taskreportconfig.html>+    TaskReportConfigProperty {haddock_workaround_ :: (),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-taskreportconfig.html#cfn-datasync-task-taskreportconfig-destination>+                              destination :: DestinationProperty,+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-taskreportconfig.html#cfn-datasync-task-taskreportconfig-objectversionids>+                              objectVersionIds :: (Prelude.Maybe (Value Prelude.Text)),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-taskreportconfig.html#cfn-datasync-task-taskreportconfig-outputtype>+                              outputType :: (Value Prelude.Text),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-taskreportconfig.html#cfn-datasync-task-taskreportconfig-overrides>+                              overrides :: (Prelude.Maybe OverridesProperty),+                              -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-taskreportconfig.html#cfn-datasync-task-taskreportconfig-reportlevel>+                              reportLevel :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkTaskReportConfigProperty ::+  DestinationProperty+  -> Value Prelude.Text -> TaskReportConfigProperty+mkTaskReportConfigProperty destination outputType+  = TaskReportConfigProperty+      {haddock_workaround_ = (), destination = destination,+       outputType = outputType, objectVersionIds = Prelude.Nothing,+       overrides = Prelude.Nothing, reportLevel = Prelude.Nothing}+instance ToResourceProperties TaskReportConfigProperty where+  toResourceProperties TaskReportConfigProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Task.TaskReportConfig",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        ((Prelude.<>)+                           ["Destination" JSON..= destination,+                            "OutputType" JSON..= outputType]+                           (Prelude.catMaybes+                              [(JSON..=) "ObjectVersionIds" Prelude.<$> objectVersionIds,+                               (JSON..=) "Overrides" Prelude.<$> overrides,+                               (JSON..=) "ReportLevel" Prelude.<$> reportLevel]))}+instance JSON.ToJSON TaskReportConfigProperty where+  toJSON TaskReportConfigProperty {..}+    = JSON.object+        (Prelude.fromList+           ((Prelude.<>)+              ["Destination" JSON..= destination,+               "OutputType" JSON..= outputType]+              (Prelude.catMaybes+                 [(JSON..=) "ObjectVersionIds" Prelude.<$> objectVersionIds,+                  (JSON..=) "Overrides" Prelude.<$> overrides,+                  (JSON..=) "ReportLevel" Prelude.<$> reportLevel])))+instance Property "Destination" TaskReportConfigProperty where+  type PropertyType "Destination" TaskReportConfigProperty = DestinationProperty+  set newValue TaskReportConfigProperty {..}+    = TaskReportConfigProperty {destination = newValue, ..}+instance Property "ObjectVersionIds" TaskReportConfigProperty where+  type PropertyType "ObjectVersionIds" TaskReportConfigProperty = Value Prelude.Text+  set newValue TaskReportConfigProperty {..}+    = TaskReportConfigProperty+        {objectVersionIds = Prelude.pure newValue, ..}+instance Property "OutputType" TaskReportConfigProperty where+  type PropertyType "OutputType" TaskReportConfigProperty = Value Prelude.Text+  set newValue TaskReportConfigProperty {..}+    = TaskReportConfigProperty {outputType = newValue, ..}+instance Property "Overrides" TaskReportConfigProperty where+  type PropertyType "Overrides" TaskReportConfigProperty = OverridesProperty+  set newValue TaskReportConfigProperty {..}+    = TaskReportConfigProperty {overrides = Prelude.pure newValue, ..}+instance Property "ReportLevel" TaskReportConfigProperty where+  type PropertyType "ReportLevel" TaskReportConfigProperty = Value Prelude.Text+  set newValue TaskReportConfigProperty {..}+    = TaskReportConfigProperty+        {reportLevel = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/Task/TaskReportConfigProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.Task.TaskReportConfigProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data TaskReportConfigProperty :: Prelude.Type+instance ToResourceProperties TaskReportConfigProperty+instance Prelude.Eq TaskReportConfigProperty+instance Prelude.Show TaskReportConfigProperty+instance JSON.ToJSON TaskReportConfigProperty
+ gen/Stratosphere/DataSync/Task/TaskScheduleProperty.hs view
@@ -0,0 +1,46 @@+module Stratosphere.DataSync.Task.TaskScheduleProperty (+        TaskScheduleProperty(..), mkTaskScheduleProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data TaskScheduleProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-taskschedule.html>+    TaskScheduleProperty {haddock_workaround_ :: (),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-taskschedule.html#cfn-datasync-task-taskschedule-scheduleexpression>+                          scheduleExpression :: (Prelude.Maybe (Value Prelude.Text)),+                          -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-taskschedule.html#cfn-datasync-task-taskschedule-status>+                          status :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkTaskScheduleProperty :: TaskScheduleProperty+mkTaskScheduleProperty+  = TaskScheduleProperty+      {haddock_workaround_ = (), scheduleExpression = Prelude.Nothing,+       status = Prelude.Nothing}+instance ToResourceProperties TaskScheduleProperty where+  toResourceProperties TaskScheduleProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Task.TaskSchedule",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "ScheduleExpression" Prelude.<$> scheduleExpression,+                            (JSON..=) "Status" Prelude.<$> status])}+instance JSON.ToJSON TaskScheduleProperty where+  toJSON TaskScheduleProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "ScheduleExpression" Prelude.<$> scheduleExpression,+               (JSON..=) "Status" Prelude.<$> status]))+instance Property "ScheduleExpression" TaskScheduleProperty where+  type PropertyType "ScheduleExpression" TaskScheduleProperty = Value Prelude.Text+  set newValue TaskScheduleProperty {..}+    = TaskScheduleProperty+        {scheduleExpression = Prelude.pure newValue, ..}+instance Property "Status" TaskScheduleProperty where+  type PropertyType "Status" TaskScheduleProperty = Value Prelude.Text+  set newValue TaskScheduleProperty {..}+    = TaskScheduleProperty {status = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/Task/TaskScheduleProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.Task.TaskScheduleProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data TaskScheduleProperty :: Prelude.Type+instance ToResourceProperties TaskScheduleProperty+instance Prelude.Eq TaskScheduleProperty+instance Prelude.Show TaskScheduleProperty+instance JSON.ToJSON TaskScheduleProperty
+ gen/Stratosphere/DataSync/Task/TransferredProperty.hs view
@@ -0,0 +1,36 @@+module Stratosphere.DataSync.Task.TransferredProperty (+        TransferredProperty(..), mkTransferredProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data TransferredProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-transferred.html>+    TransferredProperty {haddock_workaround_ :: (),+                         -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-transferred.html#cfn-datasync-task-transferred-reportlevel>+                         reportLevel :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkTransferredProperty :: TransferredProperty+mkTransferredProperty+  = TransferredProperty+      {haddock_workaround_ = (), reportLevel = Prelude.Nothing}+instance ToResourceProperties TransferredProperty where+  toResourceProperties TransferredProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Task.Transferred",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "ReportLevel" Prelude.<$> reportLevel])}+instance JSON.ToJSON TransferredProperty where+  toJSON TransferredProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "ReportLevel" Prelude.<$> reportLevel]))+instance Property "ReportLevel" TransferredProperty where+  type PropertyType "ReportLevel" TransferredProperty = Value Prelude.Text+  set newValue TransferredProperty {..}+    = TransferredProperty {reportLevel = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/Task/TransferredProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.Task.TransferredProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data TransferredProperty :: Prelude.Type+instance ToResourceProperties TransferredProperty+instance Prelude.Eq TransferredProperty+instance Prelude.Show TransferredProperty+instance JSON.ToJSON TransferredProperty
+ gen/Stratosphere/DataSync/Task/VerifiedProperty.hs view
@@ -0,0 +1,36 @@+module Stratosphere.DataSync.Task.VerifiedProperty (+        VerifiedProperty(..), mkVerifiedProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data VerifiedProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-verified.html>+    VerifiedProperty {haddock_workaround_ :: (),+                      -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-task-verified.html#cfn-datasync-task-verified-reportlevel>+                      reportLevel :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkVerifiedProperty :: VerifiedProperty+mkVerifiedProperty+  = VerifiedProperty+      {haddock_workaround_ = (), reportLevel = Prelude.Nothing}+instance ToResourceProperties VerifiedProperty where+  toResourceProperties VerifiedProperty {..}+    = ResourceProperties+        {awsType = "AWS::DataSync::Task.Verified",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "ReportLevel" Prelude.<$> reportLevel])}+instance JSON.ToJSON VerifiedProperty where+  toJSON VerifiedProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "ReportLevel" Prelude.<$> reportLevel]))+instance Property "ReportLevel" VerifiedProperty where+  type PropertyType "ReportLevel" VerifiedProperty = Value Prelude.Text+  set newValue VerifiedProperty {..}+    = VerifiedProperty {reportLevel = Prelude.pure newValue, ..}
+ gen/Stratosphere/DataSync/Task/VerifiedProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DataSync.Task.VerifiedProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data VerifiedProperty :: Prelude.Type+instance ToResourceProperties VerifiedProperty+instance Prelude.Eq VerifiedProperty+instance Prelude.Show VerifiedProperty+instance JSON.ToJSON VerifiedProperty
+ stratosphere-datasync.cabal view
@@ -0,0 +1,124 @@+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-datasync+version:        1.0.0+synopsis:       Stratosphere integration for AWS DataSync.+description:    Integration into stratosphere to generate resources and properties for AWS DataSync+category:       AWS, Cloud, DataSync+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.DataSync.Agent+      Stratosphere.DataSync.LocationAzureBlob+      Stratosphere.DataSync.LocationAzureBlob.AzureBlobSasConfigurationProperty+      Stratosphere.DataSync.LocationAzureBlob.CmkSecretConfigProperty+      Stratosphere.DataSync.LocationAzureBlob.CustomSecretConfigProperty+      Stratosphere.DataSync.LocationAzureBlob.ManagedSecretConfigProperty+      Stratosphere.DataSync.LocationEFS+      Stratosphere.DataSync.LocationEFS.Ec2ConfigProperty+      Stratosphere.DataSync.LocationFSxLustre+      Stratosphere.DataSync.LocationFSxONTAP+      Stratosphere.DataSync.LocationFSxONTAP.NfsMountOptionsProperty+      Stratosphere.DataSync.LocationFSxONTAP.NFSProperty+      Stratosphere.DataSync.LocationFSxONTAP.ProtocolProperty+      Stratosphere.DataSync.LocationFSxONTAP.SmbMountOptionsProperty+      Stratosphere.DataSync.LocationFSxONTAP.SMBProperty+      Stratosphere.DataSync.LocationFSxOpenZFS+      Stratosphere.DataSync.LocationFSxOpenZFS.MountOptionsProperty+      Stratosphere.DataSync.LocationFSxOpenZFS.NFSProperty+      Stratosphere.DataSync.LocationFSxOpenZFS.ProtocolProperty+      Stratosphere.DataSync.LocationFSxWindows+      Stratosphere.DataSync.LocationHDFS+      Stratosphere.DataSync.LocationHDFS.NameNodeProperty+      Stratosphere.DataSync.LocationHDFS.QopConfigurationProperty+      Stratosphere.DataSync.LocationNFS+      Stratosphere.DataSync.LocationNFS.MountOptionsProperty+      Stratosphere.DataSync.LocationNFS.OnPremConfigProperty+      Stratosphere.DataSync.LocationObjectStorage+      Stratosphere.DataSync.LocationObjectStorage.CmkSecretConfigProperty+      Stratosphere.DataSync.LocationObjectStorage.CustomSecretConfigProperty+      Stratosphere.DataSync.LocationObjectStorage.ManagedSecretConfigProperty+      Stratosphere.DataSync.LocationS3+      Stratosphere.DataSync.LocationS3.S3ConfigProperty+      Stratosphere.DataSync.LocationSMB+      Stratosphere.DataSync.LocationSMB.CmkSecretConfigProperty+      Stratosphere.DataSync.LocationSMB.CustomSecretConfigProperty+      Stratosphere.DataSync.LocationSMB.ManagedSecretConfigProperty+      Stratosphere.DataSync.LocationSMB.MountOptionsProperty+      Stratosphere.DataSync.Task+      Stratosphere.DataSync.Task.DeletedProperty+      Stratosphere.DataSync.Task.DestinationProperty+      Stratosphere.DataSync.Task.FilterRuleProperty+      Stratosphere.DataSync.Task.ManifestConfigProperty+      Stratosphere.DataSync.Task.ManifestConfigSourceS3Property+      Stratosphere.DataSync.Task.OptionsProperty+      Stratosphere.DataSync.Task.OverridesProperty+      Stratosphere.DataSync.Task.SkippedProperty+      Stratosphere.DataSync.Task.SourceProperty+      Stratosphere.DataSync.Task.TaskReportConfigDestinationS3Property+      Stratosphere.DataSync.Task.TaskReportConfigProperty+      Stratosphere.DataSync.Task.TaskScheduleProperty+      Stratosphere.DataSync.Task.TransferredProperty+      Stratosphere.DataSync.Task.VerifiedProperty+  other-modules:+      Paths_stratosphere_datasync+  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