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 +20/−0
- gen/Stratosphere/DSQL/Cluster.hs +68/−0
- gen/Stratosphere/DSQL/Cluster/EncryptionDetailsProperty.hs +55/−0
- gen/Stratosphere/DSQL/Cluster/EncryptionDetailsProperty.hs-boot +9/−0
- gen/Stratosphere/DSQL/Cluster/MultiRegionPropertiesProperty.hs +47/−0
- gen/Stratosphere/DSQL/Cluster/MultiRegionPropertiesProperty.hs-boot +9/−0
- stratosphere-dsql.cabal +75/−0
+ LICENSE.md view
@@ -0,0 +1,20 @@+Copyright (c) 2016 David Reaver+Copyright (c) 2022 Markus Schirp++Permission is hereby granted, free of charge, to any person obtaining a copy of+this software and associated documentation files (the "Software"), to deal in+the Software without restriction, including without limitation the rights to+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies+of the Software, and to permit persons to whom the Software is furnished to do+so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in all+copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+SOFTWARE.
+ gen/Stratosphere/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