packages feed

stratosphere-dsql (empty) → 1.0.0

raw patch · 7 files changed

+283/−0 lines, 7 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/DSQL/Cluster.hs view
@@ -0,0 +1,68 @@+module Stratosphere.DSQL.Cluster (+        module Exports, Cluster(..), mkCluster+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import {-# SOURCE #-} Stratosphere.DSQL.Cluster.MultiRegionPropertiesProperty as Exports+import Stratosphere.ResourceProperties+import Stratosphere.Tag+import Stratosphere.Value+data Cluster+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dsql-cluster.html>+    Cluster {haddock_workaround_ :: (),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dsql-cluster.html#cfn-dsql-cluster-deletionprotectionenabled>+             deletionProtectionEnabled :: (Prelude.Maybe (Value Prelude.Bool)),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dsql-cluster.html#cfn-dsql-cluster-kmsencryptionkey>+             kmsEncryptionKey :: (Prelude.Maybe (Value Prelude.Text)),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dsql-cluster.html#cfn-dsql-cluster-multiregionproperties>+             multiRegionProperties :: (Prelude.Maybe MultiRegionPropertiesProperty),+             -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dsql-cluster.html#cfn-dsql-cluster-tags>+             tags :: (Prelude.Maybe [Tag])}+  deriving stock (Prelude.Eq, Prelude.Show)+mkCluster :: Cluster+mkCluster+  = Cluster+      {haddock_workaround_ = (),+       deletionProtectionEnabled = Prelude.Nothing,+       kmsEncryptionKey = Prelude.Nothing,+       multiRegionProperties = Prelude.Nothing, tags = Prelude.Nothing}+instance ToResourceProperties Cluster where+  toResourceProperties Cluster {..}+    = ResourceProperties+        {awsType = "AWS::DSQL::Cluster", supportsTags = Prelude.True,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "DeletionProtectionEnabled"+                              Prelude.<$> deletionProtectionEnabled,+                            (JSON..=) "KmsEncryptionKey" Prelude.<$> kmsEncryptionKey,+                            (JSON..=) "MultiRegionProperties"+                              Prelude.<$> multiRegionProperties,+                            (JSON..=) "Tags" Prelude.<$> tags])}+instance JSON.ToJSON Cluster where+  toJSON Cluster {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "DeletionProtectionEnabled"+                 Prelude.<$> deletionProtectionEnabled,+               (JSON..=) "KmsEncryptionKey" Prelude.<$> kmsEncryptionKey,+               (JSON..=) "MultiRegionProperties"+                 Prelude.<$> multiRegionProperties,+               (JSON..=) "Tags" Prelude.<$> tags]))+instance Property "DeletionProtectionEnabled" Cluster where+  type PropertyType "DeletionProtectionEnabled" Cluster = Value Prelude.Bool+  set newValue Cluster {..}+    = Cluster {deletionProtectionEnabled = Prelude.pure newValue, ..}+instance Property "KmsEncryptionKey" Cluster where+  type PropertyType "KmsEncryptionKey" Cluster = Value Prelude.Text+  set newValue Cluster {..}+    = Cluster {kmsEncryptionKey = Prelude.pure newValue, ..}+instance Property "MultiRegionProperties" Cluster where+  type PropertyType "MultiRegionProperties" Cluster = MultiRegionPropertiesProperty+  set newValue Cluster {..}+    = Cluster {multiRegionProperties = Prelude.pure newValue, ..}+instance Property "Tags" Cluster where+  type PropertyType "Tags" Cluster = [Tag]+  set newValue Cluster {..}+    = Cluster {tags = Prelude.pure newValue, ..}
+ gen/Stratosphere/DSQL/Cluster/EncryptionDetailsProperty.hs view
@@ -0,0 +1,55 @@+module Stratosphere.DSQL.Cluster.EncryptionDetailsProperty (+        EncryptionDetailsProperty(..), mkEncryptionDetailsProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data EncryptionDetailsProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dsql-cluster-encryptiondetails.html>+    EncryptionDetailsProperty {haddock_workaround_ :: (),+                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dsql-cluster-encryptiondetails.html#cfn-dsql-cluster-encryptiondetails-encryptionstatus>+                               encryptionStatus :: (Prelude.Maybe (Value Prelude.Text)),+                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dsql-cluster-encryptiondetails.html#cfn-dsql-cluster-encryptiondetails-encryptiontype>+                               encryptionType :: (Prelude.Maybe (Value Prelude.Text)),+                               -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dsql-cluster-encryptiondetails.html#cfn-dsql-cluster-encryptiondetails-kmskeyarn>+                               kmsKeyArn :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkEncryptionDetailsProperty :: EncryptionDetailsProperty+mkEncryptionDetailsProperty+  = EncryptionDetailsProperty+      {haddock_workaround_ = (), encryptionStatus = Prelude.Nothing,+       encryptionType = Prelude.Nothing, kmsKeyArn = Prelude.Nothing}+instance ToResourceProperties EncryptionDetailsProperty where+  toResourceProperties EncryptionDetailsProperty {..}+    = ResourceProperties+        {awsType = "AWS::DSQL::Cluster.EncryptionDetails",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "EncryptionStatus" Prelude.<$> encryptionStatus,+                            (JSON..=) "EncryptionType" Prelude.<$> encryptionType,+                            (JSON..=) "KmsKeyArn" Prelude.<$> kmsKeyArn])}+instance JSON.ToJSON EncryptionDetailsProperty where+  toJSON EncryptionDetailsProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "EncryptionStatus" Prelude.<$> encryptionStatus,+               (JSON..=) "EncryptionType" Prelude.<$> encryptionType,+               (JSON..=) "KmsKeyArn" Prelude.<$> kmsKeyArn]))+instance Property "EncryptionStatus" EncryptionDetailsProperty where+  type PropertyType "EncryptionStatus" EncryptionDetailsProperty = Value Prelude.Text+  set newValue EncryptionDetailsProperty {..}+    = EncryptionDetailsProperty+        {encryptionStatus = Prelude.pure newValue, ..}+instance Property "EncryptionType" EncryptionDetailsProperty where+  type PropertyType "EncryptionType" EncryptionDetailsProperty = Value Prelude.Text+  set newValue EncryptionDetailsProperty {..}+    = EncryptionDetailsProperty+        {encryptionType = Prelude.pure newValue, ..}+instance Property "KmsKeyArn" EncryptionDetailsProperty where+  type PropertyType "KmsKeyArn" EncryptionDetailsProperty = Value Prelude.Text+  set newValue EncryptionDetailsProperty {..}+    = EncryptionDetailsProperty {kmsKeyArn = Prelude.pure newValue, ..}
+ gen/Stratosphere/DSQL/Cluster/EncryptionDetailsProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DSQL.Cluster.EncryptionDetailsProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data EncryptionDetailsProperty :: Prelude.Type+instance ToResourceProperties EncryptionDetailsProperty+instance Prelude.Eq EncryptionDetailsProperty+instance Prelude.Show EncryptionDetailsProperty+instance JSON.ToJSON EncryptionDetailsProperty
+ gen/Stratosphere/DSQL/Cluster/MultiRegionPropertiesProperty.hs view
@@ -0,0 +1,47 @@+module Stratosphere.DSQL.Cluster.MultiRegionPropertiesProperty (+        MultiRegionPropertiesProperty(..), mkMultiRegionPropertiesProperty+    ) where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.Property+import Stratosphere.ResourceProperties+import Stratosphere.Value+data MultiRegionPropertiesProperty+  = -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dsql-cluster-multiregionproperties.html>+    MultiRegionPropertiesProperty {haddock_workaround_ :: (),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dsql-cluster-multiregionproperties.html#cfn-dsql-cluster-multiregionproperties-clusters>+                                   clusters :: (Prelude.Maybe (ValueList Prelude.Text)),+                                   -- | See: <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dsql-cluster-multiregionproperties.html#cfn-dsql-cluster-multiregionproperties-witnessregion>+                                   witnessRegion :: (Prelude.Maybe (Value Prelude.Text))}+  deriving stock (Prelude.Eq, Prelude.Show)+mkMultiRegionPropertiesProperty :: MultiRegionPropertiesProperty+mkMultiRegionPropertiesProperty+  = MultiRegionPropertiesProperty+      {haddock_workaround_ = (), clusters = Prelude.Nothing,+       witnessRegion = Prelude.Nothing}+instance ToResourceProperties MultiRegionPropertiesProperty where+  toResourceProperties MultiRegionPropertiesProperty {..}+    = ResourceProperties+        {awsType = "AWS::DSQL::Cluster.MultiRegionProperties",+         supportsTags = Prelude.False,+         properties = Prelude.fromList+                        (Prelude.catMaybes+                           [(JSON..=) "Clusters" Prelude.<$> clusters,+                            (JSON..=) "WitnessRegion" Prelude.<$> witnessRegion])}+instance JSON.ToJSON MultiRegionPropertiesProperty where+  toJSON MultiRegionPropertiesProperty {..}+    = JSON.object+        (Prelude.fromList+           (Prelude.catMaybes+              [(JSON..=) "Clusters" Prelude.<$> clusters,+               (JSON..=) "WitnessRegion" Prelude.<$> witnessRegion]))+instance Property "Clusters" MultiRegionPropertiesProperty where+  type PropertyType "Clusters" MultiRegionPropertiesProperty = ValueList Prelude.Text+  set newValue MultiRegionPropertiesProperty {..}+    = MultiRegionPropertiesProperty+        {clusters = Prelude.pure newValue, ..}+instance Property "WitnessRegion" MultiRegionPropertiesProperty where+  type PropertyType "WitnessRegion" MultiRegionPropertiesProperty = Value Prelude.Text+  set newValue MultiRegionPropertiesProperty {..}+    = MultiRegionPropertiesProperty+        {witnessRegion = Prelude.pure newValue, ..}
+ gen/Stratosphere/DSQL/Cluster/MultiRegionPropertiesProperty.hs-boot view
@@ -0,0 +1,9 @@+module Stratosphere.DSQL.Cluster.MultiRegionPropertiesProperty where+import qualified Data.Aeson as JSON+import qualified Stratosphere.Prelude as Prelude+import Stratosphere.ResourceProperties+data MultiRegionPropertiesProperty :: Prelude.Type+instance ToResourceProperties MultiRegionPropertiesProperty+instance Prelude.Eq MultiRegionPropertiesProperty+instance Prelude.Show MultiRegionPropertiesProperty+instance JSON.ToJSON MultiRegionPropertiesProperty
+ stratosphere-dsql.cabal view
@@ -0,0 +1,75 @@+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-dsql+version:        1.0.0+synopsis:       Stratosphere integration for AWS DSQL.+description:    Integration into stratosphere to generate resources and properties for AWS DSQL+category:       AWS, Cloud, DSQL+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.DSQL.Cluster+      Stratosphere.DSQL.Cluster.EncryptionDetailsProperty+      Stratosphere.DSQL.Cluster.MultiRegionPropertiesProperty+  other-modules:+      Paths_stratosphere_dsql+  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