packages feed

stratosphere 0.2.2 → 0.3.0

raw patch · 589 files changed

+28645/−11365 lines, 589 files

Files

CHANGELOG.md view
@@ -1,5 +1,13 @@ # Change Log +## 0.3.0++* **Backwards-incompatible**: We now use the official AWS JSON spec document to+  auto-generate types. This means there is no more Python scraper and custom+  JSON schemas. The behavior of the library is exactly the same, but a ton of+  resource names changed to match official the official AWS names. On the plus+  side, we now have 100% service coverage!+ ## 0.2.2  * Fixed a test suite failure caused by bleeding edge HLint version.
README.md view
@@ -117,21 +117,18 @@  ## Auto-generation -All of the resources and resource properties are auto-generated from JSON files-and are placed in `library-gen/`. The `gen/` directory contains the-auto-generator code and the JSON model files. We include the `library-gen/`-directory in git so the build process is simplified. To build `library-gen`-from scratch and then build all of `stratosphere`, just run the very short-`build.sh` script. You can pass stack args to the script too, so run-`./build.sh --fast` to build the library without optimization. This is useful-for development.+All of the resources and resource properties are auto-generated from+a+[JSON schema file](http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-resource-specification.html) and+are placed in `library-gen/`. The `gen/` directory contains the auto-generator+code and the JSON model file. We include the `library-gen/` directory in git so+the build process is simplified. To build `library-gen` from scratch and then+build all of `stratosphere`, just run the very short `build.sh` script. You can+pass stack args to the script too, so run `./build.sh --fast` to build the+library without optimization. This is useful for development.  In the future, it would be great to not have to include the auto-generated code in git.--Also, there is a file called `scraper.py` that scrapes a given CloudFormation-resource documentation page to produce the JSON model. It isn't perfect, but it-helps a lot.  ## Contributing 
examples/apigw-lambda-dynamodb.hs view
@@ -36,89 +36,98 @@   & formatVersion ?~ "2010-09-09"  apiGWRestApi :: Resource-apiGWRestApi = (resource "ApiGWRestApi" $+apiGWRestApi =+  resource "ApiGWRestApi" $   ApiGatewayRestApiProperties $   apiGatewayRestApi-    "myApi"-  )+  & agraName ?~ "myApi"  apiGWResource :: Resource-apiGWResource = (resource "ApiGWResource" $+apiGWResource =+  resource "ApiGWResource" $   ApiGatewayResourceProperties $   apiGatewayResource     (GetAtt "ApiGWRestApi" "RootResourceId")     "thing"     (toRef apiGWRestApi)-  ) + getMethod :: Resource-getMethod = (resource "ApiGWGetMethod" $+getMethod = (+  resource "ApiGWGetMethod" $   ApiGatewayMethodProperties $   apiGatewayMethod-    NONE-    GET-    (toRef apiGWResource)-    (toRef apiGWRestApi)+    (Literal GET)+    & agmeAuthorizationType ?~ Literal NONE+    & agmeResourceId ?~ toRef apiGWResource+    & agmeAuthorizerId ?~ toRef apiGWRestApi     & agmeIntegration ?~ integration     & agmeMethodResponses ?~ [ methodResponse ]   )-  & dependsOn ?~ deps [-      readLambdaPermission-    ]+  & dependsOn ?~ deps [readLambdaPermission]    where-    integration = apiGatewayIntegration AWS-      & agiIntegrationHttpMethod ?~ POST-      & agiUri ?~ (Join "" [+    integration =+      apiGatewayMethodIntegration+      & agmiType ?~ Literal AWS+      & agmiIntegrationHttpMethod ?~ Literal POST+      & agmiUri ?~ Join "" [           "arn:aws:apigateway:"         , Ref "AWS::Region"         , ":lambda:path/2015-03-31/functions/"         , GetAtt "ReadTableLambda" "Arn"-        , "/invocations"])-      & agiIntegrationResponses ?~ [ integrationResponse ]-      & agiPassthroughBehavior ?~ WHEN_NO_TEMPLATES-      & agiRequestTemplates ?~ [ ]+        , "/invocations"]+      & agmiIntegrationResponses ?~ [ integrationResponse ]+      & agmiPassthroughBehavior ?~ Literal WHEN_NO_TEMPLATES+      & agmiRequestTemplates ?~ [ ] -    integrationResponse = apiGatewayIntegrationResponse-      & agirResponseTemplates ?~ [ ("application/json", "$input.json('$.body')") ]-      & agirStatusCode ?~ "200"+    integrationResponse =+      apiGatewayMethodIntegrationResponse+      & agmirResponseTemplates ?~ [ ("application/json", "$input.json('$.body')") ]+      & agmirStatusCode ?~ "200" -    methodResponse = apiGatewayMethodResponse "200"+    methodResponse =+      apiGatewayMethodMethodResponse+      & agmmrStatusCode ?~ "200"   postMethod :: Resource-postMethod = (resource "ApiGWPutMethod" $+postMethod = (+  resource "ApiGWPutMethod" $   ApiGatewayMethodProperties $   apiGatewayMethod-    NONE-    POST-    (toRef apiGWResource)-    (toRef apiGWRestApi)+    (Literal POST)+    & agmeAuthorizationType ?~ Literal NONE+    & agmeResourceId ?~ toRef apiGWResource+    & agmeAuthorizerId ?~ toRef apiGWRestApi     & agmeIntegration ?~ integration     & agmeMethodResponses ?~ [ methodResponse ]   )-  & dependsOn ?~ deps [-      writeLambdaPermission-    ]+  & dependsOn ?~ deps [writeLambdaPermission]    where-    integration = apiGatewayIntegration AWS-      & agiIntegrationHttpMethod ?~ POST-      & agiUri ?~ (Join "" [+    integration =+      apiGatewayMethodIntegration+      & agmiType ?~ Literal AWS+      & agmiIntegrationHttpMethod ?~ Literal POST+      & agmiUri ?~ Join "" [           "arn:aws:apigateway:"         , Ref "AWS::Region"         , ":lambda:path/2015-03-31/functions/"         , GetAtt "WriteTableLambda" "Arn"-        , "/invocations"])-      & agiIntegrationResponses ?~ [ integrationResponse ]-      & agiPassthroughBehavior ?~ WHEN_NO_TEMPLATES-      & agiRequestTemplates ?~ [ ("application/json", "{\"body\": $input.body}") ]+        , "/invocations"]+      & agmiIntegrationResponses ?~ [integrationResponse]+      & agmiPassthroughBehavior ?~ Literal WHEN_NO_TEMPLATES+      & agmiRequestTemplates ?~ [ ("application/json", "{\"body\": $input.body}") ] -    integrationResponse = apiGatewayIntegrationResponse-      & agirResponseTemplates ?~ [ ("application/json", "$input.json('$.body')") ]-      & agirStatusCode ?~ "200"+    integrationResponse =+      apiGatewayMethodIntegrationResponse+      & agmirResponseTemplates ?~ [ ("application/json", "$input.json('$.body')") ]+      & agmirStatusCode ?~ "200" -    methodResponse = apiGatewayMethodResponse "200"+    methodResponse =+      apiGatewayMethodMethodResponse+      & agmmrStatusCode ?~ "200"  apiGWDeployment :: Resource apiGWDeployment = (resource "ApiGWDeployment" $@@ -140,7 +149,7 @@     lambdaCode     "index.handler"     (GetAtt "ReadLambdaRole" "Arn")-    NodeJS43+    (Literal NodeJS43)     & lfFunctionName ?~ "readTable"   ) @@ -171,15 +180,15 @@   writeLambda :: Resource-writeLambda = (resource "WriteTableLambda" $+writeLambda =+  resource "WriteTableLambda" $   LambdaFunctionProperties $   lambdaFunction     lambdaCode     "index.handler"     (GetAtt "WriteLambdaRole" "Arn")-    NodeJS43+    (Literal NodeJS43)     & lfFunctionName ?~ "writeTable"-  )    where     lambdaCode :: LambdaFunctionCode@@ -209,14 +218,15 @@ readLambdaRole :: Resource readLambdaRole = resource "ReadLambdaRole" $   IAMRoleProperties $-  iamRole rolePolicyDocumentObject+  iamRole+  rolePolicyDocumentObject   & iamrPolicies ?~ [ executePolicy ]   & iamrRoleName ?~ "ReadLambdaRole"   & iamrPath ?~ "/"    where     executePolicy =-      iamPolicies+      iamRolePolicy       [ ("Version", "2012-10-17")       , ("Statement", statement)       ]@@ -236,7 +246,6 @@           , "dynamodb:GetItem"           ] -     rolePolicyDocumentObject =       [ ("Version", "2012-10-17")       , ("Statement", statement)@@ -255,14 +264,15 @@ writeLambdaRole :: Resource writeLambdaRole = resource "WriteLambdaRole" $   IAMRoleProperties $-  iamRole rolePolicyDocumentObject+  iamRole+  rolePolicyDocumentObject   & iamrPolicies ?~ [ executePolicy ]   & iamrRoleName ?~ "WriteLambdaRole"   & iamrPath ?~ "/"    where     executePolicy =-      iamPolicies+      iamRolePolicy       [ ("Version", "2012-10-17")       , ("Statement", statement)       ]@@ -325,14 +335,19 @@    where     attributeDefinitions = [-        dynamoDBAttributeDefinition "Id" S+        dynamoDBTableAttributeDefinition+        (Literal "Id")+        (Literal S)       ]     keySchema = [-        dynamoDBKeySchema "Id" HASH+        dynamoDBTableKeySchema+        (Literal "Id")+        (Literal HASH)       ]     provisionedThroughput =-      dynamoDBProvisionedThroughput (Literal 1) (Literal 1)+      dynamoDBTableProvisionedThroughput+      (Literal 1)+      (Literal 1)  deps :: [Resource] -> [Text]-deps = map (\d -> d ^. resName)-+deps = map (^. resName)
− examples/apigw-lambda-s3.hs
@@ -1,189 +0,0 @@-{-# LANGUAGE OverloadedLists #-}-{-# LANGUAGE OverloadedStrings #-}--module Main where--import Control.Lens-import Data.Aeson (Value (Array), object)-import qualified Data.ByteString.Lazy.Char8 as B-import Data.Text (Text)-import Stratosphere----- to curl the endpoint: (substitute your APIGW deployment URL)--- curl -v -X POST -H "Content-Type: application/json" -d "{\"property\": 3}" "https://t04rmwbtgj.execute-api.us-east-1.amazonaws.com/v1/thing"--main :: IO ()-main = B.putStrLn $ encodeTemplate myTemplate--myTemplate :: Template-myTemplate = template-  [ role-  , incomingS3Bucket-  , lambda-  , permission-  , apiGWRestApi-  , apiGWResource-  , apiGWMethod-  , apiGWDeployment-  ]-  & description ?~ "Simple api gateway attached to a lambda that writes the request body to a S3 object"-  & formatVersion ?~ "2010-09-09"--apiGWRestApi :: Resource-apiGWRestApi = (resource "ApiGWRestApi" $-  ApiGatewayRestApiProperties $-  apiGatewayRestApi-    "myApi"-  )--apiGWResource :: Resource-apiGWResource = (resource "ApiGWResource" $-  ApiGatewayResourceProperties $-  apiGatewayResource-    (GetAtt "ApiGWRestApi" "RootResourceId")-    "thing"-    (toRef apiGWRestApi)-  )--apiGWMethod :: Resource-apiGWMethod = (resource "ApiGWMethod" $-  ApiGatewayMethodProperties $-  apiGatewayMethod-    NONE-    POST-    (toRef apiGWResource)-    (toRef apiGWRestApi)-    & agmeIntegration ?~ integration-    & agmeMethodResponses ?~ [ methodResponse ]-  )-  & dependsOn ?~ deps [-      permission-    ]--  where-    integration = apiGatewayIntegration AWS-      & agiIntegrationHttpMethod ?~ POST-      & agiUri ?~ (Join "" [-          "arn:aws:apigateway:"-        , Ref "AWS::Region"-        , ":lambda:path/2015-03-31/functions/"-        , GetAtt "WriteS3ObjectLambda" "Arn"-        , "/invocations"])-      & agiIntegrationResponses ?~ [ integrationResponse ]-      & agiPassthroughBehavior ?~ WHEN_NO_TEMPLATES-      & agiRequestTemplates ?~ [ ("application/json", "{\"body\": $input.body}") ]--    integrationResponse = apiGatewayIntegrationResponse-      & agirResponseTemplates ?~ [ ("application/json", "$input.json('$.body')") ]-      & agirStatusCode ?~ "200"--    methodResponse = apiGatewayMethodResponse "200"--apiGWDeployment :: Resource-apiGWDeployment = (resource "ApiGWDeployment" $-  ApiGatewayDeploymentProperties $-  apiGatewayDeployment-    (toRef apiGWRestApi)-    & agdStageName ?~ "v1"-  )-  & dependsOn ?~ deps [-      apiGWResource-    , apiGWMethod-    ]--lambda :: Resource-lambda = (resource "WriteS3ObjectLambda" $-  LambdaFunctionProperties $-  lambdaFunction-    lambdaCode-    "index.handler"-    (GetAtt "IAMRole" "Arn")-    NodeJS43-    & lfFunctionName ?~ "writeS3Object"-  )--  where-    lambdaCode :: LambdaFunctionCode-    lambdaCode = lambdaFunctionCode-      & lfcZipFile ?~ code--    code :: Val Text-    code = "\-    \ var AWS = require('aws-sdk');\n\-    \ var s3 = new AWS.S3({apiVersion: '2006-03-01'});\n\-    \ exports.handler = function(event, context, callback) {\n\-    \   console.log(JSON.stringify(event));\n\-    \   s3.putObject({Bucket: \"stratosphere-api-gateway-lambda-incoming\", Key: \"content.json\", ContentType: \"application/json\", Body: JSON.stringify(event.body)}, function(err){\n\-    \     if (err) { \n\-    \       console.log(\"Error:\", err); \n\-    \       callback(err) \n\-    \     } else { \n\-    \       callback(null, {\"body\": event.body});\n\-    \     } \n\-    \   });\n\-    \ }\n\-    \ "--role :: Resource-role = resource "IAMRole" $-  IAMRoleProperties $-  iamRole rolePolicyDocumentObject-  & iamrPolicies ?~ [ executePolicy ]-  & iamrRoleName ?~ "MyLambdaBasicExecutionRole"-  & iamrPath ?~ "/"--  where-    executePolicy =-      iamPolicies-      [ ("Version", "2012-10-17")-      , ("Statement", statement)-      ]-      "MyLambdaExecutionPolicy"--      where-        statement = object-          [ ("Effect", "Allow")-          , ("Action", actions)-          , ("Resource", "*")-          ]--        actions = Array-          [ "logs:CreateLogGroup"-          , "logs:CreateLogStream"-          , "logs:PutLogEvents"-          , "s3:PutObject"-          ]---    rolePolicyDocumentObject =-      [ ("Version", "2012-10-17")-      , ("Statement", statement)-      ]--      where-        statement = object-          [ ("Effect", "Allow")-          , ("Principal", principal)-          , ("Action", "sts:AssumeRole")-          ]--        principal = object-          [ ("Service", "lambda.amazonaws.com") ]--incomingS3Bucket :: Resource-incomingS3Bucket = resource "IncomingBucket" $-  BucketProperties $-  bucket-  & bBucketName ?~ "stratosphere-api-gateway-lambda-incoming"--permission :: Resource-permission = resource "LambdaPermission" $-  LambdaPermissionProperties $-  lambdaPermission-    "lambda:*"-    (GetAtt "WriteS3ObjectLambda" "Arn")-    "apigateway.amazonaws.com"--deps :: [Resource] -> [Text]-deps = map (\d -> d ^. resName)
examples/auto-scaling-group.hs view
@@ -28,12 +28,12 @@ asgResource :: Resource asgResource =   resource "AutoScalingGroup" $-  AutoScalingGroupProperties $-  autoScalingGroup+  AutoScalingAutoScalingGroupProperties $+  autoScalingAutoScalingGroup   "1"   "4"-  & asgDesiredCapacity ?~ "3"-  & asgLaunchConfigurationName ?~ Ref "LaunchConfig"+  & asasgDesiredCapacity ?~ "3"+  & asasgLaunchConfigurationName ?~ Ref "LaunchConfig"  asgCreationPolicy :: CreationPolicy asgCreationPolicy =@@ -46,21 +46,21 @@ asgUpdatePolicy =   updatePolicy   & upAutoScalingScheduledAction ?~ (-    autoScalingScheduledAction-    & assaIgnoreUnmodifiedGroupSizeProperties ?~ Literal True'+    autoScalingScheduledActionPolicy+    & assapIgnoreUnmodifiedGroupSizeProperties ?~ Literal True'     )   & upAutoScalingRollingUpdate ?~ (-    autoScalingRollingUpdate-    & asruMinInstancesInService ?~ Literal 1-    & asruMaxBatchSize ?~ Literal 2-    & asruPauseTime ?~ "PT15M"-    & asruWaitOnResourceSignals ?~ Literal True'+    autoScalingRollingUpdatePolicy+    & asrupMinInstancesInService ?~ Literal 1+    & asrupMaxBatchSize ?~ Literal 2+    & asrupPauseTime ?~ "PT15M"+    & asrupWaitOnResourceSignals ?~ Literal True'     )  launchConfigResource :: Resource launchConfigResource =   resource "LaunchConfig" $-  LaunchConfigurationProperties $-  launchConfiguration+  AutoScalingLaunchConfigurationProperties $+  autoScalingLaunchConfiguration   "ami-16d18a7e"   "t2.micro"
examples/ec2-with-eip.hs view
@@ -30,22 +30,22 @@       )     & deletionPolicy ?~ Retain   , resource "InstanceSecurityGroup" $-    SecurityGroupProperties $-    securityGroup+    EC2SecurityGroupProperties $+    ec2SecurityGroup     "Enable SSH Access"-    & sgSecurityGroupIngress ?~ [-      securityGroupIngressRule+    & ecsgSecurityGroupIngress ?~ [+      ec2SecurityGroupRule       "tcp"-      & sgirFromPort ?~ Literal 22-      & sgirToPort ?~ Literal 22-      & sgirCidrIp ?~ Ref "SSHLocation"+      & ecsgrFromPort ?~ Literal 22+      & ecsgrToPort ?~ Literal 22+      & ecsgrCidrIp ?~ Ref "SSHLocation"       ]-  , resource "IPAddress" (EIPProperties eip)+  , resource "IPAddress" (EC2EIPProperties ec2EIP)   , resource "IPAssoc" $-    EIPAssociationProperties $-    eipAssociation-    & eipaInstanceId ?~ Ref "EC2Instance"-    & eipaEIP ?~ Ref "IPAddress"+    EC2EIPAssociationProperties $+    ec2EIPAssociation+    & eceipaInstanceId ?~ Ref "EC2Instance"+    & eceipaEip ?~ Ref "IPAddress"   ]   & description ?~ "See https://s3.amazonaws.com/cloudformation-templates-us-east-1/EIP_With_Association.template"   & formatVersion ?~ "2010-09-09"
examples/rds-master-replica.hs view
@@ -8,7 +8,6 @@ module Main where  import Control.Lens-import Data.Aeson (object) import qualified Data.ByteString.Lazy.Char8 as B  import Stratosphere@@ -33,49 +32,50 @@ rdsMaster :: Resource rdsMaster =   resource "RDSMaster" $-  DBInstanceProperties $-  dbInstance+  RDSDBInstanceProperties $+  rdsdbInstance   "db.t2.micro"-  & dbiDBInstanceIdentifier ?~ Literal "db-master"-  & dbiStorageType ?~ "gp2"-  & dbiAllocatedStorage ?~ "20"-  & dbiDBParameterGroupName ?~ toRef rdsParamGroup-  & dbiEngine ?~ "postgres"-  & dbiEngineVersion ?~ "9.3.10"-  & dbiMasterUsername ?~ "postgres"-  & dbiMasterUserPassword ?~ Ref "RdsMasterPassword"-  & dbiDBName ?~ "the_database"-  & dbiPreferredMaintenanceWindow ?~ "Sun:01:00-Sun:02:00"-  & dbiBackupRetentionPeriod ?~ "30"-  & dbiPreferredBackupWindow ?~ "08:00-09:00"-  & dbiPort ?~ "5432"-  & dbiBackupRetentionPeriod ?~ "2"-  & dbiTags ?~-  [ resourceTag "Role" "rds-master"+  -- DBInstanceIdentifier is not present in the new schema for some reason+  -- & rdsdbiDBInstanceIdentifier ?~ Literal "db-master"+  & rdsdbiStorageType ?~ "gp2"+  & rdsdbiAllocatedStorage ?~ "20"+  & rdsdbiDBParameterGroupName ?~ toRef rdsParamGroup+  & rdsdbiEngine ?~ "postgres"+  & rdsdbiEngineVersion ?~ "9.3.10"+  & rdsdbiMasterUsername ?~ "postgres"+  & rdsdbiMasterUserPassword ?~ Ref "RdsMasterPassword"+  & rdsdbiDBName ?~ "the_database"+  & rdsdbiPreferredMaintenanceWindow ?~ "Sun:01:00-Sun:02:00"+  & rdsdbiBackupRetentionPeriod ?~ "30"+  & rdsdbiPreferredBackupWindow ?~ "08:00-09:00"+  & rdsdbiPort ?~ "5432"+  & rdsdbiBackupRetentionPeriod ?~ "2"+  & rdsdbiTags ?~+  [ tag "Role" "rds-master"   ]  rdsReplica :: Resource rdsReplica =   resource "RDSReplica" $-  DBInstanceProperties $-  dbInstance+  RDSDBInstanceProperties $+  rdsdbInstance   "db.t2.micro"-  & dbiDBInstanceIdentifier ?~ Literal "db-standby"-  & dbiSourceDBInstanceIdentifier ?~ toRef rdsMaster-  & dbiStorageType ?~ "gp2"-  & dbiTags ?~-  [ resourceTag "Role" "rds-standby"+  -- DBInstanceIdentifier is not present in the new schema for some reason+  -- & dbiDBInstanceIdentifier ?~ Literal "db-standby"+  & rdsdbiSourceDBInstanceIdentifier ?~ toRef rdsMaster+  & rdsdbiStorageType ?~ "gp2"+  & rdsdbiTags ?~+  [ tag "Role" "rds-standby"   ]  rdsParamGroup :: Resource rdsParamGroup =   resource "RDSParamGroup" $-  DBParameterGroupProperties $-  dbParameterGroup+  RDSDBParameterGroupProperties $+  rdsdbParameterGroup   "Parameter group for RDS instances"   "postgres9.3"-  & dbpgParameters ?~-    object+  & rdsdbpgParameters ?~     [ ("checkpoint_segments", "32")     , ("effective_cache_size", "5584716")     , ("hot_standby_feedback", "1")
examples/s3-copy.hs view
@@ -9,27 +9,33 @@ import Data.Text (Text) import Stratosphere - main :: IO () main = B.putStrLn $ encodeTemplate myTemplate  myTemplate :: Template-myTemplate = template-  [ role, lambda, permission, incomingS3Bucket, outgoingS3Bucket ]+myTemplate =+  template+  [ role'+  , lambda+  , permission+  , incomingS3Bucket+  , outgoingS3Bucket+  ]   & description ?~ "Simple event triggered S3 bucket to bucket copy example"   & formatVersion ?~ "2010-09-09"  lambda :: Resource-lambda = (resource "CopyS3ObjectLambda" $+lambda = (+  resource "CopyS3ObjectLambda" $   LambdaFunctionProperties $   lambdaFunction     lambdaCode     "index.handler"     (GetAtt "IAMRole" "Arn")-    NodeJS43+    (Literal NodeJS43)     & lfFunctionName ?~ "copyS3Object"   )-  & dependsOn ?~ [ role ^. resName ]+  & dependsOn ?~ [ role' ^. resName ]    where     lambdaCode :: LambdaFunctionCode@@ -51,21 +57,22 @@     \ } \     \ " --role :: Resource-role = resource "IAMRole" $+role' :: Resource+role' =+  resource "IAMRole" $   IAMRoleProperties $-  iamRole rolePolicyDocumentObject+  iamRole+  rolePolicyDocumentObject   & iamrPolicies ?~ [ executePolicy ]   & iamrRoleName ?~ "MyLambdaBasicExecutionRole"   & iamrPath ?~ "/"    where     executePolicy =-      iamPolicies+      iamRolePolicy       [ ("Version", "2012-10-17")       , ("Statement", statement)-      ] $+      ]       "MyLambdaExecutionPolicy"        where@@ -84,7 +91,6 @@           , "s3:GetObject"           ] -     rolePolicyDocumentObject =       [ ("Version", "2012-10-17")       , ("Statement", statement)@@ -101,28 +107,30 @@           [ ("Service", "lambda.amazonaws.com") ]  incomingS3Bucket :: Resource-incomingS3Bucket = (resource "IncomingBucket" $-  BucketProperties $-  bucket-    & bBucketName ?~ "stratosphere-s3-copy-incoming"-    & bNotificationConfiguration ?~ config+incomingS3Bucket = (+  resource "IncomingBucket" $+  S3BucketProperties $+  s3Bucket+  & sbBucketName ?~ "stratosphere-s3-copy-incoming"+  & sbNotificationConfiguration ?~ config   )   & dependsOn ?~ [ lambda ^. resName ]    where-    config = s3NotificationConfiguration-      & sncLambdaConfigurations ?~ [lambdaConfig]+    config =+      s3BucketNotificationConfiguration+      & sbncLambdaConfigurations ?~ [lambdaConfig] -    lambdaConfig = s3NotificationConfigurationLambdaConfiguration+    lambdaConfig =+      s3BucketLambdaConfiguration       "s3:ObjectCreated:*"       (GetAtt "CopyS3ObjectLambda" "Arn")  outgoingS3Bucket :: Resource outgoingS3Bucket = resource "OutgoingBucket" $-  BucketProperties $-  bucket-  & bBucketName ?~ "stratosphere-s3-copy-outgoing"-+  S3BucketProperties $+  s3Bucket+  & sbBucketName ?~ "stratosphere-s3-copy-outgoing"  permission :: Resource permission = resource "LambdaPermission" $
examples/simple-lambda.hs view
@@ -9,28 +9,27 @@ import Data.Text (Text) import Stratosphere - main :: IO () main = B.putStrLn $ encodeTemplate myTemplate  myTemplate :: Template myTemplate =   template-  [ role, lambda ]+  [ role', lambda ]   & description ?~ "Lambda example"   & formatVersion ?~ "2010-09-09"  lambda :: Resource-lambda =-  (resource "LambdaFunction" $+lambda = (+  resource "LambdaFunction" $   LambdaFunctionProperties $   lambdaFunction     lambdaCode     "index.handler"     (GetAtt "IAMRole" "Arn")-    NodeJS43+    (Literal NodeJS43)   )-  & dependsOn ?~ [ role ^. resName ]+  & dependsOn ?~ [ role' ^. resName ]  lambdaCode :: LambdaFunctionCode lambdaCode = lambdaFunctionCode@@ -46,21 +45,22 @@ \ "  -role :: Resource-role =+role' :: Resource+role' =   resource "IAMRole" $   IAMRoleProperties $-  iamRole rolePolicyDocumentObject+  iamRole+  rolePolicyDocumentObject   & iamrPolicies ?~ [ executePolicy ]   & iamrRoleName ?~ "MyLambdaBasicExecutionRole"   & iamrPath ?~ "/"    where     executePolicy =-      iamPolicies+      iamRolePolicy       [ ("Version", "2012-10-17")       , ("Statement", statement)-      ] $+      ]       "MyLambdaExecutionPolicy"        where
− library-gen/Stratosphere/ResourceAttributes/AutoScalingReplacingUpdate.hs
@@ -1,50 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | To specify how AWS CloudFormation handles replacing updates for an Auto--- Scaling group, use the AutoScalingReplacingUpdate policy.--module Stratosphere.ResourceAttributes.AutoScalingReplacingUpdate where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for AutoScalingReplacingUpdate. See--- 'autoScalingReplacingUpdate' for a more convenient constructor.-data AutoScalingReplacingUpdate =-  AutoScalingReplacingUpdate-  { _autoScalingReplacingUpdateWillReplace :: Maybe (Val Bool')-  } deriving (Show, Generic)--instance ToJSON AutoScalingReplacingUpdate where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }--instance FromJSON AutoScalingReplacingUpdate where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }---- | Constructor for 'AutoScalingReplacingUpdate' containing required fields--- as arguments.-autoScalingReplacingUpdate-  :: AutoScalingReplacingUpdate-autoScalingReplacingUpdate  =-  AutoScalingReplacingUpdate-  { _autoScalingReplacingUpdateWillReplace = Nothing-  }---- | Specifies whether an Auto Scaling group and the instances it contains are--- replaced during an update. During replacement, AWS CloudFormation retains--- the old group until it finishes creating the new one. This allows AWS--- CloudFormation to roll back to the old Auto Scaling group if the update--- doesn't succeed. While AWS CloudFormation creates the new group, it doesn't--- detach or attach any instances. After creating the new Auto Scaling group,--- AWS CloudFormation removes the old Auto Scaling group during the cleanup--- process. If the update doesn't succeed, AWS CloudFormation removes the new--- Auto Scaling group.-asruWillReplace :: Lens' AutoScalingReplacingUpdate (Maybe (Val Bool'))-asruWillReplace = lens _autoScalingReplacingUpdateWillReplace (\s a -> s { _autoScalingReplacingUpdateWillReplace = a })
− library-gen/Stratosphere/ResourceAttributes/AutoScalingRollingUpdate.hs
@@ -1,108 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | To specify how AWS CloudFormation handles rolling updates for an Auto--- Scaling group, use the AutoScalingRollingUpdate policy.--module Stratosphere.ResourceAttributes.AutoScalingRollingUpdate where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for AutoScalingRollingUpdate. See--- 'autoScalingRollingUpdate' for a more convenient constructor.-data AutoScalingRollingUpdate =-  AutoScalingRollingUpdate-  { _autoScalingRollingUpdateMaxBatchSize :: Maybe (Val Integer')-  , _autoScalingRollingUpdateMinInstancesInService :: Maybe (Val Integer')-  , _autoScalingRollingUpdateMinSuccessfulInstancesPercent :: Maybe (Val Integer')-  , _autoScalingRollingUpdatePauseTime :: Maybe (Val Text)-  , _autoScalingRollingUpdateSuspendProcess :: Maybe [Val Text]-  , _autoScalingRollingUpdateWaitOnResourceSignals :: Maybe (Val Bool')-  } deriving (Show, Generic)--instance ToJSON AutoScalingRollingUpdate where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }--instance FromJSON AutoScalingRollingUpdate where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }---- | Constructor for 'AutoScalingRollingUpdate' containing required fields as--- arguments.-autoScalingRollingUpdate-  :: AutoScalingRollingUpdate-autoScalingRollingUpdate  =-  AutoScalingRollingUpdate-  { _autoScalingRollingUpdateMaxBatchSize = Nothing-  , _autoScalingRollingUpdateMinInstancesInService = Nothing-  , _autoScalingRollingUpdateMinSuccessfulInstancesPercent = Nothing-  , _autoScalingRollingUpdatePauseTime = Nothing-  , _autoScalingRollingUpdateSuspendProcess = Nothing-  , _autoScalingRollingUpdateWaitOnResourceSignals = Nothing-  }---- | Specifies the maximum number of instances that AWS CloudFormation--- terminates.-asruMaxBatchSize :: Lens' AutoScalingRollingUpdate (Maybe (Val Integer'))-asruMaxBatchSize = lens _autoScalingRollingUpdateMaxBatchSize (\s a -> s { _autoScalingRollingUpdateMaxBatchSize = a })---- | Specifies the minimum number of instances that must be in service within--- the Auto Scaling group while AWS CloudFormation terminates obsolete--- instances.-asruMinInstancesInService :: Lens' AutoScalingRollingUpdate (Maybe (Val Integer'))-asruMinInstancesInService = lens _autoScalingRollingUpdateMinInstancesInService (\s a -> s { _autoScalingRollingUpdateMinInstancesInService = a })---- | Specifies the percentage of instances in an Auto Scaling rolling update--- that must signal success for an update to succeed. You can specify a value--- from 0 to 100. AWS CloudFormation rounds to the nearest tenth of a percent.--- For example, if you update five instances with a minimum successful--- percentage of 50, three instances must signal success. If an instance--- doesn't send a signal within the time specified using the PauseTime--- property, AWS CloudFormation assumes that the instance wasn't successfully--- updated. If you specify this property, you must also enable the--- WaitOnResourceSignals and PauseTime properties.-asruMinSuccessfulInstancesPercent :: Lens' AutoScalingRollingUpdate (Maybe (Val Integer'))-asruMinSuccessfulInstancesPercent = lens _autoScalingRollingUpdateMinSuccessfulInstancesPercent (\s a -> s { _autoScalingRollingUpdateMinSuccessfulInstancesPercent = a })---- | Specifies the amount of time that AWS CloudFormation should pause after--- making a change to a batch of instances to give these instances time to--- start software applications. For example, you might need PauseTime when--- scaling up the number of instances in an Auto Scaling group. If you enable--- the WaitOnResourceSignals property, PauseTime is the amount of time AWS--- CloudFormation should wait for the Auto Scaling group to receive the--- required number of valid signals from added or replaced instances. If the--- PauseTime is exceeded before the Auto Scaling group receives the required--- number of signals, the update fails. For best results, specify a time--- period that gives your instances sufficient time to get started. If the--- update needs to be rolled back, a short PauseTime can cause the rollback to--- fail. Specify PauseTime in the ISO8601 duration format (in the format--- PT#H#M#S, where each # is the number of hours, minutes, and seconds,--- respectively). The maximum PauseTime is one hour (PT1H).-asruPauseTime :: Lens' AutoScalingRollingUpdate (Maybe (Val Text))-asruPauseTime = lens _autoScalingRollingUpdatePauseTime (\s a -> s { _autoScalingRollingUpdatePauseTime = a })---- | Specifies the Auto Scaling processes to suspend during a stack update.--- Suspending processes prevents Auto Scaling from interfering with a stack--- update. For example, you can suspend alarming so that Auto Scaling doesn't--- execute scaling policies associated with an alarm. For valid values, see--- the ScalingProcesses.member.N parameter for the SuspendProcesses action in--- the Auto Scaling API Reference.-asruSuspendProcess :: Lens' AutoScalingRollingUpdate (Maybe [Val Text])-asruSuspendProcess = lens _autoScalingRollingUpdateSuspendProcess (\s a -> s { _autoScalingRollingUpdateSuspendProcess = a })---- | Specifies whether the Auto Scaling group waits on signals from new--- instances during an update. AWS CloudFormation suspends the update of an--- Auto Scaling group after new Amazon EC2 instances are launched into the--- group. AWS CloudFormation must receive a signal from each new instance--- within the specified PauseTime before continuing the update. To signal the--- Auto Scaling group, use the cfn-signal helper script or SignalResource API.--- Use this property to ensure that instances have completed installing and--- configuring applications before the Auto Scaling group update proceeds.-asruWaitOnResourceSignals :: Lens' AutoScalingRollingUpdate (Maybe (Val Bool'))-asruWaitOnResourceSignals = lens _autoScalingRollingUpdateWaitOnResourceSignals (\s a -> s { _autoScalingRollingUpdateWaitOnResourceSignals = a })
− library-gen/Stratosphere/ResourceAttributes/AutoScalingScheduledAction.hs
@@ -1,60 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | To specify how AWS CloudFormation handles updates for the MinSize,--- MaxSize, and DesiredCapacity properties when the--- AWS::AutoScaling::AutoScalingGroup resource has an associated scheduled--- action, use the AutoScalingScheduledAction policy. With scheduled actions,--- the group size properties of an Auto Scaling group can change at any time.--- When you update a stack with an Auto Scaling group and scheduled action,--- AWS CloudFormation always sets the group size property values of your Auto--- Scaling group to the values that are defined in the--- AWS::AutoScaling::AutoScalingGroup resource of your template, even if a--- scheduled action is in effect. If you do not want AWS CloudFormation to--- change any of the group size property values when you have a scheduled--- action in effect, use the AutoScalingScheduledAction update policy to--- prevent AWS CloudFormation from changing the MinSize, MaxSize, or--- DesiredCapacity properties unless you have modified these values in your--- template.--module Stratosphere.ResourceAttributes.AutoScalingScheduledAction where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for AutoScalingScheduledAction. See--- 'autoScalingScheduledAction' for a more convenient constructor.-data AutoScalingScheduledAction =-  AutoScalingScheduledAction-  { _autoScalingScheduledActionIgnoreUnmodifiedGroupSizeProperties :: Maybe (Val Bool')-  } deriving (Show, Generic)--instance ToJSON AutoScalingScheduledAction where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }--instance FromJSON AutoScalingScheduledAction where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }---- | Constructor for 'AutoScalingScheduledAction' containing required fields--- as arguments.-autoScalingScheduledAction-  :: AutoScalingScheduledAction-autoScalingScheduledAction  =-  AutoScalingScheduledAction-  { _autoScalingScheduledActionIgnoreUnmodifiedGroupSizeProperties = Nothing-  }---- | Specifies whether AWS CloudFormation ignores differences in group size--- properties between your current Auto Scaling group and the Auto Scaling--- group described in the AWS::AutoScaling::AutoScalingGroup resource of your--- template during a stack update. If you modify any of the group size--- property values in your template, AWS CloudFormation uses the modified--- values and updates your Auto Scaling group.-assaIgnoreUnmodifiedGroupSizeProperties :: Lens' AutoScalingScheduledAction (Maybe (Val Bool'))-assaIgnoreUnmodifiedGroupSizeProperties = lens _autoScalingScheduledActionIgnoreUnmodifiedGroupSizeProperties (\s a -> s { _autoScalingScheduledActionIgnoreUnmodifiedGroupSizeProperties = a })
− library-gen/Stratosphere/ResourceAttributes/CreationPolicy.hs
@@ -1,58 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | You associate the CreationPolicy attribute with a resource to prevent its--- status from reaching create complete until AWS CloudFormation receives a--- specified number of success signals or the timeout period is exceeded. To--- signal a resource, you can use the cfn-signal helper script or--- SignalResource API. AWS CloudFormation publishes valid signals to the stack--- events so that you track the number of signals sent. The creation policy is--- invoked only when AWS CloudFormation creates the associated resource.--- Currently, the only AWS CloudFormation resources that support creation--- policies are AWS::AutoScaling::AutoScalingGroup, AWS::EC2::Instance, and--- AWS::CloudFormation::WaitCondition. The CreationPolicy attribute is helpful--- when you want to wait on resource configuration actions before stack--- creation proceeds. For example, if you install and configure software--- applications on an Amazon EC2 instance, you might want those applications--- up and running before proceeding. In such cases, you can add a--- CreationPolicy attribute to the instance and then send a success signal to--- the instance after the applications are installed and configured. For a--- detailed example, see Deploying Applications on Amazon EC2 with AWS--- CloudFormation.--module Stratosphere.ResourceAttributes.CreationPolicy where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceAttributes.ResourceSignal---- | Full data type definition for CreationPolicy. See 'creationPolicy' for a--- more convenient constructor.-data CreationPolicy =-  CreationPolicy-  { _creationPolicyResourceSignal :: ResourceSignal-  } deriving (Show, Generic)--instance ToJSON CreationPolicy where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }--instance FromJSON CreationPolicy where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }---- | Constructor for 'CreationPolicy' containing required fields as arguments.-creationPolicy-  :: ResourceSignal -- ^ 'cpResourceSignal'-  -> CreationPolicy-creationPolicy resourceSignalarg =-  CreationPolicy-  { _creationPolicyResourceSignal = resourceSignalarg-  }---- |-cpResourceSignal :: Lens' CreationPolicy ResourceSignal-cpResourceSignal = lens _creationPolicyResourceSignal (\s a -> s { _creationPolicyResourceSignal = a })
− library-gen/Stratosphere/ResourceAttributes/ResourceSignal.hs
@@ -1,58 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- |--module Stratosphere.ResourceAttributes.ResourceSignal where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for ResourceSignal. See 'resourceSignal' for a--- more convenient constructor.-data ResourceSignal =-  ResourceSignal-  { _resourceSignalCount :: Maybe (Val Integer')-  , _resourceSignalTimeout :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON ResourceSignal where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }--instance FromJSON ResourceSignal where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }---- | Constructor for 'ResourceSignal' containing required fields as arguments.-resourceSignal-  :: ResourceSignal-resourceSignal  =-  ResourceSignal-  { _resourceSignalCount = Nothing-  , _resourceSignalTimeout = Nothing-  }---- | The number of success signals AWS CloudFormation must receive before it--- sets the resource status as CREATE_COMPLETE. If the resource receives a--- failure signal or doesn't receive the specified number of signals before--- the timeout period expires, the resource creation fails and AWS--- CloudFormation rolls the stack back.-rsCount :: Lens' ResourceSignal (Maybe (Val Integer'))-rsCount = lens _resourceSignalCount (\s a -> s { _resourceSignalCount = a })---- | The length of time that AWS CloudFormation waits for the number of--- signals that was specified in the Count property. The timeout period starts--- after AWS CloudFormation starts creating the resource, and the timeout--- expires no sooner than the time you specify but can occur shortly--- thereafter. The maximum time that you can specify is 12 hours. The value--- must be in ISO8601 duration format, in the form: "PT#H#M#S", where each #--- is the number of hours, minutes, and seconds, respectively. For best--- results, specify a period of time that gives your instances plenty of time--- to get up and running. A shorter timeout can cause a rollback.-rsTimeout :: Lens' ResourceSignal (Maybe (Val Text))-rsTimeout = lens _resourceSignalTimeout (\s a -> s { _resourceSignalTimeout = a })
− library-gen/Stratosphere/ResourceAttributes/UpdatePolicy.hs
@@ -1,58 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Use the UpdatePolicy attribute to specify how AWS CloudFormation handles--- updates to the AWS::AutoScaling::AutoScalingGroup resource. AWS--- CloudFormation invokes one of three update policies depending on the type--- of change you make or on whether a scheduled action is associated with the--- Auto Scaling group.--module Stratosphere.ResourceAttributes.UpdatePolicy where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceAttributes.AutoScalingReplacingUpdate-import Stratosphere.ResourceAttributes.AutoScalingRollingUpdate-import Stratosphere.ResourceAttributes.AutoScalingScheduledAction---- | Full data type definition for UpdatePolicy. See 'updatePolicy' for a more--- convenient constructor.-data UpdatePolicy =-  UpdatePolicy-  { _updatePolicyAutoScalingReplacingUpdate :: Maybe AutoScalingReplacingUpdate-  , _updatePolicyAutoScalingRollingUpdate :: Maybe AutoScalingRollingUpdate-  , _updatePolicyAutoScalingScheduledAction :: Maybe AutoScalingScheduledAction-  } deriving (Show, Generic)--instance ToJSON UpdatePolicy where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }--instance FromJSON UpdatePolicy where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }---- | Constructor for 'UpdatePolicy' containing required fields as arguments.-updatePolicy-  :: UpdatePolicy-updatePolicy  =-  UpdatePolicy-  { _updatePolicyAutoScalingReplacingUpdate = Nothing-  , _updatePolicyAutoScalingRollingUpdate = Nothing-  , _updatePolicyAutoScalingScheduledAction = Nothing-  }---- |-upAutoScalingReplacingUpdate :: Lens' UpdatePolicy (Maybe AutoScalingReplacingUpdate)-upAutoScalingReplacingUpdate = lens _updatePolicyAutoScalingReplacingUpdate (\s a -> s { _updatePolicyAutoScalingReplacingUpdate = a })---- |-upAutoScalingRollingUpdate :: Lens' UpdatePolicy (Maybe AutoScalingRollingUpdate)-upAutoScalingRollingUpdate = lens _updatePolicyAutoScalingRollingUpdate (\s a -> s { _updatePolicyAutoScalingRollingUpdate = a })---- |-upAutoScalingScheduledAction :: Lens' UpdatePolicy (Maybe AutoScalingScheduledAction)-upAutoScalingScheduledAction = lens _updatePolicyAutoScalingScheduledAction (\s a -> s { _updatePolicyAutoScalingScheduledAction = a })
− library-gen/Stratosphere/ResourceProperties/APIGatewayDeploymentStageDescription.hs
@@ -1,143 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | StageDescription is a property of the AWS::ApiGateway::Deployment--- resource that configures an Amazon API Gateway (API Gateway) deployment--- stage.--module Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescription where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescriptionMethodSetting---- | Full data type definition for APIGatewayDeploymentStageDescription. See--- 'apiGatewayDeploymentStageDescription' for a more convenient constructor.-data APIGatewayDeploymentStageDescription =-  APIGatewayDeploymentStageDescription-  { _aPIGatewayDeploymentStageDescriptionCacheClusterEnabled :: Maybe (Val Bool')-  , _aPIGatewayDeploymentStageDescriptionCacheClusterSize :: Maybe (Val Text)-  , _aPIGatewayDeploymentStageDescriptionCacheDataEncrypted :: Maybe (Val Bool')-  , _aPIGatewayDeploymentStageDescriptionCacheTtlInSeconds :: Maybe (Val Integer')-  , _aPIGatewayDeploymentStageDescriptionCachingEnabled :: Maybe (Val Bool')-  , _aPIGatewayDeploymentStageDescriptionClientCertificateId :: Maybe (Val Text)-  , _aPIGatewayDeploymentStageDescriptionDataTraceEnabled :: Maybe (Val Bool')-  , _aPIGatewayDeploymentStageDescriptionDescription :: Maybe (Val Text)-  , _aPIGatewayDeploymentStageDescriptionLoggingLevel :: Maybe (Val Text)-  , _aPIGatewayDeploymentStageDescriptionMethodSettings :: Maybe APIGatewayDeploymentStageDescriptionMethodSetting-  , _aPIGatewayDeploymentStageDescriptionMetricsEnabled :: Maybe (Val Bool')-  , _aPIGatewayDeploymentStageDescriptionStageName :: Maybe (Val Text)-  , _aPIGatewayDeploymentStageDescriptionThrottlingBurstLimit :: Maybe (Val Integer')-  , _aPIGatewayDeploymentStageDescriptionThrottlingRateLimit :: Maybe Double'-  , _aPIGatewayDeploymentStageDescriptionVariables :: Maybe Object-  } deriving (Show, Generic)--instance ToJSON APIGatewayDeploymentStageDescription where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }--instance FromJSON APIGatewayDeploymentStageDescription where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }---- | Constructor for 'APIGatewayDeploymentStageDescription' containing--- required fields as arguments.-apiGatewayDeploymentStageDescription-  :: APIGatewayDeploymentStageDescription-apiGatewayDeploymentStageDescription  =-  APIGatewayDeploymentStageDescription-  { _aPIGatewayDeploymentStageDescriptionCacheClusterEnabled = Nothing-  , _aPIGatewayDeploymentStageDescriptionCacheClusterSize = Nothing-  , _aPIGatewayDeploymentStageDescriptionCacheDataEncrypted = Nothing-  , _aPIGatewayDeploymentStageDescriptionCacheTtlInSeconds = Nothing-  , _aPIGatewayDeploymentStageDescriptionCachingEnabled = Nothing-  , _aPIGatewayDeploymentStageDescriptionClientCertificateId = Nothing-  , _aPIGatewayDeploymentStageDescriptionDataTraceEnabled = Nothing-  , _aPIGatewayDeploymentStageDescriptionDescription = Nothing-  , _aPIGatewayDeploymentStageDescriptionLoggingLevel = Nothing-  , _aPIGatewayDeploymentStageDescriptionMethodSettings = Nothing-  , _aPIGatewayDeploymentStageDescriptionMetricsEnabled = Nothing-  , _aPIGatewayDeploymentStageDescriptionStageName = Nothing-  , _aPIGatewayDeploymentStageDescriptionThrottlingBurstLimit = Nothing-  , _aPIGatewayDeploymentStageDescriptionThrottlingRateLimit = Nothing-  , _aPIGatewayDeploymentStageDescriptionVariables = Nothing-  }---- | Indicates whether cache clustering is enabled for the stage.-apigdsdCacheClusterEnabled :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Bool'))-apigdsdCacheClusterEnabled = lens _aPIGatewayDeploymentStageDescriptionCacheClusterEnabled (\s a -> s { _aPIGatewayDeploymentStageDescriptionCacheClusterEnabled = a })---- | The size of the stage's cache cluster.-apigdsdCacheClusterSize :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Text))-apigdsdCacheClusterSize = lens _aPIGatewayDeploymentStageDescriptionCacheClusterSize (\s a -> s { _aPIGatewayDeploymentStageDescriptionCacheClusterSize = a })---- | Indicates whether the cached responses are encrypted.-apigdsdCacheDataEncrypted :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Bool'))-apigdsdCacheDataEncrypted = lens _aPIGatewayDeploymentStageDescriptionCacheDataEncrypted (\s a -> s { _aPIGatewayDeploymentStageDescriptionCacheDataEncrypted = a })---- | The time-to-live (TTL) period, in seconds, that specifies how long API--- Gateway caches responses.-apigdsdCacheTtlInSeconds :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Integer'))-apigdsdCacheTtlInSeconds = lens _aPIGatewayDeploymentStageDescriptionCacheTtlInSeconds (\s a -> s { _aPIGatewayDeploymentStageDescriptionCacheTtlInSeconds = a })---- | Indicates whether responses are cached and returned for requests. You--- must enable a cache cluster on the stage to cache responses. For more--- information, see Enable API Gateway Caching in a Stage to Enhance API--- Performance in the API Gateway Developer Guide.-apigdsdCachingEnabled :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Bool'))-apigdsdCachingEnabled = lens _aPIGatewayDeploymentStageDescriptionCachingEnabled (\s a -> s { _aPIGatewayDeploymentStageDescriptionCachingEnabled = a })---- | The identifier of the client certificate that API Gateway uses to call--- your integration endpoints in the stage.-apigdsdClientCertificateId :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Text))-apigdsdClientCertificateId = lens _aPIGatewayDeploymentStageDescriptionClientCertificateId (\s a -> s { _aPIGatewayDeploymentStageDescriptionClientCertificateId = a })---- | Indicates whether data trace logging is enabled for methods in the stage.--- API Gateway pushes these logs to Amazon CloudWatch Logs.-apigdsdDataTraceEnabled :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Bool'))-apigdsdDataTraceEnabled = lens _aPIGatewayDeploymentStageDescriptionDataTraceEnabled (\s a -> s { _aPIGatewayDeploymentStageDescriptionDataTraceEnabled = a })---- | A description of the purpose of the stage.-apigdsdDescription :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Text))-apigdsdDescription = lens _aPIGatewayDeploymentStageDescriptionDescription (\s a -> s { _aPIGatewayDeploymentStageDescriptionDescription = a })---- | The logging level for this method. For valid values, see the loggingLevel--- property of the Stage resource in the Amazon API Gateway API Reference.-apigdsdLoggingLevel :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Text))-apigdsdLoggingLevel = lens _aPIGatewayDeploymentStageDescriptionLoggingLevel (\s a -> s { _aPIGatewayDeploymentStageDescriptionLoggingLevel = a })---- | Configures settings for all of the stage's methods.-apigdsdMethodSettings :: Lens' APIGatewayDeploymentStageDescription (Maybe APIGatewayDeploymentStageDescriptionMethodSetting)-apigdsdMethodSettings = lens _aPIGatewayDeploymentStageDescriptionMethodSettings (\s a -> s { _aPIGatewayDeploymentStageDescriptionMethodSettings = a })---- | Indicates whether Amazon CloudWatch metrics are enabled for methods in--- the stage.-apigdsdMetricsEnabled :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Bool'))-apigdsdMetricsEnabled = lens _aPIGatewayDeploymentStageDescriptionMetricsEnabled (\s a -> s { _aPIGatewayDeploymentStageDescriptionMetricsEnabled = a })---- | The name of the stage, which API Gateway uses as the first path segment--- in the invoke Uniform Resource Identifier (URI).-apigdsdStageName :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Text))-apigdsdStageName = lens _aPIGatewayDeploymentStageDescriptionStageName (\s a -> s { _aPIGatewayDeploymentStageDescriptionStageName = a })---- | The number of burst requests per second that API Gateway permits across--- all APIs, stages, and methods in your AWS account. For more information,--- see Manage API Request Throttling in the API Gateway Developer Guide.-apigdsdThrottlingBurstLimit :: Lens' APIGatewayDeploymentStageDescription (Maybe (Val Integer'))-apigdsdThrottlingBurstLimit = lens _aPIGatewayDeploymentStageDescriptionThrottlingBurstLimit (\s a -> s { _aPIGatewayDeploymentStageDescriptionThrottlingBurstLimit = a })---- | The number of steady-state requests per second that API Gateway permits--- across all APIs, stages, and methods in your AWS account. For more--- information, see Manage API Request Throttling in the API Gateway Developer--- Guide.-apigdsdThrottlingRateLimit :: Lens' APIGatewayDeploymentStageDescription (Maybe Double')-apigdsdThrottlingRateLimit = lens _aPIGatewayDeploymentStageDescriptionThrottlingRateLimit (\s a -> s { _aPIGatewayDeploymentStageDescriptionThrottlingRateLimit = a })---- | A map that defines the stage variables. Variable names must consist of--- alphanumeric characters, and the values must match the following regular--- expression: [A-Za-z0-9-._~:/?#&=,]+.-apigdsdVariables :: Lens' APIGatewayDeploymentStageDescription (Maybe Object)-apigdsdVariables = lens _aPIGatewayDeploymentStageDescriptionVariables (\s a -> s { _aPIGatewayDeploymentStageDescriptionVariables = a })
− library-gen/Stratosphere/ResourceProperties/APIGatewayDeploymentStageDescriptionMethodSetting.hs
@@ -1,114 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | MethodSetting is a property of the Amazon API Gateway Deployment--- StageDescription property that configures settings for all methods in an--- Amazon API Gateway (API Gateway) stage.--module Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescriptionMethodSetting where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.Types---- | Full data type definition for--- APIGatewayDeploymentStageDescriptionMethodSetting. See--- 'apiGatewayDeploymentStageDescriptionMethodSetting' for a more convenient--- constructor.-data APIGatewayDeploymentStageDescriptionMethodSetting =-  APIGatewayDeploymentStageDescriptionMethodSetting-  { _aPIGatewayDeploymentStageDescriptionMethodSettingCacheDataEncrypted :: Maybe (Val Bool')-  , _aPIGatewayDeploymentStageDescriptionMethodSettingCacheTtlInSeconds :: Maybe (Val Integer')-  , _aPIGatewayDeploymentStageDescriptionMethodSettingCachingEnabled :: Maybe (Val Bool')-  , _aPIGatewayDeploymentStageDescriptionMethodSettingDataTraceEnabled :: Maybe (Val Bool')-  , _aPIGatewayDeploymentStageDescriptionMethodSettingHttpMethod :: Maybe HttpMethod-  , _aPIGatewayDeploymentStageDescriptionMethodSettingLoggingLevel :: Maybe LoggingLevel-  , _aPIGatewayDeploymentStageDescriptionMethodSettingMetricsEnabled :: Maybe (Val Bool')-  , _aPIGatewayDeploymentStageDescriptionMethodSettingResourcePath :: Maybe (Val Text)-  , _aPIGatewayDeploymentStageDescriptionMethodSettingThrottlingBurstLimit :: Maybe (Val Integer')-  , _aPIGatewayDeploymentStageDescriptionMethodSettingThrottlingRateLimit :: Maybe Double'-  } deriving (Show, Generic)--instance ToJSON APIGatewayDeploymentStageDescriptionMethodSetting where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 50, omitNothingFields = True }--instance FromJSON APIGatewayDeploymentStageDescriptionMethodSetting where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 50, omitNothingFields = True }---- | Constructor for 'APIGatewayDeploymentStageDescriptionMethodSetting'--- containing required fields as arguments.-apiGatewayDeploymentStageDescriptionMethodSetting-  :: APIGatewayDeploymentStageDescriptionMethodSetting-apiGatewayDeploymentStageDescriptionMethodSetting  =-  APIGatewayDeploymentStageDescriptionMethodSetting-  { _aPIGatewayDeploymentStageDescriptionMethodSettingCacheDataEncrypted = Nothing-  , _aPIGatewayDeploymentStageDescriptionMethodSettingCacheTtlInSeconds = Nothing-  , _aPIGatewayDeploymentStageDescriptionMethodSettingCachingEnabled = Nothing-  , _aPIGatewayDeploymentStageDescriptionMethodSettingDataTraceEnabled = Nothing-  , _aPIGatewayDeploymentStageDescriptionMethodSettingHttpMethod = Nothing-  , _aPIGatewayDeploymentStageDescriptionMethodSettingLoggingLevel = Nothing-  , _aPIGatewayDeploymentStageDescriptionMethodSettingMetricsEnabled = Nothing-  , _aPIGatewayDeploymentStageDescriptionMethodSettingResourcePath = Nothing-  , _aPIGatewayDeploymentStageDescriptionMethodSettingThrottlingBurstLimit = Nothing-  , _aPIGatewayDeploymentStageDescriptionMethodSettingThrottlingRateLimit = Nothing-  }---- | Indicates whether the cached responses are encrypted.-apigdsdmsCacheDataEncrypted :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe (Val Bool'))-apigdsdmsCacheDataEncrypted = lens _aPIGatewayDeploymentStageDescriptionMethodSettingCacheDataEncrypted (\s a -> s { _aPIGatewayDeploymentStageDescriptionMethodSettingCacheDataEncrypted = a })---- | The time-to-live (TTL) period, in seconds, that specifies how long API--- Gateway caches responses.-apigdsdmsCacheTtlInSeconds :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe (Val Integer'))-apigdsdmsCacheTtlInSeconds = lens _aPIGatewayDeploymentStageDescriptionMethodSettingCacheTtlInSeconds (\s a -> s { _aPIGatewayDeploymentStageDescriptionMethodSettingCacheTtlInSeconds = a })---- | Indicates whether responses are cached and returned for requests. You--- must enable a cache cluster on the stage to cache responses. For more--- information, see Enable API Gateway Caching in a Stage to Enhance API--- Performance in the API Gateway Developer Guide.-apigdsdmsCachingEnabled :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe (Val Bool'))-apigdsdmsCachingEnabled = lens _aPIGatewayDeploymentStageDescriptionMethodSettingCachingEnabled (\s a -> s { _aPIGatewayDeploymentStageDescriptionMethodSettingCachingEnabled = a })---- | Indicates whether data trace logging is enabled for methods in the stage.--- API Gateway pushes these logs to Amazon CloudWatch Logs.-apigdsdmsDataTraceEnabled :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe (Val Bool'))-apigdsdmsDataTraceEnabled = lens _aPIGatewayDeploymentStageDescriptionMethodSettingDataTraceEnabled (\s a -> s { _aPIGatewayDeploymentStageDescriptionMethodSettingDataTraceEnabled = a })---- | The HTTP method.-apigdsdmsHttpMethod :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe HttpMethod)-apigdsdmsHttpMethod = lens _aPIGatewayDeploymentStageDescriptionMethodSettingHttpMethod (\s a -> s { _aPIGatewayDeploymentStageDescriptionMethodSettingHttpMethod = a })---- | The logging level for this method. For valid values, see the loggingLevel--- property of the Stage resource in the Amazon API Gateway API Reference.-apigdsdmsLoggingLevel :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe LoggingLevel)-apigdsdmsLoggingLevel = lens _aPIGatewayDeploymentStageDescriptionMethodSettingLoggingLevel (\s a -> s { _aPIGatewayDeploymentStageDescriptionMethodSettingLoggingLevel = a })---- | Indicates whether Amazon CloudWatch metrics are enabled for methods in--- the stage.-apigdsdmsMetricsEnabled :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe (Val Bool'))-apigdsdmsMetricsEnabled = lens _aPIGatewayDeploymentStageDescriptionMethodSettingMetricsEnabled (\s a -> s { _aPIGatewayDeploymentStageDescriptionMethodSettingMetricsEnabled = a })---- | The resource path for this method. Forward slashes (/) are encoded as ~1--- and the initial slash must include a forward slash. For example, the path--- value /resource/subresource must be encoded as /~1resource~1subresource. To--- specify the root path, use only a slash (/).-apigdsdmsResourcePath :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe (Val Text))-apigdsdmsResourcePath = lens _aPIGatewayDeploymentStageDescriptionMethodSettingResourcePath (\s a -> s { _aPIGatewayDeploymentStageDescriptionMethodSettingResourcePath = a })---- | The number of burst requests per second that API Gateway permits across--- all APIs, stages, and methods in your AWS account. For more information,--- see Manage API Request Throttling in the API Gateway Developer Guide.-apigdsdmsThrottlingBurstLimit :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe (Val Integer'))-apigdsdmsThrottlingBurstLimit = lens _aPIGatewayDeploymentStageDescriptionMethodSettingThrottlingBurstLimit (\s a -> s { _aPIGatewayDeploymentStageDescriptionMethodSettingThrottlingBurstLimit = a })---- | The number of steady-state requests per second that API Gateway permits--- across all APIs, stages, and methods in your AWS account. For more--- information, see Manage API Request Throttling in the API Gateway Developer--- Guide.-apigdsdmsThrottlingRateLimit :: Lens' APIGatewayDeploymentStageDescriptionMethodSetting (Maybe Double')-apigdsdmsThrottlingRateLimit = lens _aPIGatewayDeploymentStageDescriptionMethodSettingThrottlingRateLimit (\s a -> s { _aPIGatewayDeploymentStageDescriptionMethodSettingThrottlingRateLimit = a })
− library-gen/Stratosphere/ResourceProperties/AccessLoggingPolicy.hs
@@ -1,65 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AccessLoggingPolicy property describes where and how access logs are--- stored for the AWS::ElasticLoadBalancing::LoadBalancer resource.--module Stratosphere.ResourceProperties.AccessLoggingPolicy where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for AccessLoggingPolicy. See--- 'accessLoggingPolicy' for a more convenient constructor.-data AccessLoggingPolicy =-  AccessLoggingPolicy-  { _accessLoggingPolicyEmitInterval :: Maybe (Val Integer')-  , _accessLoggingPolicyEnabled :: Val Bool'-  , _accessLoggingPolicyS3BucketName :: Val Text-  , _accessLoggingPolicyS3BucketPrefix :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON AccessLoggingPolicy where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }--instance FromJSON AccessLoggingPolicy where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }---- | Constructor for 'AccessLoggingPolicy' containing required fields as--- arguments.-accessLoggingPolicy-  :: Val Bool' -- ^ 'alpEnabled'-  -> Val Text -- ^ 'alpS3BucketName'-  -> AccessLoggingPolicy-accessLoggingPolicy enabledarg s3BucketNamearg =-  AccessLoggingPolicy-  { _accessLoggingPolicyEmitInterval = Nothing-  , _accessLoggingPolicyEnabled = enabledarg-  , _accessLoggingPolicyS3BucketName = s3BucketNamearg-  , _accessLoggingPolicyS3BucketPrefix = Nothing-  }---- | The interval for publishing access logs in minutes. You can specify an--- interval of either 5 minutes or 60 minutes.-alpEmitInterval :: Lens' AccessLoggingPolicy (Maybe (Val Integer'))-alpEmitInterval = lens _accessLoggingPolicyEmitInterval (\s a -> s { _accessLoggingPolicyEmitInterval = a })---- | Whether logging is enabled for the load balancer.-alpEnabled :: Lens' AccessLoggingPolicy (Val Bool')-alpEnabled = lens _accessLoggingPolicyEnabled (\s a -> s { _accessLoggingPolicyEnabled = a })---- | The name of an Amazon S3 bucket where access log files are stored.-alpS3BucketName :: Lens' AccessLoggingPolicy (Val Text)-alpS3BucketName = lens _accessLoggingPolicyS3BucketName (\s a -> s { _accessLoggingPolicyS3BucketName = a })---- | A prefix for the all log object keys, such as my-load-balancer-logs/prod.--- If you store log files from multiple sources in a single bucket, you can--- use a prefix to distinguish each log file and its source.-alpS3BucketPrefix :: Lens' AccessLoggingPolicy (Maybe (Val Text))-alpS3BucketPrefix = lens _accessLoggingPolicyS3BucketPrefix (\s a -> s { _accessLoggingPolicyS3BucketPrefix = a })
− library-gen/Stratosphere/ResourceProperties/AliasTarget.hs
@@ -1,66 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | AliasTarget is a property of the AWS::Route53::RecordSet resource. For--- more information about alias resource record sets, see Creating Alias--- Resource Record Sets in the Amazon Route 53 Developer Guide.--module Stratosphere.ResourceProperties.AliasTarget where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for AliasTarget. See 'aliasTarget' for a more--- convenient constructor.-data AliasTarget =-  AliasTarget-  { _aliasTargetDNSName :: Val Text-  , _aliasTargetEvaluateTargetHealth :: Maybe (Val Bool')-  , _aliasTargetHostedZoneId :: Val Text-  } deriving (Show, Generic)--instance ToJSON AliasTarget where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 12, omitNothingFields = True }--instance FromJSON AliasTarget where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 12, omitNothingFields = True }---- | Constructor for 'AliasTarget' containing required fields as arguments.-aliasTarget-  :: Val Text -- ^ 'atDNSName'-  -> Val Text -- ^ 'atHostedZoneId'-  -> AliasTarget-aliasTarget dNSNamearg hostedZoneIdarg =-  AliasTarget-  { _aliasTargetDNSName = dNSNamearg-  , _aliasTargetEvaluateTargetHealth = Nothing-  , _aliasTargetHostedZoneId = hostedZoneIdarg-  }---- | The DNS name of the load balancer, the domain name of the CloudFront--- distribution, the website endpoint of the Amazon S3 bucket, or another--- record set in the same hosted zone that is the target of the alias. Type:--- String-atDNSName :: Lens' AliasTarget (Val Text)-atDNSName = lens _aliasTargetDNSName (\s a -> s { _aliasTargetDNSName = a })---- | Whether Amazon Route 53 checks the health of the resource record sets in--- the alias target when responding to DNS queries. For more information about--- using this property, see EvaluateTargetHealth in the Amazon Route 53 API--- Reference. Type: Boolean-atEvaluateTargetHealth :: Lens' AliasTarget (Maybe (Val Bool'))-atEvaluateTargetHealth = lens _aliasTargetEvaluateTargetHealth (\s a -> s { _aliasTargetEvaluateTargetHealth = a })---- | The hosted zone ID. For load balancers, use the canonical hosted zone ID--- of the load balancer. For Amazon S3, use the hosted zone ID for your--- bucket's website endpoint. For CloudFront, use Z2FDTNDATAQYW2. For--- examples, see Example: Creating Alias Resource Record Sets in the Amazon--- Route 53 API Reference. Type: String-atHostedZoneId :: Lens' AliasTarget (Val Text)-atHostedZoneId = lens _aliasTargetHostedZoneId (\s a -> s { _aliasTargetHostedZoneId = a })
+ library-gen/Stratosphere/ResourceProperties/ApiGatewayApiKeyStageKey.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-apikey-stagekey.html++module Stratosphere.ResourceProperties.ApiGatewayApiKeyStageKey where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ApiGatewayApiKeyStageKey. See+-- | 'apiGatewayApiKeyStageKey' for a more convenient constructor.+data ApiGatewayApiKeyStageKey =+  ApiGatewayApiKeyStageKey+  { _apiGatewayApiKeyStageKeyRestApiId :: Maybe (Val Text)+  , _apiGatewayApiKeyStageKeyStageName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ApiGatewayApiKeyStageKey where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++instance FromJSON ApiGatewayApiKeyStageKey where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++-- | Constructor for 'ApiGatewayApiKeyStageKey' containing required fields as+-- | arguments.+apiGatewayApiKeyStageKey+  :: ApiGatewayApiKeyStageKey+apiGatewayApiKeyStageKey  =+  ApiGatewayApiKeyStageKey+  { _apiGatewayApiKeyStageKeyRestApiId = Nothing+  , _apiGatewayApiKeyStageKeyStageName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-apikey-stagekey.html#cfn-apigateway-apikey-stagekey-restapiid+agakskRestApiId :: Lens' ApiGatewayApiKeyStageKey (Maybe (Val Text))+agakskRestApiId = lens _apiGatewayApiKeyStageKeyRestApiId (\s a -> s { _apiGatewayApiKeyStageKeyRestApiId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-apikey-stagekey.html#cfn-apigateway-apikey-stagekey-stagename+agakskStageName :: Lens' ApiGatewayApiKeyStageKey (Maybe (Val Text))+agakskStageName = lens _apiGatewayApiKeyStageKeyStageName (\s a -> s { _apiGatewayApiKeyStageKeyStageName = a })
+ library-gen/Stratosphere/ResourceProperties/ApiGatewayDeploymentMethodSetting.hs view
@@ -0,0 +1,95 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription-methodsetting.html++module Stratosphere.ResourceProperties.ApiGatewayDeploymentMethodSetting where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.Types++-- | Full data type definition for ApiGatewayDeploymentMethodSetting. See+-- | 'apiGatewayDeploymentMethodSetting' for a more convenient constructor.+data ApiGatewayDeploymentMethodSetting =+  ApiGatewayDeploymentMethodSetting+  { _apiGatewayDeploymentMethodSettingCacheDataEncrypted :: Maybe (Val Bool')+  , _apiGatewayDeploymentMethodSettingCacheTtlInSeconds :: Maybe (Val Integer')+  , _apiGatewayDeploymentMethodSettingCachingEnabled :: Maybe (Val Bool')+  , _apiGatewayDeploymentMethodSettingDataTraceEnabled :: Maybe (Val Bool')+  , _apiGatewayDeploymentMethodSettingHttpMethod :: Maybe (Val HttpMethod)+  , _apiGatewayDeploymentMethodSettingLoggingLevel :: Maybe (Val LoggingLevel)+  , _apiGatewayDeploymentMethodSettingMetricsEnabled :: Maybe (Val Bool')+  , _apiGatewayDeploymentMethodSettingResourcePath :: Maybe (Val Text)+  , _apiGatewayDeploymentMethodSettingThrottlingBurstLimit :: Maybe (Val Integer')+  , _apiGatewayDeploymentMethodSettingThrottlingRateLimit :: Maybe (Val Double')+  } deriving (Show, Generic)++instance ToJSON ApiGatewayDeploymentMethodSetting where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON ApiGatewayDeploymentMethodSetting where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'ApiGatewayDeploymentMethodSetting' containing required+-- | fields as arguments.+apiGatewayDeploymentMethodSetting+  :: ApiGatewayDeploymentMethodSetting+apiGatewayDeploymentMethodSetting  =+  ApiGatewayDeploymentMethodSetting+  { _apiGatewayDeploymentMethodSettingCacheDataEncrypted = Nothing+  , _apiGatewayDeploymentMethodSettingCacheTtlInSeconds = Nothing+  , _apiGatewayDeploymentMethodSettingCachingEnabled = Nothing+  , _apiGatewayDeploymentMethodSettingDataTraceEnabled = Nothing+  , _apiGatewayDeploymentMethodSettingHttpMethod = Nothing+  , _apiGatewayDeploymentMethodSettingLoggingLevel = Nothing+  , _apiGatewayDeploymentMethodSettingMetricsEnabled = Nothing+  , _apiGatewayDeploymentMethodSettingResourcePath = Nothing+  , _apiGatewayDeploymentMethodSettingThrottlingBurstLimit = Nothing+  , _apiGatewayDeploymentMethodSettingThrottlingRateLimit = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-cachedataencrypted+agdmsCacheDataEncrypted :: Lens' ApiGatewayDeploymentMethodSetting (Maybe (Val Bool'))+agdmsCacheDataEncrypted = lens _apiGatewayDeploymentMethodSettingCacheDataEncrypted (\s a -> s { _apiGatewayDeploymentMethodSettingCacheDataEncrypted = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-cachettlinseconds+agdmsCacheTtlInSeconds :: Lens' ApiGatewayDeploymentMethodSetting (Maybe (Val Integer'))+agdmsCacheTtlInSeconds = lens _apiGatewayDeploymentMethodSettingCacheTtlInSeconds (\s a -> s { _apiGatewayDeploymentMethodSettingCacheTtlInSeconds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-cachingenabled+agdmsCachingEnabled :: Lens' ApiGatewayDeploymentMethodSetting (Maybe (Val Bool'))+agdmsCachingEnabled = lens _apiGatewayDeploymentMethodSettingCachingEnabled (\s a -> s { _apiGatewayDeploymentMethodSettingCachingEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-datatraceenabled+agdmsDataTraceEnabled :: Lens' ApiGatewayDeploymentMethodSetting (Maybe (Val Bool'))+agdmsDataTraceEnabled = lens _apiGatewayDeploymentMethodSettingDataTraceEnabled (\s a -> s { _apiGatewayDeploymentMethodSettingDataTraceEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-httpmethod+agdmsHttpMethod :: Lens' ApiGatewayDeploymentMethodSetting (Maybe (Val HttpMethod))+agdmsHttpMethod = lens _apiGatewayDeploymentMethodSettingHttpMethod (\s a -> s { _apiGatewayDeploymentMethodSettingHttpMethod = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-logginglevel+agdmsLoggingLevel :: Lens' ApiGatewayDeploymentMethodSetting (Maybe (Val LoggingLevel))+agdmsLoggingLevel = lens _apiGatewayDeploymentMethodSettingLoggingLevel (\s a -> s { _apiGatewayDeploymentMethodSettingLoggingLevel = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-metricsenabled+agdmsMetricsEnabled :: Lens' ApiGatewayDeploymentMethodSetting (Maybe (Val Bool'))+agdmsMetricsEnabled = lens _apiGatewayDeploymentMethodSettingMetricsEnabled (\s a -> s { _apiGatewayDeploymentMethodSettingMetricsEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-resourcepath+agdmsResourcePath :: Lens' ApiGatewayDeploymentMethodSetting (Maybe (Val Text))+agdmsResourcePath = lens _apiGatewayDeploymentMethodSettingResourcePath (\s a -> s { _apiGatewayDeploymentMethodSettingResourcePath = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-throttlingburstlimit+agdmsThrottlingBurstLimit :: Lens' ApiGatewayDeploymentMethodSetting (Maybe (Val Integer'))+agdmsThrottlingBurstLimit = lens _apiGatewayDeploymentMethodSettingThrottlingBurstLimit (\s a -> s { _apiGatewayDeploymentMethodSettingThrottlingBurstLimit = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription-methodsetting.html#cfn-apigateway-deployment-stagedescription-methodsetting-throttlingratelimit+agdmsThrottlingRateLimit :: Lens' ApiGatewayDeploymentMethodSetting (Maybe (Val Double'))+agdmsThrottlingRateLimit = lens _apiGatewayDeploymentMethodSettingThrottlingRateLimit (\s a -> s { _apiGatewayDeploymentMethodSettingThrottlingRateLimit = a })
+ library-gen/Stratosphere/ResourceProperties/ApiGatewayDeploymentStageDescription.hs view
@@ -0,0 +1,126 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html++module Stratosphere.ResourceProperties.ApiGatewayDeploymentStageDescription where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.Types+import Stratosphere.ResourceProperties.ApiGatewayDeploymentMethodSetting++-- | Full data type definition for ApiGatewayDeploymentStageDescription. See+-- | 'apiGatewayDeploymentStageDescription' for a more convenient constructor.+data ApiGatewayDeploymentStageDescription =+  ApiGatewayDeploymentStageDescription+  { _apiGatewayDeploymentStageDescriptionCacheClusterEnabled :: Maybe (Val Bool')+  , _apiGatewayDeploymentStageDescriptionCacheClusterSize :: Maybe (Val Text)+  , _apiGatewayDeploymentStageDescriptionCacheDataEncrypted :: Maybe (Val Bool')+  , _apiGatewayDeploymentStageDescriptionCacheTtlInSeconds :: Maybe (Val Integer')+  , _apiGatewayDeploymentStageDescriptionCachingEnabled :: Maybe (Val Bool')+  , _apiGatewayDeploymentStageDescriptionClientCertificateId :: Maybe (Val Text)+  , _apiGatewayDeploymentStageDescriptionDataTraceEnabled :: Maybe (Val Bool')+  , _apiGatewayDeploymentStageDescriptionDescription :: Maybe (Val Text)+  , _apiGatewayDeploymentStageDescriptionLoggingLevel :: Maybe (Val LoggingLevel)+  , _apiGatewayDeploymentStageDescriptionMethodSettings :: Maybe [ApiGatewayDeploymentMethodSetting]+  , _apiGatewayDeploymentStageDescriptionMetricsEnabled :: Maybe (Val Bool')+  , _apiGatewayDeploymentStageDescriptionStageName :: Maybe (Val Text)+  , _apiGatewayDeploymentStageDescriptionThrottlingBurstLimit :: Maybe (Val Integer')+  , _apiGatewayDeploymentStageDescriptionThrottlingRateLimit :: Maybe (Val Double')+  , _apiGatewayDeploymentStageDescriptionVariables :: Maybe Object+  } deriving (Show, Generic)++instance ToJSON ApiGatewayDeploymentStageDescription where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++instance FromJSON ApiGatewayDeploymentStageDescription where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++-- | Constructor for 'ApiGatewayDeploymentStageDescription' containing+-- | required fields as arguments.+apiGatewayDeploymentStageDescription+  :: ApiGatewayDeploymentStageDescription+apiGatewayDeploymentStageDescription  =+  ApiGatewayDeploymentStageDescription+  { _apiGatewayDeploymentStageDescriptionCacheClusterEnabled = Nothing+  , _apiGatewayDeploymentStageDescriptionCacheClusterSize = Nothing+  , _apiGatewayDeploymentStageDescriptionCacheDataEncrypted = Nothing+  , _apiGatewayDeploymentStageDescriptionCacheTtlInSeconds = Nothing+  , _apiGatewayDeploymentStageDescriptionCachingEnabled = Nothing+  , _apiGatewayDeploymentStageDescriptionClientCertificateId = Nothing+  , _apiGatewayDeploymentStageDescriptionDataTraceEnabled = Nothing+  , _apiGatewayDeploymentStageDescriptionDescription = Nothing+  , _apiGatewayDeploymentStageDescriptionLoggingLevel = Nothing+  , _apiGatewayDeploymentStageDescriptionMethodSettings = Nothing+  , _apiGatewayDeploymentStageDescriptionMetricsEnabled = Nothing+  , _apiGatewayDeploymentStageDescriptionStageName = Nothing+  , _apiGatewayDeploymentStageDescriptionThrottlingBurstLimit = Nothing+  , _apiGatewayDeploymentStageDescriptionThrottlingRateLimit = Nothing+  , _apiGatewayDeploymentStageDescriptionVariables = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cacheclusterenabled+agdsdCacheClusterEnabled :: Lens' ApiGatewayDeploymentStageDescription (Maybe (Val Bool'))+agdsdCacheClusterEnabled = lens _apiGatewayDeploymentStageDescriptionCacheClusterEnabled (\s a -> s { _apiGatewayDeploymentStageDescriptionCacheClusterEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cacheclustersize+agdsdCacheClusterSize :: Lens' ApiGatewayDeploymentStageDescription (Maybe (Val Text))+agdsdCacheClusterSize = lens _apiGatewayDeploymentStageDescriptionCacheClusterSize (\s a -> s { _apiGatewayDeploymentStageDescriptionCacheClusterSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cachedataencrypted+agdsdCacheDataEncrypted :: Lens' ApiGatewayDeploymentStageDescription (Maybe (Val Bool'))+agdsdCacheDataEncrypted = lens _apiGatewayDeploymentStageDescriptionCacheDataEncrypted (\s a -> s { _apiGatewayDeploymentStageDescriptionCacheDataEncrypted = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cachettlinseconds+agdsdCacheTtlInSeconds :: Lens' ApiGatewayDeploymentStageDescription (Maybe (Val Integer'))+agdsdCacheTtlInSeconds = lens _apiGatewayDeploymentStageDescriptionCacheTtlInSeconds (\s a -> s { _apiGatewayDeploymentStageDescriptionCacheTtlInSeconds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-cachingenabled+agdsdCachingEnabled :: Lens' ApiGatewayDeploymentStageDescription (Maybe (Val Bool'))+agdsdCachingEnabled = lens _apiGatewayDeploymentStageDescriptionCachingEnabled (\s a -> s { _apiGatewayDeploymentStageDescriptionCachingEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-clientcertificateid+agdsdClientCertificateId :: Lens' ApiGatewayDeploymentStageDescription (Maybe (Val Text))+agdsdClientCertificateId = lens _apiGatewayDeploymentStageDescriptionClientCertificateId (\s a -> s { _apiGatewayDeploymentStageDescriptionClientCertificateId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-datatraceenabled+agdsdDataTraceEnabled :: Lens' ApiGatewayDeploymentStageDescription (Maybe (Val Bool'))+agdsdDataTraceEnabled = lens _apiGatewayDeploymentStageDescriptionDataTraceEnabled (\s a -> s { _apiGatewayDeploymentStageDescriptionDataTraceEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-description+agdsdDescription :: Lens' ApiGatewayDeploymentStageDescription (Maybe (Val Text))+agdsdDescription = lens _apiGatewayDeploymentStageDescriptionDescription (\s a -> s { _apiGatewayDeploymentStageDescriptionDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-logginglevel+agdsdLoggingLevel :: Lens' ApiGatewayDeploymentStageDescription (Maybe (Val LoggingLevel))+agdsdLoggingLevel = lens _apiGatewayDeploymentStageDescriptionLoggingLevel (\s a -> s { _apiGatewayDeploymentStageDescriptionLoggingLevel = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-methodsettings+agdsdMethodSettings :: Lens' ApiGatewayDeploymentStageDescription (Maybe [ApiGatewayDeploymentMethodSetting])+agdsdMethodSettings = lens _apiGatewayDeploymentStageDescriptionMethodSettings (\s a -> s { _apiGatewayDeploymentStageDescriptionMethodSettings = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-metricsenabled+agdsdMetricsEnabled :: Lens' ApiGatewayDeploymentStageDescription (Maybe (Val Bool'))+agdsdMetricsEnabled = lens _apiGatewayDeploymentStageDescriptionMetricsEnabled (\s a -> s { _apiGatewayDeploymentStageDescriptionMetricsEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-stagename+agdsdStageName :: Lens' ApiGatewayDeploymentStageDescription (Maybe (Val Text))+agdsdStageName = lens _apiGatewayDeploymentStageDescriptionStageName (\s a -> s { _apiGatewayDeploymentStageDescriptionStageName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-throttlingburstlimit+agdsdThrottlingBurstLimit :: Lens' ApiGatewayDeploymentStageDescription (Maybe (Val Integer'))+agdsdThrottlingBurstLimit = lens _apiGatewayDeploymentStageDescriptionThrottlingBurstLimit (\s a -> s { _apiGatewayDeploymentStageDescriptionThrottlingBurstLimit = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-throttlingratelimit+agdsdThrottlingRateLimit :: Lens' ApiGatewayDeploymentStageDescription (Maybe (Val Double'))+agdsdThrottlingRateLimit = lens _apiGatewayDeploymentStageDescriptionThrottlingRateLimit (\s a -> s { _apiGatewayDeploymentStageDescriptionThrottlingRateLimit = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-deployment-stagedescription.html#cfn-apigateway-deployment-stagedescription-variables+agdsdVariables :: Lens' ApiGatewayDeploymentStageDescription (Maybe Object)+agdsdVariables = lens _apiGatewayDeploymentStageDescriptionVariables (\s a -> s { _apiGatewayDeploymentStageDescriptionVariables = a })
− library-gen/Stratosphere/ResourceProperties/ApiGatewayIntegration.hs
@@ -1,137 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Integration is a property of the AWS::ApiGateway::Method resource that--- specifies information about the target back end that an Amazon API Gateway--- (API Gateway) method calls.--module Stratosphere.ResourceProperties.ApiGatewayIntegration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.ApiGatewayIntegrationResponse-import Stratosphere.Types---- | Full data type definition for ApiGatewayIntegration. See--- 'apiGatewayIntegration' for a more convenient constructor.-data ApiGatewayIntegration =-  ApiGatewayIntegration-  { _apiGatewayIntegrationCacheKeyParameters :: Maybe [Val Text]-  , _apiGatewayIntegrationCacheNamespace :: Maybe (Val Text)-  , _apiGatewayIntegrationCredentials :: Maybe (Val Text)-  , _apiGatewayIntegrationIntegrationHttpMethod :: Maybe HttpMethod-  , _apiGatewayIntegrationIntegrationResponses :: Maybe [ApiGatewayIntegrationResponse]-  , _apiGatewayIntegrationPassthroughBehavior :: Maybe PassthroughBehavior-  , _apiGatewayIntegrationRequestParameters :: Maybe Object-  , _apiGatewayIntegrationRequestTemplates :: Maybe Object-  , _apiGatewayIntegrationType :: ApiBackendType-  , _apiGatewayIntegrationUri :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON ApiGatewayIntegration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }--instance FromJSON ApiGatewayIntegration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }---- | Constructor for 'ApiGatewayIntegration' containing required fields as--- arguments.-apiGatewayIntegration-  :: ApiBackendType -- ^ 'agiType'-  -> ApiGatewayIntegration-apiGatewayIntegration typearg =-  ApiGatewayIntegration-  { _apiGatewayIntegrationCacheKeyParameters = Nothing-  , _apiGatewayIntegrationCacheNamespace = Nothing-  , _apiGatewayIntegrationCredentials = Nothing-  , _apiGatewayIntegrationIntegrationHttpMethod = Nothing-  , _apiGatewayIntegrationIntegrationResponses = Nothing-  , _apiGatewayIntegrationPassthroughBehavior = Nothing-  , _apiGatewayIntegrationRequestParameters = Nothing-  , _apiGatewayIntegrationRequestTemplates = Nothing-  , _apiGatewayIntegrationType = typearg-  , _apiGatewayIntegrationUri = Nothing-  }---- | A list of request parameters whose values API Gateway will cache.-agiCacheKeyParameters :: Lens' ApiGatewayIntegration (Maybe [Val Text])-agiCacheKeyParameters = lens _apiGatewayIntegrationCacheKeyParameters (\s a -> s { _apiGatewayIntegrationCacheKeyParameters = a })---- | An API-specific tag group of related cached parameters.-agiCacheNamespace :: Lens' ApiGatewayIntegration (Maybe (Val Text))-agiCacheNamespace = lens _apiGatewayIntegrationCacheNamespace (\s a -> s { _apiGatewayIntegrationCacheNamespace = a })---- | The credentials required for the integration. To specify an AWS Identity--- and Access Management (IAM) role that API Gateway assumes, specify the--- role's Amazon Resource Name (ARN). To require that the caller's identity be--- passed through from the request, specify arn:aws:iam::*:user/*. To use--- resource-based permissions on the AWS Lambda (Lambda) function, don't--- specify this property. Use the AWS::Lambda::Permission resource to permit--- API Gateway to call the function. For more information, see Allow Amazon--- API Gateway to Invoke a Lambda Function in the AWS Lambda Developer Guide.-agiCredentials :: Lens' ApiGatewayIntegration (Maybe (Val Text))-agiCredentials = lens _apiGatewayIntegrationCredentials (\s a -> s { _apiGatewayIntegrationCredentials = a })---- | The integration's HTTP method type.-agiIntegrationHttpMethod :: Lens' ApiGatewayIntegration (Maybe HttpMethod)-agiIntegrationHttpMethod = lens _apiGatewayIntegrationIntegrationHttpMethod (\s a -> s { _apiGatewayIntegrationIntegrationHttpMethod = a })---- | The response that API Gateway provides after a method's back end--- completes processing a request. API Gateway intercepts the back end's--- response so that you can control how API Gateway surfaces back-end--- responses. For example, you can map the back-end status codes to codes that--- you define.-agiIntegrationResponses :: Lens' ApiGatewayIntegration (Maybe [ApiGatewayIntegrationResponse])-agiIntegrationResponses = lens _apiGatewayIntegrationIntegrationResponses (\s a -> s { _apiGatewayIntegrationIntegrationResponses = a })---- | Indicates when API Gateway passes requests to the targeted back end. This--- behavior depends on the request's Content-Type header and whether you--- defined a mapping template for it. For more information and valid values,--- see the passthroughBehavior field in the API Gateway API Reference.-agiPassthroughBehavior :: Lens' ApiGatewayIntegration (Maybe PassthroughBehavior)-agiPassthroughBehavior = lens _apiGatewayIntegrationPassthroughBehavior (\s a -> s { _apiGatewayIntegrationPassthroughBehavior = a })---- | The request parameters that API Gateway sends with the back-end request.--- Specify request parameters as key-value pairs (string-to-string maps), with--- a destination as the key and a source as the value. Specify the destination--- using the following pattern integration.request.location.name, where--- location is querystring, path, or header, and name is a valid, unique--- parameter name. The source must be an existing method request parameter or--- a static value. Static values must be enclosed in single quotation marks--- and pre-encoded based on their destination in the request.-agiRequestParameters :: Lens' ApiGatewayIntegration (Maybe Object)-agiRequestParameters = lens _apiGatewayIntegrationRequestParameters (\s a -> s { _apiGatewayIntegrationRequestParameters = a })---- | A map of Apache Velocity templates that are applied on the request--- payload. The template that API Gateway uses is based on the value of the--- Content-Type header sent by the client. The content type value is the key,--- and the template is the value (specified as a string), such as the--- following snippet: For more information about templates, see API Gateway--- API Request and Response Payload-Mapping Template Reference in the API--- Gateway Developer Guide.-agiRequestTemplates :: Lens' ApiGatewayIntegration (Maybe Object)-agiRequestTemplates = lens _apiGatewayIntegrationRequestTemplates (\s a -> s { _apiGatewayIntegrationRequestTemplates = a })---- | The type of back end your method is running, such as HTTP, AWS, or MOCK.--- For valid values, see the type property in the Amazon API Gateway REST API--- Reference.-agiType :: Lens' ApiGatewayIntegration ApiBackendType-agiType = lens _apiGatewayIntegrationType (\s a -> s { _apiGatewayIntegrationType = a })---- | The integration's Uniform Resource Identifier (URI). If you specify HTTP--- for the Type property, specify the API endpoint URL. If you specify MOCK--- for the Type property, don't specify this property. If you specify AWS for--- the Type property, specify an AWS service that follows the form:--- arn:aws:apigateway:region:subdomain.service|service:path|action/service_api.--- For example, a Lambda function URI follows the form:--- arn:aws:apigateway:region:lambda:path/path. The path is usually in the form--- /2015-03-31/functions/LambdaFunctionARN/invocations. For more information,--- see the uri property of the Integration resource in the Amazon API Gateway--- REST API Reference.-agiUri :: Lens' ApiGatewayIntegration (Maybe (Val Text))-agiUri = lens _apiGatewayIntegrationUri (\s a -> s { _apiGatewayIntegrationUri = a })
− library-gen/Stratosphere/ResourceProperties/ApiGatewayIntegrationResponse.hs
@@ -1,76 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | IntegrationResponse is a property of the Amazon API Gateway Method--- Integration property that specifies the response that Amazon API Gateway--- (API Gateway) sends after a method's back end finishes processing a--- request.--module Stratosphere.ResourceProperties.ApiGatewayIntegrationResponse where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for ApiGatewayIntegrationResponse. See--- 'apiGatewayIntegrationResponse' for a more convenient constructor.-data ApiGatewayIntegrationResponse =-  ApiGatewayIntegrationResponse-  { _apiGatewayIntegrationResponseResponseParameters :: Maybe Object-  , _apiGatewayIntegrationResponseResponseTemplates :: Maybe Object-  , _apiGatewayIntegrationResponseSelectionPattern :: Maybe (Val Text)-  , _apiGatewayIntegrationResponseStatusCode :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON ApiGatewayIntegrationResponse where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }--instance FromJSON ApiGatewayIntegrationResponse where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }---- | Constructor for 'ApiGatewayIntegrationResponse' containing required--- fields as arguments.-apiGatewayIntegrationResponse-  :: ApiGatewayIntegrationResponse-apiGatewayIntegrationResponse  =-  ApiGatewayIntegrationResponse-  { _apiGatewayIntegrationResponseResponseParameters = Nothing-  , _apiGatewayIntegrationResponseResponseTemplates = Nothing-  , _apiGatewayIntegrationResponseSelectionPattern = Nothing-  , _apiGatewayIntegrationResponseStatusCode = Nothing-  }---- | The response parameters from the back-end response that API Gateway sends--- to the method response. Specify response parameters as key-value pairs--- (string-to-string maps), with a destination as the key and a source as the--- value. For more information, see API Gateway API Request and Response--- Parameter-Mapping Reference in the API Gateway Developer Guide. The--- destination must be an existing response parameter in the MethodResponse--- property. The source must be an existing method request parameter or a--- static value. Static values must be enclosed in single quotation marks and--- pre-encoded based on their destination in the request.-agirResponseParameters :: Lens' ApiGatewayIntegrationResponse (Maybe Object)-agirResponseParameters = lens _apiGatewayIntegrationResponseResponseParameters (\s a -> s { _apiGatewayIntegrationResponseResponseParameters = a })---- | The templates used to transform the integration response body. Specify--- templates as key-value pairs (string-to-string maps), with a content type--- as the key and a template as the value. For more information, see API--- Gateway API Request and Response Payload-Mapping Template Reference in the--- API Gateway Developer Guide.-agirResponseTemplates :: Lens' ApiGatewayIntegrationResponse (Maybe Object)-agirResponseTemplates = lens _apiGatewayIntegrationResponseResponseTemplates (\s a -> s { _apiGatewayIntegrationResponseResponseTemplates = a })---- | A regular expression that specifies which error strings or status codes--- from the back end map to the integration response.-agirSelectionPattern :: Lens' ApiGatewayIntegrationResponse (Maybe (Val Text))-agirSelectionPattern = lens _apiGatewayIntegrationResponseSelectionPattern (\s a -> s { _apiGatewayIntegrationResponseSelectionPattern = a })---- | The status code that API Gateway uses to map the integration response to--- a MethodResponse status code.-agirStatusCode :: Lens' ApiGatewayIntegrationResponse (Maybe (Val Text))-agirStatusCode = lens _apiGatewayIntegrationResponseStatusCode (\s a -> s { _apiGatewayIntegrationResponseStatusCode = a })
+ library-gen/Stratosphere/ResourceProperties/ApiGatewayMethodIntegration.hs view
@@ -0,0 +1,96 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html++module Stratosphere.ResourceProperties.ApiGatewayMethodIntegration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.Types+import Stratosphere.ResourceProperties.ApiGatewayMethodIntegrationResponse++-- | Full data type definition for ApiGatewayMethodIntegration. See+-- | 'apiGatewayMethodIntegration' for a more convenient constructor.+data ApiGatewayMethodIntegration =+  ApiGatewayMethodIntegration+  { _apiGatewayMethodIntegrationCacheKeyParameters :: Maybe [Val Text]+  , _apiGatewayMethodIntegrationCacheNamespace :: Maybe (Val Text)+  , _apiGatewayMethodIntegrationCredentials :: Maybe (Val Text)+  , _apiGatewayMethodIntegrationIntegrationHttpMethod :: Maybe (Val HttpMethod)+  , _apiGatewayMethodIntegrationIntegrationResponses :: Maybe [ApiGatewayMethodIntegrationResponse]+  , _apiGatewayMethodIntegrationPassthroughBehavior :: Maybe (Val PassthroughBehavior)+  , _apiGatewayMethodIntegrationRequestParameters :: Maybe Object+  , _apiGatewayMethodIntegrationRequestTemplates :: Maybe Object+  , _apiGatewayMethodIntegrationType :: Maybe (Val ApiBackendType)+  , _apiGatewayMethodIntegrationUri :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ApiGatewayMethodIntegration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON ApiGatewayMethodIntegration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'ApiGatewayMethodIntegration' containing required fields+-- | as arguments.+apiGatewayMethodIntegration+  :: ApiGatewayMethodIntegration+apiGatewayMethodIntegration  =+  ApiGatewayMethodIntegration+  { _apiGatewayMethodIntegrationCacheKeyParameters = Nothing+  , _apiGatewayMethodIntegrationCacheNamespace = Nothing+  , _apiGatewayMethodIntegrationCredentials = Nothing+  , _apiGatewayMethodIntegrationIntegrationHttpMethod = Nothing+  , _apiGatewayMethodIntegrationIntegrationResponses = Nothing+  , _apiGatewayMethodIntegrationPassthroughBehavior = Nothing+  , _apiGatewayMethodIntegrationRequestParameters = Nothing+  , _apiGatewayMethodIntegrationRequestTemplates = Nothing+  , _apiGatewayMethodIntegrationType = Nothing+  , _apiGatewayMethodIntegrationUri = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-cachekeyparameters+agmiCacheKeyParameters :: Lens' ApiGatewayMethodIntegration (Maybe [Val Text])+agmiCacheKeyParameters = lens _apiGatewayMethodIntegrationCacheKeyParameters (\s a -> s { _apiGatewayMethodIntegrationCacheKeyParameters = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-cachenamespace+agmiCacheNamespace :: Lens' ApiGatewayMethodIntegration (Maybe (Val Text))+agmiCacheNamespace = lens _apiGatewayMethodIntegrationCacheNamespace (\s a -> s { _apiGatewayMethodIntegrationCacheNamespace = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-credentials+agmiCredentials :: Lens' ApiGatewayMethodIntegration (Maybe (Val Text))+agmiCredentials = lens _apiGatewayMethodIntegrationCredentials (\s a -> s { _apiGatewayMethodIntegrationCredentials = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-integrationhttpmethod+agmiIntegrationHttpMethod :: Lens' ApiGatewayMethodIntegration (Maybe (Val HttpMethod))+agmiIntegrationHttpMethod = lens _apiGatewayMethodIntegrationIntegrationHttpMethod (\s a -> s { _apiGatewayMethodIntegrationIntegrationHttpMethod = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-integrationresponses+agmiIntegrationResponses :: Lens' ApiGatewayMethodIntegration (Maybe [ApiGatewayMethodIntegrationResponse])+agmiIntegrationResponses = lens _apiGatewayMethodIntegrationIntegrationResponses (\s a -> s { _apiGatewayMethodIntegrationIntegrationResponses = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-passthroughbehavior+agmiPassthroughBehavior :: Lens' ApiGatewayMethodIntegration (Maybe (Val PassthroughBehavior))+agmiPassthroughBehavior = lens _apiGatewayMethodIntegrationPassthroughBehavior (\s a -> s { _apiGatewayMethodIntegrationPassthroughBehavior = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-requestparameters+agmiRequestParameters :: Lens' ApiGatewayMethodIntegration (Maybe Object)+agmiRequestParameters = lens _apiGatewayMethodIntegrationRequestParameters (\s a -> s { _apiGatewayMethodIntegrationRequestParameters = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-requesttemplates+agmiRequestTemplates :: Lens' ApiGatewayMethodIntegration (Maybe Object)+agmiRequestTemplates = lens _apiGatewayMethodIntegrationRequestTemplates (\s a -> s { _apiGatewayMethodIntegrationRequestTemplates = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-type+agmiType :: Lens' ApiGatewayMethodIntegration (Maybe (Val ApiBackendType))+agmiType = lens _apiGatewayMethodIntegrationType (\s a -> s { _apiGatewayMethodIntegrationType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration.html#cfn-apigateway-method-integration-uri+agmiUri :: Lens' ApiGatewayMethodIntegration (Maybe (Val Text))+agmiUri = lens _apiGatewayMethodIntegrationUri (\s a -> s { _apiGatewayMethodIntegrationUri = a })
+ library-gen/Stratosphere/ResourceProperties/ApiGatewayMethodIntegrationResponse.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html++module Stratosphere.ResourceProperties.ApiGatewayMethodIntegrationResponse where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ApiGatewayMethodIntegrationResponse. See+-- | 'apiGatewayMethodIntegrationResponse' for a more convenient constructor.+data ApiGatewayMethodIntegrationResponse =+  ApiGatewayMethodIntegrationResponse+  { _apiGatewayMethodIntegrationResponseResponseParameters :: Maybe Object+  , _apiGatewayMethodIntegrationResponseResponseTemplates :: Maybe Object+  , _apiGatewayMethodIntegrationResponseSelectionPattern :: Maybe (Val Text)+  , _apiGatewayMethodIntegrationResponseStatusCode :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ApiGatewayMethodIntegrationResponse where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++instance FromJSON ApiGatewayMethodIntegrationResponse where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++-- | Constructor for 'ApiGatewayMethodIntegrationResponse' containing required+-- | fields as arguments.+apiGatewayMethodIntegrationResponse+  :: ApiGatewayMethodIntegrationResponse+apiGatewayMethodIntegrationResponse  =+  ApiGatewayMethodIntegrationResponse+  { _apiGatewayMethodIntegrationResponseResponseParameters = Nothing+  , _apiGatewayMethodIntegrationResponseResponseTemplates = Nothing+  , _apiGatewayMethodIntegrationResponseSelectionPattern = Nothing+  , _apiGatewayMethodIntegrationResponseStatusCode = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html#cfn-apigateway-method-integration-integrationresponse-responseparameters+agmirResponseParameters :: Lens' ApiGatewayMethodIntegrationResponse (Maybe Object)+agmirResponseParameters = lens _apiGatewayMethodIntegrationResponseResponseParameters (\s a -> s { _apiGatewayMethodIntegrationResponseResponseParameters = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html#cfn-apigateway-method-integration-integrationresponse-responsetemplates+agmirResponseTemplates :: Lens' ApiGatewayMethodIntegrationResponse (Maybe Object)+agmirResponseTemplates = lens _apiGatewayMethodIntegrationResponseResponseTemplates (\s a -> s { _apiGatewayMethodIntegrationResponseResponseTemplates = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html#cfn-apigateway-method-integration-integrationresponse-selectionpattern+agmirSelectionPattern :: Lens' ApiGatewayMethodIntegrationResponse (Maybe (Val Text))+agmirSelectionPattern = lens _apiGatewayMethodIntegrationResponseSelectionPattern (\s a -> s { _apiGatewayMethodIntegrationResponseSelectionPattern = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-integration-integrationresponse.html#cfn-apigateway-method-integration-integrationresponse-statuscode+agmirStatusCode :: Lens' ApiGatewayMethodIntegrationResponse (Maybe (Val Text))+agmirStatusCode = lens _apiGatewayMethodIntegrationResponseStatusCode (\s a -> s { _apiGatewayMethodIntegrationResponseStatusCode = a })
+ library-gen/Stratosphere/ResourceProperties/ApiGatewayMethodMethodResponse.hs view
@@ -0,0 +1,53 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-methodresponse.html++module Stratosphere.ResourceProperties.ApiGatewayMethodMethodResponse where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ApiGatewayMethodMethodResponse. See+-- | 'apiGatewayMethodMethodResponse' for a more convenient constructor.+data ApiGatewayMethodMethodResponse =+  ApiGatewayMethodMethodResponse+  { _apiGatewayMethodMethodResponseResponseModels :: Maybe Object+  , _apiGatewayMethodMethodResponseResponseParameters :: Maybe Object+  , _apiGatewayMethodMethodResponseStatusCode :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ApiGatewayMethodMethodResponse where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON ApiGatewayMethodMethodResponse where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'ApiGatewayMethodMethodResponse' containing required+-- | fields as arguments.+apiGatewayMethodMethodResponse+  :: ApiGatewayMethodMethodResponse+apiGatewayMethodMethodResponse  =+  ApiGatewayMethodMethodResponse+  { _apiGatewayMethodMethodResponseResponseModels = Nothing+  , _apiGatewayMethodMethodResponseResponseParameters = Nothing+  , _apiGatewayMethodMethodResponseStatusCode = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-methodresponse.html#cfn-apigateway-method-methodresponse-responsemodels+agmmrResponseModels :: Lens' ApiGatewayMethodMethodResponse (Maybe Object)+agmmrResponseModels = lens _apiGatewayMethodMethodResponseResponseModels (\s a -> s { _apiGatewayMethodMethodResponseResponseModels = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-methodresponse.html#cfn-apigateway-method-methodresponse-responseparameters+agmmrResponseParameters :: Lens' ApiGatewayMethodMethodResponse (Maybe Object)+agmmrResponseParameters = lens _apiGatewayMethodMethodResponseResponseParameters (\s a -> s { _apiGatewayMethodMethodResponseResponseParameters = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-method-methodresponse.html#cfn-apigateway-method-methodresponse-statuscode+agmmrStatusCode :: Lens' ApiGatewayMethodMethodResponse (Maybe (Val Text))+agmmrStatusCode = lens _apiGatewayMethodMethodResponseStatusCode (\s a -> s { _apiGatewayMethodMethodResponseStatusCode = a })
− library-gen/Stratosphere/ResourceProperties/ApiGatewayMethodResponse.hs
@@ -1,64 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | MethodResponse is a property of the AWS::ApiGateway::Method resource that--- defines the responses that can be sent to the client who calls an Amazon--- API Gateway (API Gateway) method.--module Stratosphere.ResourceProperties.ApiGatewayMethodResponse where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for ApiGatewayMethodResponse. See--- 'apiGatewayMethodResponse' for a more convenient constructor.-data ApiGatewayMethodResponse =-  ApiGatewayMethodResponse-  { _apiGatewayMethodResponseResponseModels :: Maybe Object-  , _apiGatewayMethodResponseResponseParameters :: Maybe Object-  , _apiGatewayMethodResponseStatusCode :: Val Text-  } deriving (Show, Generic)--instance ToJSON ApiGatewayMethodResponse where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }--instance FromJSON ApiGatewayMethodResponse where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }---- | Constructor for 'ApiGatewayMethodResponse' containing required fields as--- arguments.-apiGatewayMethodResponse-  :: Val Text -- ^ 'agmrStatusCode'-  -> ApiGatewayMethodResponse-apiGatewayMethodResponse statusCodearg =-  ApiGatewayMethodResponse-  { _apiGatewayMethodResponseResponseModels = Nothing-  , _apiGatewayMethodResponseResponseParameters = Nothing-  , _apiGatewayMethodResponseStatusCode = statusCodearg-  }---- | The resources used for the response's content type. Specify response--- models as key-value pairs (string-to-string maps), with a content type as--- the key and a Model resource name as the value.-agmrResponseModels :: Lens' ApiGatewayMethodResponse (Maybe Object)-agmrResponseModels = lens _apiGatewayMethodResponseResponseModels (\s a -> s { _apiGatewayMethodResponseResponseModels = a })---- | Response parameters that API Gateway sends to the client that called a--- method. Specify response parameters as key-value pairs (string-to-Boolean--- maps), with a destination as the key and a Boolean as the value. Specify--- the destination using the following pattern: method.response.header.name,--- where the name is a valid, unique header name. The Boolean specifies--- whether a parameter is required.-agmrResponseParameters :: Lens' ApiGatewayMethodResponse (Maybe Object)-agmrResponseParameters = lens _apiGatewayMethodResponseResponseParameters (\s a -> s { _apiGatewayMethodResponseResponseParameters = a })---- | The method response's status code, which you map to an--- IntegrationResponse.-agmrStatusCode :: Lens' ApiGatewayMethodResponse (Val Text)-agmrStatusCode = lens _apiGatewayMethodResponseStatusCode (\s a -> s { _apiGatewayMethodResponseStatusCode = a })
library-gen/Stratosphere/ResourceProperties/ApiGatewayRestApiS3Location.hs view
@@ -1,10 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | S3Location is a property of the AWS::ApiGateway::RestApi resource that--- specifies the Amazon Simple Storage Service (Amazon S3) location of a--- Swagger file that defines a set of RESTful APIs in JSON or YAML for an--- Amazon API Gateway (API Gateway) RestApi.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-restapi-bodys3location.html  module Stratosphere.ResourceProperties.ApiGatewayRestApiS3Location where @@ -18,7 +15,7 @@   -- | Full data type definition for ApiGatewayRestApiS3Location. See--- 'apiGatewayRestApiS3Location' for a more convenient constructor.+-- | 'apiGatewayRestApiS3Location' for a more convenient constructor. data ApiGatewayRestApiS3Location =   ApiGatewayRestApiS3Location   { _apiGatewayRestApiS3LocationBucket :: Maybe (Val Text)@@ -34,7 +31,7 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }  -- | Constructor for 'ApiGatewayRestApiS3Location' containing required fields--- as arguments.+-- | as arguments. apiGatewayRestApiS3Location   :: ApiGatewayRestApiS3Location apiGatewayRestApiS3Location  =@@ -45,19 +42,18 @@   , _apiGatewayRestApiS3LocationVersion = Nothing   } --- | The name of the S3 bucket where the Swagger file is stored.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-restapi-bodys3location.html#cfn-apigateway-restapi-s3location-bucket agraslBucket :: Lens' ApiGatewayRestApiS3Location (Maybe (Val Text)) agraslBucket = lens _apiGatewayRestApiS3LocationBucket (\s a -> s { _apiGatewayRestApiS3LocationBucket = a }) --- | The Amazon S3 ETag (a file checksum) of the Swagger file. If you don't--- specify a value, API Gateway skips ETag validation of your Swagger file.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-restapi-bodys3location.html#cfn-apigateway-restapi-s3location-etag agraslETag :: Lens' ApiGatewayRestApiS3Location (Maybe (Val Text)) agraslETag = lens _apiGatewayRestApiS3LocationETag (\s a -> s { _apiGatewayRestApiS3LocationETag = a }) --- | The file name of the Swagger file (Amazon S3 object name).+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-restapi-bodys3location.html#cfn-apigateway-restapi-s3location-key agraslKey :: Lens' ApiGatewayRestApiS3Location (Maybe (Val Text)) agraslKey = lens _apiGatewayRestApiS3LocationKey (\s a -> s { _apiGatewayRestApiS3LocationKey = a }) --- | For versioning-enabled buckets, a specific version of the Swagger file.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-restapi-bodys3location.html#cfn-apigateway-restapi-s3location-version agraslVersion :: Lens' ApiGatewayRestApiS3Location (Maybe (Val Text)) agraslVersion = lens _apiGatewayRestApiS3LocationVersion (\s a -> s { _apiGatewayRestApiS3LocationVersion = a })
library-gen/Stratosphere/ResourceProperties/ApiGatewayStageMethodSetting.hs view
@@ -1,9 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | MethodSetting is a property of the AWS::ApiGateway::Stage resource that--- configures settings for all methods in an Amazon API Gateway (API Gateway)--- stage.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html  module Stratosphere.ResourceProperties.ApiGatewayStageMethodSetting where @@ -17,19 +15,19 @@ import Stratosphere.Types  -- | Full data type definition for ApiGatewayStageMethodSetting. See--- 'apiGatewayStageMethodSetting' for a more convenient constructor.+-- | 'apiGatewayStageMethodSetting' for a more convenient constructor. data ApiGatewayStageMethodSetting =   ApiGatewayStageMethodSetting   { _apiGatewayStageMethodSettingCacheDataEncrypted :: Maybe (Val Bool')   , _apiGatewayStageMethodSettingCacheTtlInSeconds :: Maybe (Val Integer')   , _apiGatewayStageMethodSettingCachingEnabled :: Maybe (Val Bool')   , _apiGatewayStageMethodSettingDataTraceEnabled :: Maybe (Val Bool')-  , _apiGatewayStageMethodSettingHttpMethod :: HttpMethod-  , _apiGatewayStageMethodSettingLoggingLevel :: Maybe LoggingLevel+  , _apiGatewayStageMethodSettingHttpMethod :: Maybe (Val HttpMethod)+  , _apiGatewayStageMethodSettingLoggingLevel :: Maybe (Val LoggingLevel)   , _apiGatewayStageMethodSettingMetricsEnabled :: Maybe (Val Bool')-  , _apiGatewayStageMethodSettingResourcePath :: Val Text+  , _apiGatewayStageMethodSettingResourcePath :: Maybe (Val Text)   , _apiGatewayStageMethodSettingThrottlingBurstLimit :: Maybe (Val Integer')-  , _apiGatewayStageMethodSettingThrottlingRateLimit :: Maybe Double'+  , _apiGatewayStageMethodSettingThrottlingRateLimit :: Maybe (Val Double')   } deriving (Show, Generic)  instance ToJSON ApiGatewayStageMethodSetting where@@ -39,74 +37,59 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }  -- | Constructor for 'ApiGatewayStageMethodSetting' containing required fields--- as arguments.+-- | as arguments. apiGatewayStageMethodSetting-  :: HttpMethod -- ^ 'agsmsHttpMethod'-  -> Val Text -- ^ 'agsmsResourcePath'-  -> ApiGatewayStageMethodSetting-apiGatewayStageMethodSetting httpMethodarg resourcePatharg =+  :: ApiGatewayStageMethodSetting+apiGatewayStageMethodSetting  =   ApiGatewayStageMethodSetting   { _apiGatewayStageMethodSettingCacheDataEncrypted = Nothing   , _apiGatewayStageMethodSettingCacheTtlInSeconds = Nothing   , _apiGatewayStageMethodSettingCachingEnabled = Nothing   , _apiGatewayStageMethodSettingDataTraceEnabled = Nothing-  , _apiGatewayStageMethodSettingHttpMethod = httpMethodarg+  , _apiGatewayStageMethodSettingHttpMethod = Nothing   , _apiGatewayStageMethodSettingLoggingLevel = Nothing   , _apiGatewayStageMethodSettingMetricsEnabled = Nothing-  , _apiGatewayStageMethodSettingResourcePath = resourcePatharg+  , _apiGatewayStageMethodSettingResourcePath = Nothing   , _apiGatewayStageMethodSettingThrottlingBurstLimit = Nothing   , _apiGatewayStageMethodSettingThrottlingRateLimit = Nothing   } --- | Indicates whether the cached responses are encrypted.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-cachedataencrypted agsmsCacheDataEncrypted :: Lens' ApiGatewayStageMethodSetting (Maybe (Val Bool')) agsmsCacheDataEncrypted = lens _apiGatewayStageMethodSettingCacheDataEncrypted (\s a -> s { _apiGatewayStageMethodSettingCacheDataEncrypted = a }) --- | The time-to-live (TTL) period, in seconds, that specifies how long API--- Gateway caches responses.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-cachettlinseconds agsmsCacheTtlInSeconds :: Lens' ApiGatewayStageMethodSetting (Maybe (Val Integer')) agsmsCacheTtlInSeconds = lens _apiGatewayStageMethodSettingCacheTtlInSeconds (\s a -> s { _apiGatewayStageMethodSettingCacheTtlInSeconds = a }) --- | Indicates whether responses are cached and returned for requests. You--- must enable a cache cluster on the stage to cache responses.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-cachingenabled agsmsCachingEnabled :: Lens' ApiGatewayStageMethodSetting (Maybe (Val Bool')) agsmsCachingEnabled = lens _apiGatewayStageMethodSettingCachingEnabled (\s a -> s { _apiGatewayStageMethodSettingCachingEnabled = a }) --- | Indicates whether data trace logging is enabled for methods in the stage.--- API Gateway pushes these logs to Amazon CloudWatch Logs.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-datatraceenabled agsmsDataTraceEnabled :: Lens' ApiGatewayStageMethodSetting (Maybe (Val Bool')) agsmsDataTraceEnabled = lens _apiGatewayStageMethodSettingDataTraceEnabled (\s a -> s { _apiGatewayStageMethodSettingDataTraceEnabled = a }) --- | The HTTP method.-agsmsHttpMethod :: Lens' ApiGatewayStageMethodSetting HttpMethod+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-httpmethod+agsmsHttpMethod :: Lens' ApiGatewayStageMethodSetting (Maybe (Val HttpMethod)) agsmsHttpMethod = lens _apiGatewayStageMethodSettingHttpMethod (\s a -> s { _apiGatewayStageMethodSettingHttpMethod = a }) --- | The logging level for this method. For valid values, see the loggingLevel--- property of the Stage resource in the Amazon API Gateway API Reference.-agsmsLoggingLevel :: Lens' ApiGatewayStageMethodSetting (Maybe LoggingLevel)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-logginglevel+agsmsLoggingLevel :: Lens' ApiGatewayStageMethodSetting (Maybe (Val LoggingLevel)) agsmsLoggingLevel = lens _apiGatewayStageMethodSettingLoggingLevel (\s a -> s { _apiGatewayStageMethodSettingLoggingLevel = a }) --- | Indicates whether Amazon CloudWatch metrics are enabled for methods in--- the stage.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-metricsenabled agsmsMetricsEnabled :: Lens' ApiGatewayStageMethodSetting (Maybe (Val Bool')) agsmsMetricsEnabled = lens _apiGatewayStageMethodSettingMetricsEnabled (\s a -> s { _apiGatewayStageMethodSettingMetricsEnabled = a }) --- | The resource path for this method. Forward slashes (/) are encoded as ~1--- and the initial slash must include a forward slash. For example, the path--- value /resource/subresource must be encoded as /~1resource~1subresource. To--- specify the root path, use only a slash (/).-agsmsResourcePath :: Lens' ApiGatewayStageMethodSetting (Val Text)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-resourcepath+agsmsResourcePath :: Lens' ApiGatewayStageMethodSetting (Maybe (Val Text)) agsmsResourcePath = lens _apiGatewayStageMethodSettingResourcePath (\s a -> s { _apiGatewayStageMethodSettingResourcePath = a }) --- | The number of burst requests per second that API Gateway permits across--- all APIs, stages, and methods in your AWS account. For more information,--- see Manage API Request Throttling in the API Gateway Developer Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-throttlingburstlimit agsmsThrottlingBurstLimit :: Lens' ApiGatewayStageMethodSetting (Maybe (Val Integer')) agsmsThrottlingBurstLimit = lens _apiGatewayStageMethodSettingThrottlingBurstLimit (\s a -> s { _apiGatewayStageMethodSettingThrottlingBurstLimit = a }) --- | The number of steady-state requests per second that API Gateway permits--- across all APIs, stages, and methods in your AWS account. For more--- information, see Manage API Request Throttling in the API Gateway Developer--- Guide.-agsmsThrottlingRateLimit :: Lens' ApiGatewayStageMethodSetting (Maybe Double')+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apitgateway-stage-methodsetting.html#cfn-apigateway-stage-methodsetting-throttlingratelimit+agsmsThrottlingRateLimit :: Lens' ApiGatewayStageMethodSetting (Maybe (Val Double')) agsmsThrottlingRateLimit = lens _apiGatewayStageMethodSettingThrottlingRateLimit (\s a -> s { _apiGatewayStageMethodSettingThrottlingRateLimit = a })
library-gen/Stratosphere/ResourceProperties/ApiGatewayUsagePlanApiStage.hs view
@@ -1,9 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | ApiStage is a property of the AWS::ApiGateway::UsagePlan resource that--- specifies which Amazon API Gateway (API Gateway) stages and APIs to--- associate with a usage plan.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html  module Stratosphere.ResourceProperties.ApiGatewayUsagePlanApiStage where @@ -17,7 +15,7 @@   -- | Full data type definition for ApiGatewayUsagePlanApiStage. See--- 'apiGatewayUsagePlanApiStage' for a more convenient constructor.+-- | 'apiGatewayUsagePlanApiStage' for a more convenient constructor. data ApiGatewayUsagePlanApiStage =   ApiGatewayUsagePlanApiStage   { _apiGatewayUsagePlanApiStageApiId :: Maybe (Val Text)@@ -31,7 +29,7 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }  -- | Constructor for 'ApiGatewayUsagePlanApiStage' containing required fields--- as arguments.+-- | as arguments. apiGatewayUsagePlanApiStage   :: ApiGatewayUsagePlanApiStage apiGatewayUsagePlanApiStage  =@@ -40,11 +38,10 @@   , _apiGatewayUsagePlanApiStageStage = Nothing   } --- | The ID of an API that is in the specified Stage property that you want to--- associate with the usage plan.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html#cfn-apigateway-usageplan-apistage-apiid agupasApiId :: Lens' ApiGatewayUsagePlanApiStage (Maybe (Val Text)) agupasApiId = lens _apiGatewayUsagePlanApiStageApiId (\s a -> s { _apiGatewayUsagePlanApiStageApiId = a }) --- | The name of an API Gateway stage to associate with the usage plan.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-apistage.html#cfn-apigateway-usageplan-apistage-stage agupasStage :: Lens' ApiGatewayUsagePlanApiStage (Maybe (Val Text)) agupasStage = lens _apiGatewayUsagePlanApiStageStage (\s a -> s { _apiGatewayUsagePlanApiStageStage = a })
library-gen/Stratosphere/ResourceProperties/ApiGatewayUsagePlanQuotaSettings.hs view
@@ -1,9 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | QuotaSettings is a property of the AWS::ApiGateway::UsagePlan resource--- that specifies the maximum number of requests users can make to your Amazon--- API Gateway (API Gateway) APIs.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-quotasettings.html  module Stratosphere.ResourceProperties.ApiGatewayUsagePlanQuotaSettings where @@ -17,12 +15,12 @@ import Stratosphere.Types  -- | Full data type definition for ApiGatewayUsagePlanQuotaSettings. See--- 'apiGatewayUsagePlanQuotaSettings' for a more convenient constructor.+-- | 'apiGatewayUsagePlanQuotaSettings' for a more convenient constructor. data ApiGatewayUsagePlanQuotaSettings =   ApiGatewayUsagePlanQuotaSettings   { _apiGatewayUsagePlanQuotaSettingsLimit :: Maybe (Val Integer')   , _apiGatewayUsagePlanQuotaSettingsOffset :: Maybe (Val Integer')-  , _apiGatewayUsagePlanQuotaSettingsPeriod :: Maybe Period+  , _apiGatewayUsagePlanQuotaSettingsPeriod :: Maybe (Val Period)   } deriving (Show, Generic)  instance ToJSON ApiGatewayUsagePlanQuotaSettings where@@ -32,7 +30,7 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }  -- | Constructor for 'ApiGatewayUsagePlanQuotaSettings' containing required--- fields as arguments.+-- | fields as arguments. apiGatewayUsagePlanQuotaSettings   :: ApiGatewayUsagePlanQuotaSettings apiGatewayUsagePlanQuotaSettings  =@@ -42,20 +40,14 @@   , _apiGatewayUsagePlanQuotaSettingsPeriod = Nothing   } --- | The maximum number of requests that users can make within the specified--- time period.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-quotasettings.html#cfn-apigateway-usageplan-quotasettings-limit agupqsLimit :: Lens' ApiGatewayUsagePlanQuotaSettings (Maybe (Val Integer')) agupqsLimit = lens _apiGatewayUsagePlanQuotaSettingsLimit (\s a -> s { _apiGatewayUsagePlanQuotaSettingsLimit = a }) --- | For the initial time period, the number of requests to subtract from the--- specified limit. When you first implement a usage plan, the plan might--- start in the middle of the week or month. With this property, you can--- decrease the limit for this initial time period.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-quotasettings.html#cfn-apigateway-usageplan-quotasettings-offset agupqsOffset :: Lens' ApiGatewayUsagePlanQuotaSettings (Maybe (Val Integer')) agupqsOffset = lens _apiGatewayUsagePlanQuotaSettingsOffset (\s a -> s { _apiGatewayUsagePlanQuotaSettingsOffset = a }) --- | The time period for which the maximum limit of requests applies, such as--- DAY or WEEK. For valid values, see the period property for the UsagePlan--- resource in the Amazon API Gateway REST API Reference.-agupqsPeriod :: Lens' ApiGatewayUsagePlanQuotaSettings (Maybe Period)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-quotasettings.html#cfn-apigateway-usageplan-quotasettings-period+agupqsPeriod :: Lens' ApiGatewayUsagePlanQuotaSettings (Maybe (Val Period)) agupqsPeriod = lens _apiGatewayUsagePlanQuotaSettingsPeriod (\s a -> s { _apiGatewayUsagePlanQuotaSettingsPeriod = a })
library-gen/Stratosphere/ResourceProperties/ApiGatewayUsagePlanThrottleSettings.hs view
@@ -1,9 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | ThrottleSettings is a property of the AWS::ApiGateway::UsagePlan resource--- that specifies the overall request rate (average requests per second) and--- burst capacity when users call your Amazon API Gateway (API Gateway) APIs.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html  module Stratosphere.ResourceProperties.ApiGatewayUsagePlanThrottleSettings where @@ -17,11 +15,11 @@   -- | Full data type definition for ApiGatewayUsagePlanThrottleSettings. See--- 'apiGatewayUsagePlanThrottleSettings' for a more convenient constructor.+-- | 'apiGatewayUsagePlanThrottleSettings' for a more convenient constructor. data ApiGatewayUsagePlanThrottleSettings =   ApiGatewayUsagePlanThrottleSettings   { _apiGatewayUsagePlanThrottleSettingsBurstLimit :: Maybe (Val Integer')-  , _apiGatewayUsagePlanThrottleSettingsRateLimit :: Maybe Double'+  , _apiGatewayUsagePlanThrottleSettingsRateLimit :: Maybe (Val Double')   } deriving (Show, Generic)  instance ToJSON ApiGatewayUsagePlanThrottleSettings where@@ -31,7 +29,7 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }  -- | Constructor for 'ApiGatewayUsagePlanThrottleSettings' containing required--- fields as arguments.+-- | fields as arguments. apiGatewayUsagePlanThrottleSettings   :: ApiGatewayUsagePlanThrottleSettings apiGatewayUsagePlanThrottleSettings  =@@ -40,16 +38,10 @@   , _apiGatewayUsagePlanThrottleSettingsRateLimit = Nothing   } --- | The maximum API request rate limit over a time ranging from one to a few--- seconds. The maximum API request rate limit depends on whether the--- underlying token bucket is at its full capacity. For more information about--- request throttling, see Manage API Request Throttling in the API Gateway--- Developer Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html#cfn-apigateway-usageplan-throttlesettings-burstlimit aguptsBurstLimit :: Lens' ApiGatewayUsagePlanThrottleSettings (Maybe (Val Integer')) aguptsBurstLimit = lens _apiGatewayUsagePlanThrottleSettingsBurstLimit (\s a -> s { _apiGatewayUsagePlanThrottleSettingsBurstLimit = a }) --- | The API request steady-state rate limit (average requests per second over--- an extended period of time). For more information about request throttling,--- see Manage API Request Throttling in the API Gateway Developer Guide.-aguptsRateLimit :: Lens' ApiGatewayUsagePlanThrottleSettings (Maybe Double')+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-usageplan-throttlesettings.html#cfn-apigateway-usageplan-throttlesettings-ratelimit+aguptsRateLimit :: Lens' ApiGatewayUsagePlanThrottleSettings (Maybe (Val Double')) aguptsRateLimit = lens _apiGatewayUsagePlanThrottleSettingsRateLimit (\s a -> s { _apiGatewayUsagePlanThrottleSettingsRateLimit = a })
− library-gen/Stratosphere/ResourceProperties/AppCookieStickinessPolicy.hs
@@ -1,52 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AppCookieStickinessPolicy type is an embedded property of the--- AWS::ElasticLoadBalancing::LoadBalancer type.--module Stratosphere.ResourceProperties.AppCookieStickinessPolicy where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for AppCookieStickinessPolicy. See--- 'appCookieStickinessPolicy' for a more convenient constructor.-data AppCookieStickinessPolicy =-  AppCookieStickinessPolicy-  { _appCookieStickinessPolicyCookieName :: Val Text-  , _appCookieStickinessPolicyPolicyName :: Val Text-  } deriving (Show, Generic)--instance ToJSON AppCookieStickinessPolicy where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }--instance FromJSON AppCookieStickinessPolicy where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }---- | Constructor for 'AppCookieStickinessPolicy' containing required fields as--- arguments.-appCookieStickinessPolicy-  :: Val Text -- ^ 'acspCookieName'-  -> Val Text -- ^ 'acspPolicyName'-  -> AppCookieStickinessPolicy-appCookieStickinessPolicy cookieNamearg policyNamearg =-  AppCookieStickinessPolicy-  { _appCookieStickinessPolicyCookieName = cookieNamearg-  , _appCookieStickinessPolicyPolicyName = policyNamearg-  }---- | Name of the application cookie used for stickiness.-acspCookieName :: Lens' AppCookieStickinessPolicy (Val Text)-acspCookieName = lens _appCookieStickinessPolicyCookieName (\s a -> s { _appCookieStickinessPolicyCookieName = a })---- | The name of the policy being created. The name must be unique within the--- set of policies for this Load Balancer. Note To associate this policy with--- a listener, include the policy name in the listener's PolicyNames property.-acspPolicyName :: Lens' AppCookieStickinessPolicy (Val Text)-acspPolicyName = lens _appCookieStickinessPolicyPolicyName (\s a -> s { _appCookieStickinessPolicyPolicyName = a })
+ library-gen/Stratosphere/ResourceProperties/ApplicationAutoScalingScalingPolicyStepAdjustment.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment.html++module Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepAdjustment where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ApplicationAutoScalingScalingPolicyStepAdjustment. See+-- | 'applicationAutoScalingScalingPolicyStepAdjustment' for a more convenient+-- | constructor.+data ApplicationAutoScalingScalingPolicyStepAdjustment =+  ApplicationAutoScalingScalingPolicyStepAdjustment+  { _applicationAutoScalingScalingPolicyStepAdjustmentMetricIntervalLowerBound :: Maybe (Val Double')+  , _applicationAutoScalingScalingPolicyStepAdjustmentMetricIntervalUpperBound :: Maybe (Val Double')+  , _applicationAutoScalingScalingPolicyStepAdjustmentScalingAdjustment :: Val Integer'+  } deriving (Show, Generic)++instance ToJSON ApplicationAutoScalingScalingPolicyStepAdjustment where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 50, omitNothingFields = True }++instance FromJSON ApplicationAutoScalingScalingPolicyStepAdjustment where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 50, omitNothingFields = True }++-- | Constructor for 'ApplicationAutoScalingScalingPolicyStepAdjustment'+-- | containing required fields as arguments.+applicationAutoScalingScalingPolicyStepAdjustment+  :: Val Integer' -- ^ 'aasspsaScalingAdjustment'+  -> ApplicationAutoScalingScalingPolicyStepAdjustment+applicationAutoScalingScalingPolicyStepAdjustment scalingAdjustmentarg =+  ApplicationAutoScalingScalingPolicyStepAdjustment+  { _applicationAutoScalingScalingPolicyStepAdjustmentMetricIntervalLowerBound = Nothing+  , _applicationAutoScalingScalingPolicyStepAdjustmentMetricIntervalUpperBound = Nothing+  , _applicationAutoScalingScalingPolicyStepAdjustmentScalingAdjustment = scalingAdjustmentarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment-metricintervallowerbound+aasspsaMetricIntervalLowerBound :: Lens' ApplicationAutoScalingScalingPolicyStepAdjustment (Maybe (Val Double'))+aasspsaMetricIntervalLowerBound = lens _applicationAutoScalingScalingPolicyStepAdjustmentMetricIntervalLowerBound (\s a -> s { _applicationAutoScalingScalingPolicyStepAdjustmentMetricIntervalLowerBound = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment-metricintervalupperbound+aasspsaMetricIntervalUpperBound :: Lens' ApplicationAutoScalingScalingPolicyStepAdjustment (Maybe (Val Double'))+aasspsaMetricIntervalUpperBound = lens _applicationAutoScalingScalingPolicyStepAdjustmentMetricIntervalUpperBound (\s a -> s { _applicationAutoScalingScalingPolicyStepAdjustmentMetricIntervalUpperBound = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment-scalingadjustment+aasspsaScalingAdjustment :: Lens' ApplicationAutoScalingScalingPolicyStepAdjustment (Val Integer')+aasspsaScalingAdjustment = lens _applicationAutoScalingScalingPolicyStepAdjustmentScalingAdjustment (\s a -> s { _applicationAutoScalingScalingPolicyStepAdjustmentScalingAdjustment = a })
+ library-gen/Stratosphere/ResourceProperties/ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html++module Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepAdjustment++-- | Full data type definition for+-- | ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration. See+-- | 'applicationAutoScalingScalingPolicyStepScalingPolicyConfiguration' for a+-- | more convenient constructor.+data ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration =+  ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration+  { _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationAdjustmentType :: Maybe (Val Text)+  , _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationCooldown :: Maybe (Val Integer')+  , _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationMetricAggregationType :: Maybe (Val Text)+  , _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationMinAdjustmentMagnitude :: Maybe (Val Integer')+  , _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationStepAdjustments :: Maybe [ApplicationAutoScalingScalingPolicyStepAdjustment]+  } deriving (Show, Generic)++instance ToJSON ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 66, omitNothingFields = True }++instance FromJSON ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 66, omitNothingFields = True }++-- | Constructor for+-- | 'ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration'+-- | containing required fields as arguments.+applicationAutoScalingScalingPolicyStepScalingPolicyConfiguration+  :: ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration+applicationAutoScalingScalingPolicyStepScalingPolicyConfiguration  =+  ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration+  { _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationAdjustmentType = Nothing+  , _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationCooldown = Nothing+  , _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationMetricAggregationType = Nothing+  , _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationMinAdjustmentMagnitude = Nothing+  , _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationStepAdjustments = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-adjustmenttype+aasspsspcAdjustmentType :: Lens' ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration (Maybe (Val Text))+aasspsspcAdjustmentType = lens _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationAdjustmentType (\s a -> s { _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationAdjustmentType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-cooldown+aasspsspcCooldown :: Lens' ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration (Maybe (Val Integer'))+aasspsspcCooldown = lens _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationCooldown (\s a -> s { _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationCooldown = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-metricaggregationtype+aasspsspcMetricAggregationType :: Lens' ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration (Maybe (Val Text))+aasspsspcMetricAggregationType = lens _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationMetricAggregationType (\s a -> s { _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationMetricAggregationType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-minadjustmentmagnitude+aasspsspcMinAdjustmentMagnitude :: Lens' ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration (Maybe (Val Integer'))+aasspsspcMinAdjustmentMagnitude = lens _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationMinAdjustmentMagnitude (\s a -> s { _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationMinAdjustmentMagnitude = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustments+aasspsspcStepAdjustments :: Lens' ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration (Maybe [ApplicationAutoScalingScalingPolicyStepAdjustment])+aasspsspcStepAdjustments = lens _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationStepAdjustments (\s a -> s { _applicationAutoScalingScalingPolicyStepScalingPolicyConfigurationStepAdjustments = a })
+ library-gen/Stratosphere/ResourceProperties/AutoScalingAutoScalingGroupMetricsCollection.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-metricscollection.html++module Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupMetricsCollection where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | AutoScalingAutoScalingGroupMetricsCollection. See+-- | 'autoScalingAutoScalingGroupMetricsCollection' for a more convenient+-- | constructor.+data AutoScalingAutoScalingGroupMetricsCollection =+  AutoScalingAutoScalingGroupMetricsCollection+  { _autoScalingAutoScalingGroupMetricsCollectionGranularity :: Val Text+  , _autoScalingAutoScalingGroupMetricsCollectionMetrics :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON AutoScalingAutoScalingGroupMetricsCollection where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 45, omitNothingFields = True }++instance FromJSON AutoScalingAutoScalingGroupMetricsCollection where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 45, omitNothingFields = True }++-- | Constructor for 'AutoScalingAutoScalingGroupMetricsCollection' containing+-- | required fields as arguments.+autoScalingAutoScalingGroupMetricsCollection+  :: Val Text -- ^ 'asasgmcGranularity'+  -> AutoScalingAutoScalingGroupMetricsCollection+autoScalingAutoScalingGroupMetricsCollection granularityarg =+  AutoScalingAutoScalingGroupMetricsCollection+  { _autoScalingAutoScalingGroupMetricsCollectionGranularity = granularityarg+  , _autoScalingAutoScalingGroupMetricsCollectionMetrics = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-metricscollection.html#cfn-as-metricscollection-granularity+asasgmcGranularity :: Lens' AutoScalingAutoScalingGroupMetricsCollection (Val Text)+asasgmcGranularity = lens _autoScalingAutoScalingGroupMetricsCollectionGranularity (\s a -> s { _autoScalingAutoScalingGroupMetricsCollectionGranularity = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-metricscollection.html#cfn-as-metricscollection-metrics+asasgmcMetrics :: Lens' AutoScalingAutoScalingGroupMetricsCollection (Maybe [Val Text])+asasgmcMetrics = lens _autoScalingAutoScalingGroupMetricsCollectionMetrics (\s a -> s { _autoScalingAutoScalingGroupMetricsCollectionMetrics = a })
+ library-gen/Stratosphere/ResourceProperties/AutoScalingAutoScalingGroupNotificationConfigurations.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-notificationconfigurations.html++module Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupNotificationConfigurations where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | AutoScalingAutoScalingGroupNotificationConfigurations. See+-- | 'autoScalingAutoScalingGroupNotificationConfigurations' for a more+-- | convenient constructor.+data AutoScalingAutoScalingGroupNotificationConfigurations =+  AutoScalingAutoScalingGroupNotificationConfigurations+  { _autoScalingAutoScalingGroupNotificationConfigurationsNotificationTypes :: Maybe [Val Text]+  , _autoScalingAutoScalingGroupNotificationConfigurationsTopicARN :: Val Text+  } deriving (Show, Generic)++instance ToJSON AutoScalingAutoScalingGroupNotificationConfigurations where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 54, omitNothingFields = True }++instance FromJSON AutoScalingAutoScalingGroupNotificationConfigurations where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 54, omitNothingFields = True }++-- | Constructor for 'AutoScalingAutoScalingGroupNotificationConfigurations'+-- | containing required fields as arguments.+autoScalingAutoScalingGroupNotificationConfigurations+  :: Val Text -- ^ 'asasgncTopicARN'+  -> AutoScalingAutoScalingGroupNotificationConfigurations+autoScalingAutoScalingGroupNotificationConfigurations topicARNarg =+  AutoScalingAutoScalingGroupNotificationConfigurations+  { _autoScalingAutoScalingGroupNotificationConfigurationsNotificationTypes = Nothing+  , _autoScalingAutoScalingGroupNotificationConfigurationsTopicARN = topicARNarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-notificationconfigurations.html#cfn-as-group-notificationconfigurations-notificationtypes+asasgncNotificationTypes :: Lens' AutoScalingAutoScalingGroupNotificationConfigurations (Maybe [Val Text])+asasgncNotificationTypes = lens _autoScalingAutoScalingGroupNotificationConfigurationsNotificationTypes (\s a -> s { _autoScalingAutoScalingGroupNotificationConfigurationsNotificationTypes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-notificationconfigurations.html#cfn-autoscaling-autoscalinggroup-notificationconfigurations-topicarn+asasgncTopicARN :: Lens' AutoScalingAutoScalingGroupNotificationConfigurations (Val Text)+asasgncTopicARN = lens _autoScalingAutoScalingGroupNotificationConfigurationsTopicARN (\s a -> s { _autoScalingAutoScalingGroupNotificationConfigurationsTopicARN = a })
+ library-gen/Stratosphere/ResourceProperties/AutoScalingAutoScalingGroupTagProperty.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html++module Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupTagProperty where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for AutoScalingAutoScalingGroupTagProperty. See+-- | 'autoScalingAutoScalingGroupTagProperty' for a more convenient+-- | constructor.+data AutoScalingAutoScalingGroupTagProperty =+  AutoScalingAutoScalingGroupTagProperty+  { _autoScalingAutoScalingGroupTagPropertyKey :: Val Text+  , _autoScalingAutoScalingGroupTagPropertyPropagateAtLaunch :: Val Bool'+  , _autoScalingAutoScalingGroupTagPropertyValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON AutoScalingAutoScalingGroupTagProperty where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++instance FromJSON AutoScalingAutoScalingGroupTagProperty where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++-- | Constructor for 'AutoScalingAutoScalingGroupTagProperty' containing+-- | required fields as arguments.+autoScalingAutoScalingGroupTagProperty+  :: Val Text -- ^ 'asasgtpKey'+  -> Val Bool' -- ^ 'asasgtpPropagateAtLaunch'+  -> Val Text -- ^ 'asasgtpValue'+  -> AutoScalingAutoScalingGroupTagProperty+autoScalingAutoScalingGroupTagProperty keyarg propagateAtLauncharg valuearg =+  AutoScalingAutoScalingGroupTagProperty+  { _autoScalingAutoScalingGroupTagPropertyKey = keyarg+  , _autoScalingAutoScalingGroupTagPropertyPropagateAtLaunch = propagateAtLauncharg+  , _autoScalingAutoScalingGroupTagPropertyValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html#cfn-as-tags-Key+asasgtpKey :: Lens' AutoScalingAutoScalingGroupTagProperty (Val Text)+asasgtpKey = lens _autoScalingAutoScalingGroupTagPropertyKey (\s a -> s { _autoScalingAutoScalingGroupTagPropertyKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html#cfn-as-tags-PropagateAtLaunch+asasgtpPropagateAtLaunch :: Lens' AutoScalingAutoScalingGroupTagProperty (Val Bool')+asasgtpPropagateAtLaunch = lens _autoScalingAutoScalingGroupTagPropertyPropagateAtLaunch (\s a -> s { _autoScalingAutoScalingGroupTagPropertyPropagateAtLaunch = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-tags.html#cfn-as-tags-Value+asasgtpValue :: Lens' AutoScalingAutoScalingGroupTagProperty (Val Text)+asasgtpValue = lens _autoScalingAutoScalingGroupTagPropertyValue (\s a -> s { _autoScalingAutoScalingGroupTagPropertyValue = a })
− library-gen/Stratosphere/ResourceProperties/AutoScalingBlockDeviceMapping.hs
@@ -1,64 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AutoScaling Block Device Mapping type is an embedded property of the--- AWS::AutoScaling::LaunchConfiguration type.--module Stratosphere.ResourceProperties.AutoScalingBlockDeviceMapping where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.AutoScalingEBSBlockDevice---- | Full data type definition for AutoScalingBlockDeviceMapping. See--- 'autoScalingBlockDeviceMapping' for a more convenient constructor.-data AutoScalingBlockDeviceMapping =-  AutoScalingBlockDeviceMapping-  { _autoScalingBlockDeviceMappingDeviceName :: Val Text-  , _autoScalingBlockDeviceMappingEbs :: Maybe AutoScalingEBSBlockDevice-  , _autoScalingBlockDeviceMappingNoDevice :: Maybe (Val Bool')-  , _autoScalingBlockDeviceMappingVirtualName :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON AutoScalingBlockDeviceMapping where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }--instance FromJSON AutoScalingBlockDeviceMapping where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }---- | Constructor for 'AutoScalingBlockDeviceMapping' containing required--- fields as arguments.-autoScalingBlockDeviceMapping-  :: Val Text -- ^ 'asbdmDeviceName'-  -> AutoScalingBlockDeviceMapping-autoScalingBlockDeviceMapping deviceNamearg =-  AutoScalingBlockDeviceMapping-  { _autoScalingBlockDeviceMappingDeviceName = deviceNamearg-  , _autoScalingBlockDeviceMappingEbs = Nothing-  , _autoScalingBlockDeviceMappingNoDevice = Nothing-  , _autoScalingBlockDeviceMappingVirtualName = Nothing-  }---- | The name of the device within Amazon EC2.-asbdmDeviceName :: Lens' AutoScalingBlockDeviceMapping (Val Text)-asbdmDeviceName = lens _autoScalingBlockDeviceMappingDeviceName (\s a -> s { _autoScalingBlockDeviceMappingDeviceName = a })---- | The Amazon Elastic Block Store volume information.-asbdmEbs :: Lens' AutoScalingBlockDeviceMapping (Maybe AutoScalingEBSBlockDevice)-asbdmEbs = lens _autoScalingBlockDeviceMappingEbs (\s a -> s { _autoScalingBlockDeviceMappingEbs = a })---- | Suppresses the device mapping. If NoDevice is set to true for the root--- device, the instance might fail the Amazon EC2 health check. Auto Scaling--- launches a replacement instance if the instance fails the health check.-asbdmNoDevice :: Lens' AutoScalingBlockDeviceMapping (Maybe (Val Bool'))-asbdmNoDevice = lens _autoScalingBlockDeviceMappingNoDevice (\s a -> s { _autoScalingBlockDeviceMappingNoDevice = a })---- | The name of the virtual device. The name must be in the form ephemeralX--- where X is a number starting from zero (0), for example, ephemeral0.-asbdmVirtualName :: Lens' AutoScalingBlockDeviceMapping (Maybe (Val Text))-asbdmVirtualName = lens _autoScalingBlockDeviceMappingVirtualName (\s a -> s { _autoScalingBlockDeviceMappingVirtualName = a })
− library-gen/Stratosphere/ResourceProperties/AutoScalingEBSBlockDevice.hs
@@ -1,82 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AutoScaling EBS Block Device type is an embedded property of the--- AutoScaling Block Device Mapping type.--module Stratosphere.ResourceProperties.AutoScalingEBSBlockDevice where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for AutoScalingEBSBlockDevice. See--- 'autoScalingEBSBlockDevice' for a more convenient constructor.-data AutoScalingEBSBlockDevice =-  AutoScalingEBSBlockDevice-  { _autoScalingEBSBlockDeviceDeleteOnTermination :: Maybe (Val Bool')-  , _autoScalingEBSBlockDeviceEncrypted :: Maybe (Val Bool')-  , _autoScalingEBSBlockDeviceIops :: Maybe (Val Integer')-  , _autoScalingEBSBlockDeviceSnapshotId :: Maybe (Val Text)-  , _autoScalingEBSBlockDeviceVolumeSize :: Maybe (Val Integer')-  , _autoScalingEBSBlockDeviceVolumeType :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON AutoScalingEBSBlockDevice where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }--instance FromJSON AutoScalingEBSBlockDevice where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }---- | Constructor for 'AutoScalingEBSBlockDevice' containing required fields as--- arguments.-autoScalingEBSBlockDevice-  :: AutoScalingEBSBlockDevice-autoScalingEBSBlockDevice  =-  AutoScalingEBSBlockDevice-  { _autoScalingEBSBlockDeviceDeleteOnTermination = Nothing-  , _autoScalingEBSBlockDeviceEncrypted = Nothing-  , _autoScalingEBSBlockDeviceIops = Nothing-  , _autoScalingEBSBlockDeviceSnapshotId = Nothing-  , _autoScalingEBSBlockDeviceVolumeSize = Nothing-  , _autoScalingEBSBlockDeviceVolumeType = Nothing-  }---- | Indicates whether to delete the volume when the instance is terminated.--- By default, Auto Scaling uses true.-asebsbdDeleteOnTermination :: Lens' AutoScalingEBSBlockDevice (Maybe (Val Bool'))-asebsbdDeleteOnTermination = lens _autoScalingEBSBlockDeviceDeleteOnTermination (\s a -> s { _autoScalingEBSBlockDeviceDeleteOnTermination = a })---- | Indicates whether the volume is encrypted. Encrypted EBS volumes must be--- attached to instances that support Amazon EBS encryption. Volumes that you--- create from encrypted snapshots are automatically encrypted. You cannot--- create an encrypted volume from an unencrypted snapshot or an unencrypted--- volume from an encrypted snapshot.-asebsbdEncrypted :: Lens' AutoScalingEBSBlockDevice (Maybe (Val Bool'))-asebsbdEncrypted = lens _autoScalingEBSBlockDeviceEncrypted (\s a -> s { _autoScalingEBSBlockDeviceEncrypted = a })---- | The number of I/O operations per second (IOPS) that the volume supports.--- The maximum ratio of IOPS to volume size is 30.-asebsbdIops :: Lens' AutoScalingEBSBlockDevice (Maybe (Val Integer'))-asebsbdIops = lens _autoScalingEBSBlockDeviceIops (\s a -> s { _autoScalingEBSBlockDeviceIops = a })---- | The snapshot ID of the volume to use.-asebsbdSnapshotId :: Lens' AutoScalingEBSBlockDevice (Maybe (Val Text))-asebsbdSnapshotId = lens _autoScalingEBSBlockDeviceSnapshotId (\s a -> s { _autoScalingEBSBlockDeviceSnapshotId = a })---- | The volume size, in Gibibytes (GiB). This can be a number from 1 – 1024.--- If the volume type is EBS optimized, the minimum value is 10. For more--- information about specifying the volume type, see EbsOptimized in--- AWS::AutoScaling::LaunchConfiguration.-asebsbdVolumeSize :: Lens' AutoScalingEBSBlockDevice (Maybe (Val Integer'))-asebsbdVolumeSize = lens _autoScalingEBSBlockDeviceVolumeSize (\s a -> s { _autoScalingEBSBlockDeviceVolumeSize = a })---- | The volume type. By default, Auto Scaling uses the standard volume type.--- For more information, see Ebs in the Auto Scaling API Reference.-asebsbdVolumeType :: Lens' AutoScalingEBSBlockDevice (Maybe (Val Text))-asebsbdVolumeType = lens _autoScalingEBSBlockDeviceVolumeType (\s a -> s { _autoScalingEBSBlockDeviceVolumeType = a })
+ library-gen/Stratosphere/ResourceProperties/AutoScalingLaunchConfigurationBlockDevice.hs view
@@ -0,0 +1,72 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html++module Stratosphere.ResourceProperties.AutoScalingLaunchConfigurationBlockDevice where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for AutoScalingLaunchConfigurationBlockDevice.+-- | See 'autoScalingLaunchConfigurationBlockDevice' for a more convenient+-- | constructor.+data AutoScalingLaunchConfigurationBlockDevice =+  AutoScalingLaunchConfigurationBlockDevice+  { _autoScalingLaunchConfigurationBlockDeviceDeleteOnTermination :: Maybe (Val Bool')+  , _autoScalingLaunchConfigurationBlockDeviceEncrypted :: Maybe (Val Bool')+  , _autoScalingLaunchConfigurationBlockDeviceIops :: Maybe (Val Integer')+  , _autoScalingLaunchConfigurationBlockDeviceSnapshotId :: Maybe (Val Text)+  , _autoScalingLaunchConfigurationBlockDeviceVolumeSize :: Maybe (Val Text)+  , _autoScalingLaunchConfigurationBlockDeviceVolumeType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON AutoScalingLaunchConfigurationBlockDevice where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }++instance FromJSON AutoScalingLaunchConfigurationBlockDevice where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }++-- | Constructor for 'AutoScalingLaunchConfigurationBlockDevice' containing+-- | required fields as arguments.+autoScalingLaunchConfigurationBlockDevice+  :: AutoScalingLaunchConfigurationBlockDevice+autoScalingLaunchConfigurationBlockDevice  =+  AutoScalingLaunchConfigurationBlockDevice+  { _autoScalingLaunchConfigurationBlockDeviceDeleteOnTermination = Nothing+  , _autoScalingLaunchConfigurationBlockDeviceEncrypted = Nothing+  , _autoScalingLaunchConfigurationBlockDeviceIops = Nothing+  , _autoScalingLaunchConfigurationBlockDeviceSnapshotId = Nothing+  , _autoScalingLaunchConfigurationBlockDeviceVolumeSize = Nothing+  , _autoScalingLaunchConfigurationBlockDeviceVolumeType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-deleteonterm+aslcbdDeleteOnTermination :: Lens' AutoScalingLaunchConfigurationBlockDevice (Maybe (Val Bool'))+aslcbdDeleteOnTermination = lens _autoScalingLaunchConfigurationBlockDeviceDeleteOnTermination (\s a -> s { _autoScalingLaunchConfigurationBlockDeviceDeleteOnTermination = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-encrypted+aslcbdEncrypted :: Lens' AutoScalingLaunchConfigurationBlockDevice (Maybe (Val Bool'))+aslcbdEncrypted = lens _autoScalingLaunchConfigurationBlockDeviceEncrypted (\s a -> s { _autoScalingLaunchConfigurationBlockDeviceEncrypted = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-iops+aslcbdIops :: Lens' AutoScalingLaunchConfigurationBlockDevice (Maybe (Val Integer'))+aslcbdIops = lens _autoScalingLaunchConfigurationBlockDeviceIops (\s a -> s { _autoScalingLaunchConfigurationBlockDeviceIops = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-snapshotid+aslcbdSnapshotId :: Lens' AutoScalingLaunchConfigurationBlockDevice (Maybe (Val Text))+aslcbdSnapshotId = lens _autoScalingLaunchConfigurationBlockDeviceSnapshotId (\s a -> s { _autoScalingLaunchConfigurationBlockDeviceSnapshotId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-volumesize+aslcbdVolumeSize :: Lens' AutoScalingLaunchConfigurationBlockDevice (Maybe (Val Text))+aslcbdVolumeSize = lens _autoScalingLaunchConfigurationBlockDeviceVolumeSize (\s a -> s { _autoScalingLaunchConfigurationBlockDeviceVolumeSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-template.html#cfn-as-launchconfig-blockdev-template-volumetype+aslcbdVolumeType :: Lens' AutoScalingLaunchConfigurationBlockDevice (Maybe (Val Text))+aslcbdVolumeType = lens _autoScalingLaunchConfigurationBlockDeviceVolumeType (\s a -> s { _autoScalingLaunchConfigurationBlockDeviceVolumeType = a })
+ library-gen/Stratosphere/ResourceProperties/AutoScalingLaunchConfigurationBlockDeviceMapping.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html++module Stratosphere.ResourceProperties.AutoScalingLaunchConfigurationBlockDeviceMapping where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.AutoScalingLaunchConfigurationBlockDevice++-- | Full data type definition for+-- | AutoScalingLaunchConfigurationBlockDeviceMapping. See+-- | 'autoScalingLaunchConfigurationBlockDeviceMapping' for a more convenient+-- | constructor.+data AutoScalingLaunchConfigurationBlockDeviceMapping =+  AutoScalingLaunchConfigurationBlockDeviceMapping+  { _autoScalingLaunchConfigurationBlockDeviceMappingDeviceName :: Val Text+  , _autoScalingLaunchConfigurationBlockDeviceMappingEbs :: Maybe AutoScalingLaunchConfigurationBlockDevice+  , _autoScalingLaunchConfigurationBlockDeviceMappingNoDevice :: Maybe (Val Bool')+  , _autoScalingLaunchConfigurationBlockDeviceMappingVirtualName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON AutoScalingLaunchConfigurationBlockDeviceMapping where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 49, omitNothingFields = True }++instance FromJSON AutoScalingLaunchConfigurationBlockDeviceMapping where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 49, omitNothingFields = True }++-- | Constructor for 'AutoScalingLaunchConfigurationBlockDeviceMapping'+-- | containing required fields as arguments.+autoScalingLaunchConfigurationBlockDeviceMapping+  :: Val Text -- ^ 'aslcbdmDeviceName'+  -> AutoScalingLaunchConfigurationBlockDeviceMapping+autoScalingLaunchConfigurationBlockDeviceMapping deviceNamearg =+  AutoScalingLaunchConfigurationBlockDeviceMapping+  { _autoScalingLaunchConfigurationBlockDeviceMappingDeviceName = deviceNamearg+  , _autoScalingLaunchConfigurationBlockDeviceMappingEbs = Nothing+  , _autoScalingLaunchConfigurationBlockDeviceMappingNoDevice = Nothing+  , _autoScalingLaunchConfigurationBlockDeviceMappingVirtualName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-devicename+aslcbdmDeviceName :: Lens' AutoScalingLaunchConfigurationBlockDeviceMapping (Val Text)+aslcbdmDeviceName = lens _autoScalingLaunchConfigurationBlockDeviceMappingDeviceName (\s a -> s { _autoScalingLaunchConfigurationBlockDeviceMappingDeviceName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-ebs+aslcbdmEbs :: Lens' AutoScalingLaunchConfigurationBlockDeviceMapping (Maybe AutoScalingLaunchConfigurationBlockDevice)+aslcbdmEbs = lens _autoScalingLaunchConfigurationBlockDeviceMappingEbs (\s a -> s { _autoScalingLaunchConfigurationBlockDeviceMappingEbs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-nodevice+aslcbdmNoDevice :: Lens' AutoScalingLaunchConfigurationBlockDeviceMapping (Maybe (Val Bool'))+aslcbdmNoDevice = lens _autoScalingLaunchConfigurationBlockDeviceMappingNoDevice (\s a -> s { _autoScalingLaunchConfigurationBlockDeviceMappingNoDevice = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig-blockdev-mapping.html#cfn-as-launchconfig-blockdev-mapping-virtualname+aslcbdmVirtualName :: Lens' AutoScalingLaunchConfigurationBlockDeviceMapping (Maybe (Val Text))+aslcbdmVirtualName = lens _autoScalingLaunchConfigurationBlockDeviceMappingVirtualName (\s a -> s { _autoScalingLaunchConfigurationBlockDeviceMappingVirtualName = a })
− library-gen/Stratosphere/ResourceProperties/AutoScalingMetricsCollection.hs
@@ -1,55 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The MetricsCollection is a property of the--- AWS::AutoScaling::AutoScalingGroup resource that describes the group--- metrics that an Auto Scaling group sends to CloudWatch. These metrics--- describe the group rather than any of its instances. For more information,--- see EnableMetricsCollection in the Auto Scaling API Reference.--module Stratosphere.ResourceProperties.AutoScalingMetricsCollection where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for AutoScalingMetricsCollection. See--- 'autoScalingMetricsCollection' for a more convenient constructor.-data AutoScalingMetricsCollection =-  AutoScalingMetricsCollection-  { _autoScalingMetricsCollectionGranularity :: Val Text-  , _autoScalingMetricsCollectionMetrics :: Maybe [Val Text]-  } deriving (Show, Generic)--instance ToJSON AutoScalingMetricsCollection where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }--instance FromJSON AutoScalingMetricsCollection where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }---- | Constructor for 'AutoScalingMetricsCollection' containing required fields--- as arguments.-autoScalingMetricsCollection-  :: Val Text -- ^ 'asmcGranularity'-  -> AutoScalingMetricsCollection-autoScalingMetricsCollection granularityarg =-  AutoScalingMetricsCollection-  { _autoScalingMetricsCollectionGranularity = granularityarg-  , _autoScalingMetricsCollectionMetrics = Nothing-  }---- | The frequency at which Auto Scaling sends aggregated data to CloudWatch.--- For example, you can specify 1Minute to send aggregated data to CloudWatch--- every minute.-asmcGranularity :: Lens' AutoScalingMetricsCollection (Val Text)-asmcGranularity = lens _autoScalingMetricsCollectionGranularity (\s a -> s { _autoScalingMetricsCollectionGranularity = a })---- | The list of metrics to collect. If you don't specify any metrics, all--- metrics are enabled.-asmcMetrics :: Lens' AutoScalingMetricsCollection (Maybe [Val Text])-asmcMetrics = lens _autoScalingMetricsCollectionMetrics (\s a -> s { _autoScalingMetricsCollectionMetrics = a })
− library-gen/Stratosphere/ResourceProperties/AutoScalingNotificationConfigurations.hs
@@ -1,57 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The NotificationConfigurations property is an embedded property of the--- AWS::AutoScaling::AutoScalingGroup resource that specifies the events for--- which the Auto Scaling group sends notifications.--module Stratosphere.ResourceProperties.AutoScalingNotificationConfigurations where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for AutoScalingNotificationConfigurations. See--- 'autoScalingNotificationConfigurations' for a more convenient constructor.-data AutoScalingNotificationConfigurations =-  AutoScalingNotificationConfigurations-  { _autoScalingNotificationConfigurationsNotificationTypes :: [Val Text]-  , _autoScalingNotificationConfigurationsTopicARN :: Val Text-  } deriving (Show, Generic)--instance ToJSON AutoScalingNotificationConfigurations where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }--instance FromJSON AutoScalingNotificationConfigurations where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }---- | Constructor for 'AutoScalingNotificationConfigurations' containing--- required fields as arguments.-autoScalingNotificationConfigurations-  :: [Val Text] -- ^ 'asncNotificationTypes'-  -> Val Text -- ^ 'asncTopicARN'-  -> AutoScalingNotificationConfigurations-autoScalingNotificationConfigurations notificationTypesarg topicARNarg =-  AutoScalingNotificationConfigurations-  { _autoScalingNotificationConfigurationsNotificationTypes = notificationTypesarg-  , _autoScalingNotificationConfigurationsTopicARN = topicARNarg-  }---- | A list of event types that trigger a notification. Event types can--- include any of the following types: autoscaling:EC2_INSTANCE_LAUNCH,--- autoscaling:EC2_INSTANCE_LAUNCH_ERROR, autoscaling:EC2_INSTANCE_TERMINATE,--- autoscaling:EC2_INSTANCE_TERMINATE_ERROR, and--- autoscaling:TEST_NOTIFICATION. For more information about event types, see--- DescribeAutoScalingNotificationTypes in the Auto Scaling API Reference.-asncNotificationTypes :: Lens' AutoScalingNotificationConfigurations [Val Text]-asncNotificationTypes = lens _autoScalingNotificationConfigurationsNotificationTypes (\s a -> s { _autoScalingNotificationConfigurationsNotificationTypes = a })---- | The Amazon Resource Name (ARN) of the Amazon Simple Notification Service--- (SNS) topic.-asncTopicARN :: Lens' AutoScalingNotificationConfigurations (Val Text)-asncTopicARN = lens _autoScalingNotificationConfigurationsTopicARN (\s a -> s { _autoScalingNotificationConfigurationsTopicARN = a })
+ library-gen/Stratosphere/ResourceProperties/AutoScalingScalingPolicyStepAdjustment.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-stepadjustments.html++module Stratosphere.ResourceProperties.AutoScalingScalingPolicyStepAdjustment where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for AutoScalingScalingPolicyStepAdjustment. See+-- | 'autoScalingScalingPolicyStepAdjustment' for a more convenient+-- | constructor.+data AutoScalingScalingPolicyStepAdjustment =+  AutoScalingScalingPolicyStepAdjustment+  { _autoScalingScalingPolicyStepAdjustmentMetricIntervalLowerBound :: Maybe (Val Double')+  , _autoScalingScalingPolicyStepAdjustmentMetricIntervalUpperBound :: Maybe (Val Double')+  , _autoScalingScalingPolicyStepAdjustmentScalingAdjustment :: Val Integer'+  } deriving (Show, Generic)++instance ToJSON AutoScalingScalingPolicyStepAdjustment where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++instance FromJSON AutoScalingScalingPolicyStepAdjustment where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++-- | Constructor for 'AutoScalingScalingPolicyStepAdjustment' containing+-- | required fields as arguments.+autoScalingScalingPolicyStepAdjustment+  :: Val Integer' -- ^ 'asspsaScalingAdjustment'+  -> AutoScalingScalingPolicyStepAdjustment+autoScalingScalingPolicyStepAdjustment scalingAdjustmentarg =+  AutoScalingScalingPolicyStepAdjustment+  { _autoScalingScalingPolicyStepAdjustmentMetricIntervalLowerBound = Nothing+  , _autoScalingScalingPolicyStepAdjustmentMetricIntervalUpperBound = Nothing+  , _autoScalingScalingPolicyStepAdjustmentScalingAdjustment = scalingAdjustmentarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-stepadjustments.html#cfn-autoscaling-scalingpolicy-stepadjustment-metricintervallowerbound+asspsaMetricIntervalLowerBound :: Lens' AutoScalingScalingPolicyStepAdjustment (Maybe (Val Double'))+asspsaMetricIntervalLowerBound = lens _autoScalingScalingPolicyStepAdjustmentMetricIntervalLowerBound (\s a -> s { _autoScalingScalingPolicyStepAdjustmentMetricIntervalLowerBound = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-stepadjustments.html#cfn-autoscaling-scalingpolicy-stepadjustment-metricintervalupperbound+asspsaMetricIntervalUpperBound :: Lens' AutoScalingScalingPolicyStepAdjustment (Maybe (Val Double'))+asspsaMetricIntervalUpperBound = lens _autoScalingScalingPolicyStepAdjustmentMetricIntervalUpperBound (\s a -> s { _autoScalingScalingPolicyStepAdjustmentMetricIntervalUpperBound = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-scalingpolicy-stepadjustments.html#cfn-autoscaling-scalingpolicy-stepadjustment-scalingadjustment+asspsaScalingAdjustment :: Lens' AutoScalingScalingPolicyStepAdjustment (Val Integer')+asspsaScalingAdjustment = lens _autoScalingScalingPolicyStepAdjustmentScalingAdjustment (\s a -> s { _autoScalingScalingPolicyStepAdjustmentScalingAdjustment = a })
− library-gen/Stratosphere/ResourceProperties/AutoScalingTags.hs
@@ -1,63 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The Auto Scaling Tags property is an embedded property of the--- AWS::AutoScaling::AutoScalingGroup type. For more information about tags,--- go to Tagging Auto Scaling Groups and Amazon EC2 Instances in the Auto--- Scaling User Guide. AWS CloudFormation adds the following tags to all Auto--- Scaling groups and associated instances:--module Stratosphere.ResourceProperties.AutoScalingTags where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for AutoScalingTags. See 'autoScalingTags' for--- a more convenient constructor.-data AutoScalingTags =-  AutoScalingTags-  { _autoScalingTagsKey :: Val Text-  , _autoScalingTagsValue :: Val Text-  , _autoScalingTagsPropagateAtLaunch :: Val Bool'-  } deriving (Show, Generic)--instance ToJSON AutoScalingTags where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }--instance FromJSON AutoScalingTags where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }---- | Constructor for 'AutoScalingTags' containing required fields as--- arguments.-autoScalingTags-  :: Val Text -- ^ 'astKey'-  -> Val Text -- ^ 'astValue'-  -> Val Bool' -- ^ 'astPropagateAtLaunch'-  -> AutoScalingTags-autoScalingTags keyarg valuearg propagateAtLauncharg =-  AutoScalingTags-  { _autoScalingTagsKey = keyarg-  , _autoScalingTagsValue = valuearg-  , _autoScalingTagsPropagateAtLaunch = propagateAtLauncharg-  }---- | The key name of the tag.-astKey :: Lens' AutoScalingTags (Val Text)-astKey = lens _autoScalingTagsKey (\s a -> s { _autoScalingTagsKey = a })---- | The value for the tag.-astValue :: Lens' AutoScalingTags (Val Text)-astValue = lens _autoScalingTagsValue (\s a -> s { _autoScalingTagsValue = a })---- | Set to true if you want AWS CloudFormation to copy the tag to EC2--- instances that are launched as part of the auto scaling group. Set to false--- if you want the tag attached only to the auto scaling group and not copied--- to any instances launched as part of the auto scaling group.-astPropagateAtLaunch :: Lens' AutoScalingTags (Val Bool')-astPropagateAtLaunch = lens _autoScalingTagsPropagateAtLaunch (\s a -> s { _autoScalingTagsPropagateAtLaunch = a })
+ library-gen/Stratosphere/ResourceProperties/CertificateManagerCertificateDomainValidationOption.hs view
@@ -0,0 +1,51 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html++module Stratosphere.ResourceProperties.CertificateManagerCertificateDomainValidationOption where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | CertificateManagerCertificateDomainValidationOption. See+-- | 'certificateManagerCertificateDomainValidationOption' for a more+-- | convenient constructor.+data CertificateManagerCertificateDomainValidationOption =+  CertificateManagerCertificateDomainValidationOption+  { _certificateManagerCertificateDomainValidationOptionDomainName :: Val Text+  , _certificateManagerCertificateDomainValidationOptionValidationDomain :: Val Text+  } deriving (Show, Generic)++instance ToJSON CertificateManagerCertificateDomainValidationOption where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 52, omitNothingFields = True }++instance FromJSON CertificateManagerCertificateDomainValidationOption where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 52, omitNothingFields = True }++-- | Constructor for 'CertificateManagerCertificateDomainValidationOption'+-- | containing required fields as arguments.+certificateManagerCertificateDomainValidationOption+  :: Val Text -- ^ 'cmcdvoDomainName'+  -> Val Text -- ^ 'cmcdvoValidationDomain'+  -> CertificateManagerCertificateDomainValidationOption+certificateManagerCertificateDomainValidationOption domainNamearg validationDomainarg =+  CertificateManagerCertificateDomainValidationOption+  { _certificateManagerCertificateDomainValidationOptionDomainName = domainNamearg+  , _certificateManagerCertificateDomainValidationOptionValidationDomain = validationDomainarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html#cfn-certificatemanager-certificate-domainvalidationoptions-domainname+cmcdvoDomainName :: Lens' CertificateManagerCertificateDomainValidationOption (Val Text)+cmcdvoDomainName = lens _certificateManagerCertificateDomainValidationOptionDomainName (\s a -> s { _certificateManagerCertificateDomainValidationOptionDomainName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-certificatemanager-certificate-domainvalidationoption.html#cfn-certificatemanager-certificate-domainvalidationoption-validationdomain+cmcdvoValidationDomain :: Lens' CertificateManagerCertificateDomainValidationOption (Val Text)+cmcdvoValidationDomain = lens _certificateManagerCertificateDomainValidationOptionValidationDomain (\s a -> s { _certificateManagerCertificateDomainValidationOptionValidationDomain = a })
+ library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionCacheBehavior.hs view
@@ -0,0 +1,111 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachebehavior.html++module Stratosphere.ResourceProperties.CloudFrontDistributionCacheBehavior where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CloudFrontDistributionForwardedValues++-- | Full data type definition for CloudFrontDistributionCacheBehavior. See+-- | 'cloudFrontDistributionCacheBehavior' for a more convenient constructor.+data CloudFrontDistributionCacheBehavior =+  CloudFrontDistributionCacheBehavior+  { _cloudFrontDistributionCacheBehaviorAllowedMethods :: Maybe [Val Text]+  , _cloudFrontDistributionCacheBehaviorCachedMethods :: Maybe [Val Text]+  , _cloudFrontDistributionCacheBehaviorCompress :: Maybe (Val Bool')+  , _cloudFrontDistributionCacheBehaviorDefaultTTL :: Maybe (Val Integer')+  , _cloudFrontDistributionCacheBehaviorForwardedValues :: CloudFrontDistributionForwardedValues+  , _cloudFrontDistributionCacheBehaviorMaxTTL :: Maybe (Val Integer')+  , _cloudFrontDistributionCacheBehaviorMinTTL :: Maybe (Val Integer')+  , _cloudFrontDistributionCacheBehaviorPathPattern :: Val Text+  , _cloudFrontDistributionCacheBehaviorSmoothStreaming :: Maybe (Val Bool')+  , _cloudFrontDistributionCacheBehaviorTargetOriginId :: Val Text+  , _cloudFrontDistributionCacheBehaviorTrustedSigners :: Maybe [Val Text]+  , _cloudFrontDistributionCacheBehaviorViewerProtocolPolicy :: Val Text+  } deriving (Show, Generic)++instance ToJSON CloudFrontDistributionCacheBehavior where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++instance FromJSON CloudFrontDistributionCacheBehavior where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++-- | Constructor for 'CloudFrontDistributionCacheBehavior' containing required+-- | fields as arguments.+cloudFrontDistributionCacheBehavior+  :: CloudFrontDistributionForwardedValues -- ^ 'cfdcbForwardedValues'+  -> Val Text -- ^ 'cfdcbPathPattern'+  -> Val Text -- ^ 'cfdcbTargetOriginId'+  -> Val Text -- ^ 'cfdcbViewerProtocolPolicy'+  -> CloudFrontDistributionCacheBehavior+cloudFrontDistributionCacheBehavior forwardedValuesarg pathPatternarg targetOriginIdarg viewerProtocolPolicyarg =+  CloudFrontDistributionCacheBehavior+  { _cloudFrontDistributionCacheBehaviorAllowedMethods = Nothing+  , _cloudFrontDistributionCacheBehaviorCachedMethods = Nothing+  , _cloudFrontDistributionCacheBehaviorCompress = Nothing+  , _cloudFrontDistributionCacheBehaviorDefaultTTL = Nothing+  , _cloudFrontDistributionCacheBehaviorForwardedValues = forwardedValuesarg+  , _cloudFrontDistributionCacheBehaviorMaxTTL = Nothing+  , _cloudFrontDistributionCacheBehaviorMinTTL = Nothing+  , _cloudFrontDistributionCacheBehaviorPathPattern = pathPatternarg+  , _cloudFrontDistributionCacheBehaviorSmoothStreaming = Nothing+  , _cloudFrontDistributionCacheBehaviorTargetOriginId = targetOriginIdarg+  , _cloudFrontDistributionCacheBehaviorTrustedSigners = Nothing+  , _cloudFrontDistributionCacheBehaviorViewerProtocolPolicy = viewerProtocolPolicyarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachebehavior.html#cfn-cloudfront-cachebehavior-allowedmethods+cfdcbAllowedMethods :: Lens' CloudFrontDistributionCacheBehavior (Maybe [Val Text])+cfdcbAllowedMethods = lens _cloudFrontDistributionCacheBehaviorAllowedMethods (\s a -> s { _cloudFrontDistributionCacheBehaviorAllowedMethods = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachebehavior.html#cfn-cloudfront-cachebehavior-cachedmethods+cfdcbCachedMethods :: Lens' CloudFrontDistributionCacheBehavior (Maybe [Val Text])+cfdcbCachedMethods = lens _cloudFrontDistributionCacheBehaviorCachedMethods (\s a -> s { _cloudFrontDistributionCacheBehaviorCachedMethods = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachebehavior.html#cfn-cloudfront-cachebehavior-compress+cfdcbCompress :: Lens' CloudFrontDistributionCacheBehavior (Maybe (Val Bool'))+cfdcbCompress = lens _cloudFrontDistributionCacheBehaviorCompress (\s a -> s { _cloudFrontDistributionCacheBehaviorCompress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachebehavior.html#cfn-cloudfront-cachebehavior-defaultttl+cfdcbDefaultTTL :: Lens' CloudFrontDistributionCacheBehavior (Maybe (Val Integer'))+cfdcbDefaultTTL = lens _cloudFrontDistributionCacheBehaviorDefaultTTL (\s a -> s { _cloudFrontDistributionCacheBehaviorDefaultTTL = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachebehavior.html#cfn-cloudfront-cachebehavior-forwardedvalues+cfdcbForwardedValues :: Lens' CloudFrontDistributionCacheBehavior CloudFrontDistributionForwardedValues+cfdcbForwardedValues = lens _cloudFrontDistributionCacheBehaviorForwardedValues (\s a -> s { _cloudFrontDistributionCacheBehaviorForwardedValues = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachebehavior.html#cfn-cloudfront-cachebehavior-maxttl+cfdcbMaxTTL :: Lens' CloudFrontDistributionCacheBehavior (Maybe (Val Integer'))+cfdcbMaxTTL = lens _cloudFrontDistributionCacheBehaviorMaxTTL (\s a -> s { _cloudFrontDistributionCacheBehaviorMaxTTL = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachebehavior.html#cfn-cloudfront-cachebehavior-minttl+cfdcbMinTTL :: Lens' CloudFrontDistributionCacheBehavior (Maybe (Val Integer'))+cfdcbMinTTL = lens _cloudFrontDistributionCacheBehaviorMinTTL (\s a -> s { _cloudFrontDistributionCacheBehaviorMinTTL = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachebehavior.html#cfn-cloudfront-cachebehavior-pathpattern+cfdcbPathPattern :: Lens' CloudFrontDistributionCacheBehavior (Val Text)+cfdcbPathPattern = lens _cloudFrontDistributionCacheBehaviorPathPattern (\s a -> s { _cloudFrontDistributionCacheBehaviorPathPattern = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachebehavior.html#cfn-cloudfront-cachebehavior-smoothstreaming+cfdcbSmoothStreaming :: Lens' CloudFrontDistributionCacheBehavior (Maybe (Val Bool'))+cfdcbSmoothStreaming = lens _cloudFrontDistributionCacheBehaviorSmoothStreaming (\s a -> s { _cloudFrontDistributionCacheBehaviorSmoothStreaming = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachebehavior.html#cfn-cloudfront-cachebehavior-targetoriginid+cfdcbTargetOriginId :: Lens' CloudFrontDistributionCacheBehavior (Val Text)+cfdcbTargetOriginId = lens _cloudFrontDistributionCacheBehaviorTargetOriginId (\s a -> s { _cloudFrontDistributionCacheBehaviorTargetOriginId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachebehavior.html#cfn-cloudfront-cachebehavior-trustedsigners+cfdcbTrustedSigners :: Lens' CloudFrontDistributionCacheBehavior (Maybe [Val Text])+cfdcbTrustedSigners = lens _cloudFrontDistributionCacheBehaviorTrustedSigners (\s a -> s { _cloudFrontDistributionCacheBehaviorTrustedSigners = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cachebehavior.html#cfn-cloudfront-cachebehavior-viewerprotocolpolicy+cfdcbViewerProtocolPolicy :: Lens' CloudFrontDistributionCacheBehavior (Val Text)+cfdcbViewerProtocolPolicy = lens _cloudFrontDistributionCacheBehaviorViewerProtocolPolicy (\s a -> s { _cloudFrontDistributionCacheBehaviorViewerProtocolPolicy = a })
+ library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionCookies.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-forwardedvalues-cookies.html++module Stratosphere.ResourceProperties.CloudFrontDistributionCookies where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CloudFrontDistributionCookies. See+-- | 'cloudFrontDistributionCookies' for a more convenient constructor.+data CloudFrontDistributionCookies =+  CloudFrontDistributionCookies+  { _cloudFrontDistributionCookiesForward :: Val Text+  , _cloudFrontDistributionCookiesWhitelistedNames :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON CloudFrontDistributionCookies where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON CloudFrontDistributionCookies where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'CloudFrontDistributionCookies' containing required+-- | fields as arguments.+cloudFrontDistributionCookies+  :: Val Text -- ^ 'cfdcForward'+  -> CloudFrontDistributionCookies+cloudFrontDistributionCookies forwardarg =+  CloudFrontDistributionCookies+  { _cloudFrontDistributionCookiesForward = forwardarg+  , _cloudFrontDistributionCookiesWhitelistedNames = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-forwardedvalues-cookies.html#cfn-cloudfront-forwardedvalues-cookies-forward+cfdcForward :: Lens' CloudFrontDistributionCookies (Val Text)+cfdcForward = lens _cloudFrontDistributionCookiesForward (\s a -> s { _cloudFrontDistributionCookiesForward = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-forwardedvalues-cookies.html#cfn-cloudfront-forwardedvalues-cookies-whitelistednames+cfdcWhitelistedNames :: Lens' CloudFrontDistributionCookies (Maybe [Val Text])+cfdcWhitelistedNames = lens _cloudFrontDistributionCookiesWhitelistedNames (\s a -> s { _cloudFrontDistributionCookiesWhitelistedNames = a })
+ library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionCustomErrorResponse.hs view
@@ -0,0 +1,61 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-customerrorresponse.html++module Stratosphere.ResourceProperties.CloudFrontDistributionCustomErrorResponse where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CloudFrontDistributionCustomErrorResponse.+-- | See 'cloudFrontDistributionCustomErrorResponse' for a more convenient+-- | constructor.+data CloudFrontDistributionCustomErrorResponse =+  CloudFrontDistributionCustomErrorResponse+  { _cloudFrontDistributionCustomErrorResponseErrorCachingMinTTL :: Maybe (Val Integer')+  , _cloudFrontDistributionCustomErrorResponseErrorCode :: Val Integer'+  , _cloudFrontDistributionCustomErrorResponseResponseCode :: Maybe (Val Integer')+  , _cloudFrontDistributionCustomErrorResponseResponsePagePath :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CloudFrontDistributionCustomErrorResponse where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }++instance FromJSON CloudFrontDistributionCustomErrorResponse where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }++-- | Constructor for 'CloudFrontDistributionCustomErrorResponse' containing+-- | required fields as arguments.+cloudFrontDistributionCustomErrorResponse+  :: Val Integer' -- ^ 'cfdcerErrorCode'+  -> CloudFrontDistributionCustomErrorResponse+cloudFrontDistributionCustomErrorResponse errorCodearg =+  CloudFrontDistributionCustomErrorResponse+  { _cloudFrontDistributionCustomErrorResponseErrorCachingMinTTL = Nothing+  , _cloudFrontDistributionCustomErrorResponseErrorCode = errorCodearg+  , _cloudFrontDistributionCustomErrorResponseResponseCode = Nothing+  , _cloudFrontDistributionCustomErrorResponseResponsePagePath = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-customerrorresponse.html#cfn-cloudfront-distributionconfig-customerrorresponse-errorcachingminttl+cfdcerErrorCachingMinTTL :: Lens' CloudFrontDistributionCustomErrorResponse (Maybe (Val Integer'))+cfdcerErrorCachingMinTTL = lens _cloudFrontDistributionCustomErrorResponseErrorCachingMinTTL (\s a -> s { _cloudFrontDistributionCustomErrorResponseErrorCachingMinTTL = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-customerrorresponse.html#cfn-cloudfront-distributionconfig-customerrorresponse-errorcode+cfdcerErrorCode :: Lens' CloudFrontDistributionCustomErrorResponse (Val Integer')+cfdcerErrorCode = lens _cloudFrontDistributionCustomErrorResponseErrorCode (\s a -> s { _cloudFrontDistributionCustomErrorResponseErrorCode = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-customerrorresponse.html#cfn-cloudfront-distributionconfig-customerrorresponse-responsecode+cfdcerResponseCode :: Lens' CloudFrontDistributionCustomErrorResponse (Maybe (Val Integer'))+cfdcerResponseCode = lens _cloudFrontDistributionCustomErrorResponseResponseCode (\s a -> s { _cloudFrontDistributionCustomErrorResponseResponseCode = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-customerrorresponse.html#cfn-cloudfront-distributionconfig-customerrorresponse-responsepagepath+cfdcerResponsePagePath :: Lens' CloudFrontDistributionCustomErrorResponse (Maybe (Val Text))+cfdcerResponsePagePath = lens _cloudFrontDistributionCustomErrorResponseResponsePagePath (\s a -> s { _cloudFrontDistributionCustomErrorResponseResponsePagePath = a })
+ library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionCustomOriginConfig.hs view
@@ -0,0 +1,61 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-customorigin.html++module Stratosphere.ResourceProperties.CloudFrontDistributionCustomOriginConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CloudFrontDistributionCustomOriginConfig.+-- | See 'cloudFrontDistributionCustomOriginConfig' for a more convenient+-- | constructor.+data CloudFrontDistributionCustomOriginConfig =+  CloudFrontDistributionCustomOriginConfig+  { _cloudFrontDistributionCustomOriginConfigHTTPPort :: Maybe (Val Integer')+  , _cloudFrontDistributionCustomOriginConfigHTTPSPort :: Maybe (Val Integer')+  , _cloudFrontDistributionCustomOriginConfigOriginProtocolPolicy :: Val Text+  , _cloudFrontDistributionCustomOriginConfigOriginSSLProtocols :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON CloudFrontDistributionCustomOriginConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++instance FromJSON CloudFrontDistributionCustomOriginConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++-- | Constructor for 'CloudFrontDistributionCustomOriginConfig' containing+-- | required fields as arguments.+cloudFrontDistributionCustomOriginConfig+  :: Val Text -- ^ 'cfdcocOriginProtocolPolicy'+  -> CloudFrontDistributionCustomOriginConfig+cloudFrontDistributionCustomOriginConfig originProtocolPolicyarg =+  CloudFrontDistributionCustomOriginConfig+  { _cloudFrontDistributionCustomOriginConfigHTTPPort = Nothing+  , _cloudFrontDistributionCustomOriginConfigHTTPSPort = Nothing+  , _cloudFrontDistributionCustomOriginConfigOriginProtocolPolicy = originProtocolPolicyarg+  , _cloudFrontDistributionCustomOriginConfigOriginSSLProtocols = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-customorigin.html#cfn-cloudfront-customorigin-httpport+cfdcocHTTPPort :: Lens' CloudFrontDistributionCustomOriginConfig (Maybe (Val Integer'))+cfdcocHTTPPort = lens _cloudFrontDistributionCustomOriginConfigHTTPPort (\s a -> s { _cloudFrontDistributionCustomOriginConfigHTTPPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-customorigin.html#cfn-cloudfront-customorigin-httpsport+cfdcocHTTPSPort :: Lens' CloudFrontDistributionCustomOriginConfig (Maybe (Val Integer'))+cfdcocHTTPSPort = lens _cloudFrontDistributionCustomOriginConfigHTTPSPort (\s a -> s { _cloudFrontDistributionCustomOriginConfigHTTPSPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-customorigin.html#cfn-cloudfront-customorigin-originprotocolpolicy+cfdcocOriginProtocolPolicy :: Lens' CloudFrontDistributionCustomOriginConfig (Val Text)+cfdcocOriginProtocolPolicy = lens _cloudFrontDistributionCustomOriginConfigOriginProtocolPolicy (\s a -> s { _cloudFrontDistributionCustomOriginConfigOriginProtocolPolicy = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-customorigin.html#cfn-cloudfront-customorigin-originsslprotocols+cfdcocOriginSSLProtocols :: Lens' CloudFrontDistributionCustomOriginConfig (Maybe [Val Text])+cfdcocOriginSSLProtocols = lens _cloudFrontDistributionCustomOriginConfigOriginSSLProtocols (\s a -> s { _cloudFrontDistributionCustomOriginConfigOriginSSLProtocols = a })
+ library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionDefaultCacheBehavior.hs view
@@ -0,0 +1,105 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-defaultcachebehavior.html++module Stratosphere.ResourceProperties.CloudFrontDistributionDefaultCacheBehavior where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CloudFrontDistributionForwardedValues++-- | Full data type definition for CloudFrontDistributionDefaultCacheBehavior.+-- | See 'cloudFrontDistributionDefaultCacheBehavior' for a more convenient+-- | constructor.+data CloudFrontDistributionDefaultCacheBehavior =+  CloudFrontDistributionDefaultCacheBehavior+  { _cloudFrontDistributionDefaultCacheBehaviorAllowedMethods :: Maybe [Val Text]+  , _cloudFrontDistributionDefaultCacheBehaviorCachedMethods :: Maybe [Val Text]+  , _cloudFrontDistributionDefaultCacheBehaviorCompress :: Maybe (Val Bool')+  , _cloudFrontDistributionDefaultCacheBehaviorDefaultTTL :: Maybe (Val Integer')+  , _cloudFrontDistributionDefaultCacheBehaviorForwardedValues :: CloudFrontDistributionForwardedValues+  , _cloudFrontDistributionDefaultCacheBehaviorMaxTTL :: Maybe (Val Integer')+  , _cloudFrontDistributionDefaultCacheBehaviorMinTTL :: Maybe (Val Integer')+  , _cloudFrontDistributionDefaultCacheBehaviorSmoothStreaming :: Maybe (Val Bool')+  , _cloudFrontDistributionDefaultCacheBehaviorTargetOriginId :: Val Text+  , _cloudFrontDistributionDefaultCacheBehaviorTrustedSigners :: Maybe [Val Text]+  , _cloudFrontDistributionDefaultCacheBehaviorViewerProtocolPolicy :: Val Text+  } deriving (Show, Generic)++instance ToJSON CloudFrontDistributionDefaultCacheBehavior where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 43, omitNothingFields = True }++instance FromJSON CloudFrontDistributionDefaultCacheBehavior where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 43, omitNothingFields = True }++-- | Constructor for 'CloudFrontDistributionDefaultCacheBehavior' containing+-- | required fields as arguments.+cloudFrontDistributionDefaultCacheBehavior+  :: CloudFrontDistributionForwardedValues -- ^ 'cfddcbForwardedValues'+  -> Val Text -- ^ 'cfddcbTargetOriginId'+  -> Val Text -- ^ 'cfddcbViewerProtocolPolicy'+  -> CloudFrontDistributionDefaultCacheBehavior+cloudFrontDistributionDefaultCacheBehavior forwardedValuesarg targetOriginIdarg viewerProtocolPolicyarg =+  CloudFrontDistributionDefaultCacheBehavior+  { _cloudFrontDistributionDefaultCacheBehaviorAllowedMethods = Nothing+  , _cloudFrontDistributionDefaultCacheBehaviorCachedMethods = Nothing+  , _cloudFrontDistributionDefaultCacheBehaviorCompress = Nothing+  , _cloudFrontDistributionDefaultCacheBehaviorDefaultTTL = Nothing+  , _cloudFrontDistributionDefaultCacheBehaviorForwardedValues = forwardedValuesarg+  , _cloudFrontDistributionDefaultCacheBehaviorMaxTTL = Nothing+  , _cloudFrontDistributionDefaultCacheBehaviorMinTTL = Nothing+  , _cloudFrontDistributionDefaultCacheBehaviorSmoothStreaming = Nothing+  , _cloudFrontDistributionDefaultCacheBehaviorTargetOriginId = targetOriginIdarg+  , _cloudFrontDistributionDefaultCacheBehaviorTrustedSigners = Nothing+  , _cloudFrontDistributionDefaultCacheBehaviorViewerProtocolPolicy = viewerProtocolPolicyarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-defaultcachebehavior.html#cfn-cloudfront-defaultcachebehavior-allowedmethods+cfddcbAllowedMethods :: Lens' CloudFrontDistributionDefaultCacheBehavior (Maybe [Val Text])+cfddcbAllowedMethods = lens _cloudFrontDistributionDefaultCacheBehaviorAllowedMethods (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorAllowedMethods = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-defaultcachebehavior.html#cfn-cloudfront-defaultcachebehavior-cachedmethods+cfddcbCachedMethods :: Lens' CloudFrontDistributionDefaultCacheBehavior (Maybe [Val Text])+cfddcbCachedMethods = lens _cloudFrontDistributionDefaultCacheBehaviorCachedMethods (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorCachedMethods = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-defaultcachebehavior.html#cfn-cloudfront-defaultcachebehavior-compress+cfddcbCompress :: Lens' CloudFrontDistributionDefaultCacheBehavior (Maybe (Val Bool'))+cfddcbCompress = lens _cloudFrontDistributionDefaultCacheBehaviorCompress (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorCompress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-defaultcachebehavior.html#cfn-cloudfront-defaultcachebehavior-defaultttl+cfddcbDefaultTTL :: Lens' CloudFrontDistributionDefaultCacheBehavior (Maybe (Val Integer'))+cfddcbDefaultTTL = lens _cloudFrontDistributionDefaultCacheBehaviorDefaultTTL (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorDefaultTTL = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-defaultcachebehavior.html#cfn-cloudfront-defaultcachebehavior-forwardedvalues+cfddcbForwardedValues :: Lens' CloudFrontDistributionDefaultCacheBehavior CloudFrontDistributionForwardedValues+cfddcbForwardedValues = lens _cloudFrontDistributionDefaultCacheBehaviorForwardedValues (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorForwardedValues = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-defaultcachebehavior.html#cfn-cloudfront-defaultcachebehavior-maxttl+cfddcbMaxTTL :: Lens' CloudFrontDistributionDefaultCacheBehavior (Maybe (Val Integer'))+cfddcbMaxTTL = lens _cloudFrontDistributionDefaultCacheBehaviorMaxTTL (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorMaxTTL = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-defaultcachebehavior.html#cfn-cloudfront-defaultcachebehavior-minttl+cfddcbMinTTL :: Lens' CloudFrontDistributionDefaultCacheBehavior (Maybe (Val Integer'))+cfddcbMinTTL = lens _cloudFrontDistributionDefaultCacheBehaviorMinTTL (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorMinTTL = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-defaultcachebehavior.html#cfn-cloudfront-defaultcachebehavior-smoothstreaming+cfddcbSmoothStreaming :: Lens' CloudFrontDistributionDefaultCacheBehavior (Maybe (Val Bool'))+cfddcbSmoothStreaming = lens _cloudFrontDistributionDefaultCacheBehaviorSmoothStreaming (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorSmoothStreaming = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-defaultcachebehavior.html#cfn-cloudfront-defaultcachebehavior-targetoriginid+cfddcbTargetOriginId :: Lens' CloudFrontDistributionDefaultCacheBehavior (Val Text)+cfddcbTargetOriginId = lens _cloudFrontDistributionDefaultCacheBehaviorTargetOriginId (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorTargetOriginId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-defaultcachebehavior.html#cfn-cloudfront-defaultcachebehavior-trustedsigners+cfddcbTrustedSigners :: Lens' CloudFrontDistributionDefaultCacheBehavior (Maybe [Val Text])+cfddcbTrustedSigners = lens _cloudFrontDistributionDefaultCacheBehaviorTrustedSigners (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorTrustedSigners = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-defaultcachebehavior.html#cfn-cloudfront-defaultcachebehavior-viewerprotocolpolicy+cfddcbViewerProtocolPolicy :: Lens' CloudFrontDistributionDefaultCacheBehavior (Val Text)+cfddcbViewerProtocolPolicy = lens _cloudFrontDistributionDefaultCacheBehaviorViewerProtocolPolicy (\s a -> s { _cloudFrontDistributionDefaultCacheBehaviorViewerProtocolPolicy = a })
+ library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionDistributionConfig.hs view
@@ -0,0 +1,129 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig.html++module Stratosphere.ResourceProperties.CloudFrontDistributionDistributionConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CloudFrontDistributionCacheBehavior+import Stratosphere.ResourceProperties.CloudFrontDistributionCustomErrorResponse+import Stratosphere.ResourceProperties.CloudFrontDistributionDefaultCacheBehavior+import Stratosphere.ResourceProperties.CloudFrontDistributionLogging+import Stratosphere.ResourceProperties.CloudFrontDistributionOrigin+import Stratosphere.ResourceProperties.CloudFrontDistributionRestrictions+import Stratosphere.ResourceProperties.CloudFrontDistributionViewerCertificate++-- | Full data type definition for CloudFrontDistributionDistributionConfig.+-- | See 'cloudFrontDistributionDistributionConfig' for a more convenient+-- | constructor.+data CloudFrontDistributionDistributionConfig =+  CloudFrontDistributionDistributionConfig+  { _cloudFrontDistributionDistributionConfigAliases :: Maybe [Val Text]+  , _cloudFrontDistributionDistributionConfigCacheBehaviors :: Maybe [CloudFrontDistributionCacheBehavior]+  , _cloudFrontDistributionDistributionConfigComment :: Maybe (Val Text)+  , _cloudFrontDistributionDistributionConfigCustomErrorResponses :: Maybe [CloudFrontDistributionCustomErrorResponse]+  , _cloudFrontDistributionDistributionConfigDefaultCacheBehavior :: CloudFrontDistributionDefaultCacheBehavior+  , _cloudFrontDistributionDistributionConfigDefaultRootObject :: Maybe (Val Text)+  , _cloudFrontDistributionDistributionConfigEnabled :: Val Bool'+  , _cloudFrontDistributionDistributionConfigHttpVersion :: Maybe (Val Text)+  , _cloudFrontDistributionDistributionConfigLogging :: Maybe CloudFrontDistributionLogging+  , _cloudFrontDistributionDistributionConfigOrigins :: [CloudFrontDistributionOrigin]+  , _cloudFrontDistributionDistributionConfigPriceClass :: Maybe (Val Text)+  , _cloudFrontDistributionDistributionConfigRestrictions :: Maybe CloudFrontDistributionRestrictions+  , _cloudFrontDistributionDistributionConfigViewerCertificate :: Maybe CloudFrontDistributionViewerCertificate+  , _cloudFrontDistributionDistributionConfigWebACLId :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CloudFrontDistributionDistributionConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++instance FromJSON CloudFrontDistributionDistributionConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++-- | Constructor for 'CloudFrontDistributionDistributionConfig' containing+-- | required fields as arguments.+cloudFrontDistributionDistributionConfig+  :: CloudFrontDistributionDefaultCacheBehavior -- ^ 'cfddcDefaultCacheBehavior'+  -> Val Bool' -- ^ 'cfddcEnabled'+  -> [CloudFrontDistributionOrigin] -- ^ 'cfddcOrigins'+  -> CloudFrontDistributionDistributionConfig+cloudFrontDistributionDistributionConfig defaultCacheBehaviorarg enabledarg originsarg =+  CloudFrontDistributionDistributionConfig+  { _cloudFrontDistributionDistributionConfigAliases = Nothing+  , _cloudFrontDistributionDistributionConfigCacheBehaviors = Nothing+  , _cloudFrontDistributionDistributionConfigComment = Nothing+  , _cloudFrontDistributionDistributionConfigCustomErrorResponses = Nothing+  , _cloudFrontDistributionDistributionConfigDefaultCacheBehavior = defaultCacheBehaviorarg+  , _cloudFrontDistributionDistributionConfigDefaultRootObject = Nothing+  , _cloudFrontDistributionDistributionConfigEnabled = enabledarg+  , _cloudFrontDistributionDistributionConfigHttpVersion = Nothing+  , _cloudFrontDistributionDistributionConfigLogging = Nothing+  , _cloudFrontDistributionDistributionConfigOrigins = originsarg+  , _cloudFrontDistributionDistributionConfigPriceClass = Nothing+  , _cloudFrontDistributionDistributionConfigRestrictions = Nothing+  , _cloudFrontDistributionDistributionConfigViewerCertificate = Nothing+  , _cloudFrontDistributionDistributionConfigWebACLId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig.html#cfn-cloudfront-distributionconfig-aliases+cfddcAliases :: Lens' CloudFrontDistributionDistributionConfig (Maybe [Val Text])+cfddcAliases = lens _cloudFrontDistributionDistributionConfigAliases (\s a -> s { _cloudFrontDistributionDistributionConfigAliases = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig.html#cfn-cloudfront-distributionconfig-cachebehaviors+cfddcCacheBehaviors :: Lens' CloudFrontDistributionDistributionConfig (Maybe [CloudFrontDistributionCacheBehavior])+cfddcCacheBehaviors = lens _cloudFrontDistributionDistributionConfigCacheBehaviors (\s a -> s { _cloudFrontDistributionDistributionConfigCacheBehaviors = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig.html#cfn-cloudfront-distributionconfig-comment+cfddcComment :: Lens' CloudFrontDistributionDistributionConfig (Maybe (Val Text))+cfddcComment = lens _cloudFrontDistributionDistributionConfigComment (\s a -> s { _cloudFrontDistributionDistributionConfigComment = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig.html#cfn-cloudfront-distributionconfig-customerrorresponses+cfddcCustomErrorResponses :: Lens' CloudFrontDistributionDistributionConfig (Maybe [CloudFrontDistributionCustomErrorResponse])+cfddcCustomErrorResponses = lens _cloudFrontDistributionDistributionConfigCustomErrorResponses (\s a -> s { _cloudFrontDistributionDistributionConfigCustomErrorResponses = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig.html#cfn-cloudfront-distributionconfig-defaultcachebehavior+cfddcDefaultCacheBehavior :: Lens' CloudFrontDistributionDistributionConfig CloudFrontDistributionDefaultCacheBehavior+cfddcDefaultCacheBehavior = lens _cloudFrontDistributionDistributionConfigDefaultCacheBehavior (\s a -> s { _cloudFrontDistributionDistributionConfigDefaultCacheBehavior = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig.html#cfn-cloudfront-distributionconfig-defaultrootobject+cfddcDefaultRootObject :: Lens' CloudFrontDistributionDistributionConfig (Maybe (Val Text))+cfddcDefaultRootObject = lens _cloudFrontDistributionDistributionConfigDefaultRootObject (\s a -> s { _cloudFrontDistributionDistributionConfigDefaultRootObject = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig.html#cfn-cloudfront-distributionconfig-enabled+cfddcEnabled :: Lens' CloudFrontDistributionDistributionConfig (Val Bool')+cfddcEnabled = lens _cloudFrontDistributionDistributionConfigEnabled (\s a -> s { _cloudFrontDistributionDistributionConfigEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig.html#cfn-cloudfront-distributionconfig-httpversion+cfddcHttpVersion :: Lens' CloudFrontDistributionDistributionConfig (Maybe (Val Text))+cfddcHttpVersion = lens _cloudFrontDistributionDistributionConfigHttpVersion (\s a -> s { _cloudFrontDistributionDistributionConfigHttpVersion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig.html#cfn-cloudfront-distributionconfig-logging+cfddcLogging :: Lens' CloudFrontDistributionDistributionConfig (Maybe CloudFrontDistributionLogging)+cfddcLogging = lens _cloudFrontDistributionDistributionConfigLogging (\s a -> s { _cloudFrontDistributionDistributionConfigLogging = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig.html#cfn-cloudfront-distributionconfig-origins+cfddcOrigins :: Lens' CloudFrontDistributionDistributionConfig [CloudFrontDistributionOrigin]+cfddcOrigins = lens _cloudFrontDistributionDistributionConfigOrigins (\s a -> s { _cloudFrontDistributionDistributionConfigOrigins = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig.html#cfn-cloudfront-distributionconfig-priceclass+cfddcPriceClass :: Lens' CloudFrontDistributionDistributionConfig (Maybe (Val Text))+cfddcPriceClass = lens _cloudFrontDistributionDistributionConfigPriceClass (\s a -> s { _cloudFrontDistributionDistributionConfigPriceClass = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig.html#cfn-cloudfront-distributionconfig-restrictions+cfddcRestrictions :: Lens' CloudFrontDistributionDistributionConfig (Maybe CloudFrontDistributionRestrictions)+cfddcRestrictions = lens _cloudFrontDistributionDistributionConfigRestrictions (\s a -> s { _cloudFrontDistributionDistributionConfigRestrictions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig.html#cfn-cloudfront-distributionconfig-viewercertificate+cfddcViewerCertificate :: Lens' CloudFrontDistributionDistributionConfig (Maybe CloudFrontDistributionViewerCertificate)+cfddcViewerCertificate = lens _cloudFrontDistributionDistributionConfigViewerCertificate (\s a -> s { _cloudFrontDistributionDistributionConfigViewerCertificate = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig.html#cfn-cloudfront-distributionconfig-webaclid+cfddcWebACLId :: Lens' CloudFrontDistributionDistributionConfig (Maybe (Val Text))+cfddcWebACLId = lens _cloudFrontDistributionDistributionConfigWebACLId (\s a -> s { _cloudFrontDistributionDistributionConfigWebACLId = a })
+ library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionForwardedValues.hs view
@@ -0,0 +1,61 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-forwardedvalues.html++module Stratosphere.ResourceProperties.CloudFrontDistributionForwardedValues where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CloudFrontDistributionCookies++-- | Full data type definition for CloudFrontDistributionForwardedValues. See+-- | 'cloudFrontDistributionForwardedValues' for a more convenient+-- | constructor.+data CloudFrontDistributionForwardedValues =+  CloudFrontDistributionForwardedValues+  { _cloudFrontDistributionForwardedValuesCookies :: Maybe CloudFrontDistributionCookies+  , _cloudFrontDistributionForwardedValuesHeaders :: Maybe [Val Text]+  , _cloudFrontDistributionForwardedValuesQueryString :: Val Bool'+  , _cloudFrontDistributionForwardedValuesQueryStringCacheKeys :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON CloudFrontDistributionForwardedValues where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++instance FromJSON CloudFrontDistributionForwardedValues where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++-- | Constructor for 'CloudFrontDistributionForwardedValues' containing+-- | required fields as arguments.+cloudFrontDistributionForwardedValues+  :: Val Bool' -- ^ 'cfdfvQueryString'+  -> CloudFrontDistributionForwardedValues+cloudFrontDistributionForwardedValues queryStringarg =+  CloudFrontDistributionForwardedValues+  { _cloudFrontDistributionForwardedValuesCookies = Nothing+  , _cloudFrontDistributionForwardedValuesHeaders = Nothing+  , _cloudFrontDistributionForwardedValuesQueryString = queryStringarg+  , _cloudFrontDistributionForwardedValuesQueryStringCacheKeys = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-forwardedvalues.html#cfn-cloudfront-forwardedvalues-cookies+cfdfvCookies :: Lens' CloudFrontDistributionForwardedValues (Maybe CloudFrontDistributionCookies)+cfdfvCookies = lens _cloudFrontDistributionForwardedValuesCookies (\s a -> s { _cloudFrontDistributionForwardedValuesCookies = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-forwardedvalues.html#cfn-cloudfront-forwardedvalues-headers+cfdfvHeaders :: Lens' CloudFrontDistributionForwardedValues (Maybe [Val Text])+cfdfvHeaders = lens _cloudFrontDistributionForwardedValuesHeaders (\s a -> s { _cloudFrontDistributionForwardedValuesHeaders = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-forwardedvalues.html#cfn-cloudfront-forwardedvalues-querystring+cfdfvQueryString :: Lens' CloudFrontDistributionForwardedValues (Val Bool')+cfdfvQueryString = lens _cloudFrontDistributionForwardedValuesQueryString (\s a -> s { _cloudFrontDistributionForwardedValuesQueryString = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-forwardedvalues.html#cfn-cloudfront-forwardedvalues-querystringcachekeys+cfdfvQueryStringCacheKeys :: Lens' CloudFrontDistributionForwardedValues (Maybe [Val Text])+cfdfvQueryStringCacheKeys = lens _cloudFrontDistributionForwardedValuesQueryStringCacheKeys (\s a -> s { _cloudFrontDistributionForwardedValuesQueryStringCacheKeys = a })
+ library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionGeoRestriction.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-restrictions-georestriction.html++module Stratosphere.ResourceProperties.CloudFrontDistributionGeoRestriction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CloudFrontDistributionGeoRestriction. See+-- | 'cloudFrontDistributionGeoRestriction' for a more convenient constructor.+data CloudFrontDistributionGeoRestriction =+  CloudFrontDistributionGeoRestriction+  { _cloudFrontDistributionGeoRestrictionLocations :: Maybe [Val Text]+  , _cloudFrontDistributionGeoRestrictionRestrictionType :: Val Text+  } deriving (Show, Generic)++instance ToJSON CloudFrontDistributionGeoRestriction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++instance FromJSON CloudFrontDistributionGeoRestriction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++-- | Constructor for 'CloudFrontDistributionGeoRestriction' containing+-- | required fields as arguments.+cloudFrontDistributionGeoRestriction+  :: Val Text -- ^ 'cfdgrRestrictionType'+  -> CloudFrontDistributionGeoRestriction+cloudFrontDistributionGeoRestriction restrictionTypearg =+  CloudFrontDistributionGeoRestriction+  { _cloudFrontDistributionGeoRestrictionLocations = Nothing+  , _cloudFrontDistributionGeoRestrictionRestrictionType = restrictionTypearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-restrictions-georestriction.html#cfn-cloudfront-distributionconfig-restrictions-georestriction-locations+cfdgrLocations :: Lens' CloudFrontDistributionGeoRestriction (Maybe [Val Text])+cfdgrLocations = lens _cloudFrontDistributionGeoRestrictionLocations (\s a -> s { _cloudFrontDistributionGeoRestrictionLocations = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-restrictions-georestriction.html#cfn-cloudfront-distributionconfig-restrictions-georestriction-restrictiontype+cfdgrRestrictionType :: Lens' CloudFrontDistributionGeoRestriction (Val Text)+cfdgrRestrictionType = lens _cloudFrontDistributionGeoRestrictionRestrictionType (\s a -> s { _cloudFrontDistributionGeoRestrictionRestrictionType = a })
+ library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionLogging.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-logging.html++module Stratosphere.ResourceProperties.CloudFrontDistributionLogging where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CloudFrontDistributionLogging. See+-- | 'cloudFrontDistributionLogging' for a more convenient constructor.+data CloudFrontDistributionLogging =+  CloudFrontDistributionLogging+  { _cloudFrontDistributionLoggingBucket :: Val Text+  , _cloudFrontDistributionLoggingIncludeCookies :: Maybe (Val Bool')+  , _cloudFrontDistributionLoggingPrefix :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CloudFrontDistributionLogging where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON CloudFrontDistributionLogging where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'CloudFrontDistributionLogging' containing required+-- | fields as arguments.+cloudFrontDistributionLogging+  :: Val Text -- ^ 'cfdlBucket'+  -> CloudFrontDistributionLogging+cloudFrontDistributionLogging bucketarg =+  CloudFrontDistributionLogging+  { _cloudFrontDistributionLoggingBucket = bucketarg+  , _cloudFrontDistributionLoggingIncludeCookies = Nothing+  , _cloudFrontDistributionLoggingPrefix = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-logging.html#cfn-cloudfront-logging-bucket+cfdlBucket :: Lens' CloudFrontDistributionLogging (Val Text)+cfdlBucket = lens _cloudFrontDistributionLoggingBucket (\s a -> s { _cloudFrontDistributionLoggingBucket = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-logging.html#cfn-cloudfront-logging-includecookies+cfdlIncludeCookies :: Lens' CloudFrontDistributionLogging (Maybe (Val Bool'))+cfdlIncludeCookies = lens _cloudFrontDistributionLoggingIncludeCookies (\s a -> s { _cloudFrontDistributionLoggingIncludeCookies = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-logging.html#cfn-cloudfront-logging-prefix+cfdlPrefix :: Lens' CloudFrontDistributionLogging (Maybe (Val Text))+cfdlPrefix = lens _cloudFrontDistributionLoggingPrefix (\s a -> s { _cloudFrontDistributionLoggingPrefix = a })
+ library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionOrigin.hs view
@@ -0,0 +1,75 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-origin.html++module Stratosphere.ResourceProperties.CloudFrontDistributionOrigin where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CloudFrontDistributionCustomOriginConfig+import Stratosphere.ResourceProperties.CloudFrontDistributionOriginCustomHeader+import Stratosphere.ResourceProperties.CloudFrontDistributionS3OriginConfig++-- | Full data type definition for CloudFrontDistributionOrigin. See+-- | 'cloudFrontDistributionOrigin' for a more convenient constructor.+data CloudFrontDistributionOrigin =+  CloudFrontDistributionOrigin+  { _cloudFrontDistributionOriginCustomOriginConfig :: Maybe CloudFrontDistributionCustomOriginConfig+  , _cloudFrontDistributionOriginDomainName :: Val Text+  , _cloudFrontDistributionOriginId :: Val Text+  , _cloudFrontDistributionOriginOriginCustomHeaders :: Maybe [CloudFrontDistributionOriginCustomHeader]+  , _cloudFrontDistributionOriginOriginPath :: Maybe (Val Text)+  , _cloudFrontDistributionOriginS3OriginConfig :: Maybe CloudFrontDistributionS3OriginConfig+  } deriving (Show, Generic)++instance ToJSON CloudFrontDistributionOrigin where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++instance FromJSON CloudFrontDistributionOrigin where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++-- | Constructor for 'CloudFrontDistributionOrigin' containing required fields+-- | as arguments.+cloudFrontDistributionOrigin+  :: Val Text -- ^ 'cfdoDomainName'+  -> Val Text -- ^ 'cfdoId'+  -> CloudFrontDistributionOrigin+cloudFrontDistributionOrigin domainNamearg idarg =+  CloudFrontDistributionOrigin+  { _cloudFrontDistributionOriginCustomOriginConfig = Nothing+  , _cloudFrontDistributionOriginDomainName = domainNamearg+  , _cloudFrontDistributionOriginId = idarg+  , _cloudFrontDistributionOriginOriginCustomHeaders = Nothing+  , _cloudFrontDistributionOriginOriginPath = Nothing+  , _cloudFrontDistributionOriginS3OriginConfig = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-origin.html#cfn-cloudfront-origin-customorigin+cfdoCustomOriginConfig :: Lens' CloudFrontDistributionOrigin (Maybe CloudFrontDistributionCustomOriginConfig)+cfdoCustomOriginConfig = lens _cloudFrontDistributionOriginCustomOriginConfig (\s a -> s { _cloudFrontDistributionOriginCustomOriginConfig = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-origin.html#cfn-cloudfront-origin-domainname+cfdoDomainName :: Lens' CloudFrontDistributionOrigin (Val Text)+cfdoDomainName = lens _cloudFrontDistributionOriginDomainName (\s a -> s { _cloudFrontDistributionOriginDomainName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-origin.html#cfn-cloudfront-origin-id+cfdoId :: Lens' CloudFrontDistributionOrigin (Val Text)+cfdoId = lens _cloudFrontDistributionOriginId (\s a -> s { _cloudFrontDistributionOriginId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-origin.html#cfn-cloudfront-origin-origincustomheaders+cfdoOriginCustomHeaders :: Lens' CloudFrontDistributionOrigin (Maybe [CloudFrontDistributionOriginCustomHeader])+cfdoOriginCustomHeaders = lens _cloudFrontDistributionOriginOriginCustomHeaders (\s a -> s { _cloudFrontDistributionOriginOriginCustomHeaders = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-origin.html#cfn-cloudfront-origin-originpath+cfdoOriginPath :: Lens' CloudFrontDistributionOrigin (Maybe (Val Text))+cfdoOriginPath = lens _cloudFrontDistributionOriginOriginPath (\s a -> s { _cloudFrontDistributionOriginOriginPath = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-origin.html#cfn-cloudfront-origin-s3origin+cfdoS3OriginConfig :: Lens' CloudFrontDistributionOrigin (Maybe CloudFrontDistributionS3OriginConfig)+cfdoS3OriginConfig = lens _cloudFrontDistributionOriginS3OriginConfig (\s a -> s { _cloudFrontDistributionOriginS3OriginConfig = a })
+ library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionOriginCustomHeader.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-origin-origincustomheader.html++module Stratosphere.ResourceProperties.CloudFrontDistributionOriginCustomHeader where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CloudFrontDistributionOriginCustomHeader.+-- | See 'cloudFrontDistributionOriginCustomHeader' for a more convenient+-- | constructor.+data CloudFrontDistributionOriginCustomHeader =+  CloudFrontDistributionOriginCustomHeader+  { _cloudFrontDistributionOriginCustomHeaderHeaderName :: Val Text+  , _cloudFrontDistributionOriginCustomHeaderHeaderValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON CloudFrontDistributionOriginCustomHeader where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++instance FromJSON CloudFrontDistributionOriginCustomHeader where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++-- | Constructor for 'CloudFrontDistributionOriginCustomHeader' containing+-- | required fields as arguments.+cloudFrontDistributionOriginCustomHeader+  :: Val Text -- ^ 'cfdochHeaderName'+  -> Val Text -- ^ 'cfdochHeaderValue'+  -> CloudFrontDistributionOriginCustomHeader+cloudFrontDistributionOriginCustomHeader headerNamearg headerValuearg =+  CloudFrontDistributionOriginCustomHeader+  { _cloudFrontDistributionOriginCustomHeaderHeaderName = headerNamearg+  , _cloudFrontDistributionOriginCustomHeaderHeaderValue = headerValuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-origin-origincustomheader.html#cfn-cloudfront-origin-origincustomheader-headername+cfdochHeaderName :: Lens' CloudFrontDistributionOriginCustomHeader (Val Text)+cfdochHeaderName = lens _cloudFrontDistributionOriginCustomHeaderHeaderName (\s a -> s { _cloudFrontDistributionOriginCustomHeaderHeaderName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-origin-origincustomheader.html#cfn-cloudfront-origin-origincustomheader-headervalue+cfdochHeaderValue :: Lens' CloudFrontDistributionOriginCustomHeader (Val Text)+cfdochHeaderValue = lens _cloudFrontDistributionOriginCustomHeaderHeaderValue (\s a -> s { _cloudFrontDistributionOriginCustomHeaderHeaderValue = a })
+ library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionRestrictions.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-restrictions.html++module Stratosphere.ResourceProperties.CloudFrontDistributionRestrictions where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CloudFrontDistributionGeoRestriction++-- | Full data type definition for CloudFrontDistributionRestrictions. See+-- | 'cloudFrontDistributionRestrictions' for a more convenient constructor.+data CloudFrontDistributionRestrictions =+  CloudFrontDistributionRestrictions+  { _cloudFrontDistributionRestrictionsGeoRestriction :: CloudFrontDistributionGeoRestriction+  } deriving (Show, Generic)++instance ToJSON CloudFrontDistributionRestrictions where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++instance FromJSON CloudFrontDistributionRestrictions where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++-- | Constructor for 'CloudFrontDistributionRestrictions' containing required+-- | fields as arguments.+cloudFrontDistributionRestrictions+  :: CloudFrontDistributionGeoRestriction -- ^ 'cfdrGeoRestriction'+  -> CloudFrontDistributionRestrictions+cloudFrontDistributionRestrictions geoRestrictionarg =+  CloudFrontDistributionRestrictions+  { _cloudFrontDistributionRestrictionsGeoRestriction = geoRestrictionarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-restrictions.html#cfn-cloudfront-distributionconfig-restrictions-georestriction+cfdrGeoRestriction :: Lens' CloudFrontDistributionRestrictions CloudFrontDistributionGeoRestriction+cfdrGeoRestriction = lens _cloudFrontDistributionRestrictionsGeoRestriction (\s a -> s { _cloudFrontDistributionRestrictionsGeoRestriction = a })
+ library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionS3OriginConfig.hs view
@@ -0,0 +1,41 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-s3origin.html++module Stratosphere.ResourceProperties.CloudFrontDistributionS3OriginConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CloudFrontDistributionS3OriginConfig. See+-- | 'cloudFrontDistributionS3OriginConfig' for a more convenient constructor.+data CloudFrontDistributionS3OriginConfig =+  CloudFrontDistributionS3OriginConfig+  { _cloudFrontDistributionS3OriginConfigOriginAccessIdentity :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CloudFrontDistributionS3OriginConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++instance FromJSON CloudFrontDistributionS3OriginConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++-- | Constructor for 'CloudFrontDistributionS3OriginConfig' containing+-- | required fields as arguments.+cloudFrontDistributionS3OriginConfig+  :: CloudFrontDistributionS3OriginConfig+cloudFrontDistributionS3OriginConfig  =+  CloudFrontDistributionS3OriginConfig+  { _cloudFrontDistributionS3OriginConfigOriginAccessIdentity = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-s3origin.html#cfn-cloudfront-s3origin-originaccessidentity+cfdsocOriginAccessIdentity :: Lens' CloudFrontDistributionS3OriginConfig (Maybe (Val Text))+cfdsocOriginAccessIdentity = lens _cloudFrontDistributionS3OriginConfigOriginAccessIdentity (\s a -> s { _cloudFrontDistributionS3OriginConfigOriginAccessIdentity = a })
+ library-gen/Stratosphere/ResourceProperties/CloudFrontDistributionViewerCertificate.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-viewercertificate.html++module Stratosphere.ResourceProperties.CloudFrontDistributionViewerCertificate where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CloudFrontDistributionViewerCertificate.+-- | See 'cloudFrontDistributionViewerCertificate' for a more convenient+-- | constructor.+data CloudFrontDistributionViewerCertificate =+  CloudFrontDistributionViewerCertificate+  { _cloudFrontDistributionViewerCertificateAcmCertificateArn :: Maybe (Val Text)+  , _cloudFrontDistributionViewerCertificateCloudFrontDefaultCertificate :: Maybe (Val Bool')+  , _cloudFrontDistributionViewerCertificateIamCertificateId :: Maybe (Val Text)+  , _cloudFrontDistributionViewerCertificateMinimumProtocolVersion :: Maybe (Val Text)+  , _cloudFrontDistributionViewerCertificateSslSupportMethod :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CloudFrontDistributionViewerCertificate where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 40, omitNothingFields = True }++instance FromJSON CloudFrontDistributionViewerCertificate where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 40, omitNothingFields = True }++-- | Constructor for 'CloudFrontDistributionViewerCertificate' containing+-- | required fields as arguments.+cloudFrontDistributionViewerCertificate+  :: CloudFrontDistributionViewerCertificate+cloudFrontDistributionViewerCertificate  =+  CloudFrontDistributionViewerCertificate+  { _cloudFrontDistributionViewerCertificateAcmCertificateArn = Nothing+  , _cloudFrontDistributionViewerCertificateCloudFrontDefaultCertificate = Nothing+  , _cloudFrontDistributionViewerCertificateIamCertificateId = Nothing+  , _cloudFrontDistributionViewerCertificateMinimumProtocolVersion = Nothing+  , _cloudFrontDistributionViewerCertificateSslSupportMethod = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-viewercertificate.html#cfn-cloudfront-distributionconfig-viewercertificate-acmcertificatearn+cfdvcAcmCertificateArn :: Lens' CloudFrontDistributionViewerCertificate (Maybe (Val Text))+cfdvcAcmCertificateArn = lens _cloudFrontDistributionViewerCertificateAcmCertificateArn (\s a -> s { _cloudFrontDistributionViewerCertificateAcmCertificateArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-viewercertificate.html#cfn-cloudfront-distributionconfig-viewercertificate-cloudfrontdefaultcertificate+cfdvcCloudFrontDefaultCertificate :: Lens' CloudFrontDistributionViewerCertificate (Maybe (Val Bool'))+cfdvcCloudFrontDefaultCertificate = lens _cloudFrontDistributionViewerCertificateCloudFrontDefaultCertificate (\s a -> s { _cloudFrontDistributionViewerCertificateCloudFrontDefaultCertificate = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-viewercertificate.html#cfn-cloudfront-distributionconfig-viewercertificate-iamcertificateid+cfdvcIamCertificateId :: Lens' CloudFrontDistributionViewerCertificate (Maybe (Val Text))+cfdvcIamCertificateId = lens _cloudFrontDistributionViewerCertificateIamCertificateId (\s a -> s { _cloudFrontDistributionViewerCertificateIamCertificateId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-viewercertificate.html#cfn-cloudfront-distributionconfig-viewercertificate-sslsupportmethod+cfdvcMinimumProtocolVersion :: Lens' CloudFrontDistributionViewerCertificate (Maybe (Val Text))+cfdvcMinimumProtocolVersion = lens _cloudFrontDistributionViewerCertificateMinimumProtocolVersion (\s a -> s { _cloudFrontDistributionViewerCertificateMinimumProtocolVersion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distributionconfig-viewercertificate.html#cfn-cloudfront-distributionconfig-viewercertificate-minimumprotocolversion+cfdvcSslSupportMethod :: Lens' CloudFrontDistributionViewerCertificate (Maybe (Val Text))+cfdvcSslSupportMethod = lens _cloudFrontDistributionViewerCertificateSslSupportMethod (\s a -> s { _cloudFrontDistributionViewerCertificateSslSupportMethod = a })
+ library-gen/Stratosphere/ResourceProperties/CloudWatchAlarmDimension.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-dimension.html++module Stratosphere.ResourceProperties.CloudWatchAlarmDimension where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CloudWatchAlarmDimension. See+-- | 'cloudWatchAlarmDimension' for a more convenient constructor.+data CloudWatchAlarmDimension =+  CloudWatchAlarmDimension+  { _cloudWatchAlarmDimensionName :: Val Text+  , _cloudWatchAlarmDimensionValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON CloudWatchAlarmDimension where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++instance FromJSON CloudWatchAlarmDimension where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++-- | Constructor for 'CloudWatchAlarmDimension' containing required fields as+-- | arguments.+cloudWatchAlarmDimension+  :: Val Text -- ^ 'cwadName'+  -> Val Text -- ^ 'cwadValue'+  -> CloudWatchAlarmDimension+cloudWatchAlarmDimension namearg valuearg =+  CloudWatchAlarmDimension+  { _cloudWatchAlarmDimensionName = namearg+  , _cloudWatchAlarmDimensionValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-dimension.html#cfn-cloudwatch-alarm-dimension-name+cwadName :: Lens' CloudWatchAlarmDimension (Val Text)+cwadName = lens _cloudWatchAlarmDimensionName (\s a -> s { _cloudWatchAlarmDimensionName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-dimension.html#cfn-cloudwatch-alarm-dimension-value+cwadValue :: Lens' CloudWatchAlarmDimension (Val Text)+cwadValue = lens _cloudWatchAlarmDimensionValue (\s a -> s { _cloudWatchAlarmDimensionValue = a })
+ library-gen/Stratosphere/ResourceProperties/CodeBuildProjectArtifacts.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html++module Stratosphere.ResourceProperties.CodeBuildProjectArtifacts where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodeBuildProjectArtifacts. See+-- | 'codeBuildProjectArtifacts' for a more convenient constructor.+data CodeBuildProjectArtifacts =+  CodeBuildProjectArtifacts+  { _codeBuildProjectArtifactsLocation :: Maybe (Val Text)+  , _codeBuildProjectArtifactsName :: Maybe (Val Text)+  , _codeBuildProjectArtifactsNamespaceType :: Maybe (Val Text)+  , _codeBuildProjectArtifactsPackaging :: Maybe (Val Text)+  , _codeBuildProjectArtifactsPath :: Maybe (Val Text)+  , _codeBuildProjectArtifactsType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CodeBuildProjectArtifacts where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++instance FromJSON CodeBuildProjectArtifacts where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++-- | Constructor for 'CodeBuildProjectArtifacts' containing required fields as+-- | arguments.+codeBuildProjectArtifacts+  :: CodeBuildProjectArtifacts+codeBuildProjectArtifacts  =+  CodeBuildProjectArtifacts+  { _codeBuildProjectArtifactsLocation = Nothing+  , _codeBuildProjectArtifactsName = Nothing+  , _codeBuildProjectArtifactsNamespaceType = Nothing+  , _codeBuildProjectArtifactsPackaging = Nothing+  , _codeBuildProjectArtifactsPath = Nothing+  , _codeBuildProjectArtifactsType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-location+cbpaLocation :: Lens' CodeBuildProjectArtifacts (Maybe (Val Text))+cbpaLocation = lens _codeBuildProjectArtifactsLocation (\s a -> s { _codeBuildProjectArtifactsLocation = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-name+cbpaName :: Lens' CodeBuildProjectArtifacts (Maybe (Val Text))+cbpaName = lens _codeBuildProjectArtifactsName (\s a -> s { _codeBuildProjectArtifactsName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-namespacetype+cbpaNamespaceType :: Lens' CodeBuildProjectArtifacts (Maybe (Val Text))+cbpaNamespaceType = lens _codeBuildProjectArtifactsNamespaceType (\s a -> s { _codeBuildProjectArtifactsNamespaceType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-packaging+cbpaPackaging :: Lens' CodeBuildProjectArtifacts (Maybe (Val Text))+cbpaPackaging = lens _codeBuildProjectArtifactsPackaging (\s a -> s { _codeBuildProjectArtifactsPackaging = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-path+cbpaPath :: Lens' CodeBuildProjectArtifacts (Maybe (Val Text))+cbpaPath = lens _codeBuildProjectArtifactsPath (\s a -> s { _codeBuildProjectArtifactsPath = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-artifacts.html#cfn-codebuild-project-artifacts-type+cbpaType :: Lens' CodeBuildProjectArtifacts (Maybe (Val Text))+cbpaType = lens _codeBuildProjectArtifactsType (\s a -> s { _codeBuildProjectArtifactsType = a })
+ library-gen/Stratosphere/ResourceProperties/CodeBuildProjectEnvironment.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html++module Stratosphere.ResourceProperties.CodeBuildProjectEnvironment where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CodeBuildProjectEnvironmentVariable++-- | Full data type definition for CodeBuildProjectEnvironment. See+-- | 'codeBuildProjectEnvironment' for a more convenient constructor.+data CodeBuildProjectEnvironment =+  CodeBuildProjectEnvironment+  { _codeBuildProjectEnvironmentComputeType :: Maybe (Val Text)+  , _codeBuildProjectEnvironmentEnvironmentVariables :: Maybe [CodeBuildProjectEnvironmentVariable]+  , _codeBuildProjectEnvironmentImage :: Maybe (Val Text)+  , _codeBuildProjectEnvironmentType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CodeBuildProjectEnvironment where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON CodeBuildProjectEnvironment where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'CodeBuildProjectEnvironment' containing required fields+-- | as arguments.+codeBuildProjectEnvironment+  :: CodeBuildProjectEnvironment+codeBuildProjectEnvironment  =+  CodeBuildProjectEnvironment+  { _codeBuildProjectEnvironmentComputeType = Nothing+  , _codeBuildProjectEnvironmentEnvironmentVariables = Nothing+  , _codeBuildProjectEnvironmentImage = Nothing+  , _codeBuildProjectEnvironmentType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-computetype+cbpeComputeType :: Lens' CodeBuildProjectEnvironment (Maybe (Val Text))+cbpeComputeType = lens _codeBuildProjectEnvironmentComputeType (\s a -> s { _codeBuildProjectEnvironmentComputeType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-environmentvariables+cbpeEnvironmentVariables :: Lens' CodeBuildProjectEnvironment (Maybe [CodeBuildProjectEnvironmentVariable])+cbpeEnvironmentVariables = lens _codeBuildProjectEnvironmentEnvironmentVariables (\s a -> s { _codeBuildProjectEnvironmentEnvironmentVariables = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-image+cbpeImage :: Lens' CodeBuildProjectEnvironment (Maybe (Val Text))+cbpeImage = lens _codeBuildProjectEnvironmentImage (\s a -> s { _codeBuildProjectEnvironmentImage = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environment.html#cfn-codebuild-project-environment-type+cbpeType :: Lens' CodeBuildProjectEnvironment (Maybe (Val Text))+cbpeType = lens _codeBuildProjectEnvironmentType (\s a -> s { _codeBuildProjectEnvironmentType = a })
+ library-gen/Stratosphere/ResourceProperties/CodeBuildProjectEnvironmentVariable.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html++module Stratosphere.ResourceProperties.CodeBuildProjectEnvironmentVariable where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodeBuildProjectEnvironmentVariable. See+-- | 'codeBuildProjectEnvironmentVariable' for a more convenient constructor.+data CodeBuildProjectEnvironmentVariable =+  CodeBuildProjectEnvironmentVariable+  { _codeBuildProjectEnvironmentVariableName :: Maybe (Val Text)+  , _codeBuildProjectEnvironmentVariableValue :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CodeBuildProjectEnvironmentVariable where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++instance FromJSON CodeBuildProjectEnvironmentVariable where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++-- | Constructor for 'CodeBuildProjectEnvironmentVariable' containing required+-- | fields as arguments.+codeBuildProjectEnvironmentVariable+  :: CodeBuildProjectEnvironmentVariable+codeBuildProjectEnvironmentVariable  =+  CodeBuildProjectEnvironmentVariable+  { _codeBuildProjectEnvironmentVariableName = Nothing+  , _codeBuildProjectEnvironmentVariableValue = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html#cfn-codebuild-project-environmentvariable-name+cbpevName :: Lens' CodeBuildProjectEnvironmentVariable (Maybe (Val Text))+cbpevName = lens _codeBuildProjectEnvironmentVariableName (\s a -> s { _codeBuildProjectEnvironmentVariableName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-environmentvariable.html#cfn-codebuild-project-environmentvariable-value+cbpevValue :: Lens' CodeBuildProjectEnvironmentVariable (Maybe (Val Text))+cbpevValue = lens _codeBuildProjectEnvironmentVariableValue (\s a -> s { _codeBuildProjectEnvironmentVariableValue = a })
+ library-gen/Stratosphere/ResourceProperties/CodeBuildProjectSource.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html++module Stratosphere.ResourceProperties.CodeBuildProjectSource where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CodeBuildProjectSourceAuth++-- | Full data type definition for CodeBuildProjectSource. See+-- | 'codeBuildProjectSource' for a more convenient constructor.+data CodeBuildProjectSource =+  CodeBuildProjectSource+  { _codeBuildProjectSourceAuth :: Maybe CodeBuildProjectSourceAuth+  , _codeBuildProjectSourceBuildSpec :: Maybe (Val Text)+  , _codeBuildProjectSourceLocation :: Maybe (Val Text)+  , _codeBuildProjectSourceType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CodeBuildProjectSource where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++instance FromJSON CodeBuildProjectSource where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++-- | Constructor for 'CodeBuildProjectSource' containing required fields as+-- | arguments.+codeBuildProjectSource+  :: CodeBuildProjectSource+codeBuildProjectSource  =+  CodeBuildProjectSource+  { _codeBuildProjectSourceAuth = Nothing+  , _codeBuildProjectSourceBuildSpec = Nothing+  , _codeBuildProjectSourceLocation = Nothing+  , _codeBuildProjectSourceType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-auth+cbpsAuth :: Lens' CodeBuildProjectSource (Maybe CodeBuildProjectSourceAuth)+cbpsAuth = lens _codeBuildProjectSourceAuth (\s a -> s { _codeBuildProjectSourceAuth = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-buildspec+cbpsBuildSpec :: Lens' CodeBuildProjectSource (Maybe (Val Text))+cbpsBuildSpec = lens _codeBuildProjectSourceBuildSpec (\s a -> s { _codeBuildProjectSourceBuildSpec = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-location+cbpsLocation :: Lens' CodeBuildProjectSource (Maybe (Val Text))+cbpsLocation = lens _codeBuildProjectSourceLocation (\s a -> s { _codeBuildProjectSourceLocation = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-type+cbpsType :: Lens' CodeBuildProjectSource (Maybe (Val Text))+cbpsType = lens _codeBuildProjectSourceType (\s a -> s { _codeBuildProjectSourceType = a })
+ library-gen/Stratosphere/ResourceProperties/CodeBuildProjectSourceAuth.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-sourceauth.html++module Stratosphere.ResourceProperties.CodeBuildProjectSourceAuth where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodeBuildProjectSourceAuth. See+-- | 'codeBuildProjectSourceAuth' for a more convenient constructor.+data CodeBuildProjectSourceAuth =+  CodeBuildProjectSourceAuth+  { _codeBuildProjectSourceAuthResource :: Maybe (Val Text)+  , _codeBuildProjectSourceAuthType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CodeBuildProjectSourceAuth where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON CodeBuildProjectSourceAuth where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'CodeBuildProjectSourceAuth' containing required fields+-- | as arguments.+codeBuildProjectSourceAuth+  :: CodeBuildProjectSourceAuth+codeBuildProjectSourceAuth  =+  CodeBuildProjectSourceAuth+  { _codeBuildProjectSourceAuthResource = Nothing+  , _codeBuildProjectSourceAuthType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-sourceauth.html#cfn-codebuild-project-sourceauth-resource+cbpsaResource :: Lens' CodeBuildProjectSourceAuth (Maybe (Val Text))+cbpsaResource = lens _codeBuildProjectSourceAuthResource (\s a -> s { _codeBuildProjectSourceAuthResource = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-sourceauth.html#cfn-codebuild-project-sourceauth-type+cbpsaType :: Lens' CodeBuildProjectSourceAuth (Maybe (Val Text))+cbpsaType = lens _codeBuildProjectSourceAuthType (\s a -> s { _codeBuildProjectSourceAuthType = a })
+ library-gen/Stratosphere/ResourceProperties/CodeCommitRepositoryRepositoryTrigger.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html++module Stratosphere.ResourceProperties.CodeCommitRepositoryRepositoryTrigger where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodeCommitRepositoryRepositoryTrigger. See+-- | 'codeCommitRepositoryRepositoryTrigger' for a more convenient+-- | constructor.+data CodeCommitRepositoryRepositoryTrigger =+  CodeCommitRepositoryRepositoryTrigger+  { _codeCommitRepositoryRepositoryTriggerBranches :: Maybe [Val Text]+  , _codeCommitRepositoryRepositoryTriggerCustomData :: Maybe (Val Text)+  , _codeCommitRepositoryRepositoryTriggerDestinationArn :: Maybe (Val Text)+  , _codeCommitRepositoryRepositoryTriggerEvents :: Maybe [Val Text]+  , _codeCommitRepositoryRepositoryTriggerName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CodeCommitRepositoryRepositoryTrigger where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++instance FromJSON CodeCommitRepositoryRepositoryTrigger where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++-- | Constructor for 'CodeCommitRepositoryRepositoryTrigger' containing+-- | required fields as arguments.+codeCommitRepositoryRepositoryTrigger+  :: CodeCommitRepositoryRepositoryTrigger+codeCommitRepositoryRepositoryTrigger  =+  CodeCommitRepositoryRepositoryTrigger+  { _codeCommitRepositoryRepositoryTriggerBranches = Nothing+  , _codeCommitRepositoryRepositoryTriggerCustomData = Nothing+  , _codeCommitRepositoryRepositoryTriggerDestinationArn = Nothing+  , _codeCommitRepositoryRepositoryTriggerEvents = Nothing+  , _codeCommitRepositoryRepositoryTriggerName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html#cfn-codecommit-repository-repositorytrigger-branches+ccrrtBranches :: Lens' CodeCommitRepositoryRepositoryTrigger (Maybe [Val Text])+ccrrtBranches = lens _codeCommitRepositoryRepositoryTriggerBranches (\s a -> s { _codeCommitRepositoryRepositoryTriggerBranches = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html#cfn-codecommit-repository-repositorytrigger-customdata+ccrrtCustomData :: Lens' CodeCommitRepositoryRepositoryTrigger (Maybe (Val Text))+ccrrtCustomData = lens _codeCommitRepositoryRepositoryTriggerCustomData (\s a -> s { _codeCommitRepositoryRepositoryTriggerCustomData = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html#cfn-codecommit-repository-repositorytrigger-destinationarn+ccrrtDestinationArn :: Lens' CodeCommitRepositoryRepositoryTrigger (Maybe (Val Text))+ccrrtDestinationArn = lens _codeCommitRepositoryRepositoryTriggerDestinationArn (\s a -> s { _codeCommitRepositoryRepositoryTriggerDestinationArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html#cfn-codecommit-repository-repositorytrigger-events+ccrrtEvents :: Lens' CodeCommitRepositoryRepositoryTrigger (Maybe [Val Text])+ccrrtEvents = lens _codeCommitRepositoryRepositoryTriggerEvents (\s a -> s { _codeCommitRepositoryRepositoryTriggerEvents = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-repositorytrigger.html#cfn-codecommit-repository-repositorytrigger-name+ccrrtName :: Lens' CodeCommitRepositoryRepositoryTrigger (Maybe (Val Text))+ccrrtName = lens _codeCommitRepositoryRepositoryTriggerName (\s a -> s { _codeCommitRepositoryRepositoryTriggerName = a })
+ library-gen/Stratosphere/ResourceProperties/CodeDeployDeploymentConfigMinimumHealthyHosts.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentconfig-minimumhealthyhosts.html++module Stratosphere.ResourceProperties.CodeDeployDeploymentConfigMinimumHealthyHosts where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | CodeDeployDeploymentConfigMinimumHealthyHosts. See+-- | 'codeDeployDeploymentConfigMinimumHealthyHosts' for a more convenient+-- | constructor.+data CodeDeployDeploymentConfigMinimumHealthyHosts =+  CodeDeployDeploymentConfigMinimumHealthyHosts+  { _codeDeployDeploymentConfigMinimumHealthyHostsType :: Maybe (Val Text)+  , _codeDeployDeploymentConfigMinimumHealthyHostsValue :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON CodeDeployDeploymentConfigMinimumHealthyHosts where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 46, omitNothingFields = True }++instance FromJSON CodeDeployDeploymentConfigMinimumHealthyHosts where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 46, omitNothingFields = True }++-- | Constructor for 'CodeDeployDeploymentConfigMinimumHealthyHosts'+-- | containing required fields as arguments.+codeDeployDeploymentConfigMinimumHealthyHosts+  :: CodeDeployDeploymentConfigMinimumHealthyHosts+codeDeployDeploymentConfigMinimumHealthyHosts  =+  CodeDeployDeploymentConfigMinimumHealthyHosts+  { _codeDeployDeploymentConfigMinimumHealthyHostsType = Nothing+  , _codeDeployDeploymentConfigMinimumHealthyHostsValue = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentconfig-minimumhealthyhosts.html#cfn-codedeploy-deploymentconfig-minimumhealthyhosts-type+cddcmhhType :: Lens' CodeDeployDeploymentConfigMinimumHealthyHosts (Maybe (Val Text))+cddcmhhType = lens _codeDeployDeploymentConfigMinimumHealthyHostsType (\s a -> s { _codeDeployDeploymentConfigMinimumHealthyHostsType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentconfig-minimumhealthyhosts.html#cfn-codedeploy-deploymentconfig-minimumhealthyhosts-value+cddcmhhValue :: Lens' CodeDeployDeploymentConfigMinimumHealthyHosts (Maybe (Val Integer'))+cddcmhhValue = lens _codeDeployDeploymentConfigMinimumHealthyHostsValue (\s a -> s { _codeDeployDeploymentConfigMinimumHealthyHostsValue = a })
+ library-gen/Stratosphere/ResourceProperties/CodeDeployDeploymentGroupDeployment.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html++module Stratosphere.ResourceProperties.CodeDeployDeploymentGroupDeployment where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupRevision++-- | Full data type definition for CodeDeployDeploymentGroupDeployment. See+-- | 'codeDeployDeploymentGroupDeployment' for a more convenient constructor.+data CodeDeployDeploymentGroupDeployment =+  CodeDeployDeploymentGroupDeployment+  { _codeDeployDeploymentGroupDeploymentDescription :: Maybe (Val Text)+  , _codeDeployDeploymentGroupDeploymentIgnoreApplicationStopFailures :: Maybe (Val Bool')+  , _codeDeployDeploymentGroupDeploymentRevision :: CodeDeployDeploymentGroupRevision+  } deriving (Show, Generic)++instance ToJSON CodeDeployDeploymentGroupDeployment where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++instance FromJSON CodeDeployDeploymentGroupDeployment where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++-- | Constructor for 'CodeDeployDeploymentGroupDeployment' containing required+-- | fields as arguments.+codeDeployDeploymentGroupDeployment+  :: CodeDeployDeploymentGroupRevision -- ^ 'cddgdRevision'+  -> CodeDeployDeploymentGroupDeployment+codeDeployDeploymentGroupDeployment revisionarg =+  CodeDeployDeploymentGroupDeployment+  { _codeDeployDeploymentGroupDeploymentDescription = Nothing+  , _codeDeployDeploymentGroupDeploymentIgnoreApplicationStopFailures = Nothing+  , _codeDeployDeploymentGroupDeploymentRevision = revisionarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html#cfn-properties-codedeploy-deploymentgroup-deployment-description+cddgdDescription :: Lens' CodeDeployDeploymentGroupDeployment (Maybe (Val Text))+cddgdDescription = lens _codeDeployDeploymentGroupDeploymentDescription (\s a -> s { _codeDeployDeploymentGroupDeploymentDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html#cfn-properties-codedeploy-deploymentgroup-deployment-ignoreapplicationstopfailures+cddgdIgnoreApplicationStopFailures :: Lens' CodeDeployDeploymentGroupDeployment (Maybe (Val Bool'))+cddgdIgnoreApplicationStopFailures = lens _codeDeployDeploymentGroupDeploymentIgnoreApplicationStopFailures (\s a -> s { _codeDeployDeploymentGroupDeploymentIgnoreApplicationStopFailures = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision+cddgdRevision :: Lens' CodeDeployDeploymentGroupDeployment CodeDeployDeploymentGroupRevision+cddgdRevision = lens _codeDeployDeploymentGroupDeploymentRevision (\s a -> s { _codeDeployDeploymentGroupDeploymentRevision = a })
+ library-gen/Stratosphere/ResourceProperties/CodeDeployDeploymentGroupEc2TagFilter.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilters.html++module Stratosphere.ResourceProperties.CodeDeployDeploymentGroupEc2TagFilter where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodeDeployDeploymentGroupEc2TagFilter. See+-- | 'codeDeployDeploymentGroupEc2TagFilter' for a more convenient+-- | constructor.+data CodeDeployDeploymentGroupEc2TagFilter =+  CodeDeployDeploymentGroupEc2TagFilter+  { _codeDeployDeploymentGroupEc2TagFilterKey :: Maybe (Val Text)+  , _codeDeployDeploymentGroupEc2TagFilterType :: Val Text+  , _codeDeployDeploymentGroupEc2TagFilterValue :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CodeDeployDeploymentGroupEc2TagFilter where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++instance FromJSON CodeDeployDeploymentGroupEc2TagFilter where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++-- | Constructor for 'CodeDeployDeploymentGroupEc2TagFilter' containing+-- | required fields as arguments.+codeDeployDeploymentGroupEc2TagFilter+  :: Val Text -- ^ 'cddgetfType'+  -> CodeDeployDeploymentGroupEc2TagFilter+codeDeployDeploymentGroupEc2TagFilter typearg =+  CodeDeployDeploymentGroupEc2TagFilter+  { _codeDeployDeploymentGroupEc2TagFilterKey = Nothing+  , _codeDeployDeploymentGroupEc2TagFilterType = typearg+  , _codeDeployDeploymentGroupEc2TagFilterValue = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilters.html#cfn-properties-codedeploy-deploymentgroup-ec2tagfilters-key+cddgetfKey :: Lens' CodeDeployDeploymentGroupEc2TagFilter (Maybe (Val Text))+cddgetfKey = lens _codeDeployDeploymentGroupEc2TagFilterKey (\s a -> s { _codeDeployDeploymentGroupEc2TagFilterKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilters.html#cfn-properties-codedeploy-deploymentgroup-ec2tagfilters-type+cddgetfType :: Lens' CodeDeployDeploymentGroupEc2TagFilter (Val Text)+cddgetfType = lens _codeDeployDeploymentGroupEc2TagFilterType (\s a -> s { _codeDeployDeploymentGroupEc2TagFilterType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-ec2tagfilters.html#cfn-properties-codedeploy-deploymentgroup-ec2tagfilters-value+cddgetfValue :: Lens' CodeDeployDeploymentGroupEc2TagFilter (Maybe (Val Text))+cddgetfValue = lens _codeDeployDeploymentGroupEc2TagFilterValue (\s a -> s { _codeDeployDeploymentGroupEc2TagFilterValue = a })
+ library-gen/Stratosphere/ResourceProperties/CodeDeployDeploymentGroupGitHubLocation.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-githublocation.html++module Stratosphere.ResourceProperties.CodeDeployDeploymentGroupGitHubLocation where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodeDeployDeploymentGroupGitHubLocation.+-- | See 'codeDeployDeploymentGroupGitHubLocation' for a more convenient+-- | constructor.+data CodeDeployDeploymentGroupGitHubLocation =+  CodeDeployDeploymentGroupGitHubLocation+  { _codeDeployDeploymentGroupGitHubLocationCommitId :: Val Text+  , _codeDeployDeploymentGroupGitHubLocationRepository :: Val Text+  } deriving (Show, Generic)++instance ToJSON CodeDeployDeploymentGroupGitHubLocation where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 40, omitNothingFields = True }++instance FromJSON CodeDeployDeploymentGroupGitHubLocation where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 40, omitNothingFields = True }++-- | Constructor for 'CodeDeployDeploymentGroupGitHubLocation' containing+-- | required fields as arguments.+codeDeployDeploymentGroupGitHubLocation+  :: Val Text -- ^ 'cddgghlCommitId'+  -> Val Text -- ^ 'cddgghlRepository'+  -> CodeDeployDeploymentGroupGitHubLocation+codeDeployDeploymentGroupGitHubLocation commitIdarg repositoryarg =+  CodeDeployDeploymentGroupGitHubLocation+  { _codeDeployDeploymentGroupGitHubLocationCommitId = commitIdarg+  , _codeDeployDeploymentGroupGitHubLocationRepository = repositoryarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-githublocation.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-githublocation-commitid+cddgghlCommitId :: Lens' CodeDeployDeploymentGroupGitHubLocation (Val Text)+cddgghlCommitId = lens _codeDeployDeploymentGroupGitHubLocationCommitId (\s a -> s { _codeDeployDeploymentGroupGitHubLocationCommitId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-githublocation.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-githublocation-repository+cddgghlRepository :: Lens' CodeDeployDeploymentGroupGitHubLocation (Val Text)+cddgghlRepository = lens _codeDeployDeploymentGroupGitHubLocationRepository (\s a -> s { _codeDeployDeploymentGroupGitHubLocationRepository = a })
+ library-gen/Stratosphere/ResourceProperties/CodeDeployDeploymentGroupOnPremisesInstanceTagFilter.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisesinstancetagfilters.html++module Stratosphere.ResourceProperties.CodeDeployDeploymentGroupOnPremisesInstanceTagFilter where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | CodeDeployDeploymentGroupOnPremisesInstanceTagFilter. See+-- | 'codeDeployDeploymentGroupOnPremisesInstanceTagFilter' for a more+-- | convenient constructor.+data CodeDeployDeploymentGroupOnPremisesInstanceTagFilter =+  CodeDeployDeploymentGroupOnPremisesInstanceTagFilter+  { _codeDeployDeploymentGroupOnPremisesInstanceTagFilterKey :: Maybe (Val Text)+  , _codeDeployDeploymentGroupOnPremisesInstanceTagFilterType :: Maybe (Val Text)+  , _codeDeployDeploymentGroupOnPremisesInstanceTagFilterValue :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CodeDeployDeploymentGroupOnPremisesInstanceTagFilter where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 53, omitNothingFields = True }++instance FromJSON CodeDeployDeploymentGroupOnPremisesInstanceTagFilter where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 53, omitNothingFields = True }++-- | Constructor for 'CodeDeployDeploymentGroupOnPremisesInstanceTagFilter'+-- | containing required fields as arguments.+codeDeployDeploymentGroupOnPremisesInstanceTagFilter+  :: CodeDeployDeploymentGroupOnPremisesInstanceTagFilter+codeDeployDeploymentGroupOnPremisesInstanceTagFilter  =+  CodeDeployDeploymentGroupOnPremisesInstanceTagFilter+  { _codeDeployDeploymentGroupOnPremisesInstanceTagFilterKey = Nothing+  , _codeDeployDeploymentGroupOnPremisesInstanceTagFilterType = Nothing+  , _codeDeployDeploymentGroupOnPremisesInstanceTagFilterValue = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisesinstancetagfilters.html#cfn-properties-codedeploy-deploymentgroup-onpremisesinstancetagfilters-key+cddgopitfKey :: Lens' CodeDeployDeploymentGroupOnPremisesInstanceTagFilter (Maybe (Val Text))+cddgopitfKey = lens _codeDeployDeploymentGroupOnPremisesInstanceTagFilterKey (\s a -> s { _codeDeployDeploymentGroupOnPremisesInstanceTagFilterKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisesinstancetagfilters.html#cfn-properties-codedeploy-deploymentgroup-onpremisesinstancetagfilters-type+cddgopitfType :: Lens' CodeDeployDeploymentGroupOnPremisesInstanceTagFilter (Maybe (Val Text))+cddgopitfType = lens _codeDeployDeploymentGroupOnPremisesInstanceTagFilterType (\s a -> s { _codeDeployDeploymentGroupOnPremisesInstanceTagFilterType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-onpremisesinstancetagfilters.html#cfn-properties-codedeploy-deploymentgroup-onpremisesinstancetagfilters-value+cddgopitfValue :: Lens' CodeDeployDeploymentGroupOnPremisesInstanceTagFilter (Maybe (Val Text))+cddgopitfValue = lens _codeDeployDeploymentGroupOnPremisesInstanceTagFilterValue (\s a -> s { _codeDeployDeploymentGroupOnPremisesInstanceTagFilterValue = a })
+ library-gen/Stratosphere/ResourceProperties/CodeDeployDeploymentGroupRevision.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html++module Stratosphere.ResourceProperties.CodeDeployDeploymentGroupRevision where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupGitHubLocation+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupS3Location++-- | Full data type definition for CodeDeployDeploymentGroupRevision. See+-- | 'codeDeployDeploymentGroupRevision' for a more convenient constructor.+data CodeDeployDeploymentGroupRevision =+  CodeDeployDeploymentGroupRevision+  { _codeDeployDeploymentGroupRevisionGitHubLocation :: Maybe CodeDeployDeploymentGroupGitHubLocation+  , _codeDeployDeploymentGroupRevisionRevisionType :: Maybe (Val Text)+  , _codeDeployDeploymentGroupRevisionS3Location :: Maybe CodeDeployDeploymentGroupS3Location+  } deriving (Show, Generic)++instance ToJSON CodeDeployDeploymentGroupRevision where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON CodeDeployDeploymentGroupRevision where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'CodeDeployDeploymentGroupRevision' containing required+-- | fields as arguments.+codeDeployDeploymentGroupRevision+  :: CodeDeployDeploymentGroupRevision+codeDeployDeploymentGroupRevision  =+  CodeDeployDeploymentGroupRevision+  { _codeDeployDeploymentGroupRevisionGitHubLocation = Nothing+  , _codeDeployDeploymentGroupRevisionRevisionType = Nothing+  , _codeDeployDeploymentGroupRevisionS3Location = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-githublocation+cddgrGitHubLocation :: Lens' CodeDeployDeploymentGroupRevision (Maybe CodeDeployDeploymentGroupGitHubLocation)+cddgrGitHubLocation = lens _codeDeployDeploymentGroupRevisionGitHubLocation (\s a -> s { _codeDeployDeploymentGroupRevisionGitHubLocation = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-revisiontype+cddgrRevisionType :: Lens' CodeDeployDeploymentGroupRevision (Maybe (Val Text))+cddgrRevisionType = lens _codeDeployDeploymentGroupRevisionRevisionType (\s a -> s { _codeDeployDeploymentGroupRevisionRevisionType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location+cddgrS3Location :: Lens' CodeDeployDeploymentGroupRevision (Maybe CodeDeployDeploymentGroupS3Location)+cddgrS3Location = lens _codeDeployDeploymentGroupRevisionS3Location (\s a -> s { _codeDeployDeploymentGroupRevisionS3Location = a })
+ library-gen/Stratosphere/ResourceProperties/CodeDeployDeploymentGroupS3Location.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html++module Stratosphere.ResourceProperties.CodeDeployDeploymentGroupS3Location where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodeDeployDeploymentGroupS3Location. See+-- | 'codeDeployDeploymentGroupS3Location' for a more convenient constructor.+data CodeDeployDeploymentGroupS3Location =+  CodeDeployDeploymentGroupS3Location+  { _codeDeployDeploymentGroupS3LocationBucket :: Val Text+  , _codeDeployDeploymentGroupS3LocationBundleType :: Val Text+  , _codeDeployDeploymentGroupS3LocationETag :: Maybe (Val Text)+  , _codeDeployDeploymentGroupS3LocationKey :: Val Text+  , _codeDeployDeploymentGroupS3LocationVersion :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CodeDeployDeploymentGroupS3Location where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++instance FromJSON CodeDeployDeploymentGroupS3Location where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++-- | Constructor for 'CodeDeployDeploymentGroupS3Location' containing required+-- | fields as arguments.+codeDeployDeploymentGroupS3Location+  :: Val Text -- ^ 'cddgslBucket'+  -> Val Text -- ^ 'cddgslBundleType'+  -> Val Text -- ^ 'cddgslKey'+  -> CodeDeployDeploymentGroupS3Location+codeDeployDeploymentGroupS3Location bucketarg bundleTypearg keyarg =+  CodeDeployDeploymentGroupS3Location+  { _codeDeployDeploymentGroupS3LocationBucket = bucketarg+  , _codeDeployDeploymentGroupS3LocationBundleType = bundleTypearg+  , _codeDeployDeploymentGroupS3LocationETag = Nothing+  , _codeDeployDeploymentGroupS3LocationKey = keyarg+  , _codeDeployDeploymentGroupS3LocationVersion = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location-bucket+cddgslBucket :: Lens' CodeDeployDeploymentGroupS3Location (Val Text)+cddgslBucket = lens _codeDeployDeploymentGroupS3LocationBucket (\s a -> s { _codeDeployDeploymentGroupS3LocationBucket = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location-bundletype+cddgslBundleType :: Lens' CodeDeployDeploymentGroupS3Location (Val Text)+cddgslBundleType = lens _codeDeployDeploymentGroupS3LocationBundleType (\s a -> s { _codeDeployDeploymentGroupS3LocationBundleType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location-etag+cddgslETag :: Lens' CodeDeployDeploymentGroupS3Location (Maybe (Val Text))+cddgslETag = lens _codeDeployDeploymentGroupS3LocationETag (\s a -> s { _codeDeployDeploymentGroupS3LocationETag = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location-key+cddgslKey :: Lens' CodeDeployDeploymentGroupS3Location (Val Text)+cddgslKey = lens _codeDeployDeploymentGroupS3LocationKey (\s a -> s { _codeDeployDeploymentGroupS3LocationKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-deployment-revision-s3location.html#cfn-properties-codedeploy-deploymentgroup-deployment-revision-s3location-value+cddgslVersion :: Lens' CodeDeployDeploymentGroupS3Location (Maybe (Val Text))+cddgslVersion = lens _codeDeployDeploymentGroupS3LocationVersion (\s a -> s { _codeDeployDeploymentGroupS3LocationVersion = a })
+ library-gen/Stratosphere/ResourceProperties/CodePipelineCustomActionTypeArtifactDetails.hs view
@@ -0,0 +1,51 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-artifactdetails.html++module Stratosphere.ResourceProperties.CodePipelineCustomActionTypeArtifactDetails where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | CodePipelineCustomActionTypeArtifactDetails. See+-- | 'codePipelineCustomActionTypeArtifactDetails' for a more convenient+-- | constructor.+data CodePipelineCustomActionTypeArtifactDetails =+  CodePipelineCustomActionTypeArtifactDetails+  { _codePipelineCustomActionTypeArtifactDetailsMaximumCount :: Val Integer'+  , _codePipelineCustomActionTypeArtifactDetailsMinimumCount :: Val Integer'+  } deriving (Show, Generic)++instance ToJSON CodePipelineCustomActionTypeArtifactDetails where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 44, omitNothingFields = True }++instance FromJSON CodePipelineCustomActionTypeArtifactDetails where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 44, omitNothingFields = True }++-- | Constructor for 'CodePipelineCustomActionTypeArtifactDetails' containing+-- | required fields as arguments.+codePipelineCustomActionTypeArtifactDetails+  :: Val Integer' -- ^ 'cpcatadMaximumCount'+  -> Val Integer' -- ^ 'cpcatadMinimumCount'+  -> CodePipelineCustomActionTypeArtifactDetails+codePipelineCustomActionTypeArtifactDetails maximumCountarg minimumCountarg =+  CodePipelineCustomActionTypeArtifactDetails+  { _codePipelineCustomActionTypeArtifactDetailsMaximumCount = maximumCountarg+  , _codePipelineCustomActionTypeArtifactDetailsMinimumCount = minimumCountarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-artifactdetails.html#cfn-codepipeline-customactiontype-artifactdetails-maximumcount+cpcatadMaximumCount :: Lens' CodePipelineCustomActionTypeArtifactDetails (Val Integer')+cpcatadMaximumCount = lens _codePipelineCustomActionTypeArtifactDetailsMaximumCount (\s a -> s { _codePipelineCustomActionTypeArtifactDetailsMaximumCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-artifactdetails.html#cfn-codepipeline-customactiontype-artifactdetails-minimumcount+cpcatadMinimumCount :: Lens' CodePipelineCustomActionTypeArtifactDetails (Val Integer')+cpcatadMinimumCount = lens _codePipelineCustomActionTypeArtifactDetailsMinimumCount (\s a -> s { _codePipelineCustomActionTypeArtifactDetailsMinimumCount = a })
+ library-gen/Stratosphere/ResourceProperties/CodePipelineCustomActionTypeConfigurationProperties.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html++module Stratosphere.ResourceProperties.CodePipelineCustomActionTypeConfigurationProperties where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | CodePipelineCustomActionTypeConfigurationProperties. See+-- | 'codePipelineCustomActionTypeConfigurationProperties' for a more+-- | convenient constructor.+data CodePipelineCustomActionTypeConfigurationProperties =+  CodePipelineCustomActionTypeConfigurationProperties+  { _codePipelineCustomActionTypeConfigurationPropertiesDescription :: Maybe (Val Text)+  , _codePipelineCustomActionTypeConfigurationPropertiesKey :: Val Bool'+  , _codePipelineCustomActionTypeConfigurationPropertiesName :: Val Text+  , _codePipelineCustomActionTypeConfigurationPropertiesQueryable :: Maybe (Val Bool')+  , _codePipelineCustomActionTypeConfigurationPropertiesRequired :: Val Bool'+  , _codePipelineCustomActionTypeConfigurationPropertiesSecret :: Val Bool'+  , _codePipelineCustomActionTypeConfigurationPropertiesType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CodePipelineCustomActionTypeConfigurationProperties where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 52, omitNothingFields = True }++instance FromJSON CodePipelineCustomActionTypeConfigurationProperties where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 52, omitNothingFields = True }++-- | Constructor for 'CodePipelineCustomActionTypeConfigurationProperties'+-- | containing required fields as arguments.+codePipelineCustomActionTypeConfigurationProperties+  :: Val Bool' -- ^ 'cpcatcpKey'+  -> Val Text -- ^ 'cpcatcpName'+  -> Val Bool' -- ^ 'cpcatcpRequired'+  -> Val Bool' -- ^ 'cpcatcpSecret'+  -> CodePipelineCustomActionTypeConfigurationProperties+codePipelineCustomActionTypeConfigurationProperties keyarg namearg requiredarg secretarg =+  CodePipelineCustomActionTypeConfigurationProperties+  { _codePipelineCustomActionTypeConfigurationPropertiesDescription = Nothing+  , _codePipelineCustomActionTypeConfigurationPropertiesKey = keyarg+  , _codePipelineCustomActionTypeConfigurationPropertiesName = namearg+  , _codePipelineCustomActionTypeConfigurationPropertiesQueryable = Nothing+  , _codePipelineCustomActionTypeConfigurationPropertiesRequired = requiredarg+  , _codePipelineCustomActionTypeConfigurationPropertiesSecret = secretarg+  , _codePipelineCustomActionTypeConfigurationPropertiesType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-description+cpcatcpDescription :: Lens' CodePipelineCustomActionTypeConfigurationProperties (Maybe (Val Text))+cpcatcpDescription = lens _codePipelineCustomActionTypeConfigurationPropertiesDescription (\s a -> s { _codePipelineCustomActionTypeConfigurationPropertiesDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-key+cpcatcpKey :: Lens' CodePipelineCustomActionTypeConfigurationProperties (Val Bool')+cpcatcpKey = lens _codePipelineCustomActionTypeConfigurationPropertiesKey (\s a -> s { _codePipelineCustomActionTypeConfigurationPropertiesKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-name+cpcatcpName :: Lens' CodePipelineCustomActionTypeConfigurationProperties (Val Text)+cpcatcpName = lens _codePipelineCustomActionTypeConfigurationPropertiesName (\s a -> s { _codePipelineCustomActionTypeConfigurationPropertiesName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-queryable+cpcatcpQueryable :: Lens' CodePipelineCustomActionTypeConfigurationProperties (Maybe (Val Bool'))+cpcatcpQueryable = lens _codePipelineCustomActionTypeConfigurationPropertiesQueryable (\s a -> s { _codePipelineCustomActionTypeConfigurationPropertiesQueryable = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-required+cpcatcpRequired :: Lens' CodePipelineCustomActionTypeConfigurationProperties (Val Bool')+cpcatcpRequired = lens _codePipelineCustomActionTypeConfigurationPropertiesRequired (\s a -> s { _codePipelineCustomActionTypeConfigurationPropertiesRequired = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-secret+cpcatcpSecret :: Lens' CodePipelineCustomActionTypeConfigurationProperties (Val Bool')+cpcatcpSecret = lens _codePipelineCustomActionTypeConfigurationPropertiesSecret (\s a -> s { _codePipelineCustomActionTypeConfigurationPropertiesSecret = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-configurationproperties.html#cfn-codepipeline-customactiontype-configurationproperties-type+cpcatcpType :: Lens' CodePipelineCustomActionTypeConfigurationProperties (Maybe (Val Text))+cpcatcpType = lens _codePipelineCustomActionTypeConfigurationPropertiesType (\s a -> s { _codePipelineCustomActionTypeConfigurationPropertiesType = a })
+ library-gen/Stratosphere/ResourceProperties/CodePipelineCustomActionTypeSettings.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html++module Stratosphere.ResourceProperties.CodePipelineCustomActionTypeSettings where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodePipelineCustomActionTypeSettings. See+-- | 'codePipelineCustomActionTypeSettings' for a more convenient constructor.+data CodePipelineCustomActionTypeSettings =+  CodePipelineCustomActionTypeSettings+  { _codePipelineCustomActionTypeSettingsEntityUrlTemplate :: Maybe (Val Text)+  , _codePipelineCustomActionTypeSettingsExecutionUrlTemplate :: Maybe (Val Text)+  , _codePipelineCustomActionTypeSettingsRevisionUrlTemplate :: Maybe (Val Text)+  , _codePipelineCustomActionTypeSettingsThirdPartyConfigurationUrl :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CodePipelineCustomActionTypeSettings where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++instance FromJSON CodePipelineCustomActionTypeSettings where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++-- | Constructor for 'CodePipelineCustomActionTypeSettings' containing+-- | required fields as arguments.+codePipelineCustomActionTypeSettings+  :: CodePipelineCustomActionTypeSettings+codePipelineCustomActionTypeSettings  =+  CodePipelineCustomActionTypeSettings+  { _codePipelineCustomActionTypeSettingsEntityUrlTemplate = Nothing+  , _codePipelineCustomActionTypeSettingsExecutionUrlTemplate = Nothing+  , _codePipelineCustomActionTypeSettingsRevisionUrlTemplate = Nothing+  , _codePipelineCustomActionTypeSettingsThirdPartyConfigurationUrl = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html#cfn-codepipeline-customactiontype-settings-entityurltemplate+cpcatsEntityUrlTemplate :: Lens' CodePipelineCustomActionTypeSettings (Maybe (Val Text))+cpcatsEntityUrlTemplate = lens _codePipelineCustomActionTypeSettingsEntityUrlTemplate (\s a -> s { _codePipelineCustomActionTypeSettingsEntityUrlTemplate = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html#cfn-codepipeline-customactiontype-settings-executionurltemplate+cpcatsExecutionUrlTemplate :: Lens' CodePipelineCustomActionTypeSettings (Maybe (Val Text))+cpcatsExecutionUrlTemplate = lens _codePipelineCustomActionTypeSettingsExecutionUrlTemplate (\s a -> s { _codePipelineCustomActionTypeSettingsExecutionUrlTemplate = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html#cfn-codepipeline-customactiontype-settings-revisionurltemplate+cpcatsRevisionUrlTemplate :: Lens' CodePipelineCustomActionTypeSettings (Maybe (Val Text))+cpcatsRevisionUrlTemplate = lens _codePipelineCustomActionTypeSettingsRevisionUrlTemplate (\s a -> s { _codePipelineCustomActionTypeSettingsRevisionUrlTemplate = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-customactiontype-settings.html#cfn-codepipeline-customactiontype-settings-thirdpartyconfigurationurl+cpcatsThirdPartyConfigurationUrl :: Lens' CodePipelineCustomActionTypeSettings (Maybe (Val Text))+cpcatsThirdPartyConfigurationUrl = lens _codePipelineCustomActionTypeSettingsThirdPartyConfigurationUrl (\s a -> s { _codePipelineCustomActionTypeSettingsThirdPartyConfigurationUrl = a })
+ library-gen/Stratosphere/ResourceProperties/CodePipelinePipelineActionDeclaration.hs view
@@ -0,0 +1,82 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html++module Stratosphere.ResourceProperties.CodePipelinePipelineActionDeclaration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CodePipelinePipelineActionTypeId+import Stratosphere.ResourceProperties.CodePipelinePipelineInputArtifact+import Stratosphere.ResourceProperties.CodePipelinePipelineOutputArtifact++-- | Full data type definition for CodePipelinePipelineActionDeclaration. See+-- | 'codePipelinePipelineActionDeclaration' for a more convenient+-- | constructor.+data CodePipelinePipelineActionDeclaration =+  CodePipelinePipelineActionDeclaration+  { _codePipelinePipelineActionDeclarationActionTypeId :: CodePipelinePipelineActionTypeId+  , _codePipelinePipelineActionDeclarationConfiguration :: Maybe Object+  , _codePipelinePipelineActionDeclarationInputArtifacts :: Maybe [CodePipelinePipelineInputArtifact]+  , _codePipelinePipelineActionDeclarationName :: Val Text+  , _codePipelinePipelineActionDeclarationOutputArtifacts :: Maybe [CodePipelinePipelineOutputArtifact]+  , _codePipelinePipelineActionDeclarationRoleArn :: Maybe (Val Text)+  , _codePipelinePipelineActionDeclarationRunOrder :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON CodePipelinePipelineActionDeclaration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++instance FromJSON CodePipelinePipelineActionDeclaration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++-- | Constructor for 'CodePipelinePipelineActionDeclaration' containing+-- | required fields as arguments.+codePipelinePipelineActionDeclaration+  :: CodePipelinePipelineActionTypeId -- ^ 'cppadActionTypeId'+  -> Val Text -- ^ 'cppadName'+  -> CodePipelinePipelineActionDeclaration+codePipelinePipelineActionDeclaration actionTypeIdarg namearg =+  CodePipelinePipelineActionDeclaration+  { _codePipelinePipelineActionDeclarationActionTypeId = actionTypeIdarg+  , _codePipelinePipelineActionDeclarationConfiguration = Nothing+  , _codePipelinePipelineActionDeclarationInputArtifacts = Nothing+  , _codePipelinePipelineActionDeclarationName = namearg+  , _codePipelinePipelineActionDeclarationOutputArtifacts = Nothing+  , _codePipelinePipelineActionDeclarationRoleArn = Nothing+  , _codePipelinePipelineActionDeclarationRunOrder = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid+cppadActionTypeId :: Lens' CodePipelinePipelineActionDeclaration CodePipelinePipelineActionTypeId+cppadActionTypeId = lens _codePipelinePipelineActionDeclarationActionTypeId (\s a -> s { _codePipelinePipelineActionDeclarationActionTypeId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-configuration+cppadConfiguration :: Lens' CodePipelinePipelineActionDeclaration (Maybe Object)+cppadConfiguration = lens _codePipelinePipelineActionDeclarationConfiguration (\s a -> s { _codePipelinePipelineActionDeclarationConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-inputartifacts+cppadInputArtifacts :: Lens' CodePipelinePipelineActionDeclaration (Maybe [CodePipelinePipelineInputArtifact])+cppadInputArtifacts = lens _codePipelinePipelineActionDeclarationInputArtifacts (\s a -> s { _codePipelinePipelineActionDeclarationInputArtifacts = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-name+cppadName :: Lens' CodePipelinePipelineActionDeclaration (Val Text)+cppadName = lens _codePipelinePipelineActionDeclarationName (\s a -> s { _codePipelinePipelineActionDeclarationName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-outputartifacts+cppadOutputArtifacts :: Lens' CodePipelinePipelineActionDeclaration (Maybe [CodePipelinePipelineOutputArtifact])+cppadOutputArtifacts = lens _codePipelinePipelineActionDeclarationOutputArtifacts (\s a -> s { _codePipelinePipelineActionDeclarationOutputArtifacts = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-rolearn+cppadRoleArn :: Lens' CodePipelinePipelineActionDeclaration (Maybe (Val Text))+cppadRoleArn = lens _codePipelinePipelineActionDeclarationRoleArn (\s a -> s { _codePipelinePipelineActionDeclarationRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions.html#cfn-codepipeline-pipeline-stages-actions-runorder+cppadRunOrder :: Lens' CodePipelinePipelineActionDeclaration (Maybe (Val Integer'))+cppadRunOrder = lens _codePipelinePipelineActionDeclarationRunOrder (\s a -> s { _codePipelinePipelineActionDeclarationRunOrder = a })
+ library-gen/Stratosphere/ResourceProperties/CodePipelinePipelineActionTypeId.hs view
@@ -0,0 +1,63 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html++module Stratosphere.ResourceProperties.CodePipelinePipelineActionTypeId where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodePipelinePipelineActionTypeId. See+-- | 'codePipelinePipelineActionTypeId' for a more convenient constructor.+data CodePipelinePipelineActionTypeId =+  CodePipelinePipelineActionTypeId+  { _codePipelinePipelineActionTypeIdCategory :: Val Text+  , _codePipelinePipelineActionTypeIdOwner :: Val Text+  , _codePipelinePipelineActionTypeIdProvider :: Val Text+  , _codePipelinePipelineActionTypeIdVersion :: Val Text+  } deriving (Show, Generic)++instance ToJSON CodePipelinePipelineActionTypeId where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++instance FromJSON CodePipelinePipelineActionTypeId where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++-- | Constructor for 'CodePipelinePipelineActionTypeId' containing required+-- | fields as arguments.+codePipelinePipelineActionTypeId+  :: Val Text -- ^ 'cppatiCategory'+  -> Val Text -- ^ 'cppatiOwner'+  -> Val Text -- ^ 'cppatiProvider'+  -> Val Text -- ^ 'cppatiVersion'+  -> CodePipelinePipelineActionTypeId+codePipelinePipelineActionTypeId categoryarg ownerarg providerarg versionarg =+  CodePipelinePipelineActionTypeId+  { _codePipelinePipelineActionTypeIdCategory = categoryarg+  , _codePipelinePipelineActionTypeIdOwner = ownerarg+  , _codePipelinePipelineActionTypeIdProvider = providerarg+  , _codePipelinePipelineActionTypeIdVersion = versionarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid-category+cppatiCategory :: Lens' CodePipelinePipelineActionTypeId (Val Text)+cppatiCategory = lens _codePipelinePipelineActionTypeIdCategory (\s a -> s { _codePipelinePipelineActionTypeIdCategory = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid-owner+cppatiOwner :: Lens' CodePipelinePipelineActionTypeId (Val Text)+cppatiOwner = lens _codePipelinePipelineActionTypeIdOwner (\s a -> s { _codePipelinePipelineActionTypeIdOwner = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid-provider+cppatiProvider :: Lens' CodePipelinePipelineActionTypeId (Val Text)+cppatiProvider = lens _codePipelinePipelineActionTypeIdProvider (\s a -> s { _codePipelinePipelineActionTypeIdProvider = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-actiontypeid.html#cfn-codepipeline-pipeline-stages-actions-actiontypeid-version+cppatiVersion :: Lens' CodePipelinePipelineActionTypeId (Val Text)+cppatiVersion = lens _codePipelinePipelineActionTypeIdVersion (\s a -> s { _codePipelinePipelineActionTypeIdVersion = a })
+ library-gen/Stratosphere/ResourceProperties/CodePipelinePipelineArtifactStore.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html++module Stratosphere.ResourceProperties.CodePipelinePipelineArtifactStore where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CodePipelinePipelineEncryptionKey++-- | Full data type definition for CodePipelinePipelineArtifactStore. See+-- | 'codePipelinePipelineArtifactStore' for a more convenient constructor.+data CodePipelinePipelineArtifactStore =+  CodePipelinePipelineArtifactStore+  { _codePipelinePipelineArtifactStoreEncryptionKey :: Maybe CodePipelinePipelineEncryptionKey+  , _codePipelinePipelineArtifactStoreLocation :: Val Text+  , _codePipelinePipelineArtifactStoreType :: Val Text+  } deriving (Show, Generic)++instance ToJSON CodePipelinePipelineArtifactStore where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON CodePipelinePipelineArtifactStore where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'CodePipelinePipelineArtifactStore' containing required+-- | fields as arguments.+codePipelinePipelineArtifactStore+  :: Val Text -- ^ 'cppasLocation'+  -> Val Text -- ^ 'cppasType'+  -> CodePipelinePipelineArtifactStore+codePipelinePipelineArtifactStore locationarg typearg =+  CodePipelinePipelineArtifactStore+  { _codePipelinePipelineArtifactStoreEncryptionKey = Nothing+  , _codePipelinePipelineArtifactStoreLocation = locationarg+  , _codePipelinePipelineArtifactStoreType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html#cfn-codepipeline-pipeline-artifactstore-encryptionkey+cppasEncryptionKey :: Lens' CodePipelinePipelineArtifactStore (Maybe CodePipelinePipelineEncryptionKey)+cppasEncryptionKey = lens _codePipelinePipelineArtifactStoreEncryptionKey (\s a -> s { _codePipelinePipelineArtifactStoreEncryptionKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html#cfn-codepipeline-pipeline-artifactstore-location+cppasLocation :: Lens' CodePipelinePipelineArtifactStore (Val Text)+cppasLocation = lens _codePipelinePipelineArtifactStoreLocation (\s a -> s { _codePipelinePipelineArtifactStoreLocation = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore.html#cfn-codepipeline-pipeline-artifactstore-type+cppasType :: Lens' CodePipelinePipelineArtifactStore (Val Text)+cppasType = lens _codePipelinePipelineArtifactStoreType (\s a -> s { _codePipelinePipelineArtifactStoreType = a })
+ library-gen/Stratosphere/ResourceProperties/CodePipelinePipelineBlockerDeclaration.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-blockers.html++module Stratosphere.ResourceProperties.CodePipelinePipelineBlockerDeclaration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodePipelinePipelineBlockerDeclaration. See+-- | 'codePipelinePipelineBlockerDeclaration' for a more convenient+-- | constructor.+data CodePipelinePipelineBlockerDeclaration =+  CodePipelinePipelineBlockerDeclaration+  { _codePipelinePipelineBlockerDeclarationName :: Val Text+  , _codePipelinePipelineBlockerDeclarationType :: Val Text+  } deriving (Show, Generic)++instance ToJSON CodePipelinePipelineBlockerDeclaration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++instance FromJSON CodePipelinePipelineBlockerDeclaration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++-- | Constructor for 'CodePipelinePipelineBlockerDeclaration' containing+-- | required fields as arguments.+codePipelinePipelineBlockerDeclaration+  :: Val Text -- ^ 'cppbdName'+  -> Val Text -- ^ 'cppbdType'+  -> CodePipelinePipelineBlockerDeclaration+codePipelinePipelineBlockerDeclaration namearg typearg =+  CodePipelinePipelineBlockerDeclaration+  { _codePipelinePipelineBlockerDeclarationName = namearg+  , _codePipelinePipelineBlockerDeclarationType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-blockers.html#cfn-codepipeline-pipeline-stages-blockers-name+cppbdName :: Lens' CodePipelinePipelineBlockerDeclaration (Val Text)+cppbdName = lens _codePipelinePipelineBlockerDeclarationName (\s a -> s { _codePipelinePipelineBlockerDeclarationName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-blockers.html#cfn-codepipeline-pipeline-stages-blockers-type+cppbdType :: Lens' CodePipelinePipelineBlockerDeclaration (Val Text)+cppbdType = lens _codePipelinePipelineBlockerDeclarationType (\s a -> s { _codePipelinePipelineBlockerDeclarationType = a })
+ library-gen/Stratosphere/ResourceProperties/CodePipelinePipelineEncryptionKey.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore-encryptionkey.html++module Stratosphere.ResourceProperties.CodePipelinePipelineEncryptionKey where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodePipelinePipelineEncryptionKey. See+-- | 'codePipelinePipelineEncryptionKey' for a more convenient constructor.+data CodePipelinePipelineEncryptionKey =+  CodePipelinePipelineEncryptionKey+  { _codePipelinePipelineEncryptionKeyId :: Val Text+  , _codePipelinePipelineEncryptionKeyType :: Val Text+  } deriving (Show, Generic)++instance ToJSON CodePipelinePipelineEncryptionKey where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON CodePipelinePipelineEncryptionKey where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'CodePipelinePipelineEncryptionKey' containing required+-- | fields as arguments.+codePipelinePipelineEncryptionKey+  :: Val Text -- ^ 'cppekId'+  -> Val Text -- ^ 'cppekType'+  -> CodePipelinePipelineEncryptionKey+codePipelinePipelineEncryptionKey idarg typearg =+  CodePipelinePipelineEncryptionKey+  { _codePipelinePipelineEncryptionKeyId = idarg+  , _codePipelinePipelineEncryptionKeyType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore-encryptionkey.html#cfn-codepipeline-pipeline-artifactstore-encryptionkey-id+cppekId :: Lens' CodePipelinePipelineEncryptionKey (Val Text)+cppekId = lens _codePipelinePipelineEncryptionKeyId (\s a -> s { _codePipelinePipelineEncryptionKeyId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-artifactstore-encryptionkey.html#cfn-codepipeline-pipeline-artifactstore-encryptionkey-type+cppekType :: Lens' CodePipelinePipelineEncryptionKey (Val Text)+cppekType = lens _codePipelinePipelineEncryptionKeyType (\s a -> s { _codePipelinePipelineEncryptionKeyType = a })
+ library-gen/Stratosphere/ResourceProperties/CodePipelinePipelineInputArtifact.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-inputartifacts.html++module Stratosphere.ResourceProperties.CodePipelinePipelineInputArtifact where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodePipelinePipelineInputArtifact. See+-- | 'codePipelinePipelineInputArtifact' for a more convenient constructor.+data CodePipelinePipelineInputArtifact =+  CodePipelinePipelineInputArtifact+  { _codePipelinePipelineInputArtifactName :: Val Text+  } deriving (Show, Generic)++instance ToJSON CodePipelinePipelineInputArtifact where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON CodePipelinePipelineInputArtifact where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'CodePipelinePipelineInputArtifact' containing required+-- | fields as arguments.+codePipelinePipelineInputArtifact+  :: Val Text -- ^ 'cppiaName'+  -> CodePipelinePipelineInputArtifact+codePipelinePipelineInputArtifact namearg =+  CodePipelinePipelineInputArtifact+  { _codePipelinePipelineInputArtifactName = namearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-inputartifacts.html#cfn-codepipeline-pipeline-stages-actions-inputartifacts-name+cppiaName :: Lens' CodePipelinePipelineInputArtifact (Val Text)+cppiaName = lens _codePipelinePipelineInputArtifactName (\s a -> s { _codePipelinePipelineInputArtifactName = a })
+ library-gen/Stratosphere/ResourceProperties/CodePipelinePipelineOutputArtifact.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-outputartifacts.html++module Stratosphere.ResourceProperties.CodePipelinePipelineOutputArtifact where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodePipelinePipelineOutputArtifact. See+-- | 'codePipelinePipelineOutputArtifact' for a more convenient constructor.+data CodePipelinePipelineOutputArtifact =+  CodePipelinePipelineOutputArtifact+  { _codePipelinePipelineOutputArtifactName :: Val Text+  } deriving (Show, Generic)++instance ToJSON CodePipelinePipelineOutputArtifact where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++instance FromJSON CodePipelinePipelineOutputArtifact where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++-- | Constructor for 'CodePipelinePipelineOutputArtifact' containing required+-- | fields as arguments.+codePipelinePipelineOutputArtifact+  :: Val Text -- ^ 'cppoaName'+  -> CodePipelinePipelineOutputArtifact+codePipelinePipelineOutputArtifact namearg =+  CodePipelinePipelineOutputArtifact+  { _codePipelinePipelineOutputArtifactName = namearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages-actions-outputartifacts.html#cfn-codepipeline-pipeline-stages-actions-outputartifacts-name+cppoaName :: Lens' CodePipelinePipelineOutputArtifact (Val Text)+cppoaName = lens _codePipelinePipelineOutputArtifactName (\s a -> s { _codePipelinePipelineOutputArtifactName = a })
+ library-gen/Stratosphere/ResourceProperties/CodePipelinePipelineStageDeclaration.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html++module Stratosphere.ResourceProperties.CodePipelinePipelineStageDeclaration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CodePipelinePipelineActionDeclaration+import Stratosphere.ResourceProperties.CodePipelinePipelineBlockerDeclaration++-- | Full data type definition for CodePipelinePipelineStageDeclaration. See+-- | 'codePipelinePipelineStageDeclaration' for a more convenient constructor.+data CodePipelinePipelineStageDeclaration =+  CodePipelinePipelineStageDeclaration+  { _codePipelinePipelineStageDeclarationActions :: [CodePipelinePipelineActionDeclaration]+  , _codePipelinePipelineStageDeclarationBlockers :: Maybe [CodePipelinePipelineBlockerDeclaration]+  , _codePipelinePipelineStageDeclarationName :: Val Text+  } deriving (Show, Generic)++instance ToJSON CodePipelinePipelineStageDeclaration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++instance FromJSON CodePipelinePipelineStageDeclaration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++-- | Constructor for 'CodePipelinePipelineStageDeclaration' containing+-- | required fields as arguments.+codePipelinePipelineStageDeclaration+  :: [CodePipelinePipelineActionDeclaration] -- ^ 'cppsdActions'+  -> Val Text -- ^ 'cppsdName'+  -> CodePipelinePipelineStageDeclaration+codePipelinePipelineStageDeclaration actionsarg namearg =+  CodePipelinePipelineStageDeclaration+  { _codePipelinePipelineStageDeclarationActions = actionsarg+  , _codePipelinePipelineStageDeclarationBlockers = Nothing+  , _codePipelinePipelineStageDeclarationName = namearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-actions+cppsdActions :: Lens' CodePipelinePipelineStageDeclaration [CodePipelinePipelineActionDeclaration]+cppsdActions = lens _codePipelinePipelineStageDeclarationActions (\s a -> s { _codePipelinePipelineStageDeclarationActions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-blockers+cppsdBlockers :: Lens' CodePipelinePipelineStageDeclaration (Maybe [CodePipelinePipelineBlockerDeclaration])+cppsdBlockers = lens _codePipelinePipelineStageDeclarationBlockers (\s a -> s { _codePipelinePipelineStageDeclarationBlockers = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-stages.html#cfn-codepipeline-pipeline-stages-name+cppsdName :: Lens' CodePipelinePipelineStageDeclaration (Val Text)+cppsdName = lens _codePipelinePipelineStageDeclarationName (\s a -> s { _codePipelinePipelineStageDeclarationName = a })
+ library-gen/Stratosphere/ResourceProperties/CodePipelinePipelineStageTransition.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-disableinboundstagetransitions.html++module Stratosphere.ResourceProperties.CodePipelinePipelineStageTransition where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodePipelinePipelineStageTransition. See+-- | 'codePipelinePipelineStageTransition' for a more convenient constructor.+data CodePipelinePipelineStageTransition =+  CodePipelinePipelineStageTransition+  { _codePipelinePipelineStageTransitionReason :: Val Text+  , _codePipelinePipelineStageTransitionStageName :: Val Text+  } deriving (Show, Generic)++instance ToJSON CodePipelinePipelineStageTransition where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++instance FromJSON CodePipelinePipelineStageTransition where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++-- | Constructor for 'CodePipelinePipelineStageTransition' containing required+-- | fields as arguments.+codePipelinePipelineStageTransition+  :: Val Text -- ^ 'cppstReason'+  -> Val Text -- ^ 'cppstStageName'+  -> CodePipelinePipelineStageTransition+codePipelinePipelineStageTransition reasonarg stageNamearg =+  CodePipelinePipelineStageTransition+  { _codePipelinePipelineStageTransitionReason = reasonarg+  , _codePipelinePipelineStageTransitionStageName = stageNamearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-disableinboundstagetransitions.html#cfn-codepipeline-pipeline-disableinboundstagetransitions-reason+cppstReason :: Lens' CodePipelinePipelineStageTransition (Val Text)+cppstReason = lens _codePipelinePipelineStageTransitionReason (\s a -> s { _codePipelinePipelineStageTransitionReason = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codepipeline-pipeline-disableinboundstagetransitions.html#cfn-codepipeline-pipeline-disableinboundstagetransitions-stagename+cppstStageName :: Lens' CodePipelinePipelineStageTransition (Val Text)+cppstStageName = lens _codePipelinePipelineStageTransitionStageName (\s a -> s { _codePipelinePipelineStageTransitionStageName = a })
+ library-gen/Stratosphere/ResourceProperties/ConfigConfigRuleScope.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html++module Stratosphere.ResourceProperties.ConfigConfigRuleScope where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ConfigConfigRuleScope. See+-- | 'configConfigRuleScope' for a more convenient constructor.+data ConfigConfigRuleScope =+  ConfigConfigRuleScope+  { _configConfigRuleScopeComplianceResourceId :: Maybe (Val Text)+  , _configConfigRuleScopeComplianceResourceTypes :: Maybe [Val Text]+  , _configConfigRuleScopeTagKey :: Maybe (Val Text)+  , _configConfigRuleScopeTagValue :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ConfigConfigRuleScope where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++instance FromJSON ConfigConfigRuleScope where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++-- | Constructor for 'ConfigConfigRuleScope' containing required fields as+-- | arguments.+configConfigRuleScope+  :: ConfigConfigRuleScope+configConfigRuleScope  =+  ConfigConfigRuleScope+  { _configConfigRuleScopeComplianceResourceId = Nothing+  , _configConfigRuleScopeComplianceResourceTypes = Nothing+  , _configConfigRuleScopeTagKey = Nothing+  , _configConfigRuleScopeTagValue = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html#cfn-config-configrule-scope-complianceresourceid+ccrsComplianceResourceId :: Lens' ConfigConfigRuleScope (Maybe (Val Text))+ccrsComplianceResourceId = lens _configConfigRuleScopeComplianceResourceId (\s a -> s { _configConfigRuleScopeComplianceResourceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html#cfn-config-configrule-scope-complianceresourcetypes+ccrsComplianceResourceTypes :: Lens' ConfigConfigRuleScope (Maybe [Val Text])+ccrsComplianceResourceTypes = lens _configConfigRuleScopeComplianceResourceTypes (\s a -> s { _configConfigRuleScopeComplianceResourceTypes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html#cfn-config-configrule-scope-tagkey+ccrsTagKey :: Lens' ConfigConfigRuleScope (Maybe (Val Text))+ccrsTagKey = lens _configConfigRuleScopeTagKey (\s a -> s { _configConfigRuleScopeTagKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-scope.html#cfn-config-configrule-scope-tagvalue+ccrsTagValue :: Lens' ConfigConfigRuleScope (Maybe (Val Text))+ccrsTagValue = lens _configConfigRuleScopeTagValue (\s a -> s { _configConfigRuleScopeTagValue = a })
+ library-gen/Stratosphere/ResourceProperties/ConfigConfigRuleSource.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source.html++module Stratosphere.ResourceProperties.ConfigConfigRuleSource where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ConfigConfigRuleSourceDetail++-- | Full data type definition for ConfigConfigRuleSource. See+-- | 'configConfigRuleSource' for a more convenient constructor.+data ConfigConfigRuleSource =+  ConfigConfigRuleSource+  { _configConfigRuleSourceOwner :: Val Text+  , _configConfigRuleSourceSourceDetails :: Maybe [ConfigConfigRuleSourceDetail]+  , _configConfigRuleSourceSourceIdentifier :: Val Text+  } deriving (Show, Generic)++instance ToJSON ConfigConfigRuleSource where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++instance FromJSON ConfigConfigRuleSource where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++-- | Constructor for 'ConfigConfigRuleSource' containing required fields as+-- | arguments.+configConfigRuleSource+  :: Val Text -- ^ 'ccrsOwner'+  -> Val Text -- ^ 'ccrsSourceIdentifier'+  -> ConfigConfigRuleSource+configConfigRuleSource ownerarg sourceIdentifierarg =+  ConfigConfigRuleSource+  { _configConfigRuleSourceOwner = ownerarg+  , _configConfigRuleSourceSourceDetails = Nothing+  , _configConfigRuleSourceSourceIdentifier = sourceIdentifierarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source.html#cfn-config-configrule-source-owner+ccrsOwner :: Lens' ConfigConfigRuleSource (Val Text)+ccrsOwner = lens _configConfigRuleSourceOwner (\s a -> s { _configConfigRuleSourceOwner = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source.html#cfn-config-configrule-source-sourcedetails+ccrsSourceDetails :: Lens' ConfigConfigRuleSource (Maybe [ConfigConfigRuleSourceDetail])+ccrsSourceDetails = lens _configConfigRuleSourceSourceDetails (\s a -> s { _configConfigRuleSourceSourceDetails = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source.html#cfn-config-configrule-source-sourceidentifier+ccrsSourceIdentifier :: Lens' ConfigConfigRuleSource (Val Text)+ccrsSourceIdentifier = lens _configConfigRuleSourceSourceIdentifier (\s a -> s { _configConfigRuleSourceSourceIdentifier = a })
+ library-gen/Stratosphere/ResourceProperties/ConfigConfigRuleSourceDetail.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source-sourcedetails.html++module Stratosphere.ResourceProperties.ConfigConfigRuleSourceDetail where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ConfigConfigRuleSourceDetail. See+-- | 'configConfigRuleSourceDetail' for a more convenient constructor.+data ConfigConfigRuleSourceDetail =+  ConfigConfigRuleSourceDetail+  { _configConfigRuleSourceDetailEventSource :: Val Text+  , _configConfigRuleSourceDetailMessageType :: Val Text+  } deriving (Show, Generic)++instance ToJSON ConfigConfigRuleSourceDetail where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++instance FromJSON ConfigConfigRuleSourceDetail where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++-- | Constructor for 'ConfigConfigRuleSourceDetail' containing required fields+-- | as arguments.+configConfigRuleSourceDetail+  :: Val Text -- ^ 'ccrsdEventSource'+  -> Val Text -- ^ 'ccrsdMessageType'+  -> ConfigConfigRuleSourceDetail+configConfigRuleSourceDetail eventSourcearg messageTypearg =+  ConfigConfigRuleSourceDetail+  { _configConfigRuleSourceDetailEventSource = eventSourcearg+  , _configConfigRuleSourceDetailMessageType = messageTypearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source-sourcedetails.html#cfn-config-configrule-source-sourcedetail-eventsource+ccrsdEventSource :: Lens' ConfigConfigRuleSourceDetail (Val Text)+ccrsdEventSource = lens _configConfigRuleSourceDetailEventSource (\s a -> s { _configConfigRuleSourceDetailEventSource = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-source-sourcedetails.html#cfn-config-configrule-source-sourcedetail-messagetype+ccrsdMessageType :: Lens' ConfigConfigRuleSourceDetail (Val Text)+ccrsdMessageType = lens _configConfigRuleSourceDetailMessageType (\s a -> s { _configConfigRuleSourceDetailMessageType = a })
+ library-gen/Stratosphere/ResourceProperties/ConfigConfigurationRecorderRecordingGroup.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationrecorder-recordinggroup.html++module Stratosphere.ResourceProperties.ConfigConfigurationRecorderRecordingGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ConfigConfigurationRecorderRecordingGroup.+-- | See 'configConfigurationRecorderRecordingGroup' for a more convenient+-- | constructor.+data ConfigConfigurationRecorderRecordingGroup =+  ConfigConfigurationRecorderRecordingGroup+  { _configConfigurationRecorderRecordingGroupAllSupported :: Maybe (Val Bool')+  , _configConfigurationRecorderRecordingGroupIncludeGlobalResourceTypes :: Maybe (Val Bool')+  , _configConfigurationRecorderRecordingGroupResourceTypes :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON ConfigConfigurationRecorderRecordingGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }++instance FromJSON ConfigConfigurationRecorderRecordingGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }++-- | Constructor for 'ConfigConfigurationRecorderRecordingGroup' containing+-- | required fields as arguments.+configConfigurationRecorderRecordingGroup+  :: ConfigConfigurationRecorderRecordingGroup+configConfigurationRecorderRecordingGroup  =+  ConfigConfigurationRecorderRecordingGroup+  { _configConfigurationRecorderRecordingGroupAllSupported = Nothing+  , _configConfigurationRecorderRecordingGroupIncludeGlobalResourceTypes = Nothing+  , _configConfigurationRecorderRecordingGroupResourceTypes = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationrecorder-recordinggroup.html#cfn-config-configurationrecorder-recordinggroup-allsupported+ccrrgAllSupported :: Lens' ConfigConfigurationRecorderRecordingGroup (Maybe (Val Bool'))+ccrrgAllSupported = lens _configConfigurationRecorderRecordingGroupAllSupported (\s a -> s { _configConfigurationRecorderRecordingGroupAllSupported = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationrecorder-recordinggroup.html#cfn-config-configurationrecorder-recordinggroup-includeglobalresourcetypes+ccrrgIncludeGlobalResourceTypes :: Lens' ConfigConfigurationRecorderRecordingGroup (Maybe (Val Bool'))+ccrrgIncludeGlobalResourceTypes = lens _configConfigurationRecorderRecordingGroupIncludeGlobalResourceTypes (\s a -> s { _configConfigurationRecorderRecordingGroupIncludeGlobalResourceTypes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configurationrecorder-recordinggroup.html#cfn-config-configurationrecorder-recordinggroup-resourcetypes+ccrrgResourceTypes :: Lens' ConfigConfigurationRecorderRecordingGroup (Maybe [Val Text])+ccrrgResourceTypes = lens _configConfigurationRecorderRecordingGroupResourceTypes (\s a -> s { _configConfigurationRecorderRecordingGroupResourceTypes = a })
+ library-gen/Stratosphere/ResourceProperties/ConfigDeliveryChannelConfigSnapshotDeliveryProperties.hs view
@@ -0,0 +1,43 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-deliverychannel-configsnapshotdeliveryproperties.html++module Stratosphere.ResourceProperties.ConfigDeliveryChannelConfigSnapshotDeliveryProperties where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ConfigDeliveryChannelConfigSnapshotDeliveryProperties. See+-- | 'configDeliveryChannelConfigSnapshotDeliveryProperties' for a more+-- | convenient constructor.+data ConfigDeliveryChannelConfigSnapshotDeliveryProperties =+  ConfigDeliveryChannelConfigSnapshotDeliveryProperties+  { _configDeliveryChannelConfigSnapshotDeliveryPropertiesDeliveryFrequency :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ConfigDeliveryChannelConfigSnapshotDeliveryProperties where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 54, omitNothingFields = True }++instance FromJSON ConfigDeliveryChannelConfigSnapshotDeliveryProperties where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 54, omitNothingFields = True }++-- | Constructor for 'ConfigDeliveryChannelConfigSnapshotDeliveryProperties'+-- | containing required fields as arguments.+configDeliveryChannelConfigSnapshotDeliveryProperties+  :: ConfigDeliveryChannelConfigSnapshotDeliveryProperties+configDeliveryChannelConfigSnapshotDeliveryProperties  =+  ConfigDeliveryChannelConfigSnapshotDeliveryProperties+  { _configDeliveryChannelConfigSnapshotDeliveryPropertiesDeliveryFrequency = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-deliverychannel-configsnapshotdeliveryproperties.html#cfn-config-deliverychannel-configsnapshotdeliveryproperties-deliveryfrequency+cdccsdpDeliveryFrequency :: Lens' ConfigDeliveryChannelConfigSnapshotDeliveryProperties (Maybe (Val Text))+cdccsdpDeliveryFrequency = lens _configDeliveryChannelConfigSnapshotDeliveryPropertiesDeliveryFrequency (\s a -> s { _configDeliveryChannelConfigSnapshotDeliveryPropertiesDeliveryFrequency = a })
− library-gen/Stratosphere/ResourceProperties/ConnectionDrainingPolicy.hs
@@ -1,58 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The ConnectionDrainingPolicy property describes how deregistered or--- unhealthy instances handle in-flight requests for the--- AWS::ElasticLoadBalancing::LoadBalancer resource. Connection draining--- ensures that the load balancer completes serving all in-flight requests--- made to a registered instance when the instance is deregistered or becomes--- unhealthy. Without connection draining, the load balancer closes--- connections to deregistered or unhealthy instances, and any in-flight--- requests are not completed. For more information about connection draining--- and default values, see Enable or Disable Connection Draining for Your Load--- Balancer in the Elastic Load Balancing Developer Guide.--module Stratosphere.ResourceProperties.ConnectionDrainingPolicy where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for ConnectionDrainingPolicy. See--- 'connectionDrainingPolicy' for a more convenient constructor.-data ConnectionDrainingPolicy =-  ConnectionDrainingPolicy-  { _connectionDrainingPolicyEnabled :: Val Bool'-  , _connectionDrainingPolicyTimeout :: Maybe (Val Integer')-  } deriving (Show, Generic)--instance ToJSON ConnectionDrainingPolicy where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }--instance FromJSON ConnectionDrainingPolicy where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }---- | Constructor for 'ConnectionDrainingPolicy' containing required fields as--- arguments.-connectionDrainingPolicy-  :: Val Bool' -- ^ 'cdpEnabled'-  -> ConnectionDrainingPolicy-connectionDrainingPolicy enabledarg =-  ConnectionDrainingPolicy-  { _connectionDrainingPolicyEnabled = enabledarg-  , _connectionDrainingPolicyTimeout = Nothing-  }---- | Whether or not connection draining is enabled for the load balancer.-cdpEnabled :: Lens' ConnectionDrainingPolicy (Val Bool')-cdpEnabled = lens _connectionDrainingPolicyEnabled (\s a -> s { _connectionDrainingPolicyEnabled = a })---- | The time in seconds after the load balancer closes all connections to a--- deregistered or unhealthy instance.-cdpTimeout :: Lens' ConnectionDrainingPolicy (Maybe (Val Integer'))-cdpTimeout = lens _connectionDrainingPolicyTimeout (\s a -> s { _connectionDrainingPolicyTimeout = a })
− library-gen/Stratosphere/ResourceProperties/ConnectionSettings.hs
@@ -1,48 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | ConnectionSettings is a property of the--- AWS::ElasticLoadBalancing::LoadBalancer resource that describes how long--- the front-end and back-end connections of your load balancer can remain--- idle. For more information, see Configure Idle Connection Timeout in the--- Elastic Load Balancing Developer Guide.--module Stratosphere.ResourceProperties.ConnectionSettings where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for ConnectionSettings. See--- 'connectionSettings' for a more convenient constructor.-data ConnectionSettings =-  ConnectionSettings-  { _connectionSettingsIdleTimeout :: Val Integer'-  } deriving (Show, Generic)--instance ToJSON ConnectionSettings where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }--instance FromJSON ConnectionSettings where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }---- | Constructor for 'ConnectionSettings' containing required fields as--- arguments.-connectionSettings-  :: Val Integer' -- ^ 'csIdleTimeout'-  -> ConnectionSettings-connectionSettings idleTimeoutarg =-  ConnectionSettings-  { _connectionSettingsIdleTimeout = idleTimeoutarg-  }---- | The time (in seconds) that a connection to the load balancer can remain--- idle, which means no data is sent over the connection. After the specified--- time, the load balancer closes the connection.-csIdleTimeout :: Lens' ConnectionSettings (Val Integer')-csIdleTimeout = lens _connectionSettingsIdleTimeout (\s a -> s { _connectionSettingsIdleTimeout = a })
+ library-gen/Stratosphere/ResourceProperties/DataPipelinePipelineField.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects-fields.html++module Stratosphere.ResourceProperties.DataPipelinePipelineField where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for DataPipelinePipelineField. See+-- | 'dataPipelinePipelineField' for a more convenient constructor.+data DataPipelinePipelineField =+  DataPipelinePipelineField+  { _dataPipelinePipelineFieldKey :: Val Text+  , _dataPipelinePipelineFieldRefValue :: Maybe (Val Text)+  , _dataPipelinePipelineFieldStringValue :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON DataPipelinePipelineField where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++instance FromJSON DataPipelinePipelineField where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++-- | Constructor for 'DataPipelinePipelineField' containing required fields as+-- | arguments.+dataPipelinePipelineField+  :: Val Text -- ^ 'dppfKey'+  -> DataPipelinePipelineField+dataPipelinePipelineField keyarg =+  DataPipelinePipelineField+  { _dataPipelinePipelineFieldKey = keyarg+  , _dataPipelinePipelineFieldRefValue = Nothing+  , _dataPipelinePipelineFieldStringValue = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects-fields.html#cfn-datapipeline-pipeline-pipelineobjects-fields-key+dppfKey :: Lens' DataPipelinePipelineField (Val Text)+dppfKey = lens _dataPipelinePipelineFieldKey (\s a -> s { _dataPipelinePipelineFieldKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects-fields.html#cfn-datapipeline-pipeline-pipelineobjects-fields-refvalue+dppfRefValue :: Lens' DataPipelinePipelineField (Maybe (Val Text))+dppfRefValue = lens _dataPipelinePipelineFieldRefValue (\s a -> s { _dataPipelinePipelineFieldRefValue = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects-fields.html#cfn-datapipeline-pipeline-pipelineobjects-fields-stringvalue+dppfStringValue :: Lens' DataPipelinePipelineField (Maybe (Val Text))+dppfStringValue = lens _dataPipelinePipelineFieldStringValue (\s a -> s { _dataPipelinePipelineFieldStringValue = a })
+ library-gen/Stratosphere/ResourceProperties/DataPipelinePipelineParameterAttribute.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects-attributes.html++module Stratosphere.ResourceProperties.DataPipelinePipelineParameterAttribute where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for DataPipelinePipelineParameterAttribute. See+-- | 'dataPipelinePipelineParameterAttribute' for a more convenient+-- | constructor.+data DataPipelinePipelineParameterAttribute =+  DataPipelinePipelineParameterAttribute+  { _dataPipelinePipelineParameterAttributeKey :: Val Text+  , _dataPipelinePipelineParameterAttributeStringValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON DataPipelinePipelineParameterAttribute where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++instance FromJSON DataPipelinePipelineParameterAttribute where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++-- | Constructor for 'DataPipelinePipelineParameterAttribute' containing+-- | required fields as arguments.+dataPipelinePipelineParameterAttribute+  :: Val Text -- ^ 'dpppaKey'+  -> Val Text -- ^ 'dpppaStringValue'+  -> DataPipelinePipelineParameterAttribute+dataPipelinePipelineParameterAttribute keyarg stringValuearg =+  DataPipelinePipelineParameterAttribute+  { _dataPipelinePipelineParameterAttributeKey = keyarg+  , _dataPipelinePipelineParameterAttributeStringValue = stringValuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects-attributes.html#cfn-datapipeline-pipeline-parameterobjects-attribtues-key+dpppaKey :: Lens' DataPipelinePipelineParameterAttribute (Val Text)+dpppaKey = lens _dataPipelinePipelineParameterAttributeKey (\s a -> s { _dataPipelinePipelineParameterAttributeKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects-attributes.html#cfn-datapipeline-pipeline-parameterobjects-attribtues-stringvalue+dpppaStringValue :: Lens' DataPipelinePipelineParameterAttribute (Val Text)+dpppaStringValue = lens _dataPipelinePipelineParameterAttributeStringValue (\s a -> s { _dataPipelinePipelineParameterAttributeStringValue = a })
+ library-gen/Stratosphere/ResourceProperties/DataPipelinePipelineParameterObject.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects.html++module Stratosphere.ResourceProperties.DataPipelinePipelineParameterObject where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.DataPipelinePipelineParameterAttribute++-- | Full data type definition for DataPipelinePipelineParameterObject. See+-- | 'dataPipelinePipelineParameterObject' for a more convenient constructor.+data DataPipelinePipelineParameterObject =+  DataPipelinePipelineParameterObject+  { _dataPipelinePipelineParameterObjectAttributes :: [DataPipelinePipelineParameterAttribute]+  , _dataPipelinePipelineParameterObjectId :: Val Text+  } deriving (Show, Generic)++instance ToJSON DataPipelinePipelineParameterObject where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++instance FromJSON DataPipelinePipelineParameterObject where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++-- | Constructor for 'DataPipelinePipelineParameterObject' containing required+-- | fields as arguments.+dataPipelinePipelineParameterObject+  :: [DataPipelinePipelineParameterAttribute] -- ^ 'dpppaoAttributes'+  -> Val Text -- ^ 'dpppaoId'+  -> DataPipelinePipelineParameterObject+dataPipelinePipelineParameterObject attributesarg idarg =+  DataPipelinePipelineParameterObject+  { _dataPipelinePipelineParameterObjectAttributes = attributesarg+  , _dataPipelinePipelineParameterObjectId = idarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects.html#cfn-datapipeline-pipeline-parameterobjects-attributes+dpppaoAttributes :: Lens' DataPipelinePipelineParameterObject [DataPipelinePipelineParameterAttribute]+dpppaoAttributes = lens _dataPipelinePipelineParameterObjectAttributes (\s a -> s { _dataPipelinePipelineParameterObjectAttributes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parameterobjects.html#cfn-datapipeline-pipeline-parameterobject-id+dpppaoId :: Lens' DataPipelinePipelineParameterObject (Val Text)+dpppaoId = lens _dataPipelinePipelineParameterObjectId (\s a -> s { _dataPipelinePipelineParameterObjectId = a })
+ library-gen/Stratosphere/ResourceProperties/DataPipelinePipelineParameterValue.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parametervalues.html++module Stratosphere.ResourceProperties.DataPipelinePipelineParameterValue where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for DataPipelinePipelineParameterValue. See+-- | 'dataPipelinePipelineParameterValue' for a more convenient constructor.+data DataPipelinePipelineParameterValue =+  DataPipelinePipelineParameterValue+  { _dataPipelinePipelineParameterValueId :: Val Text+  , _dataPipelinePipelineParameterValueStringValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON DataPipelinePipelineParameterValue where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++instance FromJSON DataPipelinePipelineParameterValue where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++-- | Constructor for 'DataPipelinePipelineParameterValue' containing required+-- | fields as arguments.+dataPipelinePipelineParameterValue+  :: Val Text -- ^ 'dpppvId'+  -> Val Text -- ^ 'dpppvStringValue'+  -> DataPipelinePipelineParameterValue+dataPipelinePipelineParameterValue idarg stringValuearg =+  DataPipelinePipelineParameterValue+  { _dataPipelinePipelineParameterValueId = idarg+  , _dataPipelinePipelineParameterValueStringValue = stringValuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parametervalues.html#cfn-datapipeline-pipeline-parametervalues-id+dpppvId :: Lens' DataPipelinePipelineParameterValue (Val Text)+dpppvId = lens _dataPipelinePipelineParameterValueId (\s a -> s { _dataPipelinePipelineParameterValueId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-parametervalues.html#cfn-datapipeline-pipeline-parametervalues-stringvalue+dpppvStringValue :: Lens' DataPipelinePipelineParameterValue (Val Text)+dpppvStringValue = lens _dataPipelinePipelineParameterValueStringValue (\s a -> s { _dataPipelinePipelineParameterValueStringValue = a })
+ library-gen/Stratosphere/ResourceProperties/DataPipelinePipelinePipelineObject.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html++module Stratosphere.ResourceProperties.DataPipelinePipelinePipelineObject where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.DataPipelinePipelineField++-- | Full data type definition for DataPipelinePipelinePipelineObject. See+-- | 'dataPipelinePipelinePipelineObject' for a more convenient constructor.+data DataPipelinePipelinePipelineObject =+  DataPipelinePipelinePipelineObject+  { _dataPipelinePipelinePipelineObjectFields :: [DataPipelinePipelineField]+  , _dataPipelinePipelinePipelineObjectId :: Val Text+  , _dataPipelinePipelinePipelineObjectName :: Val Text+  } deriving (Show, Generic)++instance ToJSON DataPipelinePipelinePipelineObject where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++instance FromJSON DataPipelinePipelinePipelineObject where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++-- | Constructor for 'DataPipelinePipelinePipelineObject' containing required+-- | fields as arguments.+dataPipelinePipelinePipelineObject+  :: [DataPipelinePipelineField] -- ^ 'dpppioFields'+  -> Val Text -- ^ 'dpppioId'+  -> Val Text -- ^ 'dpppioName'+  -> DataPipelinePipelinePipelineObject+dataPipelinePipelinePipelineObject fieldsarg idarg namearg =+  DataPipelinePipelinePipelineObject+  { _dataPipelinePipelinePipelineObjectFields = fieldsarg+  , _dataPipelinePipelinePipelineObjectId = idarg+  , _dataPipelinePipelinePipelineObjectName = namearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html#cfn-datapipeline-pipeline-pipelineobjects-fields+dpppioFields :: Lens' DataPipelinePipelinePipelineObject [DataPipelinePipelineField]+dpppioFields = lens _dataPipelinePipelinePipelineObjectFields (\s a -> s { _dataPipelinePipelinePipelineObjectFields = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html#cfn-datapipeline-pipeline-pipelineobjects-id+dpppioId :: Lens' DataPipelinePipelinePipelineObject (Val Text)+dpppioId = lens _dataPipelinePipelinePipelineObjectId (\s a -> s { _dataPipelinePipelinePipelineObjectId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelineobjects.html#cfn-datapipeline-pipeline-pipelineobjects-name+dpppioName :: Lens' DataPipelinePipelinePipelineObject (Val Text)+dpppioName = lens _dataPipelinePipelinePipelineObjectName (\s a -> s { _dataPipelinePipelinePipelineObjectName = a })
+ library-gen/Stratosphere/ResourceProperties/DataPipelinePipelinePipelineTag.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelinetags.html++module Stratosphere.ResourceProperties.DataPipelinePipelinePipelineTag where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for DataPipelinePipelinePipelineTag. See+-- | 'dataPipelinePipelinePipelineTag' for a more convenient constructor.+data DataPipelinePipelinePipelineTag =+  DataPipelinePipelinePipelineTag+  { _dataPipelinePipelinePipelineTagKey :: Val Text+  , _dataPipelinePipelinePipelineTagValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON DataPipelinePipelinePipelineTag where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++instance FromJSON DataPipelinePipelinePipelineTag where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++-- | Constructor for 'DataPipelinePipelinePipelineTag' containing required+-- | fields as arguments.+dataPipelinePipelinePipelineTag+  :: Val Text -- ^ 'dppptKey'+  -> Val Text -- ^ 'dppptValue'+  -> DataPipelinePipelinePipelineTag+dataPipelinePipelinePipelineTag keyarg valuearg =+  DataPipelinePipelinePipelineTag+  { _dataPipelinePipelinePipelineTagKey = keyarg+  , _dataPipelinePipelinePipelineTagValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelinetags.html#cfn-datapipeline-pipeline-pipelinetags-key+dppptKey :: Lens' DataPipelinePipelinePipelineTag (Val Text)+dppptKey = lens _dataPipelinePipelinePipelineTagKey (\s a -> s { _dataPipelinePipelinePipelineTagKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datapipeline-pipeline-pipelinetags.html#cfn-datapipeline-pipeline-pipelinetags-value+dppptValue :: Lens' DataPipelinePipelinePipelineTag (Val Text)+dppptValue = lens _dataPipelinePipelinePipelineTagValue (\s a -> s { _dataPipelinePipelinePipelineTagValue = a })
+ library-gen/Stratosphere/ResourceProperties/DirectoryServiceMicrosoftADVpcSettings.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-microsoftad-vpcsettings.html++module Stratosphere.ResourceProperties.DirectoryServiceMicrosoftADVpcSettings where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for DirectoryServiceMicrosoftADVpcSettings. See+-- | 'directoryServiceMicrosoftADVpcSettings' for a more convenient+-- | constructor.+data DirectoryServiceMicrosoftADVpcSettings =+  DirectoryServiceMicrosoftADVpcSettings+  { _directoryServiceMicrosoftADVpcSettingsSubnetIds :: [Val Text]+  , _directoryServiceMicrosoftADVpcSettingsVpcId :: Val Text+  } deriving (Show, Generic)++instance ToJSON DirectoryServiceMicrosoftADVpcSettings where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++instance FromJSON DirectoryServiceMicrosoftADVpcSettings where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++-- | Constructor for 'DirectoryServiceMicrosoftADVpcSettings' containing+-- | required fields as arguments.+directoryServiceMicrosoftADVpcSettings+  :: [Val Text] -- ^ 'dsmadvsSubnetIds'+  -> Val Text -- ^ 'dsmadvsVpcId'+  -> DirectoryServiceMicrosoftADVpcSettings+directoryServiceMicrosoftADVpcSettings subnetIdsarg vpcIdarg =+  DirectoryServiceMicrosoftADVpcSettings+  { _directoryServiceMicrosoftADVpcSettingsSubnetIds = subnetIdsarg+  , _directoryServiceMicrosoftADVpcSettingsVpcId = vpcIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-microsoftad-vpcsettings.html#cfn-directoryservice-microsoftad-vpcsettings-subnetids+dsmadvsSubnetIds :: Lens' DirectoryServiceMicrosoftADVpcSettings [Val Text]+dsmadvsSubnetIds = lens _directoryServiceMicrosoftADVpcSettingsSubnetIds (\s a -> s { _directoryServiceMicrosoftADVpcSettingsSubnetIds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-microsoftad-vpcsettings.html#cfn-directoryservice-microsoftad-vpcsettings-vpcid+dsmadvsVpcId :: Lens' DirectoryServiceMicrosoftADVpcSettings (Val Text)+dsmadvsVpcId = lens _directoryServiceMicrosoftADVpcSettingsVpcId (\s a -> s { _directoryServiceMicrosoftADVpcSettingsVpcId = a })
+ library-gen/Stratosphere/ResourceProperties/DirectoryServiceSimpleADVpcSettings.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-simplead-vpcsettings.html++module Stratosphere.ResourceProperties.DirectoryServiceSimpleADVpcSettings where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for DirectoryServiceSimpleADVpcSettings. See+-- | 'directoryServiceSimpleADVpcSettings' for a more convenient constructor.+data DirectoryServiceSimpleADVpcSettings =+  DirectoryServiceSimpleADVpcSettings+  { _directoryServiceSimpleADVpcSettingsSubnetIds :: [Val Text]+  , _directoryServiceSimpleADVpcSettingsVpcId :: Val Text+  } deriving (Show, Generic)++instance ToJSON DirectoryServiceSimpleADVpcSettings where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++instance FromJSON DirectoryServiceSimpleADVpcSettings where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++-- | Constructor for 'DirectoryServiceSimpleADVpcSettings' containing required+-- | fields as arguments.+directoryServiceSimpleADVpcSettings+  :: [Val Text] -- ^ 'dssadvsSubnetIds'+  -> Val Text -- ^ 'dssadvsVpcId'+  -> DirectoryServiceSimpleADVpcSettings+directoryServiceSimpleADVpcSettings subnetIdsarg vpcIdarg =+  DirectoryServiceSimpleADVpcSettings+  { _directoryServiceSimpleADVpcSettingsSubnetIds = subnetIdsarg+  , _directoryServiceSimpleADVpcSettingsVpcId = vpcIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-simplead-vpcsettings.html#cfn-directoryservice-simplead-vpcsettings-subnetids+dssadvsSubnetIds :: Lens' DirectoryServiceSimpleADVpcSettings [Val Text]+dssadvsSubnetIds = lens _directoryServiceSimpleADVpcSettingsSubnetIds (\s a -> s { _directoryServiceSimpleADVpcSettingsSubnetIds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-directoryservice-simplead-vpcsettings.html#cfn-directoryservice-simplead-vpcsettings-vpcid+dssadvsVpcId :: Lens' DirectoryServiceSimpleADVpcSettings (Val Text)+dssadvsVpcId = lens _directoryServiceSimpleADVpcSettingsVpcId (\s a -> s { _directoryServiceSimpleADVpcSettingsVpcId = a })
− library-gen/Stratosphere/ResourceProperties/DynamoDBAttributeDefinition.hs
@@ -1,52 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | A list of attribute definitions for the AWS::DynamoDB::Table resource.--- Each element is composed of an AttributeName and AttributeType.--module Stratosphere.ResourceProperties.DynamoDBAttributeDefinition where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.Types---- | Full data type definition for DynamoDBAttributeDefinition. See--- 'dynamoDBAttributeDefinition' for a more convenient constructor.-data DynamoDBAttributeDefinition =-  DynamoDBAttributeDefinition-  { _dynamoDBAttributeDefinitionAttributeName :: Val Text-  , _dynamoDBAttributeDefinitionAttributeType :: AttributeType-  } deriving (Show, Generic)--instance ToJSON DynamoDBAttributeDefinition where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }--instance FromJSON DynamoDBAttributeDefinition where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }---- | Constructor for 'DynamoDBAttributeDefinition' containing required fields--- as arguments.-dynamoDBAttributeDefinition-  :: Val Text -- ^ 'ddbadAttributeName'-  -> AttributeType -- ^ 'ddbadAttributeType'-  -> DynamoDBAttributeDefinition-dynamoDBAttributeDefinition attributeNamearg attributeTypearg =-  DynamoDBAttributeDefinition-  { _dynamoDBAttributeDefinitionAttributeName = attributeNamearg-  , _dynamoDBAttributeDefinitionAttributeType = attributeTypearg-  }---- | The name of an attribute. Attribute names can be 1 – 255 characters long--- and have no character restrictions.-ddbadAttributeName :: Lens' DynamoDBAttributeDefinition (Val Text)-ddbadAttributeName = lens _dynamoDBAttributeDefinitionAttributeName (\s a -> s { _dynamoDBAttributeDefinitionAttributeName = a })---- | The data type for the attribute. You can specify S for string data, N for--- numeric data, or B for binary data.-ddbadAttributeType :: Lens' DynamoDBAttributeDefinition AttributeType-ddbadAttributeType = lens _dynamoDBAttributeDefinitionAttributeType (\s a -> s { _dynamoDBAttributeDefinitionAttributeType = a })
− library-gen/Stratosphere/ResourceProperties/DynamoDBGlobalSecondaryIndex.hs
@@ -1,69 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Describes global secondary indexes for the AWS::DynamoDB::Table resource.--module Stratosphere.ResourceProperties.DynamoDBGlobalSecondaryIndex where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.DynamoDBKeySchema-import Stratosphere.ResourceProperties.DynamoDBProjectionObject-import Stratosphere.ResourceProperties.DynamoDBProvisionedThroughput---- | Full data type definition for DynamoDBGlobalSecondaryIndex. See--- 'dynamoDBGlobalSecondaryIndex' for a more convenient constructor.-data DynamoDBGlobalSecondaryIndex =-  DynamoDBGlobalSecondaryIndex-  { _dynamoDBGlobalSecondaryIndexIndexName :: Val Text-  , _dynamoDBGlobalSecondaryIndexKeySchema :: [DynamoDBKeySchema]-  , _dynamoDBGlobalSecondaryIndexProjection :: DynamoDBProjectionObject-  , _dynamoDBGlobalSecondaryIndexProvisionedThroughput :: DynamoDBProvisionedThroughput-  } deriving (Show, Generic)--instance ToJSON DynamoDBGlobalSecondaryIndex where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }--instance FromJSON DynamoDBGlobalSecondaryIndex where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }---- | Constructor for 'DynamoDBGlobalSecondaryIndex' containing required fields--- as arguments.-dynamoDBGlobalSecondaryIndex-  :: Val Text -- ^ 'ddbgsiIndexName'-  -> [DynamoDBKeySchema] -- ^ 'ddbgsiKeySchema'-  -> DynamoDBProjectionObject -- ^ 'ddbgsiProjection'-  -> DynamoDBProvisionedThroughput -- ^ 'ddbgsiProvisionedThroughput'-  -> DynamoDBGlobalSecondaryIndex-dynamoDBGlobalSecondaryIndex indexNamearg keySchemaarg projectionarg provisionedThroughputarg =-  DynamoDBGlobalSecondaryIndex-  { _dynamoDBGlobalSecondaryIndexIndexName = indexNamearg-  , _dynamoDBGlobalSecondaryIndexKeySchema = keySchemaarg-  , _dynamoDBGlobalSecondaryIndexProjection = projectionarg-  , _dynamoDBGlobalSecondaryIndexProvisionedThroughput = provisionedThroughputarg-  }---- | The name of the global secondary index. The index name can be 3 – 255--- characters long and have no character restrictions.-ddbgsiIndexName :: Lens' DynamoDBGlobalSecondaryIndex (Val Text)-ddbgsiIndexName = lens _dynamoDBGlobalSecondaryIndexIndexName (\s a -> s { _dynamoDBGlobalSecondaryIndexIndexName = a })---- | The complete index key schema for the global secondary index, which--- consists of one or more pairs of attribute names and key types.-ddbgsiKeySchema :: Lens' DynamoDBGlobalSecondaryIndex [DynamoDBKeySchema]-ddbgsiKeySchema = lens _dynamoDBGlobalSecondaryIndexKeySchema (\s a -> s { _dynamoDBGlobalSecondaryIndexKeySchema = a })---- | Attributes that are copied (projected) from the source table into the--- index. These attributes are in addition to the primary key attributes and--- index key attributes, which are automatically projected.-ddbgsiProjection :: Lens' DynamoDBGlobalSecondaryIndex DynamoDBProjectionObject-ddbgsiProjection = lens _dynamoDBGlobalSecondaryIndexProjection (\s a -> s { _dynamoDBGlobalSecondaryIndexProjection = a })---- | The provisioned throughput settings for the index.-ddbgsiProvisionedThroughput :: Lens' DynamoDBGlobalSecondaryIndex DynamoDBProvisionedThroughput-ddbgsiProvisionedThroughput = lens _dynamoDBGlobalSecondaryIndexProvisionedThroughput (\s a -> s { _dynamoDBGlobalSecondaryIndexProvisionedThroughput = a })
− library-gen/Stratosphere/ResourceProperties/DynamoDBKeySchema.hs
@@ -1,59 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Describes a primary key for the AWS::DynamoDB::Table resource or a key--- schema for an index. Each element is composed of an AttributeName and--- KeyType. For the primary key of an Amazon DynamoDB table that consists of--- only a hash attribute, specify one element with a KeyType of HASH. For the--- primary key of an Amazon DynamoDB table that consists of a hash and range--- attributes, specify two elements: one with a KeyType of HASH and one with a--- KeyType of RANGE. For a complete discussion of DynamoDB primary keys, see--- Primary Key in the Amazon DynamoDB Developer Guide.--module Stratosphere.ResourceProperties.DynamoDBKeySchema where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.Types---- | Full data type definition for DynamoDBKeySchema. See 'dynamoDBKeySchema'--- for a more convenient constructor.-data DynamoDBKeySchema =-  DynamoDBKeySchema-  { _dynamoDBKeySchemaAttributeName :: Val Text-  , _dynamoDBKeySchemaKeyType :: KeyType-  } deriving (Show, Generic)--instance ToJSON DynamoDBKeySchema where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }--instance FromJSON DynamoDBKeySchema where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }---- | Constructor for 'DynamoDBKeySchema' containing required fields as--- arguments.-dynamoDBKeySchema-  :: Val Text -- ^ 'ddbksAttributeName'-  -> KeyType -- ^ 'ddbksKeyType'-  -> DynamoDBKeySchema-dynamoDBKeySchema attributeNamearg keyTypearg =-  DynamoDBKeySchema-  { _dynamoDBKeySchemaAttributeName = attributeNamearg-  , _dynamoDBKeySchemaKeyType = keyTypearg-  }---- | The attribute name that is used as the primary key for this table.--- Primary key element names can be 1 – 255 characters long and have no--- character restrictions.-ddbksAttributeName :: Lens' DynamoDBKeySchema (Val Text)-ddbksAttributeName = lens _dynamoDBKeySchemaAttributeName (\s a -> s { _dynamoDBKeySchemaAttributeName = a })---- | Represents the attribute data, consisting of the data type and the--- attribute value itself. You can specify HASH or RANGE.-ddbksKeyType :: Lens' DynamoDBKeySchema KeyType-ddbksKeyType = lens _dynamoDBKeySchemaKeyType (\s a -> s { _dynamoDBKeySchemaKeyType = a })
− library-gen/Stratosphere/ResourceProperties/DynamoDBLocalSecondaryIndex.hs
@@ -1,66 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Describes local secondary indexes for the AWS::DynamoDB::Table resource.--- Each index is scoped to a given hash key value. Tables with one or more--- local secondary indexes are subject to an item collection size limit, where--- the amount of data within a given item collection cannot exceed 10 GB.--module Stratosphere.ResourceProperties.DynamoDBLocalSecondaryIndex where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.DynamoDBKeySchema-import Stratosphere.ResourceProperties.DynamoDBProjectionObject---- | Full data type definition for DynamoDBLocalSecondaryIndex. See--- 'dynamoDBLocalSecondaryIndex' for a more convenient constructor.-data DynamoDBLocalSecondaryIndex =-  DynamoDBLocalSecondaryIndex-  { _dynamoDBLocalSecondaryIndexIndexName :: Val Text-  , _dynamoDBLocalSecondaryIndexKeySchema :: [DynamoDBKeySchema]-  , _dynamoDBLocalSecondaryIndexProjection :: DynamoDBProjectionObject-  } deriving (Show, Generic)--instance ToJSON DynamoDBLocalSecondaryIndex where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }--instance FromJSON DynamoDBLocalSecondaryIndex where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }---- | Constructor for 'DynamoDBLocalSecondaryIndex' containing required fields--- as arguments.-dynamoDBLocalSecondaryIndex-  :: Val Text -- ^ 'ddblsiIndexName'-  -> [DynamoDBKeySchema] -- ^ 'ddblsiKeySchema'-  -> DynamoDBProjectionObject -- ^ 'ddblsiProjection'-  -> DynamoDBLocalSecondaryIndex-dynamoDBLocalSecondaryIndex indexNamearg keySchemaarg projectionarg =-  DynamoDBLocalSecondaryIndex-  { _dynamoDBLocalSecondaryIndexIndexName = indexNamearg-  , _dynamoDBLocalSecondaryIndexKeySchema = keySchemaarg-  , _dynamoDBLocalSecondaryIndexProjection = projectionarg-  }---- | The name of the local secondary index. The index name can be 3 – 255--- characters long and have no character restrictions.-ddblsiIndexName :: Lens' DynamoDBLocalSecondaryIndex (Val Text)-ddblsiIndexName = lens _dynamoDBLocalSecondaryIndexIndexName (\s a -> s { _dynamoDBLocalSecondaryIndexIndexName = a })---- | The complete index key schema for the local secondary index, which--- consists of one or more pairs of attribute names and key types. For local--- secondary indexes, the hash key must be the same as that of the source--- table.-ddblsiKeySchema :: Lens' DynamoDBLocalSecondaryIndex [DynamoDBKeySchema]-ddblsiKeySchema = lens _dynamoDBLocalSecondaryIndexKeySchema (\s a -> s { _dynamoDBLocalSecondaryIndexKeySchema = a })---- | Attributes that are copied (projected) from the source table into the--- index. These attributes are additions to the primary key attributes and--- index key attributes, which are automatically projected.-ddblsiProjection :: Lens' DynamoDBLocalSecondaryIndex DynamoDBProjectionObject-ddblsiProjection = lens _dynamoDBLocalSecondaryIndexProjection (\s a -> s { _dynamoDBLocalSecondaryIndexProjection = a })
− library-gen/Stratosphere/ResourceProperties/DynamoDBProjectionObject.hs
@@ -1,57 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Attributes that are copied (projected) from the source table into the--- index. These attributes are additions to the primary key attributes and--- index key attributes, which are automatically projected.--module Stratosphere.ResourceProperties.DynamoDBProjectionObject where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.Types---- | Full data type definition for DynamoDBProjectionObject. See--- 'dynamoDBProjectionObject' for a more convenient constructor.-data DynamoDBProjectionObject =-  DynamoDBProjectionObject-  { _dynamoDBProjectionObjectNonKeyAttributes :: Maybe [Val Text]-  , _dynamoDBProjectionObjectProjectionType :: Maybe ProjectionType-  } deriving (Show, Generic)--instance ToJSON DynamoDBProjectionObject where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }--instance FromJSON DynamoDBProjectionObject where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }---- | Constructor for 'DynamoDBProjectionObject' containing required fields as--- arguments.-dynamoDBProjectionObject-  :: DynamoDBProjectionObject-dynamoDBProjectionObject  =-  DynamoDBProjectionObject-  { _dynamoDBProjectionObjectNonKeyAttributes = Nothing-  , _dynamoDBProjectionObjectProjectionType = Nothing-  }---- | The non-key attribute names that are projected into the index. For local--- secondary indexes, the total count of NonKeyAttributes summed across all of--- the local secondary indexes must not exceed 20. If you project the same--- attribute into two different indexes, this counts as two distinct--- attributes in determining the total.-ddbpoNonKeyAttributes :: Lens' DynamoDBProjectionObject (Maybe [Val Text])-ddbpoNonKeyAttributes = lens _dynamoDBProjectionObjectNonKeyAttributes (\s a -> s { _dynamoDBProjectionObjectNonKeyAttributes = a })---- | The set of attributes that are projected into the index: Only the index--- and primary keys are projected into the index. Only the specified table--- attributes are projected into the index. The list of projected attributes--- are in NonKeyAttributes. All of the table attributes are projected into the--- index.-ddbpoProjectionType :: Lens' DynamoDBProjectionObject (Maybe ProjectionType)-ddbpoProjectionType = lens _dynamoDBProjectionObjectProjectionType (\s a -> s { _dynamoDBProjectionObjectProjectionType = a })
− library-gen/Stratosphere/ResourceProperties/DynamoDBProvisionedThroughput.hs
@@ -1,57 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Describes a set of provisioned throughput values for an--- AWS::DynamoDB::Table resource. DynamoDB uses these capacity units to--- allocate sufficient resources to provide the requested throughput. For a--- complete discussion of DynamoDB provisioned throughput values, see--- Specifying Read and Write Requirements in the DynamoDB Developer Guide.--module Stratosphere.ResourceProperties.DynamoDBProvisionedThroughput where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for DynamoDBProvisionedThroughput. See--- 'dynamoDBProvisionedThroughput' for a more convenient constructor.-data DynamoDBProvisionedThroughput =-  DynamoDBProvisionedThroughput-  { _dynamoDBProvisionedThroughputReadCapacityUnits :: Val Integer'-  , _dynamoDBProvisionedThroughputWriteCapacityUnits :: Val Integer'-  } deriving (Show, Generic)--instance ToJSON DynamoDBProvisionedThroughput where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }--instance FromJSON DynamoDBProvisionedThroughput where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }---- | Constructor for 'DynamoDBProvisionedThroughput' containing required--- fields as arguments.-dynamoDBProvisionedThroughput-  :: Val Integer' -- ^ 'ddbptReadCapacityUnits'-  -> Val Integer' -- ^ 'ddbptWriteCapacityUnits'-  -> DynamoDBProvisionedThroughput-dynamoDBProvisionedThroughput readCapacityUnitsarg writeCapacityUnitsarg =-  DynamoDBProvisionedThroughput-  { _dynamoDBProvisionedThroughputReadCapacityUnits = readCapacityUnitsarg-  , _dynamoDBProvisionedThroughputWriteCapacityUnits = writeCapacityUnitsarg-  }---- | Sets the desired minimum number of consistent reads of items (up to 1KB--- in size) per second for the specified table before Amazon DynamoDB balances--- the load.-ddbptReadCapacityUnits :: Lens' DynamoDBProvisionedThroughput (Val Integer')-ddbptReadCapacityUnits = lens _dynamoDBProvisionedThroughputReadCapacityUnits (\s a -> s { _dynamoDBProvisionedThroughputReadCapacityUnits = a })---- | Sets the desired minimum number of consistent writes of items (up to 1KB--- in size) per second for the specified table before Amazon DynamoDB balances--- the load.-ddbptWriteCapacityUnits :: Lens' DynamoDBProvisionedThroughput (Val Integer')-ddbptWriteCapacityUnits = lens _dynamoDBProvisionedThroughputWriteCapacityUnits (\s a -> s { _dynamoDBProvisionedThroughputWriteCapacityUnits = a })
− library-gen/Stratosphere/ResourceProperties/DynamoDBStreamSpecification.hs
@@ -1,45 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | StreamSpecification is a property of the AWS::DynamoDB::Table resource--- that defines the settings of a DynamoDB table's stream.--module Stratosphere.ResourceProperties.DynamoDBStreamSpecification where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.Types---- | Full data type definition for DynamoDBStreamSpecification. See--- 'dynamoDBStreamSpecification' for a more convenient constructor.-data DynamoDBStreamSpecification =-  DynamoDBStreamSpecification-  { _dynamoDBStreamSpecificationStreamViewType :: StreamViewType-  } deriving (Show, Generic)--instance ToJSON DynamoDBStreamSpecification where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }--instance FromJSON DynamoDBStreamSpecification where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }---- | Constructor for 'DynamoDBStreamSpecification' containing required fields--- as arguments.-dynamoDBStreamSpecification-  :: StreamViewType -- ^ 'ddbssStreamViewType'-  -> DynamoDBStreamSpecification-dynamoDBStreamSpecification streamViewTypearg =-  DynamoDBStreamSpecification-  { _dynamoDBStreamSpecificationStreamViewType = streamViewTypearg-  }---- | Determines the information that the stream captures when an item in the--- table is modified. For valid values, see StreamSpecification in the Amazon--- DynamoDB API Reference.-ddbssStreamViewType :: Lens' DynamoDBStreamSpecification StreamViewType-ddbssStreamViewType = lens _dynamoDBStreamSpecificationStreamViewType (\s a -> s { _dynamoDBStreamSpecificationStreamViewType = a })
+ library-gen/Stratosphere/ResourceProperties/DynamoDBTableAttributeDefinition.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html++module Stratosphere.ResourceProperties.DynamoDBTableAttributeDefinition where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.Types++-- | Full data type definition for DynamoDBTableAttributeDefinition. See+-- | 'dynamoDBTableAttributeDefinition' for a more convenient constructor.+data DynamoDBTableAttributeDefinition =+  DynamoDBTableAttributeDefinition+  { _dynamoDBTableAttributeDefinitionAttributeName :: Val Text+  , _dynamoDBTableAttributeDefinitionAttributeType :: Val AttributeType+  } deriving (Show, Generic)++instance ToJSON DynamoDBTableAttributeDefinition where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++instance FromJSON DynamoDBTableAttributeDefinition where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++-- | Constructor for 'DynamoDBTableAttributeDefinition' containing required+-- | fields as arguments.+dynamoDBTableAttributeDefinition+  :: Val Text -- ^ 'ddbtadAttributeName'+  -> Val AttributeType -- ^ 'ddbtadAttributeType'+  -> DynamoDBTableAttributeDefinition+dynamoDBTableAttributeDefinition attributeNamearg attributeTypearg =+  DynamoDBTableAttributeDefinition+  { _dynamoDBTableAttributeDefinitionAttributeName = attributeNamearg+  , _dynamoDBTableAttributeDefinitionAttributeType = attributeTypearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename+ddbtadAttributeName :: Lens' DynamoDBTableAttributeDefinition (Val Text)+ddbtadAttributeName = lens _dynamoDBTableAttributeDefinitionAttributeName (\s a -> s { _dynamoDBTableAttributeDefinitionAttributeName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename-attributetype+ddbtadAttributeType :: Lens' DynamoDBTableAttributeDefinition (Val AttributeType)+ddbtadAttributeType = lens _dynamoDBTableAttributeDefinitionAttributeType (\s a -> s { _dynamoDBTableAttributeDefinitionAttributeType = a })
+ library-gen/Stratosphere/ResourceProperties/DynamoDBTableGlobalSecondaryIndex.hs view
@@ -0,0 +1,65 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html++module Stratosphere.ResourceProperties.DynamoDBTableGlobalSecondaryIndex where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.DynamoDBTableKeySchema+import Stratosphere.ResourceProperties.DynamoDBTableProjection+import Stratosphere.ResourceProperties.DynamoDBTableProvisionedThroughput++-- | Full data type definition for DynamoDBTableGlobalSecondaryIndex. See+-- | 'dynamoDBTableGlobalSecondaryIndex' for a more convenient constructor.+data DynamoDBTableGlobalSecondaryIndex =+  DynamoDBTableGlobalSecondaryIndex+  { _dynamoDBTableGlobalSecondaryIndexIndexName :: Val Text+  , _dynamoDBTableGlobalSecondaryIndexKeySchema :: [DynamoDBTableKeySchema]+  , _dynamoDBTableGlobalSecondaryIndexProjection :: DynamoDBTableProjection+  , _dynamoDBTableGlobalSecondaryIndexProvisionedThroughput :: DynamoDBTableProvisionedThroughput+  } deriving (Show, Generic)++instance ToJSON DynamoDBTableGlobalSecondaryIndex where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON DynamoDBTableGlobalSecondaryIndex where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'DynamoDBTableGlobalSecondaryIndex' containing required+-- | fields as arguments.+dynamoDBTableGlobalSecondaryIndex+  :: Val Text -- ^ 'ddbtgsiIndexName'+  -> [DynamoDBTableKeySchema] -- ^ 'ddbtgsiKeySchema'+  -> DynamoDBTableProjection -- ^ 'ddbtgsiProjection'+  -> DynamoDBTableProvisionedThroughput -- ^ 'ddbtgsiProvisionedThroughput'+  -> DynamoDBTableGlobalSecondaryIndex+dynamoDBTableGlobalSecondaryIndex indexNamearg keySchemaarg projectionarg provisionedThroughputarg =+  DynamoDBTableGlobalSecondaryIndex+  { _dynamoDBTableGlobalSecondaryIndexIndexName = indexNamearg+  , _dynamoDBTableGlobalSecondaryIndexKeySchema = keySchemaarg+  , _dynamoDBTableGlobalSecondaryIndexProjection = projectionarg+  , _dynamoDBTableGlobalSecondaryIndexProvisionedThroughput = provisionedThroughputarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-indexname+ddbtgsiIndexName :: Lens' DynamoDBTableGlobalSecondaryIndex (Val Text)+ddbtgsiIndexName = lens _dynamoDBTableGlobalSecondaryIndexIndexName (\s a -> s { _dynamoDBTableGlobalSecondaryIndexIndexName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-keyschema+ddbtgsiKeySchema :: Lens' DynamoDBTableGlobalSecondaryIndex [DynamoDBTableKeySchema]+ddbtgsiKeySchema = lens _dynamoDBTableGlobalSecondaryIndexKeySchema (\s a -> s { _dynamoDBTableGlobalSecondaryIndexKeySchema = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-projection+ddbtgsiProjection :: Lens' DynamoDBTableGlobalSecondaryIndex DynamoDBTableProjection+ddbtgsiProjection = lens _dynamoDBTableGlobalSecondaryIndexProjection (\s a -> s { _dynamoDBTableGlobalSecondaryIndexProjection = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-provisionedthroughput+ddbtgsiProvisionedThroughput :: Lens' DynamoDBTableGlobalSecondaryIndex DynamoDBTableProvisionedThroughput+ddbtgsiProvisionedThroughput = lens _dynamoDBTableGlobalSecondaryIndexProvisionedThroughput (\s a -> s { _dynamoDBTableGlobalSecondaryIndexProvisionedThroughput = a })
+ library-gen/Stratosphere/ResourceProperties/DynamoDBTableKeySchema.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html++module Stratosphere.ResourceProperties.DynamoDBTableKeySchema where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.Types++-- | Full data type definition for DynamoDBTableKeySchema. See+-- | 'dynamoDBTableKeySchema' for a more convenient constructor.+data DynamoDBTableKeySchema =+  DynamoDBTableKeySchema+  { _dynamoDBTableKeySchemaAttributeName :: Val Text+  , _dynamoDBTableKeySchemaKeyType :: Val KeyType+  } deriving (Show, Generic)++instance ToJSON DynamoDBTableKeySchema where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++instance FromJSON DynamoDBTableKeySchema where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++-- | Constructor for 'DynamoDBTableKeySchema' containing required fields as+-- | arguments.+dynamoDBTableKeySchema+  :: Val Text -- ^ 'ddbtksAttributeName'+  -> Val KeyType -- ^ 'ddbtksKeyType'+  -> DynamoDBTableKeySchema+dynamoDBTableKeySchema attributeNamearg keyTypearg =+  DynamoDBTableKeySchema+  { _dynamoDBTableKeySchemaAttributeName = attributeNamearg+  , _dynamoDBTableKeySchemaKeyType = keyTypearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html#aws-properties-dynamodb-keyschema-attributename+ddbtksAttributeName :: Lens' DynamoDBTableKeySchema (Val Text)+ddbtksAttributeName = lens _dynamoDBTableKeySchemaAttributeName (\s a -> s { _dynamoDBTableKeySchemaAttributeName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html#aws-properties-dynamodb-keyschema-keytype+ddbtksKeyType :: Lens' DynamoDBTableKeySchema (Val KeyType)+ddbtksKeyType = lens _dynamoDBTableKeySchemaKeyType (\s a -> s { _dynamoDBTableKeySchemaKeyType = a })
+ library-gen/Stratosphere/ResourceProperties/DynamoDBTableLocalSecondaryIndex.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html++module Stratosphere.ResourceProperties.DynamoDBTableLocalSecondaryIndex where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.DynamoDBTableKeySchema+import Stratosphere.ResourceProperties.DynamoDBTableProjection++-- | Full data type definition for DynamoDBTableLocalSecondaryIndex. See+-- | 'dynamoDBTableLocalSecondaryIndex' for a more convenient constructor.+data DynamoDBTableLocalSecondaryIndex =+  DynamoDBTableLocalSecondaryIndex+  { _dynamoDBTableLocalSecondaryIndexIndexName :: Val Text+  , _dynamoDBTableLocalSecondaryIndexKeySchema :: [DynamoDBTableKeySchema]+  , _dynamoDBTableLocalSecondaryIndexProjection :: DynamoDBTableProjection+  } deriving (Show, Generic)++instance ToJSON DynamoDBTableLocalSecondaryIndex where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++instance FromJSON DynamoDBTableLocalSecondaryIndex where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++-- | Constructor for 'DynamoDBTableLocalSecondaryIndex' containing required+-- | fields as arguments.+dynamoDBTableLocalSecondaryIndex+  :: Val Text -- ^ 'ddbtlsiIndexName'+  -> [DynamoDBTableKeySchema] -- ^ 'ddbtlsiKeySchema'+  -> DynamoDBTableProjection -- ^ 'ddbtlsiProjection'+  -> DynamoDBTableLocalSecondaryIndex+dynamoDBTableLocalSecondaryIndex indexNamearg keySchemaarg projectionarg =+  DynamoDBTableLocalSecondaryIndex+  { _dynamoDBTableLocalSecondaryIndexIndexName = indexNamearg+  , _dynamoDBTableLocalSecondaryIndexKeySchema = keySchemaarg+  , _dynamoDBTableLocalSecondaryIndexProjection = projectionarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-indexname+ddbtlsiIndexName :: Lens' DynamoDBTableLocalSecondaryIndex (Val Text)+ddbtlsiIndexName = lens _dynamoDBTableLocalSecondaryIndexIndexName (\s a -> s { _dynamoDBTableLocalSecondaryIndexIndexName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-keyschema+ddbtlsiKeySchema :: Lens' DynamoDBTableLocalSecondaryIndex [DynamoDBTableKeySchema]+ddbtlsiKeySchema = lens _dynamoDBTableLocalSecondaryIndexKeySchema (\s a -> s { _dynamoDBTableLocalSecondaryIndexKeySchema = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-projection+ddbtlsiProjection :: Lens' DynamoDBTableLocalSecondaryIndex DynamoDBTableProjection+ddbtlsiProjection = lens _dynamoDBTableLocalSecondaryIndexProjection (\s a -> s { _dynamoDBTableLocalSecondaryIndexProjection = a })
+ library-gen/Stratosphere/ResourceProperties/DynamoDBTableProjection.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-projectionobject.html++module Stratosphere.ResourceProperties.DynamoDBTableProjection where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.Types++-- | Full data type definition for DynamoDBTableProjection. See+-- | 'dynamoDBTableProjection' for a more convenient constructor.+data DynamoDBTableProjection =+  DynamoDBTableProjection+  { _dynamoDBTableProjectionNonKeyAttributes :: Maybe [Val Text]+  , _dynamoDBTableProjectionProjectionType :: Maybe (Val ProjectionType)+  } deriving (Show, Generic)++instance ToJSON DynamoDBTableProjection where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++instance FromJSON DynamoDBTableProjection where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++-- | Constructor for 'DynamoDBTableProjection' containing required fields as+-- | arguments.+dynamoDBTableProjection+  :: DynamoDBTableProjection+dynamoDBTableProjection  =+  DynamoDBTableProjection+  { _dynamoDBTableProjectionNonKeyAttributes = Nothing+  , _dynamoDBTableProjectionProjectionType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-projectionobject.html#cfn-dynamodb-projectionobj-nonkeyatt+ddbtpNonKeyAttributes :: Lens' DynamoDBTableProjection (Maybe [Val Text])+ddbtpNonKeyAttributes = lens _dynamoDBTableProjectionNonKeyAttributes (\s a -> s { _dynamoDBTableProjectionNonKeyAttributes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-projectionobject.html#cfn-dynamodb-projectionobj-projtype+ddbtpProjectionType :: Lens' DynamoDBTableProjection (Maybe (Val ProjectionType))+ddbtpProjectionType = lens _dynamoDBTableProjectionProjectionType (\s a -> s { _dynamoDBTableProjectionProjectionType = a })
+ library-gen/Stratosphere/ResourceProperties/DynamoDBTableProvisionedThroughput.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html++module Stratosphere.ResourceProperties.DynamoDBTableProvisionedThroughput where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for DynamoDBTableProvisionedThroughput. See+-- | 'dynamoDBTableProvisionedThroughput' for a more convenient constructor.+data DynamoDBTableProvisionedThroughput =+  DynamoDBTableProvisionedThroughput+  { _dynamoDBTableProvisionedThroughputReadCapacityUnits :: Val Integer'+  , _dynamoDBTableProvisionedThroughputWriteCapacityUnits :: Val Integer'+  } deriving (Show, Generic)++instance ToJSON DynamoDBTableProvisionedThroughput where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++instance FromJSON DynamoDBTableProvisionedThroughput where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++-- | Constructor for 'DynamoDBTableProvisionedThroughput' containing required+-- | fields as arguments.+dynamoDBTableProvisionedThroughput+  :: Val Integer' -- ^ 'ddbtptReadCapacityUnits'+  -> Val Integer' -- ^ 'ddbtptWriteCapacityUnits'+  -> DynamoDBTableProvisionedThroughput+dynamoDBTableProvisionedThroughput readCapacityUnitsarg writeCapacityUnitsarg =+  DynamoDBTableProvisionedThroughput+  { _dynamoDBTableProvisionedThroughputReadCapacityUnits = readCapacityUnitsarg+  , _dynamoDBTableProvisionedThroughputWriteCapacityUnits = writeCapacityUnitsarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html#cfn-dynamodb-provisionedthroughput-readcapacityunits+ddbtptReadCapacityUnits :: Lens' DynamoDBTableProvisionedThroughput (Val Integer')+ddbtptReadCapacityUnits = lens _dynamoDBTableProvisionedThroughputReadCapacityUnits (\s a -> s { _dynamoDBTableProvisionedThroughputReadCapacityUnits = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html#cfn-dynamodb-provisionedthroughput-writecapacityunits+ddbtptWriteCapacityUnits :: Lens' DynamoDBTableProvisionedThroughput (Val Integer')+ddbtptWriteCapacityUnits = lens _dynamoDBTableProvisionedThroughputWriteCapacityUnits (\s a -> s { _dynamoDBTableProvisionedThroughputWriteCapacityUnits = a })
+ library-gen/Stratosphere/ResourceProperties/DynamoDBTableStreamSpecification.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-streamspecification.html++module Stratosphere.ResourceProperties.DynamoDBTableStreamSpecification where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.Types++-- | Full data type definition for DynamoDBTableStreamSpecification. See+-- | 'dynamoDBTableStreamSpecification' for a more convenient constructor.+data DynamoDBTableStreamSpecification =+  DynamoDBTableStreamSpecification+  { _dynamoDBTableStreamSpecificationStreamViewType :: Val StreamViewType+  } deriving (Show, Generic)++instance ToJSON DynamoDBTableStreamSpecification where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++instance FromJSON DynamoDBTableStreamSpecification where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++-- | Constructor for 'DynamoDBTableStreamSpecification' containing required+-- | fields as arguments.+dynamoDBTableStreamSpecification+  :: Val StreamViewType -- ^ 'ddbtssStreamViewType'+  -> DynamoDBTableStreamSpecification+dynamoDBTableStreamSpecification streamViewTypearg =+  DynamoDBTableStreamSpecification+  { _dynamoDBTableStreamSpecificationStreamViewType = streamViewTypearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-streamspecification.html#cfn-dynamodb-streamspecification-streamviewtype+ddbtssStreamViewType :: Lens' DynamoDBTableStreamSpecification (Val StreamViewType)+ddbtssStreamViewType = lens _dynamoDBTableStreamSpecificationStreamViewType (\s a -> s { _dynamoDBTableStreamSpecificationStreamViewType = a })
− library-gen/Stratosphere/ResourceProperties/EBSBlockDevice.hs
@@ -1,83 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The Amazon Elastic Block Store block device type is an embedded property--- of the Amazon EC2 Block Device Mapping Property property.--module Stratosphere.ResourceProperties.EBSBlockDevice where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for EBSBlockDevice. See 'ebsBlockDevice' for a--- more convenient constructor.-data EBSBlockDevice =-  EBSBlockDevice-  { _eBSBlockDeviceDeleteOnTermination :: Maybe (Val Bool')-  , _eBSBlockDeviceEncrypted :: Maybe (Val Bool')-  , _eBSBlockDeviceIops :: Maybe (Val Integer')-  , _eBSBlockDeviceSnapshotId :: Maybe (Val Text)-  , _eBSBlockDeviceVolumeSize :: Maybe (Val Text)-  , _eBSBlockDeviceVolumeType :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON EBSBlockDevice where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }--instance FromJSON EBSBlockDevice where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }---- | Constructor for 'EBSBlockDevice' containing required fields as arguments.-ebsBlockDevice-  :: EBSBlockDevice-ebsBlockDevice  =-  EBSBlockDevice-  { _eBSBlockDeviceDeleteOnTermination = Nothing-  , _eBSBlockDeviceEncrypted = Nothing-  , _eBSBlockDeviceIops = Nothing-  , _eBSBlockDeviceSnapshotId = Nothing-  , _eBSBlockDeviceVolumeSize = Nothing-  , _eBSBlockDeviceVolumeType = Nothing-  }---- | Determines whether to delete the volume on instance termination. The--- default value is true.-ebsbdDeleteOnTermination :: Lens' EBSBlockDevice (Maybe (Val Bool'))-ebsbdDeleteOnTermination = lens _eBSBlockDeviceDeleteOnTermination (\s a -> s { _eBSBlockDeviceDeleteOnTermination = a })---- | Indicates whether the volume is encrypted. Encrypted Amazon EBS volumes--- can only be attached to instance types that support Amazon EBS encryption.--- Volumes that are created from encrypted snapshots are automatically--- encrypted. You cannot create an encrypted volume from an unencrypted--- snapshot or vice versa. If your AMI uses encrypted volumes, you can only--- launch the AMI on supported instance types. For more information, see--- Amazon EBS encryption in the Amazon EC2 User Guide for Linux Instances.-ebsbdEncrypted :: Lens' EBSBlockDevice (Maybe (Val Bool'))-ebsbdEncrypted = lens _eBSBlockDeviceEncrypted (\s a -> s { _eBSBlockDeviceEncrypted = a })---- | The number of I/O operations per second (IOPS) that the volume supports.--- This can be an integer from 100 - 2000.-ebsbdIops :: Lens' EBSBlockDevice (Maybe (Val Integer'))-ebsbdIops = lens _eBSBlockDeviceIops (\s a -> s { _eBSBlockDeviceIops = a })---- | The snapshot ID of the volume to use to create a block device.-ebsbdSnapshotId :: Lens' EBSBlockDevice (Maybe (Val Text))-ebsbdSnapshotId = lens _eBSBlockDeviceSnapshotId (\s a -> s { _eBSBlockDeviceSnapshotId = a })---- | The volume size, in gibibytes (GiB). This can be a number from 1 – 1024.--- If the volume type is io1, the minimum value is 10.-ebsbdVolumeSize :: Lens' EBSBlockDevice (Maybe (Val Text))-ebsbdVolumeSize = lens _eBSBlockDeviceVolumeSize (\s a -> s { _eBSBlockDeviceVolumeSize = a })---- | The volume type. You can specify standard, io1, or gp2. If you set the--- type to io1, you must also set the Iops property. For more information--- about these values and the default value, see CreateVolume in the Amazon--- EC2 API Reference.-ebsbdVolumeType :: Lens' EBSBlockDevice (Maybe (Val Text))-ebsbdVolumeType = lens _eBSBlockDeviceVolumeType (\s a -> s { _eBSBlockDeviceVolumeType = a })
− library-gen/Stratosphere/ResourceProperties/EC2BlockDeviceMapping.hs
@@ -1,63 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The Amazon EC2 block device mapping property is an embedded property of--- the AWS::EC2::Instance resource. For block device mappings for an Auto--- Scaling launch configuration, see AutoScaling Block Device Mapping.--module Stratosphere.ResourceProperties.EC2BlockDeviceMapping where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.EBSBlockDevice---- | Full data type definition for EC2BlockDeviceMapping. See--- 'ec2BlockDeviceMapping' for a more convenient constructor.-data EC2BlockDeviceMapping =-  EC2BlockDeviceMapping-  { _eC2BlockDeviceMappingDeviceName :: Val Text-  , _eC2BlockDeviceMappingEbs :: Maybe EBSBlockDevice-  , _eC2BlockDeviceMappingNoDevice :: Maybe ()-  , _eC2BlockDeviceMappingVirtualName :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON EC2BlockDeviceMapping where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }--instance FromJSON EC2BlockDeviceMapping where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }---- | Constructor for 'EC2BlockDeviceMapping' containing required fields as--- arguments.-ec2BlockDeviceMapping-  :: Val Text -- ^ 'ecbdmDeviceName'-  -> EC2BlockDeviceMapping-ec2BlockDeviceMapping deviceNamearg =-  EC2BlockDeviceMapping-  { _eC2BlockDeviceMappingDeviceName = deviceNamearg-  , _eC2BlockDeviceMappingEbs = Nothing-  , _eC2BlockDeviceMappingNoDevice = Nothing-  , _eC2BlockDeviceMappingVirtualName = Nothing-  }---- | The name of the device within Amazon EC2.-ecbdmDeviceName :: Lens' EC2BlockDeviceMapping (Val Text)-ecbdmDeviceName = lens _eC2BlockDeviceMappingDeviceName (\s a -> s { _eC2BlockDeviceMappingDeviceName = a })---- |-ecbdmEbs :: Lens' EC2BlockDeviceMapping (Maybe EBSBlockDevice)-ecbdmEbs = lens _eC2BlockDeviceMappingEbs (\s a -> s { _eC2BlockDeviceMappingEbs = a })---- | This property can be used to unmap a defined device.-ecbdmNoDevice :: Lens' EC2BlockDeviceMapping (Maybe ())-ecbdmNoDevice = lens _eC2BlockDeviceMappingNoDevice (\s a -> s { _eC2BlockDeviceMappingNoDevice = a })---- | The name of the virtual device. The name must be in the form ephemeralX--- where X is a number starting from zero (0); for example, ephemeral0.-ecbdmVirtualName :: Lens' EC2BlockDeviceMapping (Maybe (Val Text))-ecbdmVirtualName = lens _eC2BlockDeviceMappingVirtualName (\s a -> s { _eC2BlockDeviceMappingVirtualName = a })
+ library-gen/Stratosphere/ResourceProperties/EC2DHCPOptionsTag.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html++module Stratosphere.ResourceProperties.EC2DHCPOptionsTag where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2DHCPOptionsTag. See 'ec2DHCPOptionsTag'+-- | for a more convenient constructor.+data EC2DHCPOptionsTag =+  EC2DHCPOptionsTag+  { _eC2DHCPOptionsTagKey :: Val Text+  , _eC2DHCPOptionsTagValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2DHCPOptionsTag where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }++instance FromJSON EC2DHCPOptionsTag where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }++-- | Constructor for 'EC2DHCPOptionsTag' containing required fields as+-- | arguments.+ec2DHCPOptionsTag+  :: Val Text -- ^ 'ecdhcpotKey'+  -> Val Text -- ^ 'ecdhcpotValue'+  -> EC2DHCPOptionsTag+ec2DHCPOptionsTag keyarg valuearg =+  EC2DHCPOptionsTag+  { _eC2DHCPOptionsTagKey = keyarg+  , _eC2DHCPOptionsTagValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html#cfn-resource-tags-key+ecdhcpotKey :: Lens' EC2DHCPOptionsTag (Val Text)+ecdhcpotKey = lens _eC2DHCPOptionsTagKey (\s a -> s { _eC2DHCPOptionsTagKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html#cfn-resource-tags-value+ecdhcpotValue :: Lens' EC2DHCPOptionsTag (Val Text)+ecdhcpotValue = lens _eC2DHCPOptionsTagValue (\s a -> s { _eC2DHCPOptionsTagValue = a })
+ library-gen/Stratosphere/ResourceProperties/EC2InstanceAssociationParameter.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html++module Stratosphere.ResourceProperties.EC2InstanceAssociationParameter where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2InstanceAssociationParameter. See+-- | 'ec2InstanceAssociationParameter' for a more convenient constructor.+data EC2InstanceAssociationParameter =+  EC2InstanceAssociationParameter+  { _eC2InstanceAssociationParameterKey :: Val Text+  , _eC2InstanceAssociationParameterValue :: [Val Text]+  } deriving (Show, Generic)++instance ToJSON EC2InstanceAssociationParameter where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++instance FromJSON EC2InstanceAssociationParameter where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++-- | Constructor for 'EC2InstanceAssociationParameter' containing required+-- | fields as arguments.+ec2InstanceAssociationParameter+  :: Val Text -- ^ 'eciapKey'+  -> [Val Text] -- ^ 'eciapValue'+  -> EC2InstanceAssociationParameter+ec2InstanceAssociationParameter keyarg valuearg =+  EC2InstanceAssociationParameter+  { _eC2InstanceAssociationParameterKey = keyarg+  , _eC2InstanceAssociationParameterValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html#cfn-ec2-instance-ssmassociations-associationparameters-key+eciapKey :: Lens' EC2InstanceAssociationParameter (Val Text)+eciapKey = lens _eC2InstanceAssociationParameterKey (\s a -> s { _eC2InstanceAssociationParameterKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations-associationparameters.html#cfn-ec2-instance-ssmassociations-associationparameters-value+eciapValue :: Lens' EC2InstanceAssociationParameter [Val Text]+eciapValue = lens _eC2InstanceAssociationParameterValue (\s a -> s { _eC2InstanceAssociationParameterValue = a })
+ library-gen/Stratosphere/ResourceProperties/EC2InstanceBlockDeviceMapping.hs view
@@ -0,0 +1,61 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html++module Stratosphere.ResourceProperties.EC2InstanceBlockDeviceMapping where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EC2InstanceEbs+import Stratosphere.ResourceProperties.EC2InstanceNoDevice++-- | Full data type definition for EC2InstanceBlockDeviceMapping. See+-- | 'ec2InstanceBlockDeviceMapping' for a more convenient constructor.+data EC2InstanceBlockDeviceMapping =+  EC2InstanceBlockDeviceMapping+  { _eC2InstanceBlockDeviceMappingDeviceName :: Val Text+  , _eC2InstanceBlockDeviceMappingEbs :: Maybe EC2InstanceEbs+  , _eC2InstanceBlockDeviceMappingNoDevice :: Maybe EC2InstanceNoDevice+  , _eC2InstanceBlockDeviceMappingVirtualName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2InstanceBlockDeviceMapping where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON EC2InstanceBlockDeviceMapping where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'EC2InstanceBlockDeviceMapping' containing required+-- | fields as arguments.+ec2InstanceBlockDeviceMapping+  :: Val Text -- ^ 'ecibdmDeviceName'+  -> EC2InstanceBlockDeviceMapping+ec2InstanceBlockDeviceMapping deviceNamearg =+  EC2InstanceBlockDeviceMapping+  { _eC2InstanceBlockDeviceMappingDeviceName = deviceNamearg+  , _eC2InstanceBlockDeviceMappingEbs = Nothing+  , _eC2InstanceBlockDeviceMappingNoDevice = Nothing+  , _eC2InstanceBlockDeviceMappingVirtualName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-devicename+ecibdmDeviceName :: Lens' EC2InstanceBlockDeviceMapping (Val Text)+ecibdmDeviceName = lens _eC2InstanceBlockDeviceMappingDeviceName (\s a -> s { _eC2InstanceBlockDeviceMappingDeviceName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-ebs+ecibdmEbs :: Lens' EC2InstanceBlockDeviceMapping (Maybe EC2InstanceEbs)+ecibdmEbs = lens _eC2InstanceBlockDeviceMappingEbs (\s a -> s { _eC2InstanceBlockDeviceMappingEbs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-nodevice+ecibdmNoDevice :: Lens' EC2InstanceBlockDeviceMapping (Maybe EC2InstanceNoDevice)+ecibdmNoDevice = lens _eC2InstanceBlockDeviceMappingNoDevice (\s a -> s { _eC2InstanceBlockDeviceMappingNoDevice = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-mapping.html#cfn-ec2-blockdev-mapping-virtualname+ecibdmVirtualName :: Lens' EC2InstanceBlockDeviceMapping (Maybe (Val Text))+ecibdmVirtualName = lens _eC2InstanceBlockDeviceMappingVirtualName (\s a -> s { _eC2InstanceBlockDeviceMappingVirtualName = a })
+ library-gen/Stratosphere/ResourceProperties/EC2InstanceEbs.hs view
@@ -0,0 +1,70 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html++module Stratosphere.ResourceProperties.EC2InstanceEbs where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2InstanceEbs. See 'ec2InstanceEbs' for a+-- | more convenient constructor.+data EC2InstanceEbs =+  EC2InstanceEbs+  { _eC2InstanceEbsDeleteOnTermination :: Maybe (Val Bool')+  , _eC2InstanceEbsEncrypted :: Maybe (Val Bool')+  , _eC2InstanceEbsIops :: Maybe (Val Integer')+  , _eC2InstanceEbsSnapshotId :: Maybe (Val Text)+  , _eC2InstanceEbsVolumeSize :: Maybe (Val Integer')+  , _eC2InstanceEbsVolumeType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2InstanceEbs where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++instance FromJSON EC2InstanceEbs where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++-- | Constructor for 'EC2InstanceEbs' containing required fields as arguments.+ec2InstanceEbs+  :: EC2InstanceEbs+ec2InstanceEbs  =+  EC2InstanceEbs+  { _eC2InstanceEbsDeleteOnTermination = Nothing+  , _eC2InstanceEbsEncrypted = Nothing+  , _eC2InstanceEbsIops = Nothing+  , _eC2InstanceEbsSnapshotId = Nothing+  , _eC2InstanceEbsVolumeSize = Nothing+  , _eC2InstanceEbsVolumeType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-deleteontermination+ecieDeleteOnTermination :: Lens' EC2InstanceEbs (Maybe (Val Bool'))+ecieDeleteOnTermination = lens _eC2InstanceEbsDeleteOnTermination (\s a -> s { _eC2InstanceEbsDeleteOnTermination = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-encrypted+ecieEncrypted :: Lens' EC2InstanceEbs (Maybe (Val Bool'))+ecieEncrypted = lens _eC2InstanceEbsEncrypted (\s a -> s { _eC2InstanceEbsEncrypted = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-iops+ecieIops :: Lens' EC2InstanceEbs (Maybe (Val Integer'))+ecieIops = lens _eC2InstanceEbsIops (\s a -> s { _eC2InstanceEbsIops = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-snapshotid+ecieSnapshotId :: Lens' EC2InstanceEbs (Maybe (Val Text))+ecieSnapshotId = lens _eC2InstanceEbsSnapshotId (\s a -> s { _eC2InstanceEbsSnapshotId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-volumesize+ecieVolumeSize :: Lens' EC2InstanceEbs (Maybe (Val Integer'))+ecieVolumeSize = lens _eC2InstanceEbsVolumeSize (\s a -> s { _eC2InstanceEbsVolumeSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-blockdev-template.html#cfn-ec2-blockdev-template-volumetype+ecieVolumeType :: Lens' EC2InstanceEbs (Maybe (Val Text))+ecieVolumeType = lens _eC2InstanceEbsVolumeType (\s a -> s { _eC2InstanceEbsVolumeType = a })
+ library-gen/Stratosphere/ResourceProperties/EC2InstanceInstanceIpv6Address.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-instanceipv6address.html++module Stratosphere.ResourceProperties.EC2InstanceInstanceIpv6Address where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2InstanceInstanceIpv6Address. See+-- | 'ec2InstanceInstanceIpv6Address' for a more convenient constructor.+data EC2InstanceInstanceIpv6Address =+  EC2InstanceInstanceIpv6Address+  { _eC2InstanceInstanceIpv6AddressIpv6Address :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2InstanceInstanceIpv6Address where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON EC2InstanceInstanceIpv6Address where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'EC2InstanceInstanceIpv6Address' containing required+-- | fields as arguments.+ec2InstanceInstanceIpv6Address+  :: Val Text -- ^ 'eciiiaIpv6Address'+  -> EC2InstanceInstanceIpv6Address+ec2InstanceInstanceIpv6Address ipv6Addressarg =+  EC2InstanceInstanceIpv6Address+  { _eC2InstanceInstanceIpv6AddressIpv6Address = ipv6Addressarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-instanceipv6address.html#cfn-ec2-instance-instanceipv6address-ipv6address+eciiiaIpv6Address :: Lens' EC2InstanceInstanceIpv6Address (Val Text)+eciiiaIpv6Address = lens _eC2InstanceInstanceIpv6AddressIpv6Address (\s a -> s { _eC2InstanceInstanceIpv6AddressIpv6Address = a })
+ library-gen/Stratosphere/ResourceProperties/EC2InstanceNetworkInterface.hs view
@@ -0,0 +1,109 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html++module Stratosphere.ResourceProperties.EC2InstanceNetworkInterface where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EC2InstanceInstanceIpv6Address+import Stratosphere.ResourceProperties.EC2InstancePrivateIpAddressSpecification++-- | Full data type definition for EC2InstanceNetworkInterface. See+-- | 'ec2InstanceNetworkInterface' for a more convenient constructor.+data EC2InstanceNetworkInterface =+  EC2InstanceNetworkInterface+  { _eC2InstanceNetworkInterfaceAssociatePublicIpAddress :: Maybe (Val Bool')+  , _eC2InstanceNetworkInterfaceDeleteOnTermination :: Maybe (Val Bool')+  , _eC2InstanceNetworkInterfaceDescription :: Maybe (Val Text)+  , _eC2InstanceNetworkInterfaceDeviceIndex :: Val Text+  , _eC2InstanceNetworkInterfaceGroupSet :: Maybe [Val Text]+  , _eC2InstanceNetworkInterfaceIpv6AddressCount :: Maybe (Val Integer')+  , _eC2InstanceNetworkInterfaceIpv6Addresses :: Maybe [EC2InstanceInstanceIpv6Address]+  , _eC2InstanceNetworkInterfaceNetworkInterfaceId :: Maybe (Val Text)+  , _eC2InstanceNetworkInterfacePrivateIpAddress :: Maybe (Val Text)+  , _eC2InstanceNetworkInterfacePrivateIpAddresses :: Maybe [EC2InstancePrivateIpAddressSpecification]+  , _eC2InstanceNetworkInterfaceSecondaryPrivateIpAddressCount :: Maybe (Val Integer')+  , _eC2InstanceNetworkInterfaceSubnetId :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2InstanceNetworkInterface where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON EC2InstanceNetworkInterface where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'EC2InstanceNetworkInterface' containing required fields+-- | as arguments.+ec2InstanceNetworkInterface+  :: Val Text -- ^ 'eciniDeviceIndex'+  -> EC2InstanceNetworkInterface+ec2InstanceNetworkInterface deviceIndexarg =+  EC2InstanceNetworkInterface+  { _eC2InstanceNetworkInterfaceAssociatePublicIpAddress = Nothing+  , _eC2InstanceNetworkInterfaceDeleteOnTermination = Nothing+  , _eC2InstanceNetworkInterfaceDescription = Nothing+  , _eC2InstanceNetworkInterfaceDeviceIndex = deviceIndexarg+  , _eC2InstanceNetworkInterfaceGroupSet = Nothing+  , _eC2InstanceNetworkInterfaceIpv6AddressCount = Nothing+  , _eC2InstanceNetworkInterfaceIpv6Addresses = Nothing+  , _eC2InstanceNetworkInterfaceNetworkInterfaceId = Nothing+  , _eC2InstanceNetworkInterfacePrivateIpAddress = Nothing+  , _eC2InstanceNetworkInterfacePrivateIpAddresses = Nothing+  , _eC2InstanceNetworkInterfaceSecondaryPrivateIpAddressCount = Nothing+  , _eC2InstanceNetworkInterfaceSubnetId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-associatepubip+eciniAssociatePublicIpAddress :: Lens' EC2InstanceNetworkInterface (Maybe (Val Bool'))+eciniAssociatePublicIpAddress = lens _eC2InstanceNetworkInterfaceAssociatePublicIpAddress (\s a -> s { _eC2InstanceNetworkInterfaceAssociatePublicIpAddress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-delete+eciniDeleteOnTermination :: Lens' EC2InstanceNetworkInterface (Maybe (Val Bool'))+eciniDeleteOnTermination = lens _eC2InstanceNetworkInterfaceDeleteOnTermination (\s a -> s { _eC2InstanceNetworkInterfaceDeleteOnTermination = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-description+eciniDescription :: Lens' EC2InstanceNetworkInterface (Maybe (Val Text))+eciniDescription = lens _eC2InstanceNetworkInterfaceDescription (\s a -> s { _eC2InstanceNetworkInterfaceDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-deviceindex+eciniDeviceIndex :: Lens' EC2InstanceNetworkInterface (Val Text)+eciniDeviceIndex = lens _eC2InstanceNetworkInterfaceDeviceIndex (\s a -> s { _eC2InstanceNetworkInterfaceDeviceIndex = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-groupset+eciniGroupSet :: Lens' EC2InstanceNetworkInterface (Maybe [Val Text])+eciniGroupSet = lens _eC2InstanceNetworkInterfaceGroupSet (\s a -> s { _eC2InstanceNetworkInterfaceGroupSet = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#cfn-ec2-instance-networkinterface-ipv6addresscount+eciniIpv6AddressCount :: Lens' EC2InstanceNetworkInterface (Maybe (Val Integer'))+eciniIpv6AddressCount = lens _eC2InstanceNetworkInterfaceIpv6AddressCount (\s a -> s { _eC2InstanceNetworkInterfaceIpv6AddressCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#cfn-ec2-instance-networkinterface-ipv6addresses+eciniIpv6Addresses :: Lens' EC2InstanceNetworkInterface (Maybe [EC2InstanceInstanceIpv6Address])+eciniIpv6Addresses = lens _eC2InstanceNetworkInterfaceIpv6Addresses (\s a -> s { _eC2InstanceNetworkInterfaceIpv6Addresses = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-network-iface+eciniNetworkInterfaceId :: Lens' EC2InstanceNetworkInterface (Maybe (Val Text))+eciniNetworkInterfaceId = lens _eC2InstanceNetworkInterfaceNetworkInterfaceId (\s a -> s { _eC2InstanceNetworkInterfaceNetworkInterfaceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-privateipaddress+eciniPrivateIpAddress :: Lens' EC2InstanceNetworkInterface (Maybe (Val Text))+eciniPrivateIpAddress = lens _eC2InstanceNetworkInterfacePrivateIpAddress (\s a -> s { _eC2InstanceNetworkInterfacePrivateIpAddress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-privateipaddresses+eciniPrivateIpAddresses :: Lens' EC2InstanceNetworkInterface (Maybe [EC2InstancePrivateIpAddressSpecification])+eciniPrivateIpAddresses = lens _eC2InstanceNetworkInterfacePrivateIpAddresses (\s a -> s { _eC2InstanceNetworkInterfacePrivateIpAddresses = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-secondprivateip+eciniSecondaryPrivateIpAddressCount :: Lens' EC2InstanceNetworkInterface (Maybe (Val Integer'))+eciniSecondaryPrivateIpAddressCount = lens _eC2InstanceNetworkInterfaceSecondaryPrivateIpAddressCount (\s a -> s { _eC2InstanceNetworkInterfaceSecondaryPrivateIpAddressCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-iface-embedded.html#aws-properties-ec2-network-iface-embedded-subnetid+eciniSubnetId :: Lens' EC2InstanceNetworkInterface (Maybe (Val Text))+eciniSubnetId = lens _eC2InstanceNetworkInterfaceSubnetId (\s a -> s { _eC2InstanceNetworkInterfaceSubnetId = a })
+ library-gen/Stratosphere/ResourceProperties/EC2InstanceNoDevice.hs view
@@ -0,0 +1,39 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-nodevice.html++module Stratosphere.ResourceProperties.EC2InstanceNoDevice where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2InstanceNoDevice. See+-- | 'ec2InstanceNoDevice' for a more convenient constructor.+data EC2InstanceNoDevice =+  EC2InstanceNoDevice+  { +  } deriving (Show, Generic)++instance ToJSON EC2InstanceNoDevice where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++instance FromJSON EC2InstanceNoDevice where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++-- | Constructor for 'EC2InstanceNoDevice' containing required fields as+-- | arguments.+ec2InstanceNoDevice+  :: EC2InstanceNoDevice+ec2InstanceNoDevice  =+  EC2InstanceNoDevice+  { +  }++
+ library-gen/Stratosphere/ResourceProperties/EC2InstancePrivateIpAddressSpecification.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html++module Stratosphere.ResourceProperties.EC2InstancePrivateIpAddressSpecification where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2InstancePrivateIpAddressSpecification.+-- | See 'ec2InstancePrivateIpAddressSpecification' for a more convenient+-- | constructor.+data EC2InstancePrivateIpAddressSpecification =+  EC2InstancePrivateIpAddressSpecification+  { _eC2InstancePrivateIpAddressSpecificationPrimary :: Val Bool'+  , _eC2InstancePrivateIpAddressSpecificationPrivateIpAddress :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2InstancePrivateIpAddressSpecification where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++instance FromJSON EC2InstancePrivateIpAddressSpecification where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++-- | Constructor for 'EC2InstancePrivateIpAddressSpecification' containing+-- | required fields as arguments.+ec2InstancePrivateIpAddressSpecification+  :: Val Bool' -- ^ 'ecipiasPrimary'+  -> Val Text -- ^ 'ecipiasPrivateIpAddress'+  -> EC2InstancePrivateIpAddressSpecification+ec2InstancePrivateIpAddressSpecification primaryarg privateIpAddressarg =+  EC2InstancePrivateIpAddressSpecification+  { _eC2InstancePrivateIpAddressSpecificationPrimary = primaryarg+  , _eC2InstancePrivateIpAddressSpecificationPrivateIpAddress = privateIpAddressarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-primary+ecipiasPrimary :: Lens' EC2InstancePrivateIpAddressSpecification (Val Bool')+ecipiasPrimary = lens _eC2InstancePrivateIpAddressSpecificationPrimary (\s a -> s { _eC2InstancePrivateIpAddressSpecificationPrimary = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-privateipaddress+ecipiasPrivateIpAddress :: Lens' EC2InstancePrivateIpAddressSpecification (Val Text)+ecipiasPrivateIpAddress = lens _eC2InstancePrivateIpAddressSpecificationPrivateIpAddress (\s a -> s { _eC2InstancePrivateIpAddressSpecificationPrivateIpAddress = a })
+ library-gen/Stratosphere/ResourceProperties/EC2InstanceSsmAssociation.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html++module Stratosphere.ResourceProperties.EC2InstanceSsmAssociation where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EC2InstanceAssociationParameter++-- | Full data type definition for EC2InstanceSsmAssociation. See+-- | 'ec2InstanceSsmAssociation' for a more convenient constructor.+data EC2InstanceSsmAssociation =+  EC2InstanceSsmAssociation+  { _eC2InstanceSsmAssociationAssociationParameters :: Maybe [EC2InstanceAssociationParameter]+  , _eC2InstanceSsmAssociationDocumentName :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2InstanceSsmAssociation where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++instance FromJSON EC2InstanceSsmAssociation where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++-- | Constructor for 'EC2InstanceSsmAssociation' containing required fields as+-- | arguments.+ec2InstanceSsmAssociation+  :: Val Text -- ^ 'ecisaDocumentName'+  -> EC2InstanceSsmAssociation+ec2InstanceSsmAssociation documentNamearg =+  EC2InstanceSsmAssociation+  { _eC2InstanceSsmAssociationAssociationParameters = Nothing+  , _eC2InstanceSsmAssociationDocumentName = documentNamearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html#cfn-ec2-instance-ssmassociations-associationparameters+ecisaAssociationParameters :: Lens' EC2InstanceSsmAssociation (Maybe [EC2InstanceAssociationParameter])+ecisaAssociationParameters = lens _eC2InstanceSsmAssociationAssociationParameters (\s a -> s { _eC2InstanceSsmAssociationAssociationParameters = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-ssmassociations.html#cfn-ec2-instance-ssmassociations-documentname+ecisaDocumentName :: Lens' EC2InstanceSsmAssociation (Val Text)+ecisaDocumentName = lens _eC2InstanceSsmAssociationDocumentName (\s a -> s { _eC2InstanceSsmAssociationDocumentName = a })
+ library-gen/Stratosphere/ResourceProperties/EC2InstanceVolume.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-mount-point.html++module Stratosphere.ResourceProperties.EC2InstanceVolume where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2InstanceVolume. See 'ec2InstanceVolume'+-- | for a more convenient constructor.+data EC2InstanceVolume =+  EC2InstanceVolume+  { _eC2InstanceVolumeDevice :: Val Text+  , _eC2InstanceVolumeVolumeId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2InstanceVolume where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }++instance FromJSON EC2InstanceVolume where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }++-- | Constructor for 'EC2InstanceVolume' containing required fields as+-- | arguments.+ec2InstanceVolume+  :: Val Text -- ^ 'ecivDevice'+  -> Val Text -- ^ 'ecivVolumeId'+  -> EC2InstanceVolume+ec2InstanceVolume devicearg volumeIdarg =+  EC2InstanceVolume+  { _eC2InstanceVolumeDevice = devicearg+  , _eC2InstanceVolumeVolumeId = volumeIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-mount-point.html#cfn-ec2-mountpoint-device+ecivDevice :: Lens' EC2InstanceVolume (Val Text)+ecivDevice = lens _eC2InstanceVolumeDevice (\s a -> s { _eC2InstanceVolumeDevice = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-mount-point.html#cfn-ec2-mountpoint-volumeid+ecivVolumeId :: Lens' EC2InstanceVolume (Val Text)+ecivVolumeId = lens _eC2InstanceVolumeVolumeId (\s a -> s { _eC2InstanceVolumeVolumeId = a })
− library-gen/Stratosphere/ResourceProperties/EC2MountPoint.hs
@@ -1,50 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The EC2 MountPoint property is an embedded property of the--- AWS::EC2::Instance type.--module Stratosphere.ResourceProperties.EC2MountPoint where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for EC2MountPoint. See 'ec2MountPoint' for a--- more convenient constructor.-data EC2MountPoint =-  EC2MountPoint-  { _eC2MountPointDevice :: Val Text-  , _eC2MountPointVolumeId :: Val Text-  } deriving (Show, Generic)--instance ToJSON EC2MountPoint where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }--instance FromJSON EC2MountPoint where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }---- | Constructor for 'EC2MountPoint' containing required fields as arguments.-ec2MountPoint-  :: Val Text -- ^ 'ecmpDevice'-  -> Val Text -- ^ 'ecmpVolumeId'-  -> EC2MountPoint-ec2MountPoint devicearg volumeIdarg =-  EC2MountPoint-  { _eC2MountPointDevice = devicearg-  , _eC2MountPointVolumeId = volumeIdarg-  }---- | How the device is exposed to the instance (such as /dev/sdh, or xvdh).-ecmpDevice :: Lens' EC2MountPoint (Val Text)-ecmpDevice = lens _eC2MountPointDevice (\s a -> s { _eC2MountPointDevice = a })---- | The ID of the Amazon EBS volume. The volume and instance must be within--- the same Availability Zone and the instance must be running.-ecmpVolumeId :: Lens' EC2MountPoint (Val Text)-ecmpVolumeId = lens _eC2MountPointVolumeId (\s a -> s { _eC2MountPointVolumeId = a })
+ library-gen/Stratosphere/ResourceProperties/EC2NetworkAclEntryIcmp.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-icmp.html++module Stratosphere.ResourceProperties.EC2NetworkAclEntryIcmp where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2NetworkAclEntryIcmp. See+-- | 'ec2NetworkAclEntryIcmp' for a more convenient constructor.+data EC2NetworkAclEntryIcmp =+  EC2NetworkAclEntryIcmp+  { _eC2NetworkAclEntryIcmpCode :: Maybe (Val Integer')+  , _eC2NetworkAclEntryIcmpType :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON EC2NetworkAclEntryIcmp where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++instance FromJSON EC2NetworkAclEntryIcmp where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++-- | Constructor for 'EC2NetworkAclEntryIcmp' containing required fields as+-- | arguments.+ec2NetworkAclEntryIcmp+  :: EC2NetworkAclEntryIcmp+ec2NetworkAclEntryIcmp  =+  EC2NetworkAclEntryIcmp+  { _eC2NetworkAclEntryIcmpCode = Nothing+  , _eC2NetworkAclEntryIcmpType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-icmp.html#cfn-ec2-networkaclentry-icmp-code+ecnaeiCode :: Lens' EC2NetworkAclEntryIcmp (Maybe (Val Integer'))+ecnaeiCode = lens _eC2NetworkAclEntryIcmpCode (\s a -> s { _eC2NetworkAclEntryIcmpCode = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-icmp.html#cfn-ec2-networkaclentry-icmp-type+ecnaeiType :: Lens' EC2NetworkAclEntryIcmp (Maybe (Val Integer'))+ecnaeiType = lens _eC2NetworkAclEntryIcmpType (\s a -> s { _eC2NetworkAclEntryIcmpType = a })
+ library-gen/Stratosphere/ResourceProperties/EC2NetworkAclEntryPortRange.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-portrange.html++module Stratosphere.ResourceProperties.EC2NetworkAclEntryPortRange where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2NetworkAclEntryPortRange. See+-- | 'ec2NetworkAclEntryPortRange' for a more convenient constructor.+data EC2NetworkAclEntryPortRange =+  EC2NetworkAclEntryPortRange+  { _eC2NetworkAclEntryPortRangeFrom :: Maybe (Val Integer')+  , _eC2NetworkAclEntryPortRangeTo :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON EC2NetworkAclEntryPortRange where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON EC2NetworkAclEntryPortRange where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'EC2NetworkAclEntryPortRange' containing required fields+-- | as arguments.+ec2NetworkAclEntryPortRange+  :: EC2NetworkAclEntryPortRange+ec2NetworkAclEntryPortRange  =+  EC2NetworkAclEntryPortRange+  { _eC2NetworkAclEntryPortRangeFrom = Nothing+  , _eC2NetworkAclEntryPortRangeTo = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-portrange.html#cfn-ec2-networkaclentry-portrange-from+ecnaeprFrom :: Lens' EC2NetworkAclEntryPortRange (Maybe (Val Integer'))+ecnaeprFrom = lens _eC2NetworkAclEntryPortRangeFrom (\s a -> s { _eC2NetworkAclEntryPortRangeFrom = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkaclentry-portrange.html#cfn-ec2-networkaclentry-portrange-to+ecnaeprTo :: Lens' EC2NetworkAclEntryPortRange (Maybe (Val Integer'))+ecnaeprTo = lens _eC2NetworkAclEntryPortRangeTo (\s a -> s { _eC2NetworkAclEntryPortRangeTo = a })
+ library-gen/Stratosphere/ResourceProperties/EC2NetworkInterfaceInstanceIpv6Address.hs view
@@ -0,0 +1,43 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinterface-instanceipv6address.html++module Stratosphere.ResourceProperties.EC2NetworkInterfaceInstanceIpv6Address where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2NetworkInterfaceInstanceIpv6Address. See+-- | 'ec2NetworkInterfaceInstanceIpv6Address' for a more convenient+-- | constructor.+data EC2NetworkInterfaceInstanceIpv6Address =+  EC2NetworkInterfaceInstanceIpv6Address+  { _eC2NetworkInterfaceInstanceIpv6AddressIpv6Address :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2NetworkInterfaceInstanceIpv6Address where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++instance FromJSON EC2NetworkInterfaceInstanceIpv6Address where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++-- | Constructor for 'EC2NetworkInterfaceInstanceIpv6Address' containing+-- | required fields as arguments.+ec2NetworkInterfaceInstanceIpv6Address+  :: Val Text -- ^ 'ecniiiaIpv6Address'+  -> EC2NetworkInterfaceInstanceIpv6Address+ec2NetworkInterfaceInstanceIpv6Address ipv6Addressarg =+  EC2NetworkInterfaceInstanceIpv6Address+  { _eC2NetworkInterfaceInstanceIpv6AddressIpv6Address = ipv6Addressarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-networkinterface-instanceipv6address.html#cfn-ec2-networkinterface-instanceipv6address-ipv6address+ecniiiaIpv6Address :: Lens' EC2NetworkInterfaceInstanceIpv6Address (Val Text)+ecniiiaIpv6Address = lens _eC2NetworkInterfaceInstanceIpv6AddressIpv6Address (\s a -> s { _eC2NetworkInterfaceInstanceIpv6AddressIpv6Address = a })
+ library-gen/Stratosphere/ResourceProperties/EC2NetworkInterfacePrivateIpAddressSpecification.hs view
@@ -0,0 +1,51 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html++module Stratosphere.ResourceProperties.EC2NetworkInterfacePrivateIpAddressSpecification where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | EC2NetworkInterfacePrivateIpAddressSpecification. See+-- | 'ec2NetworkInterfacePrivateIpAddressSpecification' for a more convenient+-- | constructor.+data EC2NetworkInterfacePrivateIpAddressSpecification =+  EC2NetworkInterfacePrivateIpAddressSpecification+  { _eC2NetworkInterfacePrivateIpAddressSpecificationPrimary :: Val Bool'+  , _eC2NetworkInterfacePrivateIpAddressSpecificationPrivateIpAddress :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2NetworkInterfacePrivateIpAddressSpecification where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 49, omitNothingFields = True }++instance FromJSON EC2NetworkInterfacePrivateIpAddressSpecification where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 49, omitNothingFields = True }++-- | Constructor for 'EC2NetworkInterfacePrivateIpAddressSpecification'+-- | containing required fields as arguments.+ec2NetworkInterfacePrivateIpAddressSpecification+  :: Val Bool' -- ^ 'ecnipiasPrimary'+  -> Val Text -- ^ 'ecnipiasPrivateIpAddress'+  -> EC2NetworkInterfacePrivateIpAddressSpecification+ec2NetworkInterfacePrivateIpAddressSpecification primaryarg privateIpAddressarg =+  EC2NetworkInterfacePrivateIpAddressSpecification+  { _eC2NetworkInterfacePrivateIpAddressSpecificationPrimary = primaryarg+  , _eC2NetworkInterfacePrivateIpAddressSpecificationPrivateIpAddress = privateIpAddressarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-primary+ecnipiasPrimary :: Lens' EC2NetworkInterfacePrivateIpAddressSpecification (Val Bool')+ecnipiasPrimary = lens _eC2NetworkInterfacePrivateIpAddressSpecificationPrimary (\s a -> s { _eC2NetworkInterfacePrivateIpAddressSpecificationPrimary = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-network-interface-privateipspec.html#cfn-ec2-networkinterface-privateipspecification-privateipaddress+ecnipiasPrivateIpAddress :: Lens' EC2NetworkInterfacePrivateIpAddressSpecification (Val Text)+ecnipiasPrivateIpAddress = lens _eC2NetworkInterfacePrivateIpAddressSpecificationPrivateIpAddress (\s a -> s { _eC2NetworkInterfacePrivateIpAddressSpecificationPrivateIpAddress = a })
+ library-gen/Stratosphere/ResourceProperties/EC2SecurityGroupRule.hs view
@@ -0,0 +1,78 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html++module Stratosphere.ResourceProperties.EC2SecurityGroupRule where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2SecurityGroupRule. See+-- | 'ec2SecurityGroupRule' for a more convenient constructor.+data EC2SecurityGroupRule =+  EC2SecurityGroupRule+  { _eC2SecurityGroupRuleCidrIp :: Maybe (Val Text)+  , _eC2SecurityGroupRuleFromPort :: Maybe (Val Integer')+  , _eC2SecurityGroupRuleIpProtocol :: Val Text+  , _eC2SecurityGroupRuleSourceSecurityGroupId :: Maybe (Val Text)+  , _eC2SecurityGroupRuleSourceSecurityGroupName :: Maybe (Val Text)+  , _eC2SecurityGroupRuleSourceSecurityGroupOwnerId :: Maybe (Val Text)+  , _eC2SecurityGroupRuleToPort :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON EC2SecurityGroupRule where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++instance FromJSON EC2SecurityGroupRule where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++-- | Constructor for 'EC2SecurityGroupRule' containing required fields as+-- | arguments.+ec2SecurityGroupRule+  :: Val Text -- ^ 'ecsgrIpProtocol'+  -> EC2SecurityGroupRule+ec2SecurityGroupRule ipProtocolarg =+  EC2SecurityGroupRule+  { _eC2SecurityGroupRuleCidrIp = Nothing+  , _eC2SecurityGroupRuleFromPort = Nothing+  , _eC2SecurityGroupRuleIpProtocol = ipProtocolarg+  , _eC2SecurityGroupRuleSourceSecurityGroupId = Nothing+  , _eC2SecurityGroupRuleSourceSecurityGroupName = Nothing+  , _eC2SecurityGroupRuleSourceSecurityGroupOwnerId = Nothing+  , _eC2SecurityGroupRuleToPort = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-cidrip+ecsgrCidrIp :: Lens' EC2SecurityGroupRule (Maybe (Val Text))+ecsgrCidrIp = lens _eC2SecurityGroupRuleCidrIp (\s a -> s { _eC2SecurityGroupRuleCidrIp = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-fromport+ecsgrFromPort :: Lens' EC2SecurityGroupRule (Maybe (Val Integer'))+ecsgrFromPort = lens _eC2SecurityGroupRuleFromPort (\s a -> s { _eC2SecurityGroupRuleFromPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-ipprotocol+ecsgrIpProtocol :: Lens' EC2SecurityGroupRule (Val Text)+ecsgrIpProtocol = lens _eC2SecurityGroupRuleIpProtocol (\s a -> s { _eC2SecurityGroupRuleIpProtocol = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-sourcesecuritygroupid+ecsgrSourceSecurityGroupId :: Lens' EC2SecurityGroupRule (Maybe (Val Text))+ecsgrSourceSecurityGroupId = lens _eC2SecurityGroupRuleSourceSecurityGroupId (\s a -> s { _eC2SecurityGroupRuleSourceSecurityGroupId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-sourcesecuritygroupname+ecsgrSourceSecurityGroupName :: Lens' EC2SecurityGroupRule (Maybe (Val Text))+ecsgrSourceSecurityGroupName = lens _eC2SecurityGroupRuleSourceSecurityGroupName (\s a -> s { _eC2SecurityGroupRuleSourceSecurityGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-sourcesecuritygroupownerid+ecsgrSourceSecurityGroupOwnerId :: Lens' EC2SecurityGroupRule (Maybe (Val Text))+ecsgrSourceSecurityGroupOwnerId = lens _eC2SecurityGroupRuleSourceSecurityGroupOwnerId (\s a -> s { _eC2SecurityGroupRuleSourceSecurityGroupOwnerId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-rule.html#cfn-ec2-security-group-rule-toport+ecsgrToPort :: Lens' EC2SecurityGroupRule (Maybe (Val Integer'))+ecsgrToPort = lens _eC2SecurityGroupRuleToPort (\s a -> s { _eC2SecurityGroupRuleToPort = a })
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetBlockDeviceMappings.hs view
@@ -0,0 +1,60 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html++module Stratosphere.ResourceProperties.EC2SpotFleetBlockDeviceMappings where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EC2SpotFleetEbs++-- | Full data type definition for EC2SpotFleetBlockDeviceMappings. See+-- | 'ec2SpotFleetBlockDeviceMappings' for a more convenient constructor.+data EC2SpotFleetBlockDeviceMappings =+  EC2SpotFleetBlockDeviceMappings+  { _eC2SpotFleetBlockDeviceMappingsDeviceName :: Val Text+  , _eC2SpotFleetBlockDeviceMappingsEbs :: Maybe EC2SpotFleetEbs+  , _eC2SpotFleetBlockDeviceMappingsNoDevice :: Maybe (Val Bool')+  , _eC2SpotFleetBlockDeviceMappingsVirtualName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2SpotFleetBlockDeviceMappings where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++instance FromJSON EC2SpotFleetBlockDeviceMappings where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++-- | Constructor for 'EC2SpotFleetBlockDeviceMappings' containing required+-- | fields as arguments.+ec2SpotFleetBlockDeviceMappings+  :: Val Text -- ^ 'ecsfbdmDeviceName'+  -> EC2SpotFleetBlockDeviceMappings+ec2SpotFleetBlockDeviceMappings deviceNamearg =+  EC2SpotFleetBlockDeviceMappings+  { _eC2SpotFleetBlockDeviceMappingsDeviceName = deviceNamearg+  , _eC2SpotFleetBlockDeviceMappingsEbs = Nothing+  , _eC2SpotFleetBlockDeviceMappingsNoDevice = Nothing+  , _eC2SpotFleetBlockDeviceMappingsVirtualName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemappings-devicename+ecsfbdmDeviceName :: Lens' EC2SpotFleetBlockDeviceMappings (Val Text)+ecsfbdmDeviceName = lens _eC2SpotFleetBlockDeviceMappingsDeviceName (\s a -> s { _eC2SpotFleetBlockDeviceMappingsDeviceName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemappings-ebs+ecsfbdmEbs :: Lens' EC2SpotFleetBlockDeviceMappings (Maybe EC2SpotFleetEbs)+ecsfbdmEbs = lens _eC2SpotFleetBlockDeviceMappingsEbs (\s a -> s { _eC2SpotFleetBlockDeviceMappingsEbs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemappings-nodevice+ecsfbdmNoDevice :: Lens' EC2SpotFleetBlockDeviceMappings (Maybe (Val Bool'))+ecsfbdmNoDevice = lens _eC2SpotFleetBlockDeviceMappingsNoDevice (\s a -> s { _eC2SpotFleetBlockDeviceMappingsNoDevice = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemappings-virtualname+ecsfbdmVirtualName :: Lens' EC2SpotFleetBlockDeviceMappings (Maybe (Val Text))+ecsfbdmVirtualName = lens _eC2SpotFleetBlockDeviceMappingsVirtualName (\s a -> s { _eC2SpotFleetBlockDeviceMappingsVirtualName = a })
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetEbs.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html++module Stratosphere.ResourceProperties.EC2SpotFleetEbs where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2SpotFleetEbs. See 'ec2SpotFleetEbs' for+-- | a more convenient constructor.+data EC2SpotFleetEbs =+  EC2SpotFleetEbs+  { _eC2SpotFleetEbsDeleteOnTermination :: Maybe (Val Bool')+  , _eC2SpotFleetEbsEncrypted :: Maybe (Val Bool')+  , _eC2SpotFleetEbsIops :: Maybe (Val Integer')+  , _eC2SpotFleetEbsSnapshotId :: Maybe (Val Text)+  , _eC2SpotFleetEbsVolumeSize :: Maybe (Val Integer')+  , _eC2SpotFleetEbsVolumeType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2SpotFleetEbs where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++instance FromJSON EC2SpotFleetEbs where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++-- | Constructor for 'EC2SpotFleetEbs' containing required fields as+-- | arguments.+ec2SpotFleetEbs+  :: EC2SpotFleetEbs+ec2SpotFleetEbs  =+  EC2SpotFleetEbs+  { _eC2SpotFleetEbsDeleteOnTermination = Nothing+  , _eC2SpotFleetEbsEncrypted = Nothing+  , _eC2SpotFleetEbsIops = Nothing+  , _eC2SpotFleetEbsSnapshotId = Nothing+  , _eC2SpotFleetEbsVolumeSize = Nothing+  , _eC2SpotFleetEbsVolumeType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebs-deleteontermination+ecsfeDeleteOnTermination :: Lens' EC2SpotFleetEbs (Maybe (Val Bool'))+ecsfeDeleteOnTermination = lens _eC2SpotFleetEbsDeleteOnTermination (\s a -> s { _eC2SpotFleetEbsDeleteOnTermination = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebs-encrypted+ecsfeEncrypted :: Lens' EC2SpotFleetEbs (Maybe (Val Bool'))+ecsfeEncrypted = lens _eC2SpotFleetEbsEncrypted (\s a -> s { _eC2SpotFleetEbsEncrypted = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebs-iops+ecsfeIops :: Lens' EC2SpotFleetEbs (Maybe (Val Integer'))+ecsfeIops = lens _eC2SpotFleetEbsIops (\s a -> s { _eC2SpotFleetEbsIops = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebs-snapshotid+ecsfeSnapshotId :: Lens' EC2SpotFleetEbs (Maybe (Val Text))+ecsfeSnapshotId = lens _eC2SpotFleetEbsSnapshotId (\s a -> s { _eC2SpotFleetEbsSnapshotId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebs-volumesize+ecsfeVolumeSize :: Lens' EC2SpotFleetEbs (Maybe (Val Integer'))+ecsfeVolumeSize = lens _eC2SpotFleetEbsVolumeSize (\s a -> s { _eC2SpotFleetEbsVolumeSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebs-volumetype+ecsfeVolumeType :: Lens' EC2SpotFleetEbs (Maybe (Val Text))+ecsfeVolumeType = lens _eC2SpotFleetEbsVolumeType (\s a -> s { _eC2SpotFleetEbsVolumeType = a })
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetIamInstanceProfile.hs view
@@ -0,0 +1,41 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-iaminstanceprofile.html++module Stratosphere.ResourceProperties.EC2SpotFleetIamInstanceProfile where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2SpotFleetIamInstanceProfile. See+-- | 'ec2SpotFleetIamInstanceProfile' for a more convenient constructor.+data EC2SpotFleetIamInstanceProfile =+  EC2SpotFleetIamInstanceProfile+  { _eC2SpotFleetIamInstanceProfileArn :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2SpotFleetIamInstanceProfile where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON EC2SpotFleetIamInstanceProfile where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'EC2SpotFleetIamInstanceProfile' containing required+-- | fields as arguments.+ec2SpotFleetIamInstanceProfile+  :: EC2SpotFleetIamInstanceProfile+ec2SpotFleetIamInstanceProfile  =+  EC2SpotFleetIamInstanceProfile+  { _eC2SpotFleetIamInstanceProfileArn = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-iaminstanceprofile.html#cfn-ec2-spotfleet-iaminstanceprofile-arn+ecsfiipArn :: Lens' EC2SpotFleetIamInstanceProfile (Maybe (Val Text))+ecsfiipArn = lens _eC2SpotFleetIamInstanceProfileArn (\s a -> s { _eC2SpotFleetIamInstanceProfileArn = a })
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetInstanceIpv6Address.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-instanceipv6address.html++module Stratosphere.ResourceProperties.EC2SpotFleetInstanceIpv6Address where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2SpotFleetInstanceIpv6Address. See+-- | 'ec2SpotFleetInstanceIpv6Address' for a more convenient constructor.+data EC2SpotFleetInstanceIpv6Address =+  EC2SpotFleetInstanceIpv6Address+  { _eC2SpotFleetInstanceIpv6AddressIpv6Address :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2SpotFleetInstanceIpv6Address where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++instance FromJSON EC2SpotFleetInstanceIpv6Address where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++-- | Constructor for 'EC2SpotFleetInstanceIpv6Address' containing required+-- | fields as arguments.+ec2SpotFleetInstanceIpv6Address+  :: Val Text -- ^ 'ecsfiiaIpv6Address'+  -> EC2SpotFleetInstanceIpv6Address+ec2SpotFleetInstanceIpv6Address ipv6Addressarg =+  EC2SpotFleetInstanceIpv6Address+  { _eC2SpotFleetInstanceIpv6AddressIpv6Address = ipv6Addressarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-instanceipv6address.html#cfn-ec2-spotfleet-instanceipv6address-ipv6address+ecsfiiaIpv6Address :: Lens' EC2SpotFleetInstanceIpv6Address (Val Text)+ecsfiiaIpv6Address = lens _eC2SpotFleetInstanceIpv6AddressIpv6Address (\s a -> s { _eC2SpotFleetInstanceIpv6AddressIpv6Address = a })
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetLaunchSpecifications.hs view
@@ -0,0 +1,138 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html++module Stratosphere.ResourceProperties.EC2SpotFleetLaunchSpecifications where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EC2SpotFleetBlockDeviceMappings+import Stratosphere.ResourceProperties.EC2SpotFleetIamInstanceProfile+import Stratosphere.ResourceProperties.EC2SpotFleetMonitoring+import Stratosphere.ResourceProperties.EC2SpotFleetNetworkInterfaces+import Stratosphere.ResourceProperties.EC2SpotFleetPlacement+import Stratosphere.ResourceProperties.EC2SpotFleetSecurityGroups++-- | Full data type definition for EC2SpotFleetLaunchSpecifications. See+-- | 'ec2SpotFleetLaunchSpecifications' for a more convenient constructor.+data EC2SpotFleetLaunchSpecifications =+  EC2SpotFleetLaunchSpecifications+  { _eC2SpotFleetLaunchSpecificationsBlockDeviceMappings :: Maybe [EC2SpotFleetBlockDeviceMappings]+  , _eC2SpotFleetLaunchSpecificationsEbsOptimized :: Maybe (Val Bool')+  , _eC2SpotFleetLaunchSpecificationsIamInstanceProfile :: Maybe EC2SpotFleetIamInstanceProfile+  , _eC2SpotFleetLaunchSpecificationsImageId :: Val Text+  , _eC2SpotFleetLaunchSpecificationsInstanceType :: Val Text+  , _eC2SpotFleetLaunchSpecificationsKernelId :: Maybe (Val Text)+  , _eC2SpotFleetLaunchSpecificationsKeyName :: Maybe (Val Text)+  , _eC2SpotFleetLaunchSpecificationsMonitoring :: Maybe EC2SpotFleetMonitoring+  , _eC2SpotFleetLaunchSpecificationsNetworkInterfaces :: Maybe [EC2SpotFleetNetworkInterfaces]+  , _eC2SpotFleetLaunchSpecificationsPlacement :: Maybe EC2SpotFleetPlacement+  , _eC2SpotFleetLaunchSpecificationsRamdiskId :: Maybe (Val Text)+  , _eC2SpotFleetLaunchSpecificationsSecurityGroups :: Maybe [EC2SpotFleetSecurityGroups]+  , _eC2SpotFleetLaunchSpecificationsSpotPrice :: Maybe (Val Text)+  , _eC2SpotFleetLaunchSpecificationsSubnetId :: Maybe (Val Text)+  , _eC2SpotFleetLaunchSpecificationsUserData :: Maybe (Val Text)+  , _eC2SpotFleetLaunchSpecificationsWeightedCapacity :: Maybe (Val Double')+  } deriving (Show, Generic)++instance ToJSON EC2SpotFleetLaunchSpecifications where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++instance FromJSON EC2SpotFleetLaunchSpecifications where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++-- | Constructor for 'EC2SpotFleetLaunchSpecifications' containing required+-- | fields as arguments.+ec2SpotFleetLaunchSpecifications+  :: Val Text -- ^ 'ecsflsImageId'+  -> Val Text -- ^ 'ecsflsInstanceType'+  -> EC2SpotFleetLaunchSpecifications+ec2SpotFleetLaunchSpecifications imageIdarg instanceTypearg =+  EC2SpotFleetLaunchSpecifications+  { _eC2SpotFleetLaunchSpecificationsBlockDeviceMappings = Nothing+  , _eC2SpotFleetLaunchSpecificationsEbsOptimized = Nothing+  , _eC2SpotFleetLaunchSpecificationsIamInstanceProfile = Nothing+  , _eC2SpotFleetLaunchSpecificationsImageId = imageIdarg+  , _eC2SpotFleetLaunchSpecificationsInstanceType = instanceTypearg+  , _eC2SpotFleetLaunchSpecificationsKernelId = Nothing+  , _eC2SpotFleetLaunchSpecificationsKeyName = Nothing+  , _eC2SpotFleetLaunchSpecificationsMonitoring = Nothing+  , _eC2SpotFleetLaunchSpecificationsNetworkInterfaces = Nothing+  , _eC2SpotFleetLaunchSpecificationsPlacement = Nothing+  , _eC2SpotFleetLaunchSpecificationsRamdiskId = Nothing+  , _eC2SpotFleetLaunchSpecificationsSecurityGroups = Nothing+  , _eC2SpotFleetLaunchSpecificationsSpotPrice = Nothing+  , _eC2SpotFleetLaunchSpecificationsSubnetId = Nothing+  , _eC2SpotFleetLaunchSpecificationsUserData = Nothing+  , _eC2SpotFleetLaunchSpecificationsWeightedCapacity = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-blockdevicemappings+ecsflsBlockDeviceMappings :: Lens' EC2SpotFleetLaunchSpecifications (Maybe [EC2SpotFleetBlockDeviceMappings])+ecsflsBlockDeviceMappings = lens _eC2SpotFleetLaunchSpecificationsBlockDeviceMappings (\s a -> s { _eC2SpotFleetLaunchSpecificationsBlockDeviceMappings = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-ebsoptimized+ecsflsEbsOptimized :: Lens' EC2SpotFleetLaunchSpecifications (Maybe (Val Bool'))+ecsflsEbsOptimized = lens _eC2SpotFleetLaunchSpecificationsEbsOptimized (\s a -> s { _eC2SpotFleetLaunchSpecificationsEbsOptimized = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-iaminstanceprofile+ecsflsIamInstanceProfile :: Lens' EC2SpotFleetLaunchSpecifications (Maybe EC2SpotFleetIamInstanceProfile)+ecsflsIamInstanceProfile = lens _eC2SpotFleetLaunchSpecificationsIamInstanceProfile (\s a -> s { _eC2SpotFleetLaunchSpecificationsIamInstanceProfile = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-imageid+ecsflsImageId :: Lens' EC2SpotFleetLaunchSpecifications (Val Text)+ecsflsImageId = lens _eC2SpotFleetLaunchSpecificationsImageId (\s a -> s { _eC2SpotFleetLaunchSpecificationsImageId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-instancetype+ecsflsInstanceType :: Lens' EC2SpotFleetLaunchSpecifications (Val Text)+ecsflsInstanceType = lens _eC2SpotFleetLaunchSpecificationsInstanceType (\s a -> s { _eC2SpotFleetLaunchSpecificationsInstanceType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-kernelid+ecsflsKernelId :: Lens' EC2SpotFleetLaunchSpecifications (Maybe (Val Text))+ecsflsKernelId = lens _eC2SpotFleetLaunchSpecificationsKernelId (\s a -> s { _eC2SpotFleetLaunchSpecificationsKernelId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-keyname+ecsflsKeyName :: Lens' EC2SpotFleetLaunchSpecifications (Maybe (Val Text))+ecsflsKeyName = lens _eC2SpotFleetLaunchSpecificationsKeyName (\s a -> s { _eC2SpotFleetLaunchSpecificationsKeyName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-monitoring+ecsflsMonitoring :: Lens' EC2SpotFleetLaunchSpecifications (Maybe EC2SpotFleetMonitoring)+ecsflsMonitoring = lens _eC2SpotFleetLaunchSpecificationsMonitoring (\s a -> s { _eC2SpotFleetLaunchSpecificationsMonitoring = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-networkinterfaces+ecsflsNetworkInterfaces :: Lens' EC2SpotFleetLaunchSpecifications (Maybe [EC2SpotFleetNetworkInterfaces])+ecsflsNetworkInterfaces = lens _eC2SpotFleetLaunchSpecificationsNetworkInterfaces (\s a -> s { _eC2SpotFleetLaunchSpecificationsNetworkInterfaces = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-placement+ecsflsPlacement :: Lens' EC2SpotFleetLaunchSpecifications (Maybe EC2SpotFleetPlacement)+ecsflsPlacement = lens _eC2SpotFleetLaunchSpecificationsPlacement (\s a -> s { _eC2SpotFleetLaunchSpecificationsPlacement = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-ramdiskid+ecsflsRamdiskId :: Lens' EC2SpotFleetLaunchSpecifications (Maybe (Val Text))+ecsflsRamdiskId = lens _eC2SpotFleetLaunchSpecificationsRamdiskId (\s a -> s { _eC2SpotFleetLaunchSpecificationsRamdiskId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-securitygroups+ecsflsSecurityGroups :: Lens' EC2SpotFleetLaunchSpecifications (Maybe [EC2SpotFleetSecurityGroups])+ecsflsSecurityGroups = lens _eC2SpotFleetLaunchSpecificationsSecurityGroups (\s a -> s { _eC2SpotFleetLaunchSpecificationsSecurityGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-spotprice+ecsflsSpotPrice :: Lens' EC2SpotFleetLaunchSpecifications (Maybe (Val Text))+ecsflsSpotPrice = lens _eC2SpotFleetLaunchSpecificationsSpotPrice (\s a -> s { _eC2SpotFleetLaunchSpecificationsSpotPrice = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-subnetid+ecsflsSubnetId :: Lens' EC2SpotFleetLaunchSpecifications (Maybe (Val Text))+ecsflsSubnetId = lens _eC2SpotFleetLaunchSpecificationsSubnetId (\s a -> s { _eC2SpotFleetLaunchSpecificationsSubnetId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-userdata+ecsflsUserData :: Lens' EC2SpotFleetLaunchSpecifications (Maybe (Val Text))+ecsflsUserData = lens _eC2SpotFleetLaunchSpecificationsUserData (\s a -> s { _eC2SpotFleetLaunchSpecificationsUserData = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-launchspecifications-weightedcapacity+ecsflsWeightedCapacity :: Lens' EC2SpotFleetLaunchSpecifications (Maybe (Val Double'))+ecsflsWeightedCapacity = lens _eC2SpotFleetLaunchSpecificationsWeightedCapacity (\s a -> s { _eC2SpotFleetLaunchSpecificationsWeightedCapacity = a })
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetMonitoring.hs view
@@ -0,0 +1,41 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-monitoring.html++module Stratosphere.ResourceProperties.EC2SpotFleetMonitoring where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2SpotFleetMonitoring. See+-- | 'ec2SpotFleetMonitoring' for a more convenient constructor.+data EC2SpotFleetMonitoring =+  EC2SpotFleetMonitoring+  { _eC2SpotFleetMonitoringEnabled :: Maybe (Val Bool')+  } deriving (Show, Generic)++instance ToJSON EC2SpotFleetMonitoring where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++instance FromJSON EC2SpotFleetMonitoring where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++-- | Constructor for 'EC2SpotFleetMonitoring' containing required fields as+-- | arguments.+ec2SpotFleetMonitoring+  :: EC2SpotFleetMonitoring+ec2SpotFleetMonitoring  =+  EC2SpotFleetMonitoring+  { _eC2SpotFleetMonitoringEnabled = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-monitoring.html#cfn-ec2-spotfleet-monitoring-enabled+ecsfmEnabled :: Lens' EC2SpotFleetMonitoring (Maybe (Val Bool'))+ecsfmEnabled = lens _eC2SpotFleetMonitoringEnabled (\s a -> s { _eC2SpotFleetMonitoringEnabled = a })
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetNetworkInterfaces.hs view
@@ -0,0 +1,103 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html++module Stratosphere.ResourceProperties.EC2SpotFleetNetworkInterfaces where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EC2SpotFleetInstanceIpv6Address+import Stratosphere.ResourceProperties.EC2SpotFleetPrivateIpAddresses++-- | Full data type definition for EC2SpotFleetNetworkInterfaces. See+-- | 'ec2SpotFleetNetworkInterfaces' for a more convenient constructor.+data EC2SpotFleetNetworkInterfaces =+  EC2SpotFleetNetworkInterfaces+  { _eC2SpotFleetNetworkInterfacesAssociatePublicIpAddress :: Maybe (Val Bool')+  , _eC2SpotFleetNetworkInterfacesDeleteOnTermination :: Maybe (Val Bool')+  , _eC2SpotFleetNetworkInterfacesDescription :: Maybe (Val Text)+  , _eC2SpotFleetNetworkInterfacesDeviceIndex :: Val Integer'+  , _eC2SpotFleetNetworkInterfacesGroups :: Maybe [Val Text]+  , _eC2SpotFleetNetworkInterfacesIpv6AddressCount :: Maybe (Val Integer')+  , _eC2SpotFleetNetworkInterfacesIpv6Addresses :: Maybe EC2SpotFleetInstanceIpv6Address+  , _eC2SpotFleetNetworkInterfacesNetworkInterfaceId :: Maybe (Val Text)+  , _eC2SpotFleetNetworkInterfacesPrivateIpAddresses :: Maybe [EC2SpotFleetPrivateIpAddresses]+  , _eC2SpotFleetNetworkInterfacesSecondaryPrivateIpAddressCount :: Maybe (Val Integer')+  , _eC2SpotFleetNetworkInterfacesSubnetId :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2SpotFleetNetworkInterfaces where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON EC2SpotFleetNetworkInterfaces where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'EC2SpotFleetNetworkInterfaces' containing required+-- | fields as arguments.+ec2SpotFleetNetworkInterfaces+  :: Val Integer' -- ^ 'ecsfniDeviceIndex'+  -> EC2SpotFleetNetworkInterfaces+ec2SpotFleetNetworkInterfaces deviceIndexarg =+  EC2SpotFleetNetworkInterfaces+  { _eC2SpotFleetNetworkInterfacesAssociatePublicIpAddress = Nothing+  , _eC2SpotFleetNetworkInterfacesDeleteOnTermination = Nothing+  , _eC2SpotFleetNetworkInterfacesDescription = Nothing+  , _eC2SpotFleetNetworkInterfacesDeviceIndex = deviceIndexarg+  , _eC2SpotFleetNetworkInterfacesGroups = Nothing+  , _eC2SpotFleetNetworkInterfacesIpv6AddressCount = Nothing+  , _eC2SpotFleetNetworkInterfacesIpv6Addresses = Nothing+  , _eC2SpotFleetNetworkInterfacesNetworkInterfaceId = Nothing+  , _eC2SpotFleetNetworkInterfacesPrivateIpAddresses = Nothing+  , _eC2SpotFleetNetworkInterfacesSecondaryPrivateIpAddressCount = Nothing+  , _eC2SpotFleetNetworkInterfacesSubnetId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-networkinterfaces-associatepublicipaddress+ecsfniAssociatePublicIpAddress :: Lens' EC2SpotFleetNetworkInterfaces (Maybe (Val Bool'))+ecsfniAssociatePublicIpAddress = lens _eC2SpotFleetNetworkInterfacesAssociatePublicIpAddress (\s a -> s { _eC2SpotFleetNetworkInterfacesAssociatePublicIpAddress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-networkinterfaces-deleteontermination+ecsfniDeleteOnTermination :: Lens' EC2SpotFleetNetworkInterfaces (Maybe (Val Bool'))+ecsfniDeleteOnTermination = lens _eC2SpotFleetNetworkInterfacesDeleteOnTermination (\s a -> s { _eC2SpotFleetNetworkInterfacesDeleteOnTermination = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-networkinterfaces-description+ecsfniDescription :: Lens' EC2SpotFleetNetworkInterfaces (Maybe (Val Text))+ecsfniDescription = lens _eC2SpotFleetNetworkInterfacesDescription (\s a -> s { _eC2SpotFleetNetworkInterfacesDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-networkinterfaces-deviceindex+ecsfniDeviceIndex :: Lens' EC2SpotFleetNetworkInterfaces (Val Integer')+ecsfniDeviceIndex = lens _eC2SpotFleetNetworkInterfacesDeviceIndex (\s a -> s { _eC2SpotFleetNetworkInterfacesDeviceIndex = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-networkinterfaces-groups+ecsfniGroups :: Lens' EC2SpotFleetNetworkInterfaces (Maybe [Val Text])+ecsfniGroups = lens _eC2SpotFleetNetworkInterfacesGroups (\s a -> s { _eC2SpotFleetNetworkInterfacesGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-networkinterfaces-ipv6addresscount+ecsfniIpv6AddressCount :: Lens' EC2SpotFleetNetworkInterfaces (Maybe (Val Integer'))+ecsfniIpv6AddressCount = lens _eC2SpotFleetNetworkInterfacesIpv6AddressCount (\s a -> s { _eC2SpotFleetNetworkInterfacesIpv6AddressCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-networkinterfaces-ipv6addresses+ecsfniIpv6Addresses :: Lens' EC2SpotFleetNetworkInterfaces (Maybe EC2SpotFleetInstanceIpv6Address)+ecsfniIpv6Addresses = lens _eC2SpotFleetNetworkInterfacesIpv6Addresses (\s a -> s { _eC2SpotFleetNetworkInterfacesIpv6Addresses = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-networkinterfaces-networkinterfaceid+ecsfniNetworkInterfaceId :: Lens' EC2SpotFleetNetworkInterfaces (Maybe (Val Text))+ecsfniNetworkInterfaceId = lens _eC2SpotFleetNetworkInterfacesNetworkInterfaceId (\s a -> s { _eC2SpotFleetNetworkInterfacesNetworkInterfaceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-networkinterfaces-privateipaddresses+ecsfniPrivateIpAddresses :: Lens' EC2SpotFleetNetworkInterfaces (Maybe [EC2SpotFleetPrivateIpAddresses])+ecsfniPrivateIpAddresses = lens _eC2SpotFleetNetworkInterfacesPrivateIpAddresses (\s a -> s { _eC2SpotFleetNetworkInterfacesPrivateIpAddresses = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-networkinterfaces-secondaryprivateipaddresscount+ecsfniSecondaryPrivateIpAddressCount :: Lens' EC2SpotFleetNetworkInterfaces (Maybe (Val Integer'))+ecsfniSecondaryPrivateIpAddressCount = lens _eC2SpotFleetNetworkInterfacesSecondaryPrivateIpAddressCount (\s a -> s { _eC2SpotFleetNetworkInterfacesSecondaryPrivateIpAddressCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-networkinterfaces-subnetid+ecsfniSubnetId :: Lens' EC2SpotFleetNetworkInterfaces (Maybe (Val Text))+ecsfniSubnetId = lens _eC2SpotFleetNetworkInterfacesSubnetId (\s a -> s { _eC2SpotFleetNetworkInterfacesSubnetId = a })
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetPlacement.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html++module Stratosphere.ResourceProperties.EC2SpotFleetPlacement where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2SpotFleetPlacement. See+-- | 'ec2SpotFleetPlacement' for a more convenient constructor.+data EC2SpotFleetPlacement =+  EC2SpotFleetPlacement+  { _eC2SpotFleetPlacementAvailabilityZone :: Maybe (Val Text)+  , _eC2SpotFleetPlacementGroupName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2SpotFleetPlacement where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++instance FromJSON EC2SpotFleetPlacement where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++-- | Constructor for 'EC2SpotFleetPlacement' containing required fields as+-- | arguments.+ec2SpotFleetPlacement+  :: EC2SpotFleetPlacement+ec2SpotFleetPlacement  =+  EC2SpotFleetPlacement+  { _eC2SpotFleetPlacementAvailabilityZone = Nothing+  , _eC2SpotFleetPlacementGroupName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html#cfn-ec2-spotfleet-placement-availabilityzone+ecsfpAvailabilityZone :: Lens' EC2SpotFleetPlacement (Maybe (Val Text))+ecsfpAvailabilityZone = lens _eC2SpotFleetPlacementAvailabilityZone (\s a -> s { _eC2SpotFleetPlacementAvailabilityZone = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html#cfn-ec2-spotfleet-placement-groupname+ecsfpGroupName :: Lens' EC2SpotFleetPlacement (Maybe (Val Text))+ecsfpGroupName = lens _eC2SpotFleetPlacementGroupName (\s a -> s { _eC2SpotFleetPlacementGroupName = a })
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetPrivateIpAddresses.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html++module Stratosphere.ResourceProperties.EC2SpotFleetPrivateIpAddresses where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2SpotFleetPrivateIpAddresses. See+-- | 'ec2SpotFleetPrivateIpAddresses' for a more convenient constructor.+data EC2SpotFleetPrivateIpAddresses =+  EC2SpotFleetPrivateIpAddresses+  { _eC2SpotFleetPrivateIpAddressesPrimary :: Maybe (Val Bool')+  , _eC2SpotFleetPrivateIpAddressesPrivateIpAddress :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2SpotFleetPrivateIpAddresses where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON EC2SpotFleetPrivateIpAddresses where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'EC2SpotFleetPrivateIpAddresses' containing required+-- | fields as arguments.+ec2SpotFleetPrivateIpAddresses+  :: Val Text -- ^ 'ecsfpiaPrivateIpAddress'+  -> EC2SpotFleetPrivateIpAddresses+ec2SpotFleetPrivateIpAddresses privateIpAddressarg =+  EC2SpotFleetPrivateIpAddresses+  { _eC2SpotFleetPrivateIpAddressesPrimary = Nothing+  , _eC2SpotFleetPrivateIpAddressesPrivateIpAddress = privateIpAddressarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html#cfn-ec2-spotfleet-privateipaddresses-primary+ecsfpiaPrimary :: Lens' EC2SpotFleetPrivateIpAddresses (Maybe (Val Bool'))+ecsfpiaPrimary = lens _eC2SpotFleetPrivateIpAddressesPrimary (\s a -> s { _eC2SpotFleetPrivateIpAddressesPrimary = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html#cfn-ec2-spotfleet-privateipaddresses-privateipaddress+ecsfpiaPrivateIpAddress :: Lens' EC2SpotFleetPrivateIpAddresses (Val Text)+ecsfpiaPrivateIpAddress = lens _eC2SpotFleetPrivateIpAddressesPrivateIpAddress (\s a -> s { _eC2SpotFleetPrivateIpAddressesPrivateIpAddress = a })
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetSecurityGroups.hs view
@@ -0,0 +1,41 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-securitygroups.html++module Stratosphere.ResourceProperties.EC2SpotFleetSecurityGroups where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2SpotFleetSecurityGroups. See+-- | 'ec2SpotFleetSecurityGroups' for a more convenient constructor.+data EC2SpotFleetSecurityGroups =+  EC2SpotFleetSecurityGroups+  { _eC2SpotFleetSecurityGroupsGroupId :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2SpotFleetSecurityGroups where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON EC2SpotFleetSecurityGroups where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'EC2SpotFleetSecurityGroups' containing required fields+-- | as arguments.+ec2SpotFleetSecurityGroups+  :: EC2SpotFleetSecurityGroups+ec2SpotFleetSecurityGroups  =+  EC2SpotFleetSecurityGroups+  { _eC2SpotFleetSecurityGroupsGroupId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-securitygroups.html#cfn-ec2-spotfleet-securitygroups-groupid+ecsfsgGroupId :: Lens' EC2SpotFleetSecurityGroups (Maybe (Val Text))+ecsfsgGroupId = lens _eC2SpotFleetSecurityGroupsGroupId (\s a -> s { _eC2SpotFleetSecurityGroupsGroupId = a })
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetSpotFleetRequestConfigData.hs view
@@ -0,0 +1,94 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html++module Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetRequestConfigData where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EC2SpotFleetLaunchSpecifications++-- | Full data type definition for EC2SpotFleetSpotFleetRequestConfigData. See+-- | 'ec2SpotFleetSpotFleetRequestConfigData' for a more convenient+-- | constructor.+data EC2SpotFleetSpotFleetRequestConfigData =+  EC2SpotFleetSpotFleetRequestConfigData+  { _eC2SpotFleetSpotFleetRequestConfigDataAllocationStrategy :: Maybe (Val Text)+  , _eC2SpotFleetSpotFleetRequestConfigDataExcessCapacityTerminationPolicy :: Maybe (Val Text)+  , _eC2SpotFleetSpotFleetRequestConfigDataIamFleetRole :: Val Text+  , _eC2SpotFleetSpotFleetRequestConfigDataLaunchSpecifications :: [EC2SpotFleetLaunchSpecifications]+  , _eC2SpotFleetSpotFleetRequestConfigDataSpotPrice :: Val Text+  , _eC2SpotFleetSpotFleetRequestConfigDataTargetCapacity :: Val Integer'+  , _eC2SpotFleetSpotFleetRequestConfigDataTerminateInstancesWithExpiration :: Maybe (Val Bool')+  , _eC2SpotFleetSpotFleetRequestConfigDataValidFrom :: Maybe (Val Text)+  , _eC2SpotFleetSpotFleetRequestConfigDataValidUntil :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2SpotFleetSpotFleetRequestConfigData where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++instance FromJSON EC2SpotFleetSpotFleetRequestConfigData where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++-- | Constructor for 'EC2SpotFleetSpotFleetRequestConfigData' containing+-- | required fields as arguments.+ec2SpotFleetSpotFleetRequestConfigData+  :: Val Text -- ^ 'ecsfsfrcdIamFleetRole'+  -> [EC2SpotFleetLaunchSpecifications] -- ^ 'ecsfsfrcdLaunchSpecifications'+  -> Val Text -- ^ 'ecsfsfrcdSpotPrice'+  -> Val Integer' -- ^ 'ecsfsfrcdTargetCapacity'+  -> EC2SpotFleetSpotFleetRequestConfigData+ec2SpotFleetSpotFleetRequestConfigData iamFleetRolearg launchSpecificationsarg spotPricearg targetCapacityarg =+  EC2SpotFleetSpotFleetRequestConfigData+  { _eC2SpotFleetSpotFleetRequestConfigDataAllocationStrategy = Nothing+  , _eC2SpotFleetSpotFleetRequestConfigDataExcessCapacityTerminationPolicy = Nothing+  , _eC2SpotFleetSpotFleetRequestConfigDataIamFleetRole = iamFleetRolearg+  , _eC2SpotFleetSpotFleetRequestConfigDataLaunchSpecifications = launchSpecificationsarg+  , _eC2SpotFleetSpotFleetRequestConfigDataSpotPrice = spotPricearg+  , _eC2SpotFleetSpotFleetRequestConfigDataTargetCapacity = targetCapacityarg+  , _eC2SpotFleetSpotFleetRequestConfigDataTerminateInstancesWithExpiration = Nothing+  , _eC2SpotFleetSpotFleetRequestConfigDataValidFrom = Nothing+  , _eC2SpotFleetSpotFleetRequestConfigDataValidUntil = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-allocationstrategy+ecsfsfrcdAllocationStrategy :: Lens' EC2SpotFleetSpotFleetRequestConfigData (Maybe (Val Text))+ecsfsfrcdAllocationStrategy = lens _eC2SpotFleetSpotFleetRequestConfigDataAllocationStrategy (\s a -> s { _eC2SpotFleetSpotFleetRequestConfigDataAllocationStrategy = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-excesscapacityterminationpolicy+ecsfsfrcdExcessCapacityTerminationPolicy :: Lens' EC2SpotFleetSpotFleetRequestConfigData (Maybe (Val Text))+ecsfsfrcdExcessCapacityTerminationPolicy = lens _eC2SpotFleetSpotFleetRequestConfigDataExcessCapacityTerminationPolicy (\s a -> s { _eC2SpotFleetSpotFleetRequestConfigDataExcessCapacityTerminationPolicy = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-iamfleetrole+ecsfsfrcdIamFleetRole :: Lens' EC2SpotFleetSpotFleetRequestConfigData (Val Text)+ecsfsfrcdIamFleetRole = lens _eC2SpotFleetSpotFleetRequestConfigDataIamFleetRole (\s a -> s { _eC2SpotFleetSpotFleetRequestConfigDataIamFleetRole = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications+ecsfsfrcdLaunchSpecifications :: Lens' EC2SpotFleetSpotFleetRequestConfigData [EC2SpotFleetLaunchSpecifications]+ecsfsfrcdLaunchSpecifications = lens _eC2SpotFleetSpotFleetRequestConfigDataLaunchSpecifications (\s a -> s { _eC2SpotFleetSpotFleetRequestConfigDataLaunchSpecifications = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-spotprice+ecsfsfrcdSpotPrice :: Lens' EC2SpotFleetSpotFleetRequestConfigData (Val Text)+ecsfsfrcdSpotPrice = lens _eC2SpotFleetSpotFleetRequestConfigDataSpotPrice (\s a -> s { _eC2SpotFleetSpotFleetRequestConfigDataSpotPrice = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-targetcapacity+ecsfsfrcdTargetCapacity :: Lens' EC2SpotFleetSpotFleetRequestConfigData (Val Integer')+ecsfsfrcdTargetCapacity = lens _eC2SpotFleetSpotFleetRequestConfigDataTargetCapacity (\s a -> s { _eC2SpotFleetSpotFleetRequestConfigDataTargetCapacity = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-terminateinstanceswithexpiration+ecsfsfrcdTerminateInstancesWithExpiration :: Lens' EC2SpotFleetSpotFleetRequestConfigData (Maybe (Val Bool'))+ecsfsfrcdTerminateInstancesWithExpiration = lens _eC2SpotFleetSpotFleetRequestConfigDataTerminateInstancesWithExpiration (\s a -> s { _eC2SpotFleetSpotFleetRequestConfigDataTerminateInstancesWithExpiration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-validfrom+ecsfsfrcdValidFrom :: Lens' EC2SpotFleetSpotFleetRequestConfigData (Maybe (Val Text))+ecsfsfrcdValidFrom = lens _eC2SpotFleetSpotFleetRequestConfigDataValidFrom (\s a -> s { _eC2SpotFleetSpotFleetRequestConfigDataValidFrom = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata-validuntil+ecsfsfrcdValidUntil :: Lens' EC2SpotFleetSpotFleetRequestConfigData (Maybe (Val Text))+ecsfsfrcdValidUntil = lens _eC2SpotFleetSpotFleetRequestConfigDataValidUntil (\s a -> s { _eC2SpotFleetSpotFleetRequestConfigDataValidUntil = a })
− library-gen/Stratosphere/ResourceProperties/EC2SsmAssociationParameters.hs
@@ -1,51 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | AssociationParameters is a property of the Amazon EC2 Instance--- SsmAssociations property that specifies input parameter values for an--- Amazon EC2 Simple Systems Manager (SSM) document.--module Stratosphere.ResourceProperties.EC2SsmAssociationParameters where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for EC2SsmAssociationParameters. See--- 'ec2SsmAssociationParameters' for a more convenient constructor.-data EC2SsmAssociationParameters =-  EC2SsmAssociationParameters-  { _eC2SsmAssociationParametersKey :: Val Text-  , _eC2SsmAssociationParametersValue :: [Val Text]-  } deriving (Show, Generic)--instance ToJSON EC2SsmAssociationParameters where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }--instance FromJSON EC2SsmAssociationParameters where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }---- | Constructor for 'EC2SsmAssociationParameters' containing required fields--- as arguments.-ec2SsmAssociationParameters-  :: Val Text -- ^ 'ecsapKey'-  -> [Val Text] -- ^ 'ecsapValue'-  -> EC2SsmAssociationParameters-ec2SsmAssociationParameters keyarg valuearg =-  EC2SsmAssociationParameters-  { _eC2SsmAssociationParametersKey = keyarg-  , _eC2SsmAssociationParametersValue = valuearg-  }---- | The name of an input parameter that is in the associated SSM document.-ecsapKey :: Lens' EC2SsmAssociationParameters (Val Text)-ecsapKey = lens _eC2SsmAssociationParametersKey (\s a -> s { _eC2SsmAssociationParametersKey = a })---- | The value of an input parameter.-ecsapValue :: Lens' EC2SsmAssociationParameters [Val Text]-ecsapValue = lens _eC2SsmAssociationParametersValue (\s a -> s { _eC2SsmAssociationParametersValue = a })
− library-gen/Stratosphere/ResourceProperties/EC2SsmAssociations.hs
@@ -1,50 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | SsmAssociations is a property of the AWS::EC2::Instance resource that--- specifies the Amazon EC2 Simple Systems Manager (SSM) document and--- parameter values to associate with an instance.--module Stratosphere.ResourceProperties.EC2SsmAssociations where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.EC2SsmAssociationParameters---- | Full data type definition for EC2SsmAssociations. See--- 'ec2SsmAssociations' for a more convenient constructor.-data EC2SsmAssociations =-  EC2SsmAssociations-  { _eC2SsmAssociationsAssociationParameters :: Maybe [EC2SsmAssociationParameters]-  , _eC2SsmAssociationsDocumentName :: Val Text-  } deriving (Show, Generic)--instance ToJSON EC2SsmAssociations where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }--instance FromJSON EC2SsmAssociations where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }---- | Constructor for 'EC2SsmAssociations' containing required fields as--- arguments.-ec2SsmAssociations-  :: Val Text -- ^ 'ecsaDocumentName'-  -> EC2SsmAssociations-ec2SsmAssociations documentNamearg =-  EC2SsmAssociations-  { _eC2SsmAssociationsAssociationParameters = Nothing-  , _eC2SsmAssociationsDocumentName = documentNamearg-  }---- | The input parameter values to use with the associated SSM document.-ecsaAssociationParameters :: Lens' EC2SsmAssociations (Maybe [EC2SsmAssociationParameters])-ecsaAssociationParameters = lens _eC2SsmAssociationsAssociationParameters (\s a -> s { _eC2SsmAssociationsAssociationParameters = a })---- | The name of an SSM document to associate with the instance.-ecsaDocumentName :: Lens' EC2SsmAssociations (Val Text)-ecsaDocumentName = lens _eC2SsmAssociationsDocumentName (\s a -> s { _eC2SsmAssociationsDocumentName = a })
+ library-gen/Stratosphere/ResourceProperties/ECSServiceDeploymentConfiguration.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html++module Stratosphere.ResourceProperties.ECSServiceDeploymentConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ECSServiceDeploymentConfiguration. See+-- | 'ecsServiceDeploymentConfiguration' for a more convenient constructor.+data ECSServiceDeploymentConfiguration =+  ECSServiceDeploymentConfiguration+  { _eCSServiceDeploymentConfigurationMaximumPercent :: Maybe (Val Integer')+  , _eCSServiceDeploymentConfigurationMinimumHealthyPercent :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON ECSServiceDeploymentConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON ECSServiceDeploymentConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'ECSServiceDeploymentConfiguration' containing required+-- | fields as arguments.+ecsServiceDeploymentConfiguration+  :: ECSServiceDeploymentConfiguration+ecsServiceDeploymentConfiguration  =+  ECSServiceDeploymentConfiguration+  { _eCSServiceDeploymentConfigurationMaximumPercent = Nothing+  , _eCSServiceDeploymentConfigurationMinimumHealthyPercent = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-maximumpercent+ecssdcMaximumPercent :: Lens' ECSServiceDeploymentConfiguration (Maybe (Val Integer'))+ecssdcMaximumPercent = lens _eCSServiceDeploymentConfigurationMaximumPercent (\s a -> s { _eCSServiceDeploymentConfigurationMaximumPercent = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-minimumhealthypercent+ecssdcMinimumHealthyPercent :: Lens' ECSServiceDeploymentConfiguration (Maybe (Val Integer'))+ecssdcMinimumHealthyPercent = lens _eCSServiceDeploymentConfigurationMinimumHealthyPercent (\s a -> s { _eCSServiceDeploymentConfigurationMinimumHealthyPercent = a })
+ library-gen/Stratosphere/ResourceProperties/ECSServiceLoadBalancer.hs view
@@ -0,0 +1,60 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancers.html++module Stratosphere.ResourceProperties.ECSServiceLoadBalancer where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ECSServiceLoadBalancer. See+-- | 'ecsServiceLoadBalancer' for a more convenient constructor.+data ECSServiceLoadBalancer =+  ECSServiceLoadBalancer+  { _eCSServiceLoadBalancerContainerName :: Maybe (Val Text)+  , _eCSServiceLoadBalancerContainerPort :: Val Integer'+  , _eCSServiceLoadBalancerLoadBalancerName :: Maybe (Val Text)+  , _eCSServiceLoadBalancerTargetGroupArn :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ECSServiceLoadBalancer where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++instance FromJSON ECSServiceLoadBalancer where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++-- | Constructor for 'ECSServiceLoadBalancer' containing required fields as+-- | arguments.+ecsServiceLoadBalancer+  :: Val Integer' -- ^ 'ecsslbContainerPort'+  -> ECSServiceLoadBalancer+ecsServiceLoadBalancer containerPortarg =+  ECSServiceLoadBalancer+  { _eCSServiceLoadBalancerContainerName = Nothing+  , _eCSServiceLoadBalancerContainerPort = containerPortarg+  , _eCSServiceLoadBalancerLoadBalancerName = Nothing+  , _eCSServiceLoadBalancerTargetGroupArn = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancers.html#cfn-ecs-service-loadbalancers-containername+ecsslbContainerName :: Lens' ECSServiceLoadBalancer (Maybe (Val Text))+ecsslbContainerName = lens _eCSServiceLoadBalancerContainerName (\s a -> s { _eCSServiceLoadBalancerContainerName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancers.html#cfn-ecs-service-loadbalancers-containerport+ecsslbContainerPort :: Lens' ECSServiceLoadBalancer (Val Integer')+ecsslbContainerPort = lens _eCSServiceLoadBalancerContainerPort (\s a -> s { _eCSServiceLoadBalancerContainerPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancers.html#cfn-ecs-service-loadbalancers-loadbalancername+ecsslbLoadBalancerName :: Lens' ECSServiceLoadBalancer (Maybe (Val Text))+ecsslbLoadBalancerName = lens _eCSServiceLoadBalancerLoadBalancerName (\s a -> s { _eCSServiceLoadBalancerLoadBalancerName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-loadbalancers.html#cfn-ecs-service-loadbalancers-targetgrouparn+ecsslbTargetGroupArn :: Lens' ECSServiceLoadBalancer (Maybe (Val Text))+ecsslbTargetGroupArn = lens _eCSServiceLoadBalancerTargetGroupArn (\s a -> s { _eCSServiceLoadBalancerTargetGroupArn = a })
+ library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionContainerDefinition.hs view
@@ -0,0 +1,197 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html++module Stratosphere.ResourceProperties.ECSTaskDefinitionContainerDefinition where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ECSTaskDefinitionKeyValuePair+import Stratosphere.ResourceProperties.ECSTaskDefinitionHostEntry+import Stratosphere.ResourceProperties.ECSTaskDefinitionLogConfiguration+import Stratosphere.ResourceProperties.ECSTaskDefinitionMountPoint+import Stratosphere.ResourceProperties.ECSTaskDefinitionPortMapping+import Stratosphere.ResourceProperties.ECSTaskDefinitionUlimit+import Stratosphere.ResourceProperties.ECSTaskDefinitionVolumeFrom++-- | Full data type definition for ECSTaskDefinitionContainerDefinition. See+-- | 'ecsTaskDefinitionContainerDefinition' for a more convenient constructor.+data ECSTaskDefinitionContainerDefinition =+  ECSTaskDefinitionContainerDefinition+  { _eCSTaskDefinitionContainerDefinitionCommand :: Maybe [Val Text]+  , _eCSTaskDefinitionContainerDefinitionCpu :: Maybe (Val Integer')+  , _eCSTaskDefinitionContainerDefinitionDisableNetworking :: Maybe (Val Bool')+  , _eCSTaskDefinitionContainerDefinitionDnsSearchDomains :: Maybe [Val Text]+  , _eCSTaskDefinitionContainerDefinitionDnsServers :: Maybe [Val Text]+  , _eCSTaskDefinitionContainerDefinitionDockerLabels :: Maybe Object+  , _eCSTaskDefinitionContainerDefinitionDockerSecurityOptions :: Maybe [Val Text]+  , _eCSTaskDefinitionContainerDefinitionEntryPoint :: Maybe [Val Text]+  , _eCSTaskDefinitionContainerDefinitionEnvironment :: Maybe [ECSTaskDefinitionKeyValuePair]+  , _eCSTaskDefinitionContainerDefinitionEssential :: Maybe (Val Bool')+  , _eCSTaskDefinitionContainerDefinitionExtraHosts :: Maybe [ECSTaskDefinitionHostEntry]+  , _eCSTaskDefinitionContainerDefinitionHostname :: Maybe (Val Text)+  , _eCSTaskDefinitionContainerDefinitionImage :: Maybe (Val Text)+  , _eCSTaskDefinitionContainerDefinitionLinks :: Maybe [Val Text]+  , _eCSTaskDefinitionContainerDefinitionLogConfiguration :: Maybe ECSTaskDefinitionLogConfiguration+  , _eCSTaskDefinitionContainerDefinitionMemory :: Maybe (Val Integer')+  , _eCSTaskDefinitionContainerDefinitionMemoryReservation :: Maybe (Val Integer')+  , _eCSTaskDefinitionContainerDefinitionMountPoints :: Maybe [ECSTaskDefinitionMountPoint]+  , _eCSTaskDefinitionContainerDefinitionName :: Maybe (Val Text)+  , _eCSTaskDefinitionContainerDefinitionPortMappings :: Maybe [ECSTaskDefinitionPortMapping]+  , _eCSTaskDefinitionContainerDefinitionPrivileged :: Maybe (Val Bool')+  , _eCSTaskDefinitionContainerDefinitionReadonlyRootFilesystem :: Maybe (Val Bool')+  , _eCSTaskDefinitionContainerDefinitionUlimits :: Maybe [ECSTaskDefinitionUlimit]+  , _eCSTaskDefinitionContainerDefinitionUser :: Maybe (Val Text)+  , _eCSTaskDefinitionContainerDefinitionVolumesFrom :: Maybe [ECSTaskDefinitionVolumeFrom]+  , _eCSTaskDefinitionContainerDefinitionWorkingDirectory :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ECSTaskDefinitionContainerDefinition where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++instance FromJSON ECSTaskDefinitionContainerDefinition where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++-- | Constructor for 'ECSTaskDefinitionContainerDefinition' containing+-- | required fields as arguments.+ecsTaskDefinitionContainerDefinition+  :: ECSTaskDefinitionContainerDefinition+ecsTaskDefinitionContainerDefinition  =+  ECSTaskDefinitionContainerDefinition+  { _eCSTaskDefinitionContainerDefinitionCommand = Nothing+  , _eCSTaskDefinitionContainerDefinitionCpu = Nothing+  , _eCSTaskDefinitionContainerDefinitionDisableNetworking = Nothing+  , _eCSTaskDefinitionContainerDefinitionDnsSearchDomains = Nothing+  , _eCSTaskDefinitionContainerDefinitionDnsServers = Nothing+  , _eCSTaskDefinitionContainerDefinitionDockerLabels = Nothing+  , _eCSTaskDefinitionContainerDefinitionDockerSecurityOptions = Nothing+  , _eCSTaskDefinitionContainerDefinitionEntryPoint = Nothing+  , _eCSTaskDefinitionContainerDefinitionEnvironment = Nothing+  , _eCSTaskDefinitionContainerDefinitionEssential = Nothing+  , _eCSTaskDefinitionContainerDefinitionExtraHosts = Nothing+  , _eCSTaskDefinitionContainerDefinitionHostname = Nothing+  , _eCSTaskDefinitionContainerDefinitionImage = Nothing+  , _eCSTaskDefinitionContainerDefinitionLinks = Nothing+  , _eCSTaskDefinitionContainerDefinitionLogConfiguration = Nothing+  , _eCSTaskDefinitionContainerDefinitionMemory = Nothing+  , _eCSTaskDefinitionContainerDefinitionMemoryReservation = Nothing+  , _eCSTaskDefinitionContainerDefinitionMountPoints = Nothing+  , _eCSTaskDefinitionContainerDefinitionName = Nothing+  , _eCSTaskDefinitionContainerDefinitionPortMappings = Nothing+  , _eCSTaskDefinitionContainerDefinitionPrivileged = Nothing+  , _eCSTaskDefinitionContainerDefinitionReadonlyRootFilesystem = Nothing+  , _eCSTaskDefinitionContainerDefinitionUlimits = Nothing+  , _eCSTaskDefinitionContainerDefinitionUser = Nothing+  , _eCSTaskDefinitionContainerDefinitionVolumesFrom = Nothing+  , _eCSTaskDefinitionContainerDefinitionWorkingDirectory = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-command+ecstdcdCommand :: Lens' ECSTaskDefinitionContainerDefinition (Maybe [Val Text])+ecstdcdCommand = lens _eCSTaskDefinitionContainerDefinitionCommand (\s a -> s { _eCSTaskDefinitionContainerDefinitionCommand = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-cpu+ecstdcdCpu :: Lens' ECSTaskDefinitionContainerDefinition (Maybe (Val Integer'))+ecstdcdCpu = lens _eCSTaskDefinitionContainerDefinitionCpu (\s a -> s { _eCSTaskDefinitionContainerDefinitionCpu = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-disablenetworking+ecstdcdDisableNetworking :: Lens' ECSTaskDefinitionContainerDefinition (Maybe (Val Bool'))+ecstdcdDisableNetworking = lens _eCSTaskDefinitionContainerDefinitionDisableNetworking (\s a -> s { _eCSTaskDefinitionContainerDefinitionDisableNetworking = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dnssearchdomains+ecstdcdDnsSearchDomains :: Lens' ECSTaskDefinitionContainerDefinition (Maybe [Val Text])+ecstdcdDnsSearchDomains = lens _eCSTaskDefinitionContainerDefinitionDnsSearchDomains (\s a -> s { _eCSTaskDefinitionContainerDefinitionDnsSearchDomains = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dnsservers+ecstdcdDnsServers :: Lens' ECSTaskDefinitionContainerDefinition (Maybe [Val Text])+ecstdcdDnsServers = lens _eCSTaskDefinitionContainerDefinitionDnsServers (\s a -> s { _eCSTaskDefinitionContainerDefinitionDnsServers = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dockerlabels+ecstdcdDockerLabels :: Lens' ECSTaskDefinitionContainerDefinition (Maybe Object)+ecstdcdDockerLabels = lens _eCSTaskDefinitionContainerDefinitionDockerLabels (\s a -> s { _eCSTaskDefinitionContainerDefinitionDockerLabels = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-dockersecurityoptions+ecstdcdDockerSecurityOptions :: Lens' ECSTaskDefinitionContainerDefinition (Maybe [Val Text])+ecstdcdDockerSecurityOptions = lens _eCSTaskDefinitionContainerDefinitionDockerSecurityOptions (\s a -> s { _eCSTaskDefinitionContainerDefinitionDockerSecurityOptions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-entrypoint+ecstdcdEntryPoint :: Lens' ECSTaskDefinitionContainerDefinition (Maybe [Val Text])+ecstdcdEntryPoint = lens _eCSTaskDefinitionContainerDefinitionEntryPoint (\s a -> s { _eCSTaskDefinitionContainerDefinitionEntryPoint = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-environment+ecstdcdEnvironment :: Lens' ECSTaskDefinitionContainerDefinition (Maybe [ECSTaskDefinitionKeyValuePair])+ecstdcdEnvironment = lens _eCSTaskDefinitionContainerDefinitionEnvironment (\s a -> s { _eCSTaskDefinitionContainerDefinitionEnvironment = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-essential+ecstdcdEssential :: Lens' ECSTaskDefinitionContainerDefinition (Maybe (Val Bool'))+ecstdcdEssential = lens _eCSTaskDefinitionContainerDefinitionEssential (\s a -> s { _eCSTaskDefinitionContainerDefinitionEssential = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-extrahosts+ecstdcdExtraHosts :: Lens' ECSTaskDefinitionContainerDefinition (Maybe [ECSTaskDefinitionHostEntry])+ecstdcdExtraHosts = lens _eCSTaskDefinitionContainerDefinitionExtraHosts (\s a -> s { _eCSTaskDefinitionContainerDefinitionExtraHosts = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-hostname+ecstdcdHostname :: Lens' ECSTaskDefinitionContainerDefinition (Maybe (Val Text))+ecstdcdHostname = lens _eCSTaskDefinitionContainerDefinitionHostname (\s a -> s { _eCSTaskDefinitionContainerDefinitionHostname = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-image+ecstdcdImage :: Lens' ECSTaskDefinitionContainerDefinition (Maybe (Val Text))+ecstdcdImage = lens _eCSTaskDefinitionContainerDefinitionImage (\s a -> s { _eCSTaskDefinitionContainerDefinitionImage = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-links+ecstdcdLinks :: Lens' ECSTaskDefinitionContainerDefinition (Maybe [Val Text])+ecstdcdLinks = lens _eCSTaskDefinitionContainerDefinitionLinks (\s a -> s { _eCSTaskDefinitionContainerDefinitionLinks = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-logconfiguration+ecstdcdLogConfiguration :: Lens' ECSTaskDefinitionContainerDefinition (Maybe ECSTaskDefinitionLogConfiguration)+ecstdcdLogConfiguration = lens _eCSTaskDefinitionContainerDefinitionLogConfiguration (\s a -> s { _eCSTaskDefinitionContainerDefinitionLogConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-memory+ecstdcdMemory :: Lens' ECSTaskDefinitionContainerDefinition (Maybe (Val Integer'))+ecstdcdMemory = lens _eCSTaskDefinitionContainerDefinitionMemory (\s a -> s { _eCSTaskDefinitionContainerDefinitionMemory = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-memoryreservation+ecstdcdMemoryReservation :: Lens' ECSTaskDefinitionContainerDefinition (Maybe (Val Integer'))+ecstdcdMemoryReservation = lens _eCSTaskDefinitionContainerDefinitionMemoryReservation (\s a -> s { _eCSTaskDefinitionContainerDefinitionMemoryReservation = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-mountpoints+ecstdcdMountPoints :: Lens' ECSTaskDefinitionContainerDefinition (Maybe [ECSTaskDefinitionMountPoint])+ecstdcdMountPoints = lens _eCSTaskDefinitionContainerDefinitionMountPoints (\s a -> s { _eCSTaskDefinitionContainerDefinitionMountPoints = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-name+ecstdcdName :: Lens' ECSTaskDefinitionContainerDefinition (Maybe (Val Text))+ecstdcdName = lens _eCSTaskDefinitionContainerDefinitionName (\s a -> s { _eCSTaskDefinitionContainerDefinitionName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-portmappings+ecstdcdPortMappings :: Lens' ECSTaskDefinitionContainerDefinition (Maybe [ECSTaskDefinitionPortMapping])+ecstdcdPortMappings = lens _eCSTaskDefinitionContainerDefinitionPortMappings (\s a -> s { _eCSTaskDefinitionContainerDefinitionPortMappings = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-privileged+ecstdcdPrivileged :: Lens' ECSTaskDefinitionContainerDefinition (Maybe (Val Bool'))+ecstdcdPrivileged = lens _eCSTaskDefinitionContainerDefinitionPrivileged (\s a -> s { _eCSTaskDefinitionContainerDefinitionPrivileged = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-readonlyrootfilesystem+ecstdcdReadonlyRootFilesystem :: Lens' ECSTaskDefinitionContainerDefinition (Maybe (Val Bool'))+ecstdcdReadonlyRootFilesystem = lens _eCSTaskDefinitionContainerDefinitionReadonlyRootFilesystem (\s a -> s { _eCSTaskDefinitionContainerDefinitionReadonlyRootFilesystem = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-ulimits+ecstdcdUlimits :: Lens' ECSTaskDefinitionContainerDefinition (Maybe [ECSTaskDefinitionUlimit])+ecstdcdUlimits = lens _eCSTaskDefinitionContainerDefinitionUlimits (\s a -> s { _eCSTaskDefinitionContainerDefinitionUlimits = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-user+ecstdcdUser :: Lens' ECSTaskDefinitionContainerDefinition (Maybe (Val Text))+ecstdcdUser = lens _eCSTaskDefinitionContainerDefinitionUser (\s a -> s { _eCSTaskDefinitionContainerDefinitionUser = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-volumesfrom+ecstdcdVolumesFrom :: Lens' ECSTaskDefinitionContainerDefinition (Maybe [ECSTaskDefinitionVolumeFrom])+ecstdcdVolumesFrom = lens _eCSTaskDefinitionContainerDefinitionVolumesFrom (\s a -> s { _eCSTaskDefinitionContainerDefinitionVolumesFrom = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions.html#cfn-ecs-taskdefinition-containerdefinition-workingdirectory+ecstdcdWorkingDirectory :: Lens' ECSTaskDefinitionContainerDefinition (Maybe (Val Text))+ecstdcdWorkingDirectory = lens _eCSTaskDefinitionContainerDefinitionWorkingDirectory (\s a -> s { _eCSTaskDefinitionContainerDefinitionWorkingDirectory = a })
+ library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionHostEntry.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-hostentry.html++module Stratosphere.ResourceProperties.ECSTaskDefinitionHostEntry where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ECSTaskDefinitionHostEntry. See+-- | 'ecsTaskDefinitionHostEntry' for a more convenient constructor.+data ECSTaskDefinitionHostEntry =+  ECSTaskDefinitionHostEntry+  { _eCSTaskDefinitionHostEntryHostname :: Val Text+  , _eCSTaskDefinitionHostEntryIpAddress :: Val Text+  } deriving (Show, Generic)++instance ToJSON ECSTaskDefinitionHostEntry where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON ECSTaskDefinitionHostEntry where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'ECSTaskDefinitionHostEntry' containing required fields+-- | as arguments.+ecsTaskDefinitionHostEntry+  :: Val Text -- ^ 'ecstdheHostname'+  -> Val Text -- ^ 'ecstdheIpAddress'+  -> ECSTaskDefinitionHostEntry+ecsTaskDefinitionHostEntry hostnamearg ipAddressarg =+  ECSTaskDefinitionHostEntry+  { _eCSTaskDefinitionHostEntryHostname = hostnamearg+  , _eCSTaskDefinitionHostEntryIpAddress = ipAddressarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-hostentry.html#cfn-ecs-taskdefinition-containerdefinition-hostentry-hostname+ecstdheHostname :: Lens' ECSTaskDefinitionHostEntry (Val Text)+ecstdheHostname = lens _eCSTaskDefinitionHostEntryHostname (\s a -> s { _eCSTaskDefinitionHostEntryHostname = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-hostentry.html#cfn-ecs-taskdefinition-containerdefinition-hostentry-ipaddress+ecstdheIpAddress :: Lens' ECSTaskDefinitionHostEntry (Val Text)+ecstdheIpAddress = lens _eCSTaskDefinitionHostEntryIpAddress (\s a -> s { _eCSTaskDefinitionHostEntryIpAddress = a })
+ library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionHostVolumeProperties.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes-host.html++module Stratosphere.ResourceProperties.ECSTaskDefinitionHostVolumeProperties where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ECSTaskDefinitionHostVolumeProperties. See+-- | 'ecsTaskDefinitionHostVolumeProperties' for a more convenient+-- | constructor.+data ECSTaskDefinitionHostVolumeProperties =+  ECSTaskDefinitionHostVolumeProperties+  { _eCSTaskDefinitionHostVolumePropertiesSourcePath :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ECSTaskDefinitionHostVolumeProperties where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++instance FromJSON ECSTaskDefinitionHostVolumeProperties where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++-- | Constructor for 'ECSTaskDefinitionHostVolumeProperties' containing+-- | required fields as arguments.+ecsTaskDefinitionHostVolumeProperties+  :: ECSTaskDefinitionHostVolumeProperties+ecsTaskDefinitionHostVolumeProperties  =+  ECSTaskDefinitionHostVolumeProperties+  { _eCSTaskDefinitionHostVolumePropertiesSourcePath = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes-host.html#cfn-ecs-taskdefinition-volumes-host-sourcepath+ecstdhvpSourcePath :: Lens' ECSTaskDefinitionHostVolumeProperties (Maybe (Val Text))+ecstdhvpSourcePath = lens _eCSTaskDefinitionHostVolumePropertiesSourcePath (\s a -> s { _eCSTaskDefinitionHostVolumePropertiesSourcePath = a })
+ library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionKeyValuePair.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-environment.html++module Stratosphere.ResourceProperties.ECSTaskDefinitionKeyValuePair where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ECSTaskDefinitionKeyValuePair. See+-- | 'ecsTaskDefinitionKeyValuePair' for a more convenient constructor.+data ECSTaskDefinitionKeyValuePair =+  ECSTaskDefinitionKeyValuePair+  { _eCSTaskDefinitionKeyValuePairName :: Maybe (Val Text)+  , _eCSTaskDefinitionKeyValuePairValue :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ECSTaskDefinitionKeyValuePair where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON ECSTaskDefinitionKeyValuePair where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'ECSTaskDefinitionKeyValuePair' containing required+-- | fields as arguments.+ecsTaskDefinitionKeyValuePair+  :: ECSTaskDefinitionKeyValuePair+ecsTaskDefinitionKeyValuePair  =+  ECSTaskDefinitionKeyValuePair+  { _eCSTaskDefinitionKeyValuePairName = Nothing+  , _eCSTaskDefinitionKeyValuePairValue = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-environment.html#cfn-ecs-taskdefinition-containerdefinition-environment-name+ecstdkvpName :: Lens' ECSTaskDefinitionKeyValuePair (Maybe (Val Text))+ecstdkvpName = lens _eCSTaskDefinitionKeyValuePairName (\s a -> s { _eCSTaskDefinitionKeyValuePairName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-environment.html#cfn-ecs-taskdefinition-containerdefinition-environment-value+ecstdkvpValue :: Lens' ECSTaskDefinitionKeyValuePair (Maybe (Val Text))+ecstdkvpValue = lens _eCSTaskDefinitionKeyValuePairValue (\s a -> s { _eCSTaskDefinitionKeyValuePairValue = a })
+ library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionLogConfiguration.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html++module Stratosphere.ResourceProperties.ECSTaskDefinitionLogConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ECSTaskDefinitionLogConfiguration. See+-- | 'ecsTaskDefinitionLogConfiguration' for a more convenient constructor.+data ECSTaskDefinitionLogConfiguration =+  ECSTaskDefinitionLogConfiguration+  { _eCSTaskDefinitionLogConfigurationLogDriver :: Val Text+  , _eCSTaskDefinitionLogConfigurationOptions :: Maybe Object+  } deriving (Show, Generic)++instance ToJSON ECSTaskDefinitionLogConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON ECSTaskDefinitionLogConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'ECSTaskDefinitionLogConfiguration' containing required+-- | fields as arguments.+ecsTaskDefinitionLogConfiguration+  :: Val Text -- ^ 'ecstdlcLogDriver'+  -> ECSTaskDefinitionLogConfiguration+ecsTaskDefinitionLogConfiguration logDriverarg =+  ECSTaskDefinitionLogConfiguration+  { _eCSTaskDefinitionLogConfigurationLogDriver = logDriverarg+  , _eCSTaskDefinitionLogConfigurationOptions = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html#cfn-ecs-taskdefinition-containerdefinition-logconfiguration-logdriver+ecstdlcLogDriver :: Lens' ECSTaskDefinitionLogConfiguration (Val Text)+ecstdlcLogDriver = lens _eCSTaskDefinitionLogConfigurationLogDriver (\s a -> s { _eCSTaskDefinitionLogConfigurationLogDriver = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-logconfiguration.html#cfn-ecs-taskdefinition-containerdefinition-logconfiguration-options+ecstdlcOptions :: Lens' ECSTaskDefinitionLogConfiguration (Maybe Object)+ecstdlcOptions = lens _eCSTaskDefinitionLogConfigurationOptions (\s a -> s { _eCSTaskDefinitionLogConfigurationOptions = a })
+ library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionMountPoint.hs view
@@ -0,0 +1,53 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-mountpoints.html++module Stratosphere.ResourceProperties.ECSTaskDefinitionMountPoint where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ECSTaskDefinitionMountPoint. See+-- | 'ecsTaskDefinitionMountPoint' for a more convenient constructor.+data ECSTaskDefinitionMountPoint =+  ECSTaskDefinitionMountPoint+  { _eCSTaskDefinitionMountPointContainerPath :: Maybe (Val Text)+  , _eCSTaskDefinitionMountPointReadOnly :: Maybe (Val Bool')+  , _eCSTaskDefinitionMountPointSourceVolume :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ECSTaskDefinitionMountPoint where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON ECSTaskDefinitionMountPoint where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'ECSTaskDefinitionMountPoint' containing required fields+-- | as arguments.+ecsTaskDefinitionMountPoint+  :: ECSTaskDefinitionMountPoint+ecsTaskDefinitionMountPoint  =+  ECSTaskDefinitionMountPoint+  { _eCSTaskDefinitionMountPointContainerPath = Nothing+  , _eCSTaskDefinitionMountPointReadOnly = Nothing+  , _eCSTaskDefinitionMountPointSourceVolume = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-mountpoints.html#cfn-ecs-taskdefinition-containerdefinition-mountpoints-containerpath+ecstdmpContainerPath :: Lens' ECSTaskDefinitionMountPoint (Maybe (Val Text))+ecstdmpContainerPath = lens _eCSTaskDefinitionMountPointContainerPath (\s a -> s { _eCSTaskDefinitionMountPointContainerPath = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-mountpoints.html#cfn-ecs-taskdefinition-containerdefinition-mountpoints-readonly+ecstdmpReadOnly :: Lens' ECSTaskDefinitionMountPoint (Maybe (Val Bool'))+ecstdmpReadOnly = lens _eCSTaskDefinitionMountPointReadOnly (\s a -> s { _eCSTaskDefinitionMountPointReadOnly = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-mountpoints.html#cfn-ecs-taskdefinition-containerdefinition-mountpoints-sourcevolume+ecstdmpSourceVolume :: Lens' ECSTaskDefinitionMountPoint (Maybe (Val Text))+ecstdmpSourceVolume = lens _eCSTaskDefinitionMountPointSourceVolume (\s a -> s { _eCSTaskDefinitionMountPointSourceVolume = a })
+ library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionPortMapping.hs view
@@ -0,0 +1,53 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-portmappings.html++module Stratosphere.ResourceProperties.ECSTaskDefinitionPortMapping where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ECSTaskDefinitionPortMapping. See+-- | 'ecsTaskDefinitionPortMapping' for a more convenient constructor.+data ECSTaskDefinitionPortMapping =+  ECSTaskDefinitionPortMapping+  { _eCSTaskDefinitionPortMappingContainerPort :: Maybe (Val Integer')+  , _eCSTaskDefinitionPortMappingHostPort :: Maybe (Val Integer')+  , _eCSTaskDefinitionPortMappingProtocol :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ECSTaskDefinitionPortMapping where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++instance FromJSON ECSTaskDefinitionPortMapping where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++-- | Constructor for 'ECSTaskDefinitionPortMapping' containing required fields+-- | as arguments.+ecsTaskDefinitionPortMapping+  :: ECSTaskDefinitionPortMapping+ecsTaskDefinitionPortMapping  =+  ECSTaskDefinitionPortMapping+  { _eCSTaskDefinitionPortMappingContainerPort = Nothing+  , _eCSTaskDefinitionPortMappingHostPort = Nothing+  , _eCSTaskDefinitionPortMappingProtocol = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-portmappings.html#cfn-ecs-taskdefinition-containerdefinition-portmappings-containerport+ecstdpmContainerPort :: Lens' ECSTaskDefinitionPortMapping (Maybe (Val Integer'))+ecstdpmContainerPort = lens _eCSTaskDefinitionPortMappingContainerPort (\s a -> s { _eCSTaskDefinitionPortMappingContainerPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-portmappings.html#cfn-ecs-taskdefinition-containerdefinition-portmappings-readonly+ecstdpmHostPort :: Lens' ECSTaskDefinitionPortMapping (Maybe (Val Integer'))+ecstdpmHostPort = lens _eCSTaskDefinitionPortMappingHostPort (\s a -> s { _eCSTaskDefinitionPortMappingHostPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-portmappings.html#cfn-ecs-taskdefinition-containerdefinition-portmappings-sourcevolume+ecstdpmProtocol :: Lens' ECSTaskDefinitionPortMapping (Maybe (Val Text))+ecstdpmProtocol = lens _eCSTaskDefinitionPortMappingProtocol (\s a -> s { _eCSTaskDefinitionPortMappingProtocol = a })
+ library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionUlimit.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-ulimit.html++module Stratosphere.ResourceProperties.ECSTaskDefinitionUlimit where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ECSTaskDefinitionUlimit. See+-- | 'ecsTaskDefinitionUlimit' for a more convenient constructor.+data ECSTaskDefinitionUlimit =+  ECSTaskDefinitionUlimit+  { _eCSTaskDefinitionUlimitHardLimit :: Val Integer'+  , _eCSTaskDefinitionUlimitName :: Val Text+  , _eCSTaskDefinitionUlimitSoftLimit :: Val Integer'+  } deriving (Show, Generic)++instance ToJSON ECSTaskDefinitionUlimit where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++instance FromJSON ECSTaskDefinitionUlimit where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++-- | Constructor for 'ECSTaskDefinitionUlimit' containing required fields as+-- | arguments.+ecsTaskDefinitionUlimit+  :: Val Integer' -- ^ 'ecstduHardLimit'+  -> Val Text -- ^ 'ecstduName'+  -> Val Integer' -- ^ 'ecstduSoftLimit'+  -> ECSTaskDefinitionUlimit+ecsTaskDefinitionUlimit hardLimitarg namearg softLimitarg =+  ECSTaskDefinitionUlimit+  { _eCSTaskDefinitionUlimitHardLimit = hardLimitarg+  , _eCSTaskDefinitionUlimitName = namearg+  , _eCSTaskDefinitionUlimitSoftLimit = softLimitarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-ulimit.html#cfn-ecs-taskdefinition-containerdefinition-ulimit-hardlimit+ecstduHardLimit :: Lens' ECSTaskDefinitionUlimit (Val Integer')+ecstduHardLimit = lens _eCSTaskDefinitionUlimitHardLimit (\s a -> s { _eCSTaskDefinitionUlimitHardLimit = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-ulimit.html#cfn-ecs-taskdefinition-containerdefinition-ulimit-name+ecstduName :: Lens' ECSTaskDefinitionUlimit (Val Text)+ecstduName = lens _eCSTaskDefinitionUlimitName (\s a -> s { _eCSTaskDefinitionUlimitName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-ulimit.html#cfn-ecs-taskdefinition-containerdefinition-ulimit-softlimit+ecstduSoftLimit :: Lens' ECSTaskDefinitionUlimit (Val Integer')+ecstduSoftLimit = lens _eCSTaskDefinitionUlimitSoftLimit (\s a -> s { _eCSTaskDefinitionUlimitSoftLimit = a })
+ library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionVolume.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html++module Stratosphere.ResourceProperties.ECSTaskDefinitionVolume where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ECSTaskDefinitionHostVolumeProperties++-- | Full data type definition for ECSTaskDefinitionVolume. See+-- | 'ecsTaskDefinitionVolume' for a more convenient constructor.+data ECSTaskDefinitionVolume =+  ECSTaskDefinitionVolume+  { _eCSTaskDefinitionVolumeHost :: Maybe ECSTaskDefinitionHostVolumeProperties+  , _eCSTaskDefinitionVolumeName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ECSTaskDefinitionVolume where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++instance FromJSON ECSTaskDefinitionVolume where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++-- | Constructor for 'ECSTaskDefinitionVolume' containing required fields as+-- | arguments.+ecsTaskDefinitionVolume+  :: ECSTaskDefinitionVolume+ecsTaskDefinitionVolume  =+  ECSTaskDefinitionVolume+  { _eCSTaskDefinitionVolumeHost = Nothing+  , _eCSTaskDefinitionVolumeName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volumes-host+ecstdvHost :: Lens' ECSTaskDefinitionVolume (Maybe ECSTaskDefinitionHostVolumeProperties)+ecstdvHost = lens _eCSTaskDefinitionVolumeHost (\s a -> s { _eCSTaskDefinitionVolumeHost = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-volumes.html#cfn-ecs-taskdefinition-volumes-name+ecstdvName :: Lens' ECSTaskDefinitionVolume (Maybe (Val Text))+ecstdvName = lens _eCSTaskDefinitionVolumeName (\s a -> s { _eCSTaskDefinitionVolumeName = a })
+ library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionVolumeFrom.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-volumesfrom.html++module Stratosphere.ResourceProperties.ECSTaskDefinitionVolumeFrom where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ECSTaskDefinitionVolumeFrom. See+-- | 'ecsTaskDefinitionVolumeFrom' for a more convenient constructor.+data ECSTaskDefinitionVolumeFrom =+  ECSTaskDefinitionVolumeFrom+  { _eCSTaskDefinitionVolumeFromReadOnly :: Maybe (Val Bool')+  , _eCSTaskDefinitionVolumeFromSourceContainer :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ECSTaskDefinitionVolumeFrom where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON ECSTaskDefinitionVolumeFrom where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'ECSTaskDefinitionVolumeFrom' containing required fields+-- | as arguments.+ecsTaskDefinitionVolumeFrom+  :: ECSTaskDefinitionVolumeFrom+ecsTaskDefinitionVolumeFrom  =+  ECSTaskDefinitionVolumeFrom+  { _eCSTaskDefinitionVolumeFromReadOnly = Nothing+  , _eCSTaskDefinitionVolumeFromSourceContainer = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-volumesfrom.html#cfn-ecs-taskdefinition-containerdefinition-volumesfrom-readonly+ecstdvfReadOnly :: Lens' ECSTaskDefinitionVolumeFrom (Maybe (Val Bool'))+ecstdvfReadOnly = lens _eCSTaskDefinitionVolumeFromReadOnly (\s a -> s { _eCSTaskDefinitionVolumeFromReadOnly = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-volumesfrom.html#cfn-ecs-taskdefinition-containerdefinition-volumesfrom-sourcecontainer+ecstdvfSourceContainer :: Lens' ECSTaskDefinitionVolumeFrom (Maybe (Val Text))+ecstdvfSourceContainer = lens _eCSTaskDefinitionVolumeFromSourceContainer (\s a -> s { _eCSTaskDefinitionVolumeFromSourceContainer = a })
+ library-gen/Stratosphere/ResourceProperties/EFSFileSystemElasticFileSystemTag.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-filesystemtags.html++module Stratosphere.ResourceProperties.EFSFileSystemElasticFileSystemTag where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EFSFileSystemElasticFileSystemTag. See+-- | 'efsFileSystemElasticFileSystemTag' for a more convenient constructor.+data EFSFileSystemElasticFileSystemTag =+  EFSFileSystemElasticFileSystemTag+  { _eFSFileSystemElasticFileSystemTagKey :: Val Text+  , _eFSFileSystemElasticFileSystemTagValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON EFSFileSystemElasticFileSystemTag where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON EFSFileSystemElasticFileSystemTag where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'EFSFileSystemElasticFileSystemTag' containing required+-- | fields as arguments.+efsFileSystemElasticFileSystemTag+  :: Val Text -- ^ 'efsfsefstKey'+  -> Val Text -- ^ 'efsfsefstValue'+  -> EFSFileSystemElasticFileSystemTag+efsFileSystemElasticFileSystemTag keyarg valuearg =+  EFSFileSystemElasticFileSystemTag+  { _eFSFileSystemElasticFileSystemTagKey = keyarg+  , _eFSFileSystemElasticFileSystemTagValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-filesystemtags.html#cfn-efs-filesystem-filesystemtags-key+efsfsefstKey :: Lens' EFSFileSystemElasticFileSystemTag (Val Text)+efsfsefstKey = lens _eFSFileSystemElasticFileSystemTagKey (\s a -> s { _eFSFileSystemElasticFileSystemTagKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-filesystemtags.html#cfn-efs-filesystem-filesystemtags-value+efsfsefstValue :: Lens' EFSFileSystemElasticFileSystemTag (Val Text)+efsfsefstValue = lens _eFSFileSystemElasticFileSystemTagValue (\s a -> s { _eFSFileSystemElasticFileSystemTagValue = a })
− library-gen/Stratosphere/ResourceProperties/ELBPolicy.hs
@@ -1,74 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The ElasticLoadBalancing policy type is an embedded property of the--- AWS::ElasticLoadBalancing::LoadBalancer resource. You associate policies--- with a listener by referencing a policy's name in the listener's--- PolicyNames property.--module Stratosphere.ResourceProperties.ELBPolicy where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.NameValuePair---- | Full data type definition for ELBPolicy. See 'elbPolicy' for a more--- convenient constructor.-data ELBPolicy =-  ELBPolicy-  { _eLBPolicyAttributes :: [NameValuePair]-  , _eLBPolicyInstancePorts :: Maybe [Val Text]-  , _eLBPolicyLoadBalancerPorts :: Maybe [Val Text]-  , _eLBPolicyPolicyName :: Val Text-  , _eLBPolicyPolicyType :: Val Text-  } deriving (Show, Generic)--instance ToJSON ELBPolicy where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }--instance FromJSON ELBPolicy where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }---- | Constructor for 'ELBPolicy' containing required fields as arguments.-elbPolicy-  :: [NameValuePair] -- ^ 'elbpAttributes'-  -> Val Text -- ^ 'elbpPolicyName'-  -> Val Text -- ^ 'elbpPolicyType'-  -> ELBPolicy-elbPolicy attributesarg policyNamearg policyTypearg =-  ELBPolicy-  { _eLBPolicyAttributes = attributesarg-  , _eLBPolicyInstancePorts = Nothing-  , _eLBPolicyLoadBalancerPorts = Nothing-  , _eLBPolicyPolicyName = policyNamearg-  , _eLBPolicyPolicyType = policyTypearg-  }---- | A list of arbitrary attributes for this policy. If you don't need to--- specify any policy attributes, specify an empty list ([]).-elbpAttributes :: Lens' ELBPolicy [NameValuePair]-elbpAttributes = lens _eLBPolicyAttributes (\s a -> s { _eLBPolicyAttributes = a })---- | A list of instance ports for the policy. These are the ports associated--- with the back-end server.-elbpInstancePorts :: Lens' ELBPolicy (Maybe [Val Text])-elbpInstancePorts = lens _eLBPolicyInstancePorts (\s a -> s { _eLBPolicyInstancePorts = a })---- | A list of external load balancer ports for the policy.-elbpLoadBalancerPorts :: Lens' ELBPolicy (Maybe [Val Text])-elbpLoadBalancerPorts = lens _eLBPolicyLoadBalancerPorts (\s a -> s { _eLBPolicyLoadBalancerPorts = a })---- | A name for this policy that is unique to the load balancer.-elbpPolicyName :: Lens' ELBPolicy (Val Text)-elbpPolicyName = lens _eLBPolicyPolicyName (\s a -> s { _eLBPolicyPolicyName = a })---- | The name of the policy type for this policy. This must be one of the--- types reported by the Elastic Load Balancing--- DescribeLoadBalancerPolicyTypes action.-elbpPolicyType :: Lens' ELBPolicy (Val Text)-elbpPolicyType = lens _eLBPolicyPolicyType (\s a -> s { _eLBPolicyPolicyType = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterApplication.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-application.html++module Stratosphere.ResourceProperties.EMRClusterApplication where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EMRClusterApplication. See+-- | 'emrClusterApplication' for a more convenient constructor.+data EMRClusterApplication =+  EMRClusterApplication+  { _eMRClusterApplicationAdditionalInfo :: Maybe Object+  , _eMRClusterApplicationArgs :: Maybe [Val Text]+  , _eMRClusterApplicationName :: Maybe (Val Text)+  , _eMRClusterApplicationVersion :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EMRClusterApplication where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++instance FromJSON EMRClusterApplication where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++-- | Constructor for 'EMRClusterApplication' containing required fields as+-- | arguments.+emrClusterApplication+  :: EMRClusterApplication+emrClusterApplication  =+  EMRClusterApplication+  { _eMRClusterApplicationAdditionalInfo = Nothing+  , _eMRClusterApplicationArgs = Nothing+  , _eMRClusterApplicationName = Nothing+  , _eMRClusterApplicationVersion = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-application.html#cfn-emr-cluster-application-additionalinfo+emrcaAdditionalInfo :: Lens' EMRClusterApplication (Maybe Object)+emrcaAdditionalInfo = lens _eMRClusterApplicationAdditionalInfo (\s a -> s { _eMRClusterApplicationAdditionalInfo = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-application.html#cfn-emr-cluster-application-args+emrcaArgs :: Lens' EMRClusterApplication (Maybe [Val Text])+emrcaArgs = lens _eMRClusterApplicationArgs (\s a -> s { _eMRClusterApplicationArgs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-application.html#cfn-emr-cluster-application-name+emrcaName :: Lens' EMRClusterApplication (Maybe (Val Text))+emrcaName = lens _eMRClusterApplicationName (\s a -> s { _eMRClusterApplicationName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-application.html#cfn-emr-cluster-application-version+emrcaVersion :: Lens' EMRClusterApplication (Maybe (Val Text))+emrcaVersion = lens _eMRClusterApplicationVersion (\s a -> s { _eMRClusterApplicationVersion = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterBootstrapActionConfig.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-bootstrapactionconfig.html++module Stratosphere.ResourceProperties.EMRClusterBootstrapActionConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRClusterScriptBootstrapActionConfig++-- | Full data type definition for EMRClusterBootstrapActionConfig. See+-- | 'emrClusterBootstrapActionConfig' for a more convenient constructor.+data EMRClusterBootstrapActionConfig =+  EMRClusterBootstrapActionConfig+  { _eMRClusterBootstrapActionConfigName :: Val Text+  , _eMRClusterBootstrapActionConfigScriptBootstrapAction :: EMRClusterScriptBootstrapActionConfig+  } deriving (Show, Generic)++instance ToJSON EMRClusterBootstrapActionConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++instance FromJSON EMRClusterBootstrapActionConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++-- | Constructor for 'EMRClusterBootstrapActionConfig' containing required+-- | fields as arguments.+emrClusterBootstrapActionConfig+  :: Val Text -- ^ 'emrcbacName'+  -> EMRClusterScriptBootstrapActionConfig -- ^ 'emrcbacScriptBootstrapAction'+  -> EMRClusterBootstrapActionConfig+emrClusterBootstrapActionConfig namearg scriptBootstrapActionarg =+  EMRClusterBootstrapActionConfig+  { _eMRClusterBootstrapActionConfigName = namearg+  , _eMRClusterBootstrapActionConfigScriptBootstrapAction = scriptBootstrapActionarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-bootstrapactionconfig.html#cfn-emr-cluster-bootstrapactionconfig-name+emrcbacName :: Lens' EMRClusterBootstrapActionConfig (Val Text)+emrcbacName = lens _eMRClusterBootstrapActionConfigName (\s a -> s { _eMRClusterBootstrapActionConfigName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-bootstrapactionconfig.html#cfn-emr-cluster-bootstrapactionconfig-scriptbootstrapaction+emrcbacScriptBootstrapAction :: Lens' EMRClusterBootstrapActionConfig EMRClusterScriptBootstrapActionConfig+emrcbacScriptBootstrapAction = lens _eMRClusterBootstrapActionConfigScriptBootstrapAction (\s a -> s { _eMRClusterBootstrapActionConfigScriptBootstrapAction = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterConfiguration.hs view
@@ -0,0 +1,53 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html++module Stratosphere.ResourceProperties.EMRClusterConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EMRClusterConfiguration. See+-- | 'emrClusterConfiguration' for a more convenient constructor.+data EMRClusterConfiguration =+  EMRClusterConfiguration+  { _eMRClusterConfigurationClassification :: Maybe (Val Text)+  , _eMRClusterConfigurationConfigurationProperties :: Maybe Object+  , _eMRClusterConfigurationConfigurations :: Maybe [EMRClusterConfiguration]+  } deriving (Show, Generic)++instance ToJSON EMRClusterConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++instance FromJSON EMRClusterConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++-- | Constructor for 'EMRClusterConfiguration' containing required fields as+-- | arguments.+emrClusterConfiguration+  :: EMRClusterConfiguration+emrClusterConfiguration  =+  EMRClusterConfiguration+  { _eMRClusterConfigurationClassification = Nothing+  , _eMRClusterConfigurationConfigurationProperties = Nothing+  , _eMRClusterConfigurationConfigurations = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-classification+emrccClassification :: Lens' EMRClusterConfiguration (Maybe (Val Text))+emrccClassification = lens _eMRClusterConfigurationClassification (\s a -> s { _eMRClusterConfigurationClassification = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-configurationproperties+emrccConfigurationProperties :: Lens' EMRClusterConfiguration (Maybe Object)+emrccConfigurationProperties = lens _eMRClusterConfigurationConfigurationProperties (\s a -> s { _eMRClusterConfigurationConfigurationProperties = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-configurations+emrccConfigurations :: Lens' EMRClusterConfiguration (Maybe [EMRClusterConfiguration])+emrccConfigurations = lens _eMRClusterConfigurationConfigurations (\s a -> s { _eMRClusterConfigurationConfigurations = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterEbsBlockDeviceConfig.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html++module Stratosphere.ResourceProperties.EMRClusterEbsBlockDeviceConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRClusterVolumeSpecification++-- | Full data type definition for EMRClusterEbsBlockDeviceConfig. See+-- | 'emrClusterEbsBlockDeviceConfig' for a more convenient constructor.+data EMRClusterEbsBlockDeviceConfig =+  EMRClusterEbsBlockDeviceConfig+  { _eMRClusterEbsBlockDeviceConfigVolumeSpecification :: EMRClusterVolumeSpecification+  , _eMRClusterEbsBlockDeviceConfigVolumesPerInstance :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON EMRClusterEbsBlockDeviceConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON EMRClusterEbsBlockDeviceConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'EMRClusterEbsBlockDeviceConfig' containing required+-- | fields as arguments.+emrClusterEbsBlockDeviceConfig+  :: EMRClusterVolumeSpecification -- ^ 'emrcebdcVolumeSpecification'+  -> EMRClusterEbsBlockDeviceConfig+emrClusterEbsBlockDeviceConfig volumeSpecificationarg =+  EMRClusterEbsBlockDeviceConfig+  { _eMRClusterEbsBlockDeviceConfigVolumeSpecification = volumeSpecificationarg+  , _eMRClusterEbsBlockDeviceConfigVolumesPerInstance = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification+emrcebdcVolumeSpecification :: Lens' EMRClusterEbsBlockDeviceConfig EMRClusterVolumeSpecification+emrcebdcVolumeSpecification = lens _eMRClusterEbsBlockDeviceConfigVolumeSpecification (\s a -> s { _eMRClusterEbsBlockDeviceConfigVolumeSpecification = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumesperinstance+emrcebdcVolumesPerInstance :: Lens' EMRClusterEbsBlockDeviceConfig (Maybe (Val Integer'))+emrcebdcVolumesPerInstance = lens _eMRClusterEbsBlockDeviceConfigVolumesPerInstance (\s a -> s { _eMRClusterEbsBlockDeviceConfigVolumesPerInstance = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterEbsConfiguration.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html++module Stratosphere.ResourceProperties.EMRClusterEbsConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRClusterEbsBlockDeviceConfig++-- | Full data type definition for EMRClusterEbsConfiguration. See+-- | 'emrClusterEbsConfiguration' for a more convenient constructor.+data EMRClusterEbsConfiguration =+  EMRClusterEbsConfiguration+  { _eMRClusterEbsConfigurationEbsBlockDeviceConfigs :: Maybe [EMRClusterEbsBlockDeviceConfig]+  , _eMRClusterEbsConfigurationEbsOptimized :: Maybe (Val Bool')+  } deriving (Show, Generic)++instance ToJSON EMRClusterEbsConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON EMRClusterEbsConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'EMRClusterEbsConfiguration' containing required fields+-- | as arguments.+emrClusterEbsConfiguration+  :: EMRClusterEbsConfiguration+emrClusterEbsConfiguration  =+  EMRClusterEbsConfiguration+  { _eMRClusterEbsConfigurationEbsBlockDeviceConfigs = Nothing+  , _eMRClusterEbsConfigurationEbsOptimized = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfigs+emrcecEbsBlockDeviceConfigs :: Lens' EMRClusterEbsConfiguration (Maybe [EMRClusterEbsBlockDeviceConfig])+emrcecEbsBlockDeviceConfigs = lens _eMRClusterEbsConfigurationEbsBlockDeviceConfigs (\s a -> s { _eMRClusterEbsConfigurationEbsBlockDeviceConfigs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html#cfn-emr-ebsconfiguration-ebsoptimized+emrcecEbsOptimized :: Lens' EMRClusterEbsConfiguration (Maybe (Val Bool'))+emrcecEbsOptimized = lens _eMRClusterEbsConfigurationEbsOptimized (\s a -> s { _eMRClusterEbsConfigurationEbsOptimized = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterInstanceGroupConfig.hs view
@@ -0,0 +1,80 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig-instancegroupconfig.html++module Stratosphere.ResourceProperties.EMRClusterInstanceGroupConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRClusterConfiguration+import Stratosphere.ResourceProperties.EMRClusterEbsConfiguration++-- | Full data type definition for EMRClusterInstanceGroupConfig. See+-- | 'emrClusterInstanceGroupConfig' for a more convenient constructor.+data EMRClusterInstanceGroupConfig =+  EMRClusterInstanceGroupConfig+  { _eMRClusterInstanceGroupConfigBidPrice :: Maybe (Val Text)+  , _eMRClusterInstanceGroupConfigConfigurations :: Maybe [EMRClusterConfiguration]+  , _eMRClusterInstanceGroupConfigEbsConfiguration :: Maybe EMRClusterEbsConfiguration+  , _eMRClusterInstanceGroupConfigInstanceCount :: Val Integer'+  , _eMRClusterInstanceGroupConfigInstanceType :: Val Text+  , _eMRClusterInstanceGroupConfigMarket :: Maybe (Val Text)+  , _eMRClusterInstanceGroupConfigName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EMRClusterInstanceGroupConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON EMRClusterInstanceGroupConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'EMRClusterInstanceGroupConfig' containing required+-- | fields as arguments.+emrClusterInstanceGroupConfig+  :: Val Integer' -- ^ 'emrcigcInstanceCount'+  -> Val Text -- ^ 'emrcigcInstanceType'+  -> EMRClusterInstanceGroupConfig+emrClusterInstanceGroupConfig instanceCountarg instanceTypearg =+  EMRClusterInstanceGroupConfig+  { _eMRClusterInstanceGroupConfigBidPrice = Nothing+  , _eMRClusterInstanceGroupConfigConfigurations = Nothing+  , _eMRClusterInstanceGroupConfigEbsConfiguration = Nothing+  , _eMRClusterInstanceGroupConfigInstanceCount = instanceCountarg+  , _eMRClusterInstanceGroupConfigInstanceType = instanceTypearg+  , _eMRClusterInstanceGroupConfigMarket = Nothing+  , _eMRClusterInstanceGroupConfigName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig-instancegroupconfig.html#cfn-emr-cluster-jobflowinstancesconfig-instancegroupconfig-bidprice+emrcigcBidPrice :: Lens' EMRClusterInstanceGroupConfig (Maybe (Val Text))+emrcigcBidPrice = lens _eMRClusterInstanceGroupConfigBidPrice (\s a -> s { _eMRClusterInstanceGroupConfigBidPrice = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig-instancegroupconfig.html#cfn-emr-cluster-jobflowinstancesconfig-instancegroupconfig-configurations+emrcigcConfigurations :: Lens' EMRClusterInstanceGroupConfig (Maybe [EMRClusterConfiguration])+emrcigcConfigurations = lens _eMRClusterInstanceGroupConfigConfigurations (\s a -> s { _eMRClusterInstanceGroupConfigConfigurations = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig-instancegroupconfig.html#cfn-emr-cluster-jobflowinstancesconfig-instancegroupconfigConfigurations-ebsconfiguration+emrcigcEbsConfiguration :: Lens' EMRClusterInstanceGroupConfig (Maybe EMRClusterEbsConfiguration)+emrcigcEbsConfiguration = lens _eMRClusterInstanceGroupConfigEbsConfiguration (\s a -> s { _eMRClusterInstanceGroupConfigEbsConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig-instancegroupconfig.html#cfn-emr-cluster-jobflowinstancesconfig-instancegroupconfig-instancecount+emrcigcInstanceCount :: Lens' EMRClusterInstanceGroupConfig (Val Integer')+emrcigcInstanceCount = lens _eMRClusterInstanceGroupConfigInstanceCount (\s a -> s { _eMRClusterInstanceGroupConfigInstanceCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig-instancegroupconfig.html#cfn-emr-cluster-jobflowinstancesconfig-instancegroupconfig-instancetype+emrcigcInstanceType :: Lens' EMRClusterInstanceGroupConfig (Val Text)+emrcigcInstanceType = lens _eMRClusterInstanceGroupConfigInstanceType (\s a -> s { _eMRClusterInstanceGroupConfigInstanceType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig-instancegroupconfig.html#cfn-emr-cluster-jobflowinstancesconfig-instancegroupconfig-market+emrcigcMarket :: Lens' EMRClusterInstanceGroupConfig (Maybe (Val Text))+emrcigcMarket = lens _eMRClusterInstanceGroupConfigMarket (\s a -> s { _eMRClusterInstanceGroupConfigMarket = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig-instancegroupconfig.html#cfn-emr-cluster-jobflowinstancesconfig-instancegroupconfig-name+emrcigcName :: Lens' EMRClusterInstanceGroupConfig (Maybe (Val Text))+emrcigcName = lens _eMRClusterInstanceGroupConfigName (\s a -> s { _eMRClusterInstanceGroupConfigName = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterJobFlowInstancesConfig.hs view
@@ -0,0 +1,110 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig.html++module Stratosphere.ResourceProperties.EMRClusterJobFlowInstancesConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRClusterInstanceGroupConfig+import Stratosphere.ResourceProperties.EMRClusterPlacementType++-- | Full data type definition for EMRClusterJobFlowInstancesConfig. See+-- | 'emrClusterJobFlowInstancesConfig' for a more convenient constructor.+data EMRClusterJobFlowInstancesConfig =+  EMRClusterJobFlowInstancesConfig+  { _eMRClusterJobFlowInstancesConfigAdditionalMasterSecurityGroups :: Maybe [Val Text]+  , _eMRClusterJobFlowInstancesConfigAdditionalSlaveSecurityGroups :: Maybe [Val Text]+  , _eMRClusterJobFlowInstancesConfigCoreInstanceGroup :: EMRClusterInstanceGroupConfig+  , _eMRClusterJobFlowInstancesConfigEc2KeyName :: Maybe (Val Text)+  , _eMRClusterJobFlowInstancesConfigEc2SubnetId :: Maybe (Val Text)+  , _eMRClusterJobFlowInstancesConfigEmrManagedMasterSecurityGroup :: Maybe (Val Text)+  , _eMRClusterJobFlowInstancesConfigEmrManagedSlaveSecurityGroup :: Maybe (Val Text)+  , _eMRClusterJobFlowInstancesConfigHadoopVersion :: Maybe (Val Text)+  , _eMRClusterJobFlowInstancesConfigMasterInstanceGroup :: EMRClusterInstanceGroupConfig+  , _eMRClusterJobFlowInstancesConfigPlacement :: Maybe EMRClusterPlacementType+  , _eMRClusterJobFlowInstancesConfigServiceAccessSecurityGroup :: Maybe (Val Text)+  , _eMRClusterJobFlowInstancesConfigTerminationProtected :: Maybe (Val Bool')+  } deriving (Show, Generic)++instance ToJSON EMRClusterJobFlowInstancesConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++instance FromJSON EMRClusterJobFlowInstancesConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++-- | Constructor for 'EMRClusterJobFlowInstancesConfig' containing required+-- | fields as arguments.+emrClusterJobFlowInstancesConfig+  :: EMRClusterInstanceGroupConfig -- ^ 'emrcjficCoreInstanceGroup'+  -> EMRClusterInstanceGroupConfig -- ^ 'emrcjficMasterInstanceGroup'+  -> EMRClusterJobFlowInstancesConfig+emrClusterJobFlowInstancesConfig coreInstanceGrouparg masterInstanceGrouparg =+  EMRClusterJobFlowInstancesConfig+  { _eMRClusterJobFlowInstancesConfigAdditionalMasterSecurityGroups = Nothing+  , _eMRClusterJobFlowInstancesConfigAdditionalSlaveSecurityGroups = Nothing+  , _eMRClusterJobFlowInstancesConfigCoreInstanceGroup = coreInstanceGrouparg+  , _eMRClusterJobFlowInstancesConfigEc2KeyName = Nothing+  , _eMRClusterJobFlowInstancesConfigEc2SubnetId = Nothing+  , _eMRClusterJobFlowInstancesConfigEmrManagedMasterSecurityGroup = Nothing+  , _eMRClusterJobFlowInstancesConfigEmrManagedSlaveSecurityGroup = Nothing+  , _eMRClusterJobFlowInstancesConfigHadoopVersion = Nothing+  , _eMRClusterJobFlowInstancesConfigMasterInstanceGroup = masterInstanceGrouparg+  , _eMRClusterJobFlowInstancesConfigPlacement = Nothing+  , _eMRClusterJobFlowInstancesConfigServiceAccessSecurityGroup = Nothing+  , _eMRClusterJobFlowInstancesConfigTerminationProtected = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig.html#cfn-emr-cluster-jobflowinstancesconfig-additionalmastersecuritygroups+emrcjficAdditionalMasterSecurityGroups :: Lens' EMRClusterJobFlowInstancesConfig (Maybe [Val Text])+emrcjficAdditionalMasterSecurityGroups = lens _eMRClusterJobFlowInstancesConfigAdditionalMasterSecurityGroups (\s a -> s { _eMRClusterJobFlowInstancesConfigAdditionalMasterSecurityGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig.html#cfn-emr-cluster-jobflowinstancesconfig-additionalslavesecuritygroups+emrcjficAdditionalSlaveSecurityGroups :: Lens' EMRClusterJobFlowInstancesConfig (Maybe [Val Text])+emrcjficAdditionalSlaveSecurityGroups = lens _eMRClusterJobFlowInstancesConfigAdditionalSlaveSecurityGroups (\s a -> s { _eMRClusterJobFlowInstancesConfigAdditionalSlaveSecurityGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig.html#cfn-emr-cluster-jobflowinstancesconfig-coreinstancegroup+emrcjficCoreInstanceGroup :: Lens' EMRClusterJobFlowInstancesConfig EMRClusterInstanceGroupConfig+emrcjficCoreInstanceGroup = lens _eMRClusterJobFlowInstancesConfigCoreInstanceGroup (\s a -> s { _eMRClusterJobFlowInstancesConfigCoreInstanceGroup = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig.html#cfn-emr-cluster-jobflowinstancesconfig-ec2keyname+emrcjficEc2KeyName :: Lens' EMRClusterJobFlowInstancesConfig (Maybe (Val Text))+emrcjficEc2KeyName = lens _eMRClusterJobFlowInstancesConfigEc2KeyName (\s a -> s { _eMRClusterJobFlowInstancesConfigEc2KeyName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig.html#cfn-emr-cluster-jobflowinstancesconfig-ec2subnetid+emrcjficEc2SubnetId :: Lens' EMRClusterJobFlowInstancesConfig (Maybe (Val Text))+emrcjficEc2SubnetId = lens _eMRClusterJobFlowInstancesConfigEc2SubnetId (\s a -> s { _eMRClusterJobFlowInstancesConfigEc2SubnetId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig.html#cfn-emr-cluster-jobflowinstancesconfig-emrmanagedmastersecuritygroup+emrcjficEmrManagedMasterSecurityGroup :: Lens' EMRClusterJobFlowInstancesConfig (Maybe (Val Text))+emrcjficEmrManagedMasterSecurityGroup = lens _eMRClusterJobFlowInstancesConfigEmrManagedMasterSecurityGroup (\s a -> s { _eMRClusterJobFlowInstancesConfigEmrManagedMasterSecurityGroup = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig.html#cfn-emr-cluster-jobflowinstancesconfig-emrmanagedslavesecuritygroup+emrcjficEmrManagedSlaveSecurityGroup :: Lens' EMRClusterJobFlowInstancesConfig (Maybe (Val Text))+emrcjficEmrManagedSlaveSecurityGroup = lens _eMRClusterJobFlowInstancesConfigEmrManagedSlaveSecurityGroup (\s a -> s { _eMRClusterJobFlowInstancesConfigEmrManagedSlaveSecurityGroup = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig.html#cfn-emr-cluster-jobflowinstancesconfig-hadoopversion+emrcjficHadoopVersion :: Lens' EMRClusterJobFlowInstancesConfig (Maybe (Val Text))+emrcjficHadoopVersion = lens _eMRClusterJobFlowInstancesConfigHadoopVersion (\s a -> s { _eMRClusterJobFlowInstancesConfigHadoopVersion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig.html#cfn-emr-cluster-jobflowinstancesconfig-masterinstancegroup+emrcjficMasterInstanceGroup :: Lens' EMRClusterJobFlowInstancesConfig EMRClusterInstanceGroupConfig+emrcjficMasterInstanceGroup = lens _eMRClusterJobFlowInstancesConfigMasterInstanceGroup (\s a -> s { _eMRClusterJobFlowInstancesConfigMasterInstanceGroup = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig.html#cfn-emr-cluster-jobflowinstancesconfig-placement+emrcjficPlacement :: Lens' EMRClusterJobFlowInstancesConfig (Maybe EMRClusterPlacementType)+emrcjficPlacement = lens _eMRClusterJobFlowInstancesConfigPlacement (\s a -> s { _eMRClusterJobFlowInstancesConfigPlacement = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig.html#cfn-emr-cluster-jobflowinstancesconfig-serviceaccesssecuritygroup+emrcjficServiceAccessSecurityGroup :: Lens' EMRClusterJobFlowInstancesConfig (Maybe (Val Text))+emrcjficServiceAccessSecurityGroup = lens _eMRClusterJobFlowInstancesConfigServiceAccessSecurityGroup (\s a -> s { _eMRClusterJobFlowInstancesConfigServiceAccessSecurityGroup = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig.html#cfn-emr-cluster-jobflowinstancesconfig-terminationprotected+emrcjficTerminationProtected :: Lens' EMRClusterJobFlowInstancesConfig (Maybe (Val Bool'))+emrcjficTerminationProtected = lens _eMRClusterJobFlowInstancesConfigTerminationProtected (\s a -> s { _eMRClusterJobFlowInstancesConfigTerminationProtected = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterPlacementType.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig-placementtype.html++module Stratosphere.ResourceProperties.EMRClusterPlacementType where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EMRClusterPlacementType. See+-- | 'emrClusterPlacementType' for a more convenient constructor.+data EMRClusterPlacementType =+  EMRClusterPlacementType+  { _eMRClusterPlacementTypeAvailabilityZone :: Val Text+  } deriving (Show, Generic)++instance ToJSON EMRClusterPlacementType where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++instance FromJSON EMRClusterPlacementType where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++-- | Constructor for 'EMRClusterPlacementType' containing required fields as+-- | arguments.+emrClusterPlacementType+  :: Val Text -- ^ 'emrcptAvailabilityZone'+  -> EMRClusterPlacementType+emrClusterPlacementType availabilityZonearg =+  EMRClusterPlacementType+  { _eMRClusterPlacementTypeAvailabilityZone = availabilityZonearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig-placementtype.html#aws-properties-emr-cluster-jobflowinstancesconfig-placementtype+emrcptAvailabilityZone :: Lens' EMRClusterPlacementType (Val Text)+emrcptAvailabilityZone = lens _eMRClusterPlacementTypeAvailabilityZone (\s a -> s { _eMRClusterPlacementTypeAvailabilityZone = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterScriptBootstrapActionConfig.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-bootstrapactionconfig-scriptbootstrapactionconfig.html++module Stratosphere.ResourceProperties.EMRClusterScriptBootstrapActionConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EMRClusterScriptBootstrapActionConfig. See+-- | 'emrClusterScriptBootstrapActionConfig' for a more convenient+-- | constructor.+data EMRClusterScriptBootstrapActionConfig =+  EMRClusterScriptBootstrapActionConfig+  { _eMRClusterScriptBootstrapActionConfigArgs :: Maybe [Val Text]+  , _eMRClusterScriptBootstrapActionConfigPath :: Val Text+  } deriving (Show, Generic)++instance ToJSON EMRClusterScriptBootstrapActionConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++instance FromJSON EMRClusterScriptBootstrapActionConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++-- | Constructor for 'EMRClusterScriptBootstrapActionConfig' containing+-- | required fields as arguments.+emrClusterScriptBootstrapActionConfig+  :: Val Text -- ^ 'emrcsbacPath'+  -> EMRClusterScriptBootstrapActionConfig+emrClusterScriptBootstrapActionConfig patharg =+  EMRClusterScriptBootstrapActionConfig+  { _eMRClusterScriptBootstrapActionConfigArgs = Nothing+  , _eMRClusterScriptBootstrapActionConfigPath = patharg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-bootstrapactionconfig-scriptbootstrapactionconfig.html#cfn-emr-cluster-bootstrapactionconfig-scriptbootstrapaction-args+emrcsbacArgs :: Lens' EMRClusterScriptBootstrapActionConfig (Maybe [Val Text])+emrcsbacArgs = lens _eMRClusterScriptBootstrapActionConfigArgs (\s a -> s { _eMRClusterScriptBootstrapActionConfigArgs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-bootstrapactionconfig-scriptbootstrapactionconfig.html#cfn-emr-cluster-bootstrapactionconfig-scriptbootstrapaction-path+emrcsbacPath :: Lens' EMRClusterScriptBootstrapActionConfig (Val Text)+emrcsbacPath = lens _eMRClusterScriptBootstrapActionConfigPath (\s a -> s { _eMRClusterScriptBootstrapActionConfigPath = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterVolumeSpecification.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html++module Stratosphere.ResourceProperties.EMRClusterVolumeSpecification where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EMRClusterVolumeSpecification. See+-- | 'emrClusterVolumeSpecification' for a more convenient constructor.+data EMRClusterVolumeSpecification =+  EMRClusterVolumeSpecification+  { _eMRClusterVolumeSpecificationIops :: Maybe (Val Integer')+  , _eMRClusterVolumeSpecificationSizeInGB :: Val Integer'+  , _eMRClusterVolumeSpecificationVolumeType :: Val Text+  } deriving (Show, Generic)++instance ToJSON EMRClusterVolumeSpecification where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON EMRClusterVolumeSpecification where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'EMRClusterVolumeSpecification' containing required+-- | fields as arguments.+emrClusterVolumeSpecification+  :: Val Integer' -- ^ 'emrcvsSizeInGB'+  -> Val Text -- ^ 'emrcvsVolumeType'+  -> EMRClusterVolumeSpecification+emrClusterVolumeSpecification sizeInGBarg volumeTypearg =+  EMRClusterVolumeSpecification+  { _eMRClusterVolumeSpecificationIops = Nothing+  , _eMRClusterVolumeSpecificationSizeInGB = sizeInGBarg+  , _eMRClusterVolumeSpecificationVolumeType = volumeTypearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-iops+emrcvsIops :: Lens' EMRClusterVolumeSpecification (Maybe (Val Integer'))+emrcvsIops = lens _eMRClusterVolumeSpecificationIops (\s a -> s { _eMRClusterVolumeSpecificationIops = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-sizeingb+emrcvsSizeInGB :: Lens' EMRClusterVolumeSpecification (Val Integer')+emrcvsSizeInGB = lens _eMRClusterVolumeSpecificationSizeInGB (\s a -> s { _eMRClusterVolumeSpecificationSizeInGB = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-volumetype+emrcvsVolumeType :: Lens' EMRClusterVolumeSpecification (Val Text)+emrcvsVolumeType = lens _eMRClusterVolumeSpecificationVolumeType (\s a -> s { _eMRClusterVolumeSpecificationVolumeType = a })
+ library-gen/Stratosphere/ResourceProperties/EMRInstanceGroupConfigConfiguration.hs view
@@ -0,0 +1,53 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html++module Stratosphere.ResourceProperties.EMRInstanceGroupConfigConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EMRInstanceGroupConfigConfiguration. See+-- | 'emrInstanceGroupConfigConfiguration' for a more convenient constructor.+data EMRInstanceGroupConfigConfiguration =+  EMRInstanceGroupConfigConfiguration+  { _eMRInstanceGroupConfigConfigurationClassification :: Maybe (Val Text)+  , _eMRInstanceGroupConfigConfigurationConfigurationProperties :: Maybe Object+  , _eMRInstanceGroupConfigConfigurationConfigurations :: Maybe [EMRInstanceGroupConfigConfiguration]+  } deriving (Show, Generic)++instance ToJSON EMRInstanceGroupConfigConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++instance FromJSON EMRInstanceGroupConfigConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++-- | Constructor for 'EMRInstanceGroupConfigConfiguration' containing required+-- | fields as arguments.+emrInstanceGroupConfigConfiguration+  :: EMRInstanceGroupConfigConfiguration+emrInstanceGroupConfigConfiguration  =+  EMRInstanceGroupConfigConfiguration+  { _eMRInstanceGroupConfigConfigurationClassification = Nothing+  , _eMRInstanceGroupConfigConfigurationConfigurationProperties = Nothing+  , _eMRInstanceGroupConfigConfigurationConfigurations = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-classification+emrigccClassification :: Lens' EMRInstanceGroupConfigConfiguration (Maybe (Val Text))+emrigccClassification = lens _eMRInstanceGroupConfigConfigurationClassification (\s a -> s { _eMRInstanceGroupConfigConfigurationClassification = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-configurationproperties+emrigccConfigurationProperties :: Lens' EMRInstanceGroupConfigConfiguration (Maybe Object)+emrigccConfigurationProperties = lens _eMRInstanceGroupConfigConfigurationConfigurationProperties (\s a -> s { _eMRInstanceGroupConfigConfigurationConfigurationProperties = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-configuration.html#cfn-emr-cluster-configuration-configurations+emrigccConfigurations :: Lens' EMRInstanceGroupConfigConfiguration (Maybe [EMRInstanceGroupConfigConfiguration])+emrigccConfigurations = lens _eMRInstanceGroupConfigConfigurationConfigurations (\s a -> s { _eMRInstanceGroupConfigConfigurationConfigurations = a })
+ library-gen/Stratosphere/ResourceProperties/EMRInstanceGroupConfigEbsBlockDeviceConfig.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html++module Stratosphere.ResourceProperties.EMRInstanceGroupConfigEbsBlockDeviceConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigVolumeSpecification++-- | Full data type definition for EMRInstanceGroupConfigEbsBlockDeviceConfig.+-- | See 'emrInstanceGroupConfigEbsBlockDeviceConfig' for a more convenient+-- | constructor.+data EMRInstanceGroupConfigEbsBlockDeviceConfig =+  EMRInstanceGroupConfigEbsBlockDeviceConfig+  { _eMRInstanceGroupConfigEbsBlockDeviceConfigVolumeSpecification :: EMRInstanceGroupConfigVolumeSpecification+  , _eMRInstanceGroupConfigEbsBlockDeviceConfigVolumesPerInstance :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON EMRInstanceGroupConfigEbsBlockDeviceConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 43, omitNothingFields = True }++instance FromJSON EMRInstanceGroupConfigEbsBlockDeviceConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 43, omitNothingFields = True }++-- | Constructor for 'EMRInstanceGroupConfigEbsBlockDeviceConfig' containing+-- | required fields as arguments.+emrInstanceGroupConfigEbsBlockDeviceConfig+  :: EMRInstanceGroupConfigVolumeSpecification -- ^ 'emrigcebdcVolumeSpecification'+  -> EMRInstanceGroupConfigEbsBlockDeviceConfig+emrInstanceGroupConfigEbsBlockDeviceConfig volumeSpecificationarg =+  EMRInstanceGroupConfigEbsBlockDeviceConfig+  { _eMRInstanceGroupConfigEbsBlockDeviceConfigVolumeSpecification = volumeSpecificationarg+  , _eMRInstanceGroupConfigEbsBlockDeviceConfigVolumesPerInstance = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification+emrigcebdcVolumeSpecification :: Lens' EMRInstanceGroupConfigEbsBlockDeviceConfig EMRInstanceGroupConfigVolumeSpecification+emrigcebdcVolumeSpecification = lens _eMRInstanceGroupConfigEbsBlockDeviceConfigVolumeSpecification (\s a -> s { _eMRInstanceGroupConfigEbsBlockDeviceConfigVolumeSpecification = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumesperinstance+emrigcebdcVolumesPerInstance :: Lens' EMRInstanceGroupConfigEbsBlockDeviceConfig (Maybe (Val Integer'))+emrigcebdcVolumesPerInstance = lens _eMRInstanceGroupConfigEbsBlockDeviceConfigVolumesPerInstance (\s a -> s { _eMRInstanceGroupConfigEbsBlockDeviceConfigVolumesPerInstance = a })
+ library-gen/Stratosphere/ResourceProperties/EMRInstanceGroupConfigEbsConfiguration.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html++module Stratosphere.ResourceProperties.EMRInstanceGroupConfigEbsConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigEbsBlockDeviceConfig++-- | Full data type definition for EMRInstanceGroupConfigEbsConfiguration. See+-- | 'emrInstanceGroupConfigEbsConfiguration' for a more convenient+-- | constructor.+data EMRInstanceGroupConfigEbsConfiguration =+  EMRInstanceGroupConfigEbsConfiguration+  { _eMRInstanceGroupConfigEbsConfigurationEbsBlockDeviceConfigs :: Maybe [EMRInstanceGroupConfigEbsBlockDeviceConfig]+  , _eMRInstanceGroupConfigEbsConfigurationEbsOptimized :: Maybe (Val Bool')+  } deriving (Show, Generic)++instance ToJSON EMRInstanceGroupConfigEbsConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++instance FromJSON EMRInstanceGroupConfigEbsConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++-- | Constructor for 'EMRInstanceGroupConfigEbsConfiguration' containing+-- | required fields as arguments.+emrInstanceGroupConfigEbsConfiguration+  :: EMRInstanceGroupConfigEbsConfiguration+emrInstanceGroupConfigEbsConfiguration  =+  EMRInstanceGroupConfigEbsConfiguration+  { _eMRInstanceGroupConfigEbsConfigurationEbsBlockDeviceConfigs = Nothing+  , _eMRInstanceGroupConfigEbsConfigurationEbsOptimized = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfigs+emrigcecEbsBlockDeviceConfigs :: Lens' EMRInstanceGroupConfigEbsConfiguration (Maybe [EMRInstanceGroupConfigEbsBlockDeviceConfig])+emrigcecEbsBlockDeviceConfigs = lens _eMRInstanceGroupConfigEbsConfigurationEbsBlockDeviceConfigs (\s a -> s { _eMRInstanceGroupConfigEbsConfigurationEbsBlockDeviceConfigs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration.html#cfn-emr-ebsconfiguration-ebsoptimized+emrigcecEbsOptimized :: Lens' EMRInstanceGroupConfigEbsConfiguration (Maybe (Val Bool'))+emrigcecEbsOptimized = lens _eMRInstanceGroupConfigEbsConfigurationEbsOptimized (\s a -> s { _eMRInstanceGroupConfigEbsConfigurationEbsOptimized = a })
+ library-gen/Stratosphere/ResourceProperties/EMRInstanceGroupConfigVolumeSpecification.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html++module Stratosphere.ResourceProperties.EMRInstanceGroupConfigVolumeSpecification where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EMRInstanceGroupConfigVolumeSpecification.+-- | See 'emrInstanceGroupConfigVolumeSpecification' for a more convenient+-- | constructor.+data EMRInstanceGroupConfigVolumeSpecification =+  EMRInstanceGroupConfigVolumeSpecification+  { _eMRInstanceGroupConfigVolumeSpecificationIops :: Maybe (Val Integer')+  , _eMRInstanceGroupConfigVolumeSpecificationSizeInGB :: Val Integer'+  , _eMRInstanceGroupConfigVolumeSpecificationVolumeType :: Val Text+  } deriving (Show, Generic)++instance ToJSON EMRInstanceGroupConfigVolumeSpecification where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }++instance FromJSON EMRInstanceGroupConfigVolumeSpecification where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }++-- | Constructor for 'EMRInstanceGroupConfigVolumeSpecification' containing+-- | required fields as arguments.+emrInstanceGroupConfigVolumeSpecification+  :: Val Integer' -- ^ 'emrigcvsSizeInGB'+  -> Val Text -- ^ 'emrigcvsVolumeType'+  -> EMRInstanceGroupConfigVolumeSpecification+emrInstanceGroupConfigVolumeSpecification sizeInGBarg volumeTypearg =+  EMRInstanceGroupConfigVolumeSpecification+  { _eMRInstanceGroupConfigVolumeSpecificationIops = Nothing+  , _eMRInstanceGroupConfigVolumeSpecificationSizeInGB = sizeInGBarg+  , _eMRInstanceGroupConfigVolumeSpecificationVolumeType = volumeTypearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-iops+emrigcvsIops :: Lens' EMRInstanceGroupConfigVolumeSpecification (Maybe (Val Integer'))+emrigcvsIops = lens _eMRInstanceGroupConfigVolumeSpecificationIops (\s a -> s { _eMRInstanceGroupConfigVolumeSpecificationIops = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-sizeingb+emrigcvsSizeInGB :: Lens' EMRInstanceGroupConfigVolumeSpecification (Val Integer')+emrigcvsSizeInGB = lens _eMRInstanceGroupConfigVolumeSpecificationSizeInGB (\s a -> s { _eMRInstanceGroupConfigVolumeSpecificationSizeInGB = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification.html#cfn-emr-ebsconfiguration-ebsblockdeviceconfig-volumespecification-volumetype+emrigcvsVolumeType :: Lens' EMRInstanceGroupConfigVolumeSpecification (Val Text)+emrigcvsVolumeType = lens _eMRInstanceGroupConfigVolumeSpecificationVolumeType (\s a -> s { _eMRInstanceGroupConfigVolumeSpecificationVolumeType = a })
+ library-gen/Stratosphere/ResourceProperties/EMRStepHadoopJarStepConfig.hs view
@@ -0,0 +1,60 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html++module Stratosphere.ResourceProperties.EMRStepHadoopJarStepConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRStepKeyValue++-- | Full data type definition for EMRStepHadoopJarStepConfig. See+-- | 'emrStepHadoopJarStepConfig' for a more convenient constructor.+data EMRStepHadoopJarStepConfig =+  EMRStepHadoopJarStepConfig+  { _eMRStepHadoopJarStepConfigArgs :: Maybe [Val Text]+  , _eMRStepHadoopJarStepConfigJar :: Val Text+  , _eMRStepHadoopJarStepConfigMainClass :: Maybe (Val Text)+  , _eMRStepHadoopJarStepConfigStepProperties :: Maybe [EMRStepKeyValue]+  } deriving (Show, Generic)++instance ToJSON EMRStepHadoopJarStepConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON EMRStepHadoopJarStepConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'EMRStepHadoopJarStepConfig' containing required fields+-- | as arguments.+emrStepHadoopJarStepConfig+  :: Val Text -- ^ 'emrshjscJar'+  -> EMRStepHadoopJarStepConfig+emrStepHadoopJarStepConfig jararg =+  EMRStepHadoopJarStepConfig+  { _eMRStepHadoopJarStepConfigArgs = Nothing+  , _eMRStepHadoopJarStepConfigJar = jararg+  , _eMRStepHadoopJarStepConfigMainClass = Nothing+  , _eMRStepHadoopJarStepConfigStepProperties = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html#cfn-elasticmapreduce-step-hadoopjarstepconfig-args+emrshjscArgs :: Lens' EMRStepHadoopJarStepConfig (Maybe [Val Text])+emrshjscArgs = lens _eMRStepHadoopJarStepConfigArgs (\s a -> s { _eMRStepHadoopJarStepConfigArgs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html#cfn-elasticmapreduce-step-hadoopjarstepconfig-jar+emrshjscJar :: Lens' EMRStepHadoopJarStepConfig (Val Text)+emrshjscJar = lens _eMRStepHadoopJarStepConfigJar (\s a -> s { _eMRStepHadoopJarStepConfigJar = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html#cfn-elasticmapreduce-step-hadoopjarstepconfig-mainclass+emrshjscMainClass :: Lens' EMRStepHadoopJarStepConfig (Maybe (Val Text))+emrshjscMainClass = lens _eMRStepHadoopJarStepConfigMainClass (\s a -> s { _eMRStepHadoopJarStepConfigMainClass = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-hadoopjarstepconfig.html#cfn-elasticmapreduce-step-hadoopjarstepconfig-stepproperties+emrshjscStepProperties :: Lens' EMRStepHadoopJarStepConfig (Maybe [EMRStepKeyValue])+emrshjscStepProperties = lens _eMRStepHadoopJarStepConfigStepProperties (\s a -> s { _eMRStepHadoopJarStepConfigStepProperties = a })
+ library-gen/Stratosphere/ResourceProperties/EMRStepKeyValue.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-keyvalue.html++module Stratosphere.ResourceProperties.EMRStepKeyValue where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EMRStepKeyValue. See 'emrStepKeyValue' for+-- | a more convenient constructor.+data EMRStepKeyValue =+  EMRStepKeyValue+  { _eMRStepKeyValueKey :: Maybe (Val Text)+  , _eMRStepKeyValueValue :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EMRStepKeyValue where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++instance FromJSON EMRStepKeyValue where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++-- | Constructor for 'EMRStepKeyValue' containing required fields as+-- | arguments.+emrStepKeyValue+  :: EMRStepKeyValue+emrStepKeyValue  =+  EMRStepKeyValue+  { _eMRStepKeyValueKey = Nothing+  , _eMRStepKeyValueValue = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-keyvalue.html#cfn-elasticmapreduce-step-keyvalue-key+emrskvKey :: Lens' EMRStepKeyValue (Maybe (Val Text))+emrskvKey = lens _eMRStepKeyValueKey (\s a -> s { _eMRStepKeyValueKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-step-keyvalue.html#cfn-elasticmapreduce-step-keyvalue-value+emrskvValue :: Lens' EMRStepKeyValue (Maybe (Val Text))+emrskvValue = lens _eMRStepKeyValueValue (\s a -> s { _eMRStepKeyValueValue = a })
+ library-gen/Stratosphere/ResourceProperties/ElastiCacheReplicationGroupNodeGroupConfiguration.hs view
@@ -0,0 +1,61 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html++module Stratosphere.ResourceProperties.ElastiCacheReplicationGroupNodeGroupConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ElastiCacheReplicationGroupNodeGroupConfiguration. See+-- | 'elastiCacheReplicationGroupNodeGroupConfiguration' for a more convenient+-- | constructor.+data ElastiCacheReplicationGroupNodeGroupConfiguration =+  ElastiCacheReplicationGroupNodeGroupConfiguration+  { _elastiCacheReplicationGroupNodeGroupConfigurationPrimaryAvailabilityZone :: Maybe (Val Text)+  , _elastiCacheReplicationGroupNodeGroupConfigurationReplicaAvailabilityZones :: Maybe [Val Text]+  , _elastiCacheReplicationGroupNodeGroupConfigurationReplicaCount :: Maybe (Val Integer')+  , _elastiCacheReplicationGroupNodeGroupConfigurationSlots :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ElastiCacheReplicationGroupNodeGroupConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 50, omitNothingFields = True }++instance FromJSON ElastiCacheReplicationGroupNodeGroupConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 50, omitNothingFields = True }++-- | Constructor for 'ElastiCacheReplicationGroupNodeGroupConfiguration'+-- | containing required fields as arguments.+elastiCacheReplicationGroupNodeGroupConfiguration+  :: ElastiCacheReplicationGroupNodeGroupConfiguration+elastiCacheReplicationGroupNodeGroupConfiguration  =+  ElastiCacheReplicationGroupNodeGroupConfiguration+  { _elastiCacheReplicationGroupNodeGroupConfigurationPrimaryAvailabilityZone = Nothing+  , _elastiCacheReplicationGroupNodeGroupConfigurationReplicaAvailabilityZones = Nothing+  , _elastiCacheReplicationGroupNodeGroupConfigurationReplicaCount = Nothing+  , _elastiCacheReplicationGroupNodeGroupConfigurationSlots = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-primaryavailabilityzone+ecrgngcPrimaryAvailabilityZone :: Lens' ElastiCacheReplicationGroupNodeGroupConfiguration (Maybe (Val Text))+ecrgngcPrimaryAvailabilityZone = lens _elastiCacheReplicationGroupNodeGroupConfigurationPrimaryAvailabilityZone (\s a -> s { _elastiCacheReplicationGroupNodeGroupConfigurationPrimaryAvailabilityZone = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-replicaavailabilityzones+ecrgngcReplicaAvailabilityZones :: Lens' ElastiCacheReplicationGroupNodeGroupConfiguration (Maybe [Val Text])+ecrgngcReplicaAvailabilityZones = lens _elastiCacheReplicationGroupNodeGroupConfigurationReplicaAvailabilityZones (\s a -> s { _elastiCacheReplicationGroupNodeGroupConfigurationReplicaAvailabilityZones = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-replicacount+ecrgngcReplicaCount :: Lens' ElastiCacheReplicationGroupNodeGroupConfiguration (Maybe (Val Integer'))+ecrgngcReplicaCount = lens _elastiCacheReplicationGroupNodeGroupConfigurationReplicaCount (\s a -> s { _elastiCacheReplicationGroupNodeGroupConfigurationReplicaCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-replicationgroup-nodegroupconfiguration.html#cfn-elasticache-replicationgroup-nodegroupconfiguration-slots+ecrgngcSlots :: Lens' ElastiCacheReplicationGroupNodeGroupConfiguration (Maybe (Val Text))+ecrgngcSlots = lens _elastiCacheReplicationGroupNodeGroupConfigurationSlots (\s a -> s { _elastiCacheReplicationGroupNodeGroupConfigurationSlots = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticBeanstalkApplicationVersionSourceBundle.hs view
@@ -0,0 +1,51 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-sourcebundle.html++module Stratosphere.ResourceProperties.ElasticBeanstalkApplicationVersionSourceBundle where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ElasticBeanstalkApplicationVersionSourceBundle. See+-- | 'elasticBeanstalkApplicationVersionSourceBundle' for a more convenient+-- | constructor.+data ElasticBeanstalkApplicationVersionSourceBundle =+  ElasticBeanstalkApplicationVersionSourceBundle+  { _elasticBeanstalkApplicationVersionSourceBundleS3Bucket :: Val Text+  , _elasticBeanstalkApplicationVersionSourceBundleS3Key :: Val Text+  } deriving (Show, Generic)++instance ToJSON ElasticBeanstalkApplicationVersionSourceBundle where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 47, omitNothingFields = True }++instance FromJSON ElasticBeanstalkApplicationVersionSourceBundle where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 47, omitNothingFields = True }++-- | Constructor for 'ElasticBeanstalkApplicationVersionSourceBundle'+-- | containing required fields as arguments.+elasticBeanstalkApplicationVersionSourceBundle+  :: Val Text -- ^ 'ebavsbS3Bucket'+  -> Val Text -- ^ 'ebavsbS3Key'+  -> ElasticBeanstalkApplicationVersionSourceBundle+elasticBeanstalkApplicationVersionSourceBundle s3Bucketarg s3Keyarg =+  ElasticBeanstalkApplicationVersionSourceBundle+  { _elasticBeanstalkApplicationVersionSourceBundleS3Bucket = s3Bucketarg+  , _elasticBeanstalkApplicationVersionSourceBundleS3Key = s3Keyarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-sourcebundle.html#cfn-beanstalk-sourcebundle-s3bucket+ebavsbS3Bucket :: Lens' ElasticBeanstalkApplicationVersionSourceBundle (Val Text)+ebavsbS3Bucket = lens _elasticBeanstalkApplicationVersionSourceBundleS3Bucket (\s a -> s { _elasticBeanstalkApplicationVersionSourceBundleS3Bucket = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-sourcebundle.html#cfn-beanstalk-sourcebundle-s3key+ebavsbS3Key :: Lens' ElasticBeanstalkApplicationVersionSourceBundle (Val Text)+ebavsbS3Key = lens _elasticBeanstalkApplicationVersionSourceBundleS3Key (\s a -> s { _elasticBeanstalkApplicationVersionSourceBundleS3Key = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html++module Stratosphere.ResourceProperties.ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting. See+-- | 'elasticBeanstalkConfigurationTemplateConfigurationOptionSetting' for a+-- | more convenient constructor.+data ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting =+  ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting+  { _elasticBeanstalkConfigurationTemplateConfigurationOptionSettingNamespace :: Val Text+  , _elasticBeanstalkConfigurationTemplateConfigurationOptionSettingOptionName :: Val Text+  , _elasticBeanstalkConfigurationTemplateConfigurationOptionSettingValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 64, omitNothingFields = True }++instance FromJSON ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 64, omitNothingFields = True }++-- | Constructor for+-- | 'ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting'+-- | containing required fields as arguments.+elasticBeanstalkConfigurationTemplateConfigurationOptionSetting+  :: Val Text -- ^ 'ebctcosNamespace'+  -> Val Text -- ^ 'ebctcosOptionName'+  -> Val Text -- ^ 'ebctcosValue'+  -> ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting+elasticBeanstalkConfigurationTemplateConfigurationOptionSetting namespacearg optionNamearg valuearg =+  ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting+  { _elasticBeanstalkConfigurationTemplateConfigurationOptionSettingNamespace = namespacearg+  , _elasticBeanstalkConfigurationTemplateConfigurationOptionSettingOptionName = optionNamearg+  , _elasticBeanstalkConfigurationTemplateConfigurationOptionSettingValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-beanstalk-optionsettings-namespace+ebctcosNamespace :: Lens' ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting (Val Text)+ebctcosNamespace = lens _elasticBeanstalkConfigurationTemplateConfigurationOptionSettingNamespace (\s a -> s { _elasticBeanstalkConfigurationTemplateConfigurationOptionSettingNamespace = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-beanstalk-optionsettings-optionname+ebctcosOptionName :: Lens' ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting (Val Text)+ebctcosOptionName = lens _elasticBeanstalkConfigurationTemplateConfigurationOptionSettingOptionName (\s a -> s { _elasticBeanstalkConfigurationTemplateConfigurationOptionSettingOptionName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-beanstalk-optionsettings-value+ebctcosValue :: Lens' ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting (Val Text)+ebctcosValue = lens _elasticBeanstalkConfigurationTemplateConfigurationOptionSettingValue (\s a -> s { _elasticBeanstalkConfigurationTemplateConfigurationOptionSettingValue = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticBeanstalkConfigurationTemplateSourceConfiguration.hs view
@@ -0,0 +1,52 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-configurationtemplate-sourceconfiguration.html++module Stratosphere.ResourceProperties.ElasticBeanstalkConfigurationTemplateSourceConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ElasticBeanstalkConfigurationTemplateSourceConfiguration. See+-- | 'elasticBeanstalkConfigurationTemplateSourceConfiguration' for a more+-- | convenient constructor.+data ElasticBeanstalkConfigurationTemplateSourceConfiguration =+  ElasticBeanstalkConfigurationTemplateSourceConfiguration+  { _elasticBeanstalkConfigurationTemplateSourceConfigurationApplicationName :: Val Text+  , _elasticBeanstalkConfigurationTemplateSourceConfigurationTemplateName :: Val Text+  } deriving (Show, Generic)++instance ToJSON ElasticBeanstalkConfigurationTemplateSourceConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 57, omitNothingFields = True }++instance FromJSON ElasticBeanstalkConfigurationTemplateSourceConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 57, omitNothingFields = True }++-- | Constructor for+-- | 'ElasticBeanstalkConfigurationTemplateSourceConfiguration' containing+-- | required fields as arguments.+elasticBeanstalkConfigurationTemplateSourceConfiguration+  :: Val Text -- ^ 'ebctscApplicationName'+  -> Val Text -- ^ 'ebctscTemplateName'+  -> ElasticBeanstalkConfigurationTemplateSourceConfiguration+elasticBeanstalkConfigurationTemplateSourceConfiguration applicationNamearg templateNamearg =+  ElasticBeanstalkConfigurationTemplateSourceConfiguration+  { _elasticBeanstalkConfigurationTemplateSourceConfigurationApplicationName = applicationNamearg+  , _elasticBeanstalkConfigurationTemplateSourceConfigurationTemplateName = templateNamearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-configurationtemplate-sourceconfiguration.html#cfn-beanstalk-configurationtemplate-sourceconfiguration-applicationname+ebctscApplicationName :: Lens' ElasticBeanstalkConfigurationTemplateSourceConfiguration (Val Text)+ebctscApplicationName = lens _elasticBeanstalkConfigurationTemplateSourceConfigurationApplicationName (\s a -> s { _elasticBeanstalkConfigurationTemplateSourceConfigurationApplicationName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-configurationtemplate-sourceconfiguration.html#cfn-beanstalk-configurationtemplate-sourceconfiguration-templatename+ebctscTemplateName :: Lens' ElasticBeanstalkConfigurationTemplateSourceConfiguration (Val Text)+ebctscTemplateName = lens _elasticBeanstalkConfigurationTemplateSourceConfigurationTemplateName (\s a -> s { _elasticBeanstalkConfigurationTemplateSourceConfigurationTemplateName = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticBeanstalkEnvironmentOptionSettings.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html++module Stratosphere.ResourceProperties.ElasticBeanstalkEnvironmentOptionSettings where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ElasticBeanstalkEnvironmentOptionSettings.+-- | See 'elasticBeanstalkEnvironmentOptionSettings' for a more convenient+-- | constructor.+data ElasticBeanstalkEnvironmentOptionSettings =+  ElasticBeanstalkEnvironmentOptionSettings+  { _elasticBeanstalkEnvironmentOptionSettingsNamespace :: Val Text+  , _elasticBeanstalkEnvironmentOptionSettingsOptionName :: Val Text+  , _elasticBeanstalkEnvironmentOptionSettingsValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON ElasticBeanstalkEnvironmentOptionSettings where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }++instance FromJSON ElasticBeanstalkEnvironmentOptionSettings where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }++-- | Constructor for 'ElasticBeanstalkEnvironmentOptionSettings' containing+-- | required fields as arguments.+elasticBeanstalkEnvironmentOptionSettings+  :: Val Text -- ^ 'ebeosNamespace'+  -> Val Text -- ^ 'ebeosOptionName'+  -> Val Text -- ^ 'ebeosValue'+  -> ElasticBeanstalkEnvironmentOptionSettings+elasticBeanstalkEnvironmentOptionSettings namespacearg optionNamearg valuearg =+  ElasticBeanstalkEnvironmentOptionSettings+  { _elasticBeanstalkEnvironmentOptionSettingsNamespace = namespacearg+  , _elasticBeanstalkEnvironmentOptionSettingsOptionName = optionNamearg+  , _elasticBeanstalkEnvironmentOptionSettingsValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-beanstalk-optionsettings-namespace+ebeosNamespace :: Lens' ElasticBeanstalkEnvironmentOptionSettings (Val Text)+ebeosNamespace = lens _elasticBeanstalkEnvironmentOptionSettingsNamespace (\s a -> s { _elasticBeanstalkEnvironmentOptionSettingsNamespace = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-beanstalk-optionsettings-optionname+ebeosOptionName :: Lens' ElasticBeanstalkEnvironmentOptionSettings (Val Text)+ebeosOptionName = lens _elasticBeanstalkEnvironmentOptionSettingsOptionName (\s a -> s { _elasticBeanstalkEnvironmentOptionSettingsOptionName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-beanstalk-optionsettings-value+ebeosValue :: Lens' ElasticBeanstalkEnvironmentOptionSettings (Val Text)+ebeosValue = lens _elasticBeanstalkEnvironmentOptionSettingsValue (\s a -> s { _elasticBeanstalkEnvironmentOptionSettingsValue = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticBeanstalkEnvironmentTier.hs view
@@ -0,0 +1,53 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html++module Stratosphere.ResourceProperties.ElasticBeanstalkEnvironmentTier where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ElasticBeanstalkEnvironmentTier. See+-- | 'elasticBeanstalkEnvironmentTier' for a more convenient constructor.+data ElasticBeanstalkEnvironmentTier =+  ElasticBeanstalkEnvironmentTier+  { _elasticBeanstalkEnvironmentTierName :: Maybe (Val Text)+  , _elasticBeanstalkEnvironmentTierType :: Maybe (Val Text)+  , _elasticBeanstalkEnvironmentTierVersion :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ElasticBeanstalkEnvironmentTier where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++instance FromJSON ElasticBeanstalkEnvironmentTier where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++-- | Constructor for 'ElasticBeanstalkEnvironmentTier' containing required+-- | fields as arguments.+elasticBeanstalkEnvironmentTier+  :: ElasticBeanstalkEnvironmentTier+elasticBeanstalkEnvironmentTier  =+  ElasticBeanstalkEnvironmentTier+  { _elasticBeanstalkEnvironmentTierName = Nothing+  , _elasticBeanstalkEnvironmentTierType = Nothing+  , _elasticBeanstalkEnvironmentTierVersion = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html#cfn-beanstalk-env-tier-name+ebetName :: Lens' ElasticBeanstalkEnvironmentTier (Maybe (Val Text))+ebetName = lens _elasticBeanstalkEnvironmentTierName (\s a -> s { _elasticBeanstalkEnvironmentTierName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html#cfn-beanstalk-env-tier-type+ebetType :: Lens' ElasticBeanstalkEnvironmentTier (Maybe (Val Text))+ebetType = lens _elasticBeanstalkEnvironmentTierType (\s a -> s { _elasticBeanstalkEnvironmentTierType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html#cfn-beanstalk-env-tier-version+ebetVersion :: Lens' ElasticBeanstalkEnvironmentTier (Maybe (Val Text))+ebetVersion = lens _elasticBeanstalkEnvironmentTierVersion (\s a -> s { _elasticBeanstalkEnvironmentTierVersion = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingLoadBalancerAccessLoggingPolicy.hs view
@@ -0,0 +1,63 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerAccessLoggingPolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ElasticLoadBalancingLoadBalancerAccessLoggingPolicy. See+-- | 'elasticLoadBalancingLoadBalancerAccessLoggingPolicy' for a more+-- | convenient constructor.+data ElasticLoadBalancingLoadBalancerAccessLoggingPolicy =+  ElasticLoadBalancingLoadBalancerAccessLoggingPolicy+  { _elasticLoadBalancingLoadBalancerAccessLoggingPolicyEmitInterval :: Maybe (Val Integer')+  , _elasticLoadBalancingLoadBalancerAccessLoggingPolicyEnabled :: Val Bool'+  , _elasticLoadBalancingLoadBalancerAccessLoggingPolicyS3BucketName :: Val Text+  , _elasticLoadBalancingLoadBalancerAccessLoggingPolicyS3BucketPrefix :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingLoadBalancerAccessLoggingPolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 52, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingLoadBalancerAccessLoggingPolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 52, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingLoadBalancerAccessLoggingPolicy'+-- | containing required fields as arguments.+elasticLoadBalancingLoadBalancerAccessLoggingPolicy+  :: Val Bool' -- ^ 'elblbalpEnabled'+  -> Val Text -- ^ 'elblbalpS3BucketName'+  -> ElasticLoadBalancingLoadBalancerAccessLoggingPolicy+elasticLoadBalancingLoadBalancerAccessLoggingPolicy enabledarg s3BucketNamearg =+  ElasticLoadBalancingLoadBalancerAccessLoggingPolicy+  { _elasticLoadBalancingLoadBalancerAccessLoggingPolicyEmitInterval = Nothing+  , _elasticLoadBalancingLoadBalancerAccessLoggingPolicyEnabled = enabledarg+  , _elasticLoadBalancingLoadBalancerAccessLoggingPolicyS3BucketName = s3BucketNamearg+  , _elasticLoadBalancingLoadBalancerAccessLoggingPolicyS3BucketPrefix = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-emitinterval+elblbalpEmitInterval :: Lens' ElasticLoadBalancingLoadBalancerAccessLoggingPolicy (Maybe (Val Integer'))+elblbalpEmitInterval = lens _elasticLoadBalancingLoadBalancerAccessLoggingPolicyEmitInterval (\s a -> s { _elasticLoadBalancingLoadBalancerAccessLoggingPolicyEmitInterval = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-enabled+elblbalpEnabled :: Lens' ElasticLoadBalancingLoadBalancerAccessLoggingPolicy (Val Bool')+elblbalpEnabled = lens _elasticLoadBalancingLoadBalancerAccessLoggingPolicyEnabled (\s a -> s { _elasticLoadBalancingLoadBalancerAccessLoggingPolicyEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-s3bucketname+elblbalpS3BucketName :: Lens' ElasticLoadBalancingLoadBalancerAccessLoggingPolicy (Val Text)+elblbalpS3BucketName = lens _elasticLoadBalancingLoadBalancerAccessLoggingPolicyS3BucketName (\s a -> s { _elasticLoadBalancingLoadBalancerAccessLoggingPolicyS3BucketName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-accessloggingpolicy.html#cfn-elb-accessloggingpolicy-s3bucketprefix+elblbalpS3BucketPrefix :: Lens' ElasticLoadBalancingLoadBalancerAccessLoggingPolicy (Maybe (Val Text))+elblbalpS3BucketPrefix = lens _elasticLoadBalancingLoadBalancerAccessLoggingPolicyS3BucketPrefix (\s a -> s { _elasticLoadBalancingLoadBalancerAccessLoggingPolicyS3BucketPrefix = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy.hs view
@@ -0,0 +1,52 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-AppCookieStickinessPolicy.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy. See+-- | 'elasticLoadBalancingLoadBalancerAppCookieStickinessPolicy' for a more+-- | convenient constructor.+data ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy =+  ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy+  { _elasticLoadBalancingLoadBalancerAppCookieStickinessPolicyCookieName :: Val Text+  , _elasticLoadBalancingLoadBalancerAppCookieStickinessPolicyPolicyName :: Val Text+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 58, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 58, omitNothingFields = True }++-- | Constructor for+-- | 'ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy' containing+-- | required fields as arguments.+elasticLoadBalancingLoadBalancerAppCookieStickinessPolicy+  :: Val Text -- ^ 'elblbacspCookieName'+  -> Val Text -- ^ 'elblbacspPolicyName'+  -> ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy+elasticLoadBalancingLoadBalancerAppCookieStickinessPolicy cookieNamearg policyNamearg =+  ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy+  { _elasticLoadBalancingLoadBalancerAppCookieStickinessPolicyCookieName = cookieNamearg+  , _elasticLoadBalancingLoadBalancerAppCookieStickinessPolicyPolicyName = policyNamearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-AppCookieStickinessPolicy.html#cfn-elb-appcookiestickinesspolicy-cookiename+elblbacspCookieName :: Lens' ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy (Val Text)+elblbacspCookieName = lens _elasticLoadBalancingLoadBalancerAppCookieStickinessPolicyCookieName (\s a -> s { _elasticLoadBalancingLoadBalancerAppCookieStickinessPolicyCookieName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-AppCookieStickinessPolicy.html#cfn-elb-appcookiestickinesspolicy-policyname+elblbacspPolicyName :: Lens' ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy (Val Text)+elblbacspPolicyName = lens _elasticLoadBalancingLoadBalancerAppCookieStickinessPolicyPolicyName (\s a -> s { _elasticLoadBalancingLoadBalancerAppCookieStickinessPolicyPolicyName = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy.hs view
@@ -0,0 +1,51 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy. See+-- | 'elasticLoadBalancingLoadBalancerConnectionDrainingPolicy' for a more+-- | convenient constructor.+data ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy =+  ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy+  { _elasticLoadBalancingLoadBalancerConnectionDrainingPolicyEnabled :: Val Bool'+  , _elasticLoadBalancingLoadBalancerConnectionDrainingPolicyTimeout :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 57, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 57, omitNothingFields = True }++-- | Constructor for+-- | 'ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy' containing+-- | required fields as arguments.+elasticLoadBalancingLoadBalancerConnectionDrainingPolicy+  :: Val Bool' -- ^ 'elblbcdpEnabled'+  -> ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy+elasticLoadBalancingLoadBalancerConnectionDrainingPolicy enabledarg =+  ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy+  { _elasticLoadBalancingLoadBalancerConnectionDrainingPolicyEnabled = enabledarg+  , _elasticLoadBalancingLoadBalancerConnectionDrainingPolicyTimeout = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html#cfn-elb-connectiondrainingpolicy-enabled+elblbcdpEnabled :: Lens' ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy (Val Bool')+elblbcdpEnabled = lens _elasticLoadBalancingLoadBalancerConnectionDrainingPolicyEnabled (\s a -> s { _elasticLoadBalancingLoadBalancerConnectionDrainingPolicyEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectiondrainingpolicy.html#cfn-elb-connectiondrainingpolicy-timeout+elblbcdpTimeout :: Lens' ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy (Maybe (Val Integer'))+elblbcdpTimeout = lens _elasticLoadBalancingLoadBalancerConnectionDrainingPolicyTimeout (\s a -> s { _elasticLoadBalancingLoadBalancerConnectionDrainingPolicyTimeout = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingLoadBalancerConnectionSettings.hs view
@@ -0,0 +1,44 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectionsettings.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerConnectionSettings where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ElasticLoadBalancingLoadBalancerConnectionSettings. See+-- | 'elasticLoadBalancingLoadBalancerConnectionSettings' for a more+-- | convenient constructor.+data ElasticLoadBalancingLoadBalancerConnectionSettings =+  ElasticLoadBalancingLoadBalancerConnectionSettings+  { _elasticLoadBalancingLoadBalancerConnectionSettingsIdleTimeout :: Val Integer'+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingLoadBalancerConnectionSettings where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 51, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingLoadBalancerConnectionSettings where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 51, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingLoadBalancerConnectionSettings'+-- | containing required fields as arguments.+elasticLoadBalancingLoadBalancerConnectionSettings+  :: Val Integer' -- ^ 'elblbcsIdleTimeout'+  -> ElasticLoadBalancingLoadBalancerConnectionSettings+elasticLoadBalancingLoadBalancerConnectionSettings idleTimeoutarg =+  ElasticLoadBalancingLoadBalancerConnectionSettings+  { _elasticLoadBalancingLoadBalancerConnectionSettingsIdleTimeout = idleTimeoutarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-connectionsettings.html#cfn-elb-connectionsettings-idletimeout+elblbcsIdleTimeout :: Lens' ElasticLoadBalancingLoadBalancerConnectionSettings (Val Integer')+elblbcsIdleTimeout = lens _elasticLoadBalancingLoadBalancerConnectionSettingsIdleTimeout (\s a -> s { _elasticLoadBalancingLoadBalancerConnectionSettingsIdleTimeout = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingLoadBalancerHealthCheck.hs view
@@ -0,0 +1,72 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerHealthCheck where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ElasticLoadBalancingLoadBalancerHealthCheck. See+-- | 'elasticLoadBalancingLoadBalancerHealthCheck' for a more convenient+-- | constructor.+data ElasticLoadBalancingLoadBalancerHealthCheck =+  ElasticLoadBalancingLoadBalancerHealthCheck+  { _elasticLoadBalancingLoadBalancerHealthCheckHealthyThreshold :: Val Text+  , _elasticLoadBalancingLoadBalancerHealthCheckInterval :: Val Text+  , _elasticLoadBalancingLoadBalancerHealthCheckTarget :: Val Text+  , _elasticLoadBalancingLoadBalancerHealthCheckTimeout :: Val Text+  , _elasticLoadBalancingLoadBalancerHealthCheckUnhealthyThreshold :: Val Text+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingLoadBalancerHealthCheck where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 44, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingLoadBalancerHealthCheck where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 44, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingLoadBalancerHealthCheck' containing+-- | required fields as arguments.+elasticLoadBalancingLoadBalancerHealthCheck+  :: Val Text -- ^ 'elblbhcHealthyThreshold'+  -> Val Text -- ^ 'elblbhcInterval'+  -> Val Text -- ^ 'elblbhcTarget'+  -> Val Text -- ^ 'elblbhcTimeout'+  -> Val Text -- ^ 'elblbhcUnhealthyThreshold'+  -> ElasticLoadBalancingLoadBalancerHealthCheck+elasticLoadBalancingLoadBalancerHealthCheck healthyThresholdarg intervalarg targetarg timeoutarg unhealthyThresholdarg =+  ElasticLoadBalancingLoadBalancerHealthCheck+  { _elasticLoadBalancingLoadBalancerHealthCheckHealthyThreshold = healthyThresholdarg+  , _elasticLoadBalancingLoadBalancerHealthCheckInterval = intervalarg+  , _elasticLoadBalancingLoadBalancerHealthCheckTarget = targetarg+  , _elasticLoadBalancingLoadBalancerHealthCheckTimeout = timeoutarg+  , _elasticLoadBalancingLoadBalancerHealthCheckUnhealthyThreshold = unhealthyThresholdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html#cfn-elb-healthcheck-healthythreshold+elblbhcHealthyThreshold :: Lens' ElasticLoadBalancingLoadBalancerHealthCheck (Val Text)+elblbhcHealthyThreshold = lens _elasticLoadBalancingLoadBalancerHealthCheckHealthyThreshold (\s a -> s { _elasticLoadBalancingLoadBalancerHealthCheckHealthyThreshold = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html#cfn-elb-healthcheck-interval+elblbhcInterval :: Lens' ElasticLoadBalancingLoadBalancerHealthCheck (Val Text)+elblbhcInterval = lens _elasticLoadBalancingLoadBalancerHealthCheckInterval (\s a -> s { _elasticLoadBalancingLoadBalancerHealthCheckInterval = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html#cfn-elb-healthcheck-target+elblbhcTarget :: Lens' ElasticLoadBalancingLoadBalancerHealthCheck (Val Text)+elblbhcTarget = lens _elasticLoadBalancingLoadBalancerHealthCheckTarget (\s a -> s { _elasticLoadBalancingLoadBalancerHealthCheckTarget = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html#cfn-elb-healthcheck-timeout+elblbhcTimeout :: Lens' ElasticLoadBalancingLoadBalancerHealthCheck (Val Text)+elblbhcTimeout = lens _elasticLoadBalancingLoadBalancerHealthCheckTimeout (\s a -> s { _elasticLoadBalancingLoadBalancerHealthCheckTimeout = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-health-check.html#cfn-elb-healthcheck-unhealthythreshold+elblbhcUnhealthyThreshold :: Lens' ElasticLoadBalancingLoadBalancerHealthCheck (Val Text)+elblbhcUnhealthyThreshold = lens _elasticLoadBalancingLoadBalancerHealthCheckUnhealthyThreshold (\s a -> s { _elasticLoadBalancingLoadBalancerHealthCheckUnhealthyThreshold = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-LBCookieStickinessPolicy.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy. See+-- | 'elasticLoadBalancingLoadBalancerLBCookieStickinessPolicy' for a more+-- | convenient constructor.+data ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy =+  ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy+  { _elasticLoadBalancingLoadBalancerLBCookieStickinessPolicyCookieExpirationPeriod :: Maybe (Val Text)+  , _elasticLoadBalancingLoadBalancerLBCookieStickinessPolicyPolicyName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 57, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 57, omitNothingFields = True }++-- | Constructor for+-- | 'ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy' containing+-- | required fields as arguments.+elasticLoadBalancingLoadBalancerLBCookieStickinessPolicy+  :: ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy+elasticLoadBalancingLoadBalancerLBCookieStickinessPolicy  =+  ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy+  { _elasticLoadBalancingLoadBalancerLBCookieStickinessPolicyCookieExpirationPeriod = Nothing+  , _elasticLoadBalancingLoadBalancerLBCookieStickinessPolicyPolicyName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-LBCookieStickinessPolicy.html#cfn-elb-lbcookiestickinesspolicy-cookieexpirationperiod+elblblbcspCookieExpirationPeriod :: Lens' ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy (Maybe (Val Text))+elblblbcspCookieExpirationPeriod = lens _elasticLoadBalancingLoadBalancerLBCookieStickinessPolicyCookieExpirationPeriod (\s a -> s { _elasticLoadBalancingLoadBalancerLBCookieStickinessPolicyCookieExpirationPeriod = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-LBCookieStickinessPolicy.html#cfn-elb-lbcookiestickinesspolicy-policyname+elblblbcspPolicyName :: Lens' ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy (Maybe (Val Text))+elblblbcspPolicyName = lens _elasticLoadBalancingLoadBalancerLBCookieStickinessPolicyPolicyName (\s a -> s { _elasticLoadBalancingLoadBalancerLBCookieStickinessPolicyPolicyName = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingLoadBalancerListeners.hs view
@@ -0,0 +1,75 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerListeners where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ElasticLoadBalancingLoadBalancerListeners.+-- | See 'elasticLoadBalancingLoadBalancerListeners' for a more convenient+-- | constructor.+data ElasticLoadBalancingLoadBalancerListeners =+  ElasticLoadBalancingLoadBalancerListeners+  { _elasticLoadBalancingLoadBalancerListenersInstancePort :: Val Text+  , _elasticLoadBalancingLoadBalancerListenersInstanceProtocol :: Maybe (Val Text)+  , _elasticLoadBalancingLoadBalancerListenersLoadBalancerPort :: Val Text+  , _elasticLoadBalancingLoadBalancerListenersPolicyNames :: Maybe [Val Text]+  , _elasticLoadBalancingLoadBalancerListenersProtocol :: Val Text+  , _elasticLoadBalancingLoadBalancerListenersSSLCertificateId :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingLoadBalancerListeners where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingLoadBalancerListeners where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingLoadBalancerListeners' containing+-- | required fields as arguments.+elasticLoadBalancingLoadBalancerListeners+  :: Val Text -- ^ 'elblblInstancePort'+  -> Val Text -- ^ 'elblblLoadBalancerPort'+  -> Val Text -- ^ 'elblblProtocol'+  -> ElasticLoadBalancingLoadBalancerListeners+elasticLoadBalancingLoadBalancerListeners instancePortarg loadBalancerPortarg protocolarg =+  ElasticLoadBalancingLoadBalancerListeners+  { _elasticLoadBalancingLoadBalancerListenersInstancePort = instancePortarg+  , _elasticLoadBalancingLoadBalancerListenersInstanceProtocol = Nothing+  , _elasticLoadBalancingLoadBalancerListenersLoadBalancerPort = loadBalancerPortarg+  , _elasticLoadBalancingLoadBalancerListenersPolicyNames = Nothing+  , _elasticLoadBalancingLoadBalancerListenersProtocol = protocolarg+  , _elasticLoadBalancingLoadBalancerListenersSSLCertificateId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-instanceport+elblblInstancePort :: Lens' ElasticLoadBalancingLoadBalancerListeners (Val Text)+elblblInstancePort = lens _elasticLoadBalancingLoadBalancerListenersInstancePort (\s a -> s { _elasticLoadBalancingLoadBalancerListenersInstancePort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-instanceprotocol+elblblInstanceProtocol :: Lens' ElasticLoadBalancingLoadBalancerListeners (Maybe (Val Text))+elblblInstanceProtocol = lens _elasticLoadBalancingLoadBalancerListenersInstanceProtocol (\s a -> s { _elasticLoadBalancingLoadBalancerListenersInstanceProtocol = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-loadbalancerport+elblblLoadBalancerPort :: Lens' ElasticLoadBalancingLoadBalancerListeners (Val Text)+elblblLoadBalancerPort = lens _elasticLoadBalancingLoadBalancerListenersLoadBalancerPort (\s a -> s { _elasticLoadBalancingLoadBalancerListenersLoadBalancerPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-policynames+elblblPolicyNames :: Lens' ElasticLoadBalancingLoadBalancerListeners (Maybe [Val Text])+elblblPolicyNames = lens _elasticLoadBalancingLoadBalancerListenersPolicyNames (\s a -> s { _elasticLoadBalancingLoadBalancerListenersPolicyNames = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-protocol+elblblProtocol :: Lens' ElasticLoadBalancingLoadBalancerListeners (Val Text)+elblblProtocol = lens _elasticLoadBalancingLoadBalancerListenersProtocol (\s a -> s { _elasticLoadBalancingLoadBalancerListenersProtocol = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-listener.html#cfn-ec2-elb-listener-sslcertificateid+elblblSSLCertificateId :: Lens' ElasticLoadBalancingLoadBalancerListeners (Maybe (Val Text))+elblblSSLCertificateId = lens _elasticLoadBalancingLoadBalancerListenersSSLCertificateId (\s a -> s { _elasticLoadBalancingLoadBalancerListenersSSLCertificateId = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingLoadBalancerPolicies.hs view
@@ -0,0 +1,69 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerPolicies where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ElasticLoadBalancingLoadBalancerPolicies.+-- | See 'elasticLoadBalancingLoadBalancerPolicies' for a more convenient+-- | constructor.+data ElasticLoadBalancingLoadBalancerPolicies =+  ElasticLoadBalancingLoadBalancerPolicies+  { _elasticLoadBalancingLoadBalancerPoliciesAttributes :: [Object]+  , _elasticLoadBalancingLoadBalancerPoliciesInstancePorts :: Maybe [Val Text]+  , _elasticLoadBalancingLoadBalancerPoliciesLoadBalancerPorts :: Maybe [Val Text]+  , _elasticLoadBalancingLoadBalancerPoliciesPolicyName :: Val Text+  , _elasticLoadBalancingLoadBalancerPoliciesPolicyType :: Val Text+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingLoadBalancerPolicies where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingLoadBalancerPolicies where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingLoadBalancerPolicies' containing+-- | required fields as arguments.+elasticLoadBalancingLoadBalancerPolicies+  :: [Object] -- ^ 'elblbpAttributes'+  -> Val Text -- ^ 'elblbpPolicyName'+  -> Val Text -- ^ 'elblbpPolicyType'+  -> ElasticLoadBalancingLoadBalancerPolicies+elasticLoadBalancingLoadBalancerPolicies attributesarg policyNamearg policyTypearg =+  ElasticLoadBalancingLoadBalancerPolicies+  { _elasticLoadBalancingLoadBalancerPoliciesAttributes = attributesarg+  , _elasticLoadBalancingLoadBalancerPoliciesInstancePorts = Nothing+  , _elasticLoadBalancingLoadBalancerPoliciesLoadBalancerPorts = Nothing+  , _elasticLoadBalancingLoadBalancerPoliciesPolicyName = policyNamearg+  , _elasticLoadBalancingLoadBalancerPoliciesPolicyType = policyTypearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html#cfn-ec2-elb-policy-attributes+elblbpAttributes :: Lens' ElasticLoadBalancingLoadBalancerPolicies [Object]+elblbpAttributes = lens _elasticLoadBalancingLoadBalancerPoliciesAttributes (\s a -> s { _elasticLoadBalancingLoadBalancerPoliciesAttributes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html#cfn-ec2-elb-policy-instanceports+elblbpInstancePorts :: Lens' ElasticLoadBalancingLoadBalancerPolicies (Maybe [Val Text])+elblbpInstancePorts = lens _elasticLoadBalancingLoadBalancerPoliciesInstancePorts (\s a -> s { _elasticLoadBalancingLoadBalancerPoliciesInstancePorts = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html#cfn-ec2-elb-policy-loadbalancerports+elblbpLoadBalancerPorts :: Lens' ElasticLoadBalancingLoadBalancerPolicies (Maybe [Val Text])+elblbpLoadBalancerPorts = lens _elasticLoadBalancingLoadBalancerPoliciesLoadBalancerPorts (\s a -> s { _elasticLoadBalancingLoadBalancerPoliciesLoadBalancerPorts = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html#cfn-ec2-elb-policy-policyname+elblbpPolicyName :: Lens' ElasticLoadBalancingLoadBalancerPolicies (Val Text)+elblbpPolicyName = lens _elasticLoadBalancingLoadBalancerPoliciesPolicyName (\s a -> s { _elasticLoadBalancingLoadBalancerPoliciesPolicyName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb-policy.html#cfn-ec2-elb-policy-policytype+elblbpPolicyType :: Lens' ElasticLoadBalancingLoadBalancerPolicies (Val Text)+elblbpPolicyType = lens _elasticLoadBalancingLoadBalancerPoliciesPolicyType (\s a -> s { _elasticLoadBalancingLoadBalancerPoliciesPolicyType = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingV2ListenerAction.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerAction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ElasticLoadBalancingV2ListenerAction. See+-- | 'elasticLoadBalancingV2ListenerAction' for a more convenient constructor.+data ElasticLoadBalancingV2ListenerAction =+  ElasticLoadBalancingV2ListenerAction+  { _elasticLoadBalancingV2ListenerActionTargetGroupArn :: Val Text+  , _elasticLoadBalancingV2ListenerActionType :: Val Text+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingV2ListenerAction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingV2ListenerAction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingV2ListenerAction' containing+-- | required fields as arguments.+elasticLoadBalancingV2ListenerAction+  :: Val Text -- ^ 'elbvlaTargetGroupArn'+  -> Val Text -- ^ 'elbvlaType'+  -> ElasticLoadBalancingV2ListenerAction+elasticLoadBalancingV2ListenerAction targetGroupArnarg typearg =+  ElasticLoadBalancingV2ListenerAction+  { _elasticLoadBalancingV2ListenerActionTargetGroupArn = targetGroupArnarg+  , _elasticLoadBalancingV2ListenerActionType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-defaultactions-targetgrouparn+elbvlaTargetGroupArn :: Lens' ElasticLoadBalancingV2ListenerAction (Val Text)+elbvlaTargetGroupArn = lens _elasticLoadBalancingV2ListenerActionTargetGroupArn (\s a -> s { _elasticLoadBalancingV2ListenerActionTargetGroupArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-defaultactions.html#cfn-elasticloadbalancingv2-listener-defaultactions-type+elbvlaType :: Lens' ElasticLoadBalancingV2ListenerAction (Val Text)+elbvlaType = lens _elasticLoadBalancingV2ListenerActionType (\s a -> s { _elasticLoadBalancingV2ListenerActionType = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingV2ListenerCertificate.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerCertificate where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ElasticLoadBalancingV2ListenerCertificate.+-- | See 'elasticLoadBalancingV2ListenerCertificate' for a more convenient+-- | constructor.+data ElasticLoadBalancingV2ListenerCertificate =+  ElasticLoadBalancingV2ListenerCertificate+  { _elasticLoadBalancingV2ListenerCertificateCertificateArn :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingV2ListenerCertificate where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingV2ListenerCertificate where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingV2ListenerCertificate' containing+-- | required fields as arguments.+elasticLoadBalancingV2ListenerCertificate+  :: ElasticLoadBalancingV2ListenerCertificate+elasticLoadBalancingV2ListenerCertificate  =+  ElasticLoadBalancingV2ListenerCertificate+  { _elasticLoadBalancingV2ListenerCertificateCertificateArn = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listener-certificates.html#cfn-elasticloadbalancingv2-listener-certificates-certificatearn+elbvlcCertificateArn :: Lens' ElasticLoadBalancingV2ListenerCertificate (Maybe (Val Text))+elbvlcCertificateArn = lens _elasticLoadBalancingV2ListenerCertificateCertificateArn (\s a -> s { _elasticLoadBalancingV2ListenerCertificateCertificateArn = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingV2ListenerRuleAction.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerRuleAction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ElasticLoadBalancingV2ListenerRuleAction.+-- | See 'elasticLoadBalancingV2ListenerRuleAction' for a more convenient+-- | constructor.+data ElasticLoadBalancingV2ListenerRuleAction =+  ElasticLoadBalancingV2ListenerRuleAction+  { _elasticLoadBalancingV2ListenerRuleActionTargetGroupArn :: Val Text+  , _elasticLoadBalancingV2ListenerRuleActionType :: Val Text+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingV2ListenerRuleAction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingV2ListenerRuleAction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingV2ListenerRuleAction' containing+-- | required fields as arguments.+elasticLoadBalancingV2ListenerRuleAction+  :: Val Text -- ^ 'elbvlraTargetGroupArn'+  -> Val Text -- ^ 'elbvlraType'+  -> ElasticLoadBalancingV2ListenerRuleAction+elasticLoadBalancingV2ListenerRuleAction targetGroupArnarg typearg =+  ElasticLoadBalancingV2ListenerRuleAction+  { _elasticLoadBalancingV2ListenerRuleActionTargetGroupArn = targetGroupArnarg+  , _elasticLoadBalancingV2ListenerRuleActionType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listener-actions-targetgrouparn+elbvlraTargetGroupArn :: Lens' ElasticLoadBalancingV2ListenerRuleAction (Val Text)+elbvlraTargetGroupArn = lens _elasticLoadBalancingV2ListenerRuleActionTargetGroupArn (\s a -> s { _elasticLoadBalancingV2ListenerRuleActionTargetGroupArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-actions.html#cfn-elasticloadbalancingv2-listener-actions-type+elbvlraType :: Lens' ElasticLoadBalancingV2ListenerRuleAction (Val Text)+elbvlraType = lens _elasticLoadBalancingV2ListenerRuleActionType (\s a -> s { _elasticLoadBalancingV2ListenerRuleActionType = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingV2ListenerRuleRuleCondition.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerRuleRuleCondition where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ElasticLoadBalancingV2ListenerRuleRuleCondition. See+-- | 'elasticLoadBalancingV2ListenerRuleRuleCondition' for a more convenient+-- | constructor.+data ElasticLoadBalancingV2ListenerRuleRuleCondition =+  ElasticLoadBalancingV2ListenerRuleRuleCondition+  { _elasticLoadBalancingV2ListenerRuleRuleConditionField :: Maybe (Val Text)+  , _elasticLoadBalancingV2ListenerRuleRuleConditionValues :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingV2ListenerRuleRuleCondition where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 48, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingV2ListenerRuleRuleCondition where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 48, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingV2ListenerRuleRuleCondition'+-- | containing required fields as arguments.+elasticLoadBalancingV2ListenerRuleRuleCondition+  :: ElasticLoadBalancingV2ListenerRuleRuleCondition+elasticLoadBalancingV2ListenerRuleRuleCondition  =+  ElasticLoadBalancingV2ListenerRuleRuleCondition+  { _elasticLoadBalancingV2ListenerRuleRuleConditionField = Nothing+  , _elasticLoadBalancingV2ListenerRuleRuleConditionValues = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-conditions-field+elbvlrrcField :: Lens' ElasticLoadBalancingV2ListenerRuleRuleCondition (Maybe (Val Text))+elbvlrrcField = lens _elasticLoadBalancingV2ListenerRuleRuleConditionField (\s a -> s { _elasticLoadBalancingV2ListenerRuleRuleConditionField = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-listenerrule-conditions.html#cfn-elasticloadbalancingv2-listenerrule-conditions-values+elbvlrrcValues :: Lens' ElasticLoadBalancingV2ListenerRuleRuleCondition (Maybe [Val Text])+elbvlrrcValues = lens _elasticLoadBalancingV2ListenerRuleRuleConditionValues (\s a -> s { _elasticLoadBalancingV2ListenerRuleRuleConditionValues = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-loadbalancerattributes.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute. See+-- | 'elasticLoadBalancingV2LoadBalancerLoadBalancerAttribute' for a more+-- | convenient constructor.+data ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute =+  ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute+  { _elasticLoadBalancingV2LoadBalancerLoadBalancerAttributeKey :: Maybe (Val Text)+  , _elasticLoadBalancingV2LoadBalancerLoadBalancerAttributeValue :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 56, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 56, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute'+-- | containing required fields as arguments.+elasticLoadBalancingV2LoadBalancerLoadBalancerAttribute+  :: ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute+elasticLoadBalancingV2LoadBalancerLoadBalancerAttribute  =+  ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute+  { _elasticLoadBalancingV2LoadBalancerLoadBalancerAttributeKey = Nothing+  , _elasticLoadBalancingV2LoadBalancerLoadBalancerAttributeValue = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-loadbalancerattributes.html#cfn-elasticloadbalancingv2-loadbalancer-loadbalancerattributes-key+elbvlblbaKey :: Lens' ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute (Maybe (Val Text))+elbvlblbaKey = lens _elasticLoadBalancingV2LoadBalancerLoadBalancerAttributeKey (\s a -> s { _elasticLoadBalancingV2LoadBalancerLoadBalancerAttributeKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-loadbalancer-loadbalancerattributes.html#cfn-elasticloadbalancingv2-loadbalancer-loadbalancerattributes-value+elbvlblbaValue :: Lens' ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute (Maybe (Val Text))+elbvlblbaValue = lens _elasticLoadBalancingV2LoadBalancerLoadBalancerAttributeValue (\s a -> s { _elasticLoadBalancingV2LoadBalancerLoadBalancerAttributeValue = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingV2TargetGroupMatcher.hs view
@@ -0,0 +1,43 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-matcher.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupMatcher where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ElasticLoadBalancingV2TargetGroupMatcher.+-- | See 'elasticLoadBalancingV2TargetGroupMatcher' for a more convenient+-- | constructor.+data ElasticLoadBalancingV2TargetGroupMatcher =+  ElasticLoadBalancingV2TargetGroupMatcher+  { _elasticLoadBalancingV2TargetGroupMatcherHttpCode :: Val Text+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingV2TargetGroupMatcher where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingV2TargetGroupMatcher where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingV2TargetGroupMatcher' containing+-- | required fields as arguments.+elasticLoadBalancingV2TargetGroupMatcher+  :: Val Text -- ^ 'elbvtgmHttpCode'+  -> ElasticLoadBalancingV2TargetGroupMatcher+elasticLoadBalancingV2TargetGroupMatcher httpCodearg =+  ElasticLoadBalancingV2TargetGroupMatcher+  { _elasticLoadBalancingV2TargetGroupMatcherHttpCode = httpCodearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-matcher.html#cfn-elasticloadbalancingv2-targetgroup-matcher-httpcode+elbvtgmHttpCode :: Lens' ElasticLoadBalancingV2TargetGroupMatcher (Val Text)+elbvtgmHttpCode = lens _elasticLoadBalancingV2TargetGroupMatcherHttpCode (\s a -> s { _elasticLoadBalancingV2TargetGroupMatcherHttpCode = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingV2TargetGroupTargetDescription.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupTargetDescription where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ElasticLoadBalancingV2TargetGroupTargetDescription. See+-- | 'elasticLoadBalancingV2TargetGroupTargetDescription' for a more+-- | convenient constructor.+data ElasticLoadBalancingV2TargetGroupTargetDescription =+  ElasticLoadBalancingV2TargetGroupTargetDescription+  { _elasticLoadBalancingV2TargetGroupTargetDescriptionId :: Val Text+  , _elasticLoadBalancingV2TargetGroupTargetDescriptionPort :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingV2TargetGroupTargetDescription where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 51, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingV2TargetGroupTargetDescription where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 51, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingV2TargetGroupTargetDescription'+-- | containing required fields as arguments.+elasticLoadBalancingV2TargetGroupTargetDescription+  :: Val Text -- ^ 'elbvtgtdId'+  -> ElasticLoadBalancingV2TargetGroupTargetDescription+elasticLoadBalancingV2TargetGroupTargetDescription idarg =+  ElasticLoadBalancingV2TargetGroupTargetDescription+  { _elasticLoadBalancingV2TargetGroupTargetDescriptionId = idarg+  , _elasticLoadBalancingV2TargetGroupTargetDescriptionPort = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html#cfn-elasticloadbalancingv2-targetgroup-targetdescription-id+elbvtgtdId :: Lens' ElasticLoadBalancingV2TargetGroupTargetDescription (Val Text)+elbvtgtdId = lens _elasticLoadBalancingV2TargetGroupTargetDescriptionId (\s a -> s { _elasticLoadBalancingV2TargetGroupTargetDescriptionId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetdescription.html#cfn-elasticloadbalancingv2-targetgroup-targetdescription-port+elbvtgtdPort :: Lens' ElasticLoadBalancingV2TargetGroupTargetDescription (Maybe (Val Integer'))+elbvtgtdPort = lens _elasticLoadBalancingV2TargetGroupTargetDescriptionPort (\s a -> s { _elasticLoadBalancingV2TargetGroupTargetDescriptionPort = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticLoadBalancingV2TargetGroupTargetGroupAttribute.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattributes.html++module Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupTargetGroupAttribute where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ElasticLoadBalancingV2TargetGroupTargetGroupAttribute. See+-- | 'elasticLoadBalancingV2TargetGroupTargetGroupAttribute' for a more+-- | convenient constructor.+data ElasticLoadBalancingV2TargetGroupTargetGroupAttribute =+  ElasticLoadBalancingV2TargetGroupTargetGroupAttribute+  { _elasticLoadBalancingV2TargetGroupTargetGroupAttributeKey :: Maybe (Val Text)+  , _elasticLoadBalancingV2TargetGroupTargetGroupAttributeValue :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingV2TargetGroupTargetGroupAttribute where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 54, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingV2TargetGroupTargetGroupAttribute where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 54, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingV2TargetGroupTargetGroupAttribute'+-- | containing required fields as arguments.+elasticLoadBalancingV2TargetGroupTargetGroupAttribute+  :: ElasticLoadBalancingV2TargetGroupTargetGroupAttribute+elasticLoadBalancingV2TargetGroupTargetGroupAttribute  =+  ElasticLoadBalancingV2TargetGroupTargetGroupAttribute+  { _elasticLoadBalancingV2TargetGroupTargetGroupAttributeKey = Nothing+  , _elasticLoadBalancingV2TargetGroupTargetGroupAttributeValue = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattributes.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattributes-key+elbvtgtgaKey :: Lens' ElasticLoadBalancingV2TargetGroupTargetGroupAttribute (Maybe (Val Text))+elbvtgtgaKey = lens _elasticLoadBalancingV2TargetGroupTargetGroupAttributeKey (\s a -> s { _elasticLoadBalancingV2TargetGroupTargetGroupAttributeKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticloadbalancingv2-targetgroup-targetgroupattributes.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattributes-value+elbvtgtgaValue :: Lens' ElasticLoadBalancingV2TargetGroupTargetGroupAttribute (Maybe (Val Text))+elbvtgtgaValue = lens _elasticLoadBalancingV2TargetGroupTargetGroupAttributeValue (\s a -> s { _elasticLoadBalancingV2TargetGroupTargetGroupAttributeValue = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticsearchDomainEBSOptions.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html++module Stratosphere.ResourceProperties.ElasticsearchDomainEBSOptions where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ElasticsearchDomainEBSOptions. See+-- | 'elasticsearchDomainEBSOptions' for a more convenient constructor.+data ElasticsearchDomainEBSOptions =+  ElasticsearchDomainEBSOptions+  { _elasticsearchDomainEBSOptionsEBSEnabled :: Maybe (Val Bool')+  , _elasticsearchDomainEBSOptionsIops :: Maybe (Val Integer')+  , _elasticsearchDomainEBSOptionsVolumeSize :: Maybe (Val Integer')+  , _elasticsearchDomainEBSOptionsVolumeType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ElasticsearchDomainEBSOptions where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON ElasticsearchDomainEBSOptions where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'ElasticsearchDomainEBSOptions' containing required+-- | fields as arguments.+elasticsearchDomainEBSOptions+  :: ElasticsearchDomainEBSOptions+elasticsearchDomainEBSOptions  =+  ElasticsearchDomainEBSOptions+  { _elasticsearchDomainEBSOptionsEBSEnabled = Nothing+  , _elasticsearchDomainEBSOptionsIops = Nothing+  , _elasticsearchDomainEBSOptionsVolumeSize = Nothing+  , _elasticsearchDomainEBSOptionsVolumeType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-ebsenabled+edebsoEBSEnabled :: Lens' ElasticsearchDomainEBSOptions (Maybe (Val Bool'))+edebsoEBSEnabled = lens _elasticsearchDomainEBSOptionsEBSEnabled (\s a -> s { _elasticsearchDomainEBSOptionsEBSEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-iops+edebsoIops :: Lens' ElasticsearchDomainEBSOptions (Maybe (Val Integer'))+edebsoIops = lens _elasticsearchDomainEBSOptionsIops (\s a -> s { _elasticsearchDomainEBSOptionsIops = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-volumesize+edebsoVolumeSize :: Lens' ElasticsearchDomainEBSOptions (Maybe (Val Integer'))+edebsoVolumeSize = lens _elasticsearchDomainEBSOptionsVolumeSize (\s a -> s { _elasticsearchDomainEBSOptionsVolumeSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-ebsoptions.html#cfn-elasticsearch-domain-ebsoptions-volumetype+edebsoVolumeType :: Lens' ElasticsearchDomainEBSOptions (Maybe (Val Text))+edebsoVolumeType = lens _elasticsearchDomainEBSOptionsVolumeType (\s a -> s { _elasticsearchDomainEBSOptionsVolumeType = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticsearchDomainElasticsearchClusterConfig.hs view
@@ -0,0 +1,73 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html++module Stratosphere.ResourceProperties.ElasticsearchDomainElasticsearchClusterConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | ElasticsearchDomainElasticsearchClusterConfig. See+-- | 'elasticsearchDomainElasticsearchClusterConfig' for a more convenient+-- | constructor.+data ElasticsearchDomainElasticsearchClusterConfig =+  ElasticsearchDomainElasticsearchClusterConfig+  { _elasticsearchDomainElasticsearchClusterConfigDedicatedMasterCount :: Maybe (Val Integer')+  , _elasticsearchDomainElasticsearchClusterConfigDedicatedMasterEnabled :: Maybe (Val Bool')+  , _elasticsearchDomainElasticsearchClusterConfigDedicatedMasterType :: Maybe (Val Text)+  , _elasticsearchDomainElasticsearchClusterConfigInstanceCount :: Maybe (Val Integer')+  , _elasticsearchDomainElasticsearchClusterConfigInstanceType :: Maybe (Val Text)+  , _elasticsearchDomainElasticsearchClusterConfigZoneAwarenessEnabled :: Maybe (Val Bool')+  } deriving (Show, Generic)++instance ToJSON ElasticsearchDomainElasticsearchClusterConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 46, omitNothingFields = True }++instance FromJSON ElasticsearchDomainElasticsearchClusterConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 46, omitNothingFields = True }++-- | Constructor for 'ElasticsearchDomainElasticsearchClusterConfig'+-- | containing required fields as arguments.+elasticsearchDomainElasticsearchClusterConfig+  :: ElasticsearchDomainElasticsearchClusterConfig+elasticsearchDomainElasticsearchClusterConfig  =+  ElasticsearchDomainElasticsearchClusterConfig+  { _elasticsearchDomainElasticsearchClusterConfigDedicatedMasterCount = Nothing+  , _elasticsearchDomainElasticsearchClusterConfigDedicatedMasterEnabled = Nothing+  , _elasticsearchDomainElasticsearchClusterConfigDedicatedMasterType = Nothing+  , _elasticsearchDomainElasticsearchClusterConfigInstanceCount = Nothing+  , _elasticsearchDomainElasticsearchClusterConfigInstanceType = Nothing+  , _elasticsearchDomainElasticsearchClusterConfigZoneAwarenessEnabled = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-dedicatedmastercount+edeccDedicatedMasterCount :: Lens' ElasticsearchDomainElasticsearchClusterConfig (Maybe (Val Integer'))+edeccDedicatedMasterCount = lens _elasticsearchDomainElasticsearchClusterConfigDedicatedMasterCount (\s a -> s { _elasticsearchDomainElasticsearchClusterConfigDedicatedMasterCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-dedicatedmasterenabled+edeccDedicatedMasterEnabled :: Lens' ElasticsearchDomainElasticsearchClusterConfig (Maybe (Val Bool'))+edeccDedicatedMasterEnabled = lens _elasticsearchDomainElasticsearchClusterConfigDedicatedMasterEnabled (\s a -> s { _elasticsearchDomainElasticsearchClusterConfigDedicatedMasterEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-dedicatedmastertype+edeccDedicatedMasterType :: Lens' ElasticsearchDomainElasticsearchClusterConfig (Maybe (Val Text))+edeccDedicatedMasterType = lens _elasticsearchDomainElasticsearchClusterConfigDedicatedMasterType (\s a -> s { _elasticsearchDomainElasticsearchClusterConfigDedicatedMasterType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-instancecount+edeccInstanceCount :: Lens' ElasticsearchDomainElasticsearchClusterConfig (Maybe (Val Integer'))+edeccInstanceCount = lens _elasticsearchDomainElasticsearchClusterConfigInstanceCount (\s a -> s { _elasticsearchDomainElasticsearchClusterConfigInstanceCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-instnacetype+edeccInstanceType :: Lens' ElasticsearchDomainElasticsearchClusterConfig (Maybe (Val Text))+edeccInstanceType = lens _elasticsearchDomainElasticsearchClusterConfigInstanceType (\s a -> s { _elasticsearchDomainElasticsearchClusterConfigInstanceType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-elasticsearchclusterconfig.html#cfn-elasticsearch-domain-elasticseachclusterconfig-zoneawarenessenabled+edeccZoneAwarenessEnabled :: Lens' ElasticsearchDomainElasticsearchClusterConfig (Maybe (Val Bool'))+edeccZoneAwarenessEnabled = lens _elasticsearchDomainElasticsearchClusterConfigZoneAwarenessEnabled (\s a -> s { _elasticsearchDomainElasticsearchClusterConfigZoneAwarenessEnabled = a })
+ library-gen/Stratosphere/ResourceProperties/ElasticsearchDomainSnapshotOptions.hs view
@@ -0,0 +1,41 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-snapshotoptions.html++module Stratosphere.ResourceProperties.ElasticsearchDomainSnapshotOptions where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ElasticsearchDomainSnapshotOptions. See+-- | 'elasticsearchDomainSnapshotOptions' for a more convenient constructor.+data ElasticsearchDomainSnapshotOptions =+  ElasticsearchDomainSnapshotOptions+  { _elasticsearchDomainSnapshotOptionsAutomatedSnapshotStartHour :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON ElasticsearchDomainSnapshotOptions where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++instance FromJSON ElasticsearchDomainSnapshotOptions where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++-- | Constructor for 'ElasticsearchDomainSnapshotOptions' containing required+-- | fields as arguments.+elasticsearchDomainSnapshotOptions+  :: ElasticsearchDomainSnapshotOptions+elasticsearchDomainSnapshotOptions  =+  ElasticsearchDomainSnapshotOptions+  { _elasticsearchDomainSnapshotOptionsAutomatedSnapshotStartHour = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticsearch-domain-snapshotoptions.html#cfn-elasticsearch-domain-snapshotoptions-automatedsnapshotstarthour+edsoAutomatedSnapshotStartHour :: Lens' ElasticsearchDomainSnapshotOptions (Maybe (Val Integer'))+edsoAutomatedSnapshotStartHour = lens _elasticsearchDomainSnapshotOptionsAutomatedSnapshotStartHour (\s a -> s { _elasticsearchDomainSnapshotOptionsAutomatedSnapshotStartHour = a })
+ library-gen/Stratosphere/ResourceProperties/EventsRuleTarget.hs view
@@ -0,0 +1,61 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html++module Stratosphere.ResourceProperties.EventsRuleTarget where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EventsRuleTarget. See 'eventsRuleTarget'+-- | for a more convenient constructor.+data EventsRuleTarget =+  EventsRuleTarget+  { _eventsRuleTargetArn :: Val Text+  , _eventsRuleTargetId :: Val Text+  , _eventsRuleTargetInput :: Maybe (Val Text)+  , _eventsRuleTargetInputPath :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EventsRuleTarget where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++instance FromJSON EventsRuleTarget where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++-- | Constructor for 'EventsRuleTarget' containing required fields as+-- | arguments.+eventsRuleTarget+  :: Val Text -- ^ 'ertArn'+  -> Val Text -- ^ 'ertId'+  -> EventsRuleTarget+eventsRuleTarget arnarg idarg =+  EventsRuleTarget+  { _eventsRuleTargetArn = arnarg+  , _eventsRuleTargetId = idarg+  , _eventsRuleTargetInput = Nothing+  , _eventsRuleTargetInputPath = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-arn+ertArn :: Lens' EventsRuleTarget (Val Text)+ertArn = lens _eventsRuleTargetArn (\s a -> s { _eventsRuleTargetArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-id+ertId :: Lens' EventsRuleTarget (Val Text)+ertId = lens _eventsRuleTargetId (\s a -> s { _eventsRuleTargetId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-input+ertInput :: Lens' EventsRuleTarget (Maybe (Val Text))+ertInput = lens _eventsRuleTargetInput (\s a -> s { _eventsRuleTargetInput = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-inputpath+ertInputPath :: Lens' EventsRuleTarget (Maybe (Val Text))+ertInputPath = lens _eventsRuleTargetInputPath (\s a -> s { _eventsRuleTargetInputPath = a })
+ library-gen/Stratosphere/ResourceProperties/GameLiftAliasRoutingStrategy.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-alias-routingstrategy.html++module Stratosphere.ResourceProperties.GameLiftAliasRoutingStrategy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for GameLiftAliasRoutingStrategy. See+-- | 'gameLiftAliasRoutingStrategy' for a more convenient constructor.+data GameLiftAliasRoutingStrategy =+  GameLiftAliasRoutingStrategy+  { _gameLiftAliasRoutingStrategyFleetId :: Maybe (Val Text)+  , _gameLiftAliasRoutingStrategyMessage :: Maybe (Val Text)+  , _gameLiftAliasRoutingStrategyType :: Val Text+  } deriving (Show, Generic)++instance ToJSON GameLiftAliasRoutingStrategy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++instance FromJSON GameLiftAliasRoutingStrategy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++-- | Constructor for 'GameLiftAliasRoutingStrategy' containing required fields+-- | as arguments.+gameLiftAliasRoutingStrategy+  :: Val Text -- ^ 'glarsType'+  -> GameLiftAliasRoutingStrategy+gameLiftAliasRoutingStrategy typearg =+  GameLiftAliasRoutingStrategy+  { _gameLiftAliasRoutingStrategyFleetId = Nothing+  , _gameLiftAliasRoutingStrategyMessage = Nothing+  , _gameLiftAliasRoutingStrategyType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-alias-routingstrategy.html#cfn-gamelift-alias-routingstrategy-fleetid+glarsFleetId :: Lens' GameLiftAliasRoutingStrategy (Maybe (Val Text))+glarsFleetId = lens _gameLiftAliasRoutingStrategyFleetId (\s a -> s { _gameLiftAliasRoutingStrategyFleetId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-alias-routingstrategy.html#cfn-gamelift-alias-routingstrategy-message+glarsMessage :: Lens' GameLiftAliasRoutingStrategy (Maybe (Val Text))+glarsMessage = lens _gameLiftAliasRoutingStrategyMessage (\s a -> s { _gameLiftAliasRoutingStrategyMessage = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-alias-routingstrategy.html#cfn-gamelift-alias-routingstrategy-type+glarsType :: Lens' GameLiftAliasRoutingStrategy (Val Text)+glarsType = lens _gameLiftAliasRoutingStrategyType (\s a -> s { _gameLiftAliasRoutingStrategyType = a })
+ library-gen/Stratosphere/ResourceProperties/GameLiftBuildS3Location.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-build-storagelocation.html++module Stratosphere.ResourceProperties.GameLiftBuildS3Location where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for GameLiftBuildS3Location. See+-- | 'gameLiftBuildS3Location' for a more convenient constructor.+data GameLiftBuildS3Location =+  GameLiftBuildS3Location+  { _gameLiftBuildS3LocationBucket :: Val Text+  , _gameLiftBuildS3LocationKey :: Val Text+  , _gameLiftBuildS3LocationRoleArn :: Val Text+  } deriving (Show, Generic)++instance ToJSON GameLiftBuildS3Location where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++instance FromJSON GameLiftBuildS3Location where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++-- | Constructor for 'GameLiftBuildS3Location' containing required fields as+-- | arguments.+gameLiftBuildS3Location+  :: Val Text -- ^ 'glbslBucket'+  -> Val Text -- ^ 'glbslKey'+  -> Val Text -- ^ 'glbslRoleArn'+  -> GameLiftBuildS3Location+gameLiftBuildS3Location bucketarg keyarg roleArnarg =+  GameLiftBuildS3Location+  { _gameLiftBuildS3LocationBucket = bucketarg+  , _gameLiftBuildS3LocationKey = keyarg+  , _gameLiftBuildS3LocationRoleArn = roleArnarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-build-storagelocation.html#cfn-gamelift-build-storage-bucket+glbslBucket :: Lens' GameLiftBuildS3Location (Val Text)+glbslBucket = lens _gameLiftBuildS3LocationBucket (\s a -> s { _gameLiftBuildS3LocationBucket = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-build-storagelocation.html#cfn-gamelift-build-storage-key+glbslKey :: Lens' GameLiftBuildS3Location (Val Text)+glbslKey = lens _gameLiftBuildS3LocationKey (\s a -> s { _gameLiftBuildS3LocationKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-build-storagelocation.html#cfn-gamelift-build-storage-rolearn+glbslRoleArn :: Lens' GameLiftBuildS3Location (Val Text)+glbslRoleArn = lens _gameLiftBuildS3LocationRoleArn (\s a -> s { _gameLiftBuildS3LocationRoleArn = a })
+ library-gen/Stratosphere/ResourceProperties/GameLiftFleetIpPermission.hs view
@@ -0,0 +1,63 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html++module Stratosphere.ResourceProperties.GameLiftFleetIpPermission where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for GameLiftFleetIpPermission. See+-- | 'gameLiftFleetIpPermission' for a more convenient constructor.+data GameLiftFleetIpPermission =+  GameLiftFleetIpPermission+  { _gameLiftFleetIpPermissionFromPort :: Val Integer'+  , _gameLiftFleetIpPermissionIpRange :: Val Text+  , _gameLiftFleetIpPermissionProtocol :: Val Text+  , _gameLiftFleetIpPermissionToPort :: Val Integer'+  } deriving (Show, Generic)++instance ToJSON GameLiftFleetIpPermission where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++instance FromJSON GameLiftFleetIpPermission where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++-- | Constructor for 'GameLiftFleetIpPermission' containing required fields as+-- | arguments.+gameLiftFleetIpPermission+  :: Val Integer' -- ^ 'glfipFromPort'+  -> Val Text -- ^ 'glfipIpRange'+  -> Val Text -- ^ 'glfipProtocol'+  -> Val Integer' -- ^ 'glfipToPort'+  -> GameLiftFleetIpPermission+gameLiftFleetIpPermission fromPortarg ipRangearg protocolarg toPortarg =+  GameLiftFleetIpPermission+  { _gameLiftFleetIpPermissionFromPort = fromPortarg+  , _gameLiftFleetIpPermissionIpRange = ipRangearg+  , _gameLiftFleetIpPermissionProtocol = protocolarg+  , _gameLiftFleetIpPermissionToPort = toPortarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html#cfn-gamelift-fleet-ec2inboundpermissions-fromport+glfipFromPort :: Lens' GameLiftFleetIpPermission (Val Integer')+glfipFromPort = lens _gameLiftFleetIpPermissionFromPort (\s a -> s { _gameLiftFleetIpPermissionFromPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html#cfn-gamelift-fleet-ec2inboundpermissions-iprange+glfipIpRange :: Lens' GameLiftFleetIpPermission (Val Text)+glfipIpRange = lens _gameLiftFleetIpPermissionIpRange (\s a -> s { _gameLiftFleetIpPermissionIpRange = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html#cfn-gamelift-fleet-ec2inboundpermissions-protocol+glfipProtocol :: Lens' GameLiftFleetIpPermission (Val Text)+glfipProtocol = lens _gameLiftFleetIpPermissionProtocol (\s a -> s { _gameLiftFleetIpPermissionProtocol = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ec2inboundpermission.html#cfn-gamelift-fleet-ec2inboundpermissions-toport+glfipToPort :: Lens' GameLiftFleetIpPermission (Val Integer')+glfipToPort = lens _gameLiftFleetIpPermissionToPort (\s a -> s { _gameLiftFleetIpPermissionToPort = a })
− library-gen/Stratosphere/ResourceProperties/HealthCheck.hs
@@ -1,75 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The ElasticLoadBalancing HealthCheck is an embedded property of the--- AWS::ElasticLoadBalancing::LoadBalancer type.--module Stratosphere.ResourceProperties.HealthCheck where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for HealthCheck. See 'healthCheck' for a more--- convenient constructor.-data HealthCheck =-  HealthCheck-  { _healthCheckHealthyThreshold :: Val Text-  , _healthCheckInterval :: Val Text-  , _healthCheckTarget :: Val Text-  , _healthCheckTimeout :: Val Text-  , _healthCheckUnhealthyThreshold :: Val Text-  } deriving (Show, Generic)--instance ToJSON HealthCheck where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 12, omitNothingFields = True }--instance FromJSON HealthCheck where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 12, omitNothingFields = True }---- | Constructor for 'HealthCheck' containing required fields as arguments.-healthCheck-  :: Val Text -- ^ 'hcHealthyThreshold'-  -> Val Text -- ^ 'hcInterval'-  -> Val Text -- ^ 'hcTarget'-  -> Val Text -- ^ 'hcTimeout'-  -> Val Text -- ^ 'hcUnhealthyThreshold'-  -> HealthCheck-healthCheck healthyThresholdarg intervalarg targetarg timeoutarg unhealthyThresholdarg =-  HealthCheck-  { _healthCheckHealthyThreshold = healthyThresholdarg-  , _healthCheckInterval = intervalarg-  , _healthCheckTarget = targetarg-  , _healthCheckTimeout = timeoutarg-  , _healthCheckUnhealthyThreshold = unhealthyThresholdarg-  }---- | Specifies the number of consecutive health probe successes required--- before moving the instance to the Healthy state.-hcHealthyThreshold :: Lens' HealthCheck (Val Text)-hcHealthyThreshold = lens _healthCheckHealthyThreshold (\s a -> s { _healthCheckHealthyThreshold = a })---- | Specifies the approximate interval, in seconds, between health checks of--- an individual instance.-hcInterval :: Lens' HealthCheck (Val Text)-hcInterval = lens _healthCheckInterval (\s a -> s { _healthCheckInterval = a })---- | Specifies the instance's protocol and port to check. The protocol can be--- TCP, HTTP, HTTPS, or SSL. The range of valid ports is 1 through 65535.-hcTarget :: Lens' HealthCheck (Val Text)-hcTarget = lens _healthCheckTarget (\s a -> s { _healthCheckTarget = a })---- | Specifies the amount of time, in seconds, during which no response means--- a failed health probe. This value must be less than the value for Interval.-hcTimeout :: Lens' HealthCheck (Val Text)-hcTimeout = lens _healthCheckTimeout (\s a -> s { _healthCheckTimeout = a })---- | Specifies the number of consecutive health probe failures required before--- moving the instance to the Unhealthy state.-hcUnhealthyThreshold :: Lens' HealthCheck (Val Text)-hcUnhealthyThreshold = lens _healthCheckUnhealthyThreshold (\s a -> s { _healthCheckUnhealthyThreshold = a })
+ library-gen/Stratosphere/ResourceProperties/IAMGroupPolicy.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html++module Stratosphere.ResourceProperties.IAMGroupPolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IAMGroupPolicy. See 'iamGroupPolicy' for a+-- | more convenient constructor.+data IAMGroupPolicy =+  IAMGroupPolicy+  { _iAMGroupPolicyPolicyDocument :: Object+  , _iAMGroupPolicyPolicyName :: Val Text+  } deriving (Show, Generic)++instance ToJSON IAMGroupPolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++instance FromJSON IAMGroupPolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++-- | Constructor for 'IAMGroupPolicy' containing required fields as arguments.+iamGroupPolicy+  :: Object -- ^ 'iamgpPolicyDocument'+  -> Val Text -- ^ 'iamgpPolicyName'+  -> IAMGroupPolicy+iamGroupPolicy policyDocumentarg policyNamearg =+  IAMGroupPolicy+  { _iAMGroupPolicyPolicyDocument = policyDocumentarg+  , _iAMGroupPolicyPolicyName = policyNamearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policydocument+iamgpPolicyDocument :: Lens' IAMGroupPolicy Object+iamgpPolicyDocument = lens _iAMGroupPolicyPolicyDocument (\s a -> s { _iAMGroupPolicyPolicyDocument = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policyname+iamgpPolicyName :: Lens' IAMGroupPolicy (Val Text)+iamgpPolicyName = lens _iAMGroupPolicyPolicyName (\s a -> s { _iAMGroupPolicyPolicyName = a })
− library-gen/Stratosphere/ResourceProperties/IAMPolicies.hs
@@ -1,52 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Policies is a property of the AWS::IAM::Role, AWS::IAM::Group, and--- AWS::IAM::User resources. The Policies property describes what actions are--- allowed on what resources. For more information about IAM policies, see--- Overview of Policies in IAM User Guide.--module Stratosphere.ResourceProperties.IAMPolicies where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for IAMPolicies. See 'iamPolicies' for a more--- convenient constructor.-data IAMPolicies =-  IAMPolicies-  { _iAMPoliciesPolicyDocument :: Object-  , _iAMPoliciesPolicyName :: Val Text-  } deriving (Show, Generic)--instance ToJSON IAMPolicies where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 12, omitNothingFields = True }--instance FromJSON IAMPolicies where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 12, omitNothingFields = True }---- | Constructor for 'IAMPolicies' containing required fields as arguments.-iamPolicies-  :: Object -- ^ 'iampPolicyDocument'-  -> Val Text -- ^ 'iampPolicyName'-  -> IAMPolicies-iamPolicies policyDocumentarg policyNamearg =-  IAMPolicies-  { _iAMPoliciesPolicyDocument = policyDocumentarg-  , _iAMPoliciesPolicyName = policyNamearg-  }---- | A policy document that describes what actions are allowed on which--- resources.-iampPolicyDocument :: Lens' IAMPolicies Object-iampPolicyDocument = lens _iAMPoliciesPolicyDocument (\s a -> s { _iAMPoliciesPolicyDocument = a })---- | The name of the policy.-iampPolicyName :: Lens' IAMPolicies (Val Text)-iampPolicyName = lens _iAMPoliciesPolicyName (\s a -> s { _iAMPoliciesPolicyName = a })
+ library-gen/Stratosphere/ResourceProperties/IAMRolePolicy.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html++module Stratosphere.ResourceProperties.IAMRolePolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IAMRolePolicy. See 'iamRolePolicy' for a+-- | more convenient constructor.+data IAMRolePolicy =+  IAMRolePolicy+  { _iAMRolePolicyPolicyDocument :: Object+  , _iAMRolePolicyPolicyName :: Val Text+  } deriving (Show, Generic)++instance ToJSON IAMRolePolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++instance FromJSON IAMRolePolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++-- | Constructor for 'IAMRolePolicy' containing required fields as arguments.+iamRolePolicy+  :: Object -- ^ 'iamrpPolicyDocument'+  -> Val Text -- ^ 'iamrpPolicyName'+  -> IAMRolePolicy+iamRolePolicy policyDocumentarg policyNamearg =+  IAMRolePolicy+  { _iAMRolePolicyPolicyDocument = policyDocumentarg+  , _iAMRolePolicyPolicyName = policyNamearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policydocument+iamrpPolicyDocument :: Lens' IAMRolePolicy Object+iamrpPolicyDocument = lens _iAMRolePolicyPolicyDocument (\s a -> s { _iAMRolePolicyPolicyDocument = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policyname+iamrpPolicyName :: Lens' IAMRolePolicy (Val Text)+iamrpPolicyName = lens _iAMRolePolicyPolicyName (\s a -> s { _iAMRolePolicyPolicyName = a })
+ library-gen/Stratosphere/ResourceProperties/IAMUserLoginProfile.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user-loginprofile.html++module Stratosphere.ResourceProperties.IAMUserLoginProfile where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IAMUserLoginProfile. See+-- | 'iamUserLoginProfile' for a more convenient constructor.+data IAMUserLoginProfile =+  IAMUserLoginProfile+  { _iAMUserLoginProfilePassword :: Val Text+  , _iAMUserLoginProfilePasswordResetRequired :: Maybe (Val Bool')+  } deriving (Show, Generic)++instance ToJSON IAMUserLoginProfile where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++instance FromJSON IAMUserLoginProfile where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++-- | Constructor for 'IAMUserLoginProfile' containing required fields as+-- | arguments.+iamUserLoginProfile+  :: Val Text -- ^ 'iamulpPassword'+  -> IAMUserLoginProfile+iamUserLoginProfile passwordarg =+  IAMUserLoginProfile+  { _iAMUserLoginProfilePassword = passwordarg+  , _iAMUserLoginProfilePasswordResetRequired = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user-loginprofile.html#cfn-iam-user-loginprofile-password+iamulpPassword :: Lens' IAMUserLoginProfile (Val Text)+iamulpPassword = lens _iAMUserLoginProfilePassword (\s a -> s { _iAMUserLoginProfilePassword = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user-loginprofile.html#cfn-iam-user-loginprofile-passwordresetrequired+iamulpPasswordResetRequired :: Lens' IAMUserLoginProfile (Maybe (Val Bool'))+iamulpPasswordResetRequired = lens _iAMUserLoginProfilePasswordResetRequired (\s a -> s { _iAMUserLoginProfilePasswordResetRequired = a })
+ library-gen/Stratosphere/ResourceProperties/IAMUserPolicy.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html++module Stratosphere.ResourceProperties.IAMUserPolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IAMUserPolicy. See 'iamUserPolicy' for a+-- | more convenient constructor.+data IAMUserPolicy =+  IAMUserPolicy+  { _iAMUserPolicyPolicyDocument :: Object+  , _iAMUserPolicyPolicyName :: Val Text+  } deriving (Show, Generic)++instance ToJSON IAMUserPolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++instance FromJSON IAMUserPolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++-- | Constructor for 'IAMUserPolicy' containing required fields as arguments.+iamUserPolicy+  :: Object -- ^ 'iamupPolicyDocument'+  -> Val Text -- ^ 'iamupPolicyName'+  -> IAMUserPolicy+iamUserPolicy policyDocumentarg policyNamearg =+  IAMUserPolicy+  { _iAMUserPolicyPolicyDocument = policyDocumentarg+  , _iAMUserPolicyPolicyName = policyNamearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policydocument+iamupPolicyDocument :: Lens' IAMUserPolicy Object+iamupPolicyDocument = lens _iAMUserPolicyPolicyDocument (\s a -> s { _iAMUserPolicyPolicyDocument = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-policy.html#cfn-iam-policies-policyname+iamupPolicyName :: Lens' IAMUserPolicy (Val Text)+iamupPolicyName = lens _iAMUserPolicyPolicyName (\s a -> s { _iAMUserPolicyPolicyName = a })
+ library-gen/Stratosphere/ResourceProperties/IoTThingAttributePayload.hs view
@@ -0,0 +1,41 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thing-attributepayload.html++module Stratosphere.ResourceProperties.IoTThingAttributePayload where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTThingAttributePayload. See+-- | 'ioTThingAttributePayload' for a more convenient constructor.+data IoTThingAttributePayload =+  IoTThingAttributePayload+  { _ioTThingAttributePayloadAttributes :: Maybe Object+  } deriving (Show, Generic)++instance ToJSON IoTThingAttributePayload where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++instance FromJSON IoTThingAttributePayload where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++-- | Constructor for 'IoTThingAttributePayload' containing required fields as+-- | arguments.+ioTThingAttributePayload+  :: IoTThingAttributePayload+ioTThingAttributePayload  =+  IoTThingAttributePayload+  { _ioTThingAttributePayloadAttributes = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-thing-attributepayload.html#cfn-iot-thing-attributepayload-attributes+ittapAttributes :: Lens' IoTThingAttributePayload (Maybe Object)+ittapAttributes = lens _ioTThingAttributePayloadAttributes (\s a -> s { _ioTThingAttributePayloadAttributes = a })
+ library-gen/Stratosphere/ResourceProperties/IoTTopicRuleAction.hs view
@@ -0,0 +1,111 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html++module Stratosphere.ResourceProperties.IoTTopicRuleAction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.IoTTopicRuleCloudwatchAlarmAction+import Stratosphere.ResourceProperties.IoTTopicRuleCloudwatchMetricAction+import Stratosphere.ResourceProperties.IoTTopicRuleDynamoDBAction+import Stratosphere.ResourceProperties.IoTTopicRuleElasticsearchAction+import Stratosphere.ResourceProperties.IoTTopicRuleFirehoseAction+import Stratosphere.ResourceProperties.IoTTopicRuleKinesisAction+import Stratosphere.ResourceProperties.IoTTopicRuleLambdaAction+import Stratosphere.ResourceProperties.IoTTopicRuleRepublishAction+import Stratosphere.ResourceProperties.IoTTopicRuleS3Action+import Stratosphere.ResourceProperties.IoTTopicRuleSnsAction+import Stratosphere.ResourceProperties.IoTTopicRuleSqsAction++-- | Full data type definition for IoTTopicRuleAction. See+-- | 'ioTTopicRuleAction' for a more convenient constructor.+data IoTTopicRuleAction =+  IoTTopicRuleAction+  { _ioTTopicRuleActionCloudwatchAlarm :: Maybe IoTTopicRuleCloudwatchAlarmAction+  , _ioTTopicRuleActionCloudwatchMetric :: Maybe IoTTopicRuleCloudwatchMetricAction+  , _ioTTopicRuleActionDynamoDB :: Maybe IoTTopicRuleDynamoDBAction+  , _ioTTopicRuleActionElasticsearch :: Maybe IoTTopicRuleElasticsearchAction+  , _ioTTopicRuleActionFirehose :: Maybe IoTTopicRuleFirehoseAction+  , _ioTTopicRuleActionKinesis :: Maybe IoTTopicRuleKinesisAction+  , _ioTTopicRuleActionLambda :: Maybe IoTTopicRuleLambdaAction+  , _ioTTopicRuleActionRepublish :: Maybe IoTTopicRuleRepublishAction+  , _ioTTopicRuleActionS3 :: Maybe IoTTopicRuleS3Action+  , _ioTTopicRuleActionSns :: Maybe IoTTopicRuleSnsAction+  , _ioTTopicRuleActionSqs :: Maybe IoTTopicRuleSqsAction+  } deriving (Show, Generic)++instance ToJSON IoTTopicRuleAction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++instance FromJSON IoTTopicRuleAction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++-- | Constructor for 'IoTTopicRuleAction' containing required fields as+-- | arguments.+ioTTopicRuleAction+  :: IoTTopicRuleAction+ioTTopicRuleAction  =+  IoTTopicRuleAction+  { _ioTTopicRuleActionCloudwatchAlarm = Nothing+  , _ioTTopicRuleActionCloudwatchMetric = Nothing+  , _ioTTopicRuleActionDynamoDB = Nothing+  , _ioTTopicRuleActionElasticsearch = Nothing+  , _ioTTopicRuleActionFirehose = Nothing+  , _ioTTopicRuleActionKinesis = Nothing+  , _ioTTopicRuleActionLambda = Nothing+  , _ioTTopicRuleActionRepublish = Nothing+  , _ioTTopicRuleActionS3 = Nothing+  , _ioTTopicRuleActionSns = Nothing+  , _ioTTopicRuleActionSqs = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-cloudwatchalarm+ittraCloudwatchAlarm :: Lens' IoTTopicRuleAction (Maybe IoTTopicRuleCloudwatchAlarmAction)+ittraCloudwatchAlarm = lens _ioTTopicRuleActionCloudwatchAlarm (\s a -> s { _ioTTopicRuleActionCloudwatchAlarm = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-cloudwatchmetric+ittraCloudwatchMetric :: Lens' IoTTopicRuleAction (Maybe IoTTopicRuleCloudwatchMetricAction)+ittraCloudwatchMetric = lens _ioTTopicRuleActionCloudwatchMetric (\s a -> s { _ioTTopicRuleActionCloudwatchMetric = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-dynamodb+ittraDynamoDB :: Lens' IoTTopicRuleAction (Maybe IoTTopicRuleDynamoDBAction)+ittraDynamoDB = lens _ioTTopicRuleActionDynamoDB (\s a -> s { _ioTTopicRuleActionDynamoDB = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-elasticsearch+ittraElasticsearch :: Lens' IoTTopicRuleAction (Maybe IoTTopicRuleElasticsearchAction)+ittraElasticsearch = lens _ioTTopicRuleActionElasticsearch (\s a -> s { _ioTTopicRuleActionElasticsearch = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-firehose+ittraFirehose :: Lens' IoTTopicRuleAction (Maybe IoTTopicRuleFirehoseAction)+ittraFirehose = lens _ioTTopicRuleActionFirehose (\s a -> s { _ioTTopicRuleActionFirehose = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-kinesis+ittraKinesis :: Lens' IoTTopicRuleAction (Maybe IoTTopicRuleKinesisAction)+ittraKinesis = lens _ioTTopicRuleActionKinesis (\s a -> s { _ioTTopicRuleActionKinesis = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-lambda+ittraLambda :: Lens' IoTTopicRuleAction (Maybe IoTTopicRuleLambdaAction)+ittraLambda = lens _ioTTopicRuleActionLambda (\s a -> s { _ioTTopicRuleActionLambda = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-republish+ittraRepublish :: Lens' IoTTopicRuleAction (Maybe IoTTopicRuleRepublishAction)+ittraRepublish = lens _ioTTopicRuleActionRepublish (\s a -> s { _ioTTopicRuleActionRepublish = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-s3+ittraS3 :: Lens' IoTTopicRuleAction (Maybe IoTTopicRuleS3Action)+ittraS3 = lens _ioTTopicRuleActionS3 (\s a -> s { _ioTTopicRuleActionS3 = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-sns+ittraSns :: Lens' IoTTopicRuleAction (Maybe IoTTopicRuleSnsAction)+ittraSns = lens _ioTTopicRuleActionSns (\s a -> s { _ioTTopicRuleActionSns = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-actions.html#cfn-iot-action-sqs+ittraSqs :: Lens' IoTTopicRuleAction (Maybe IoTTopicRuleSqsAction)+ittraSqs = lens _ioTTopicRuleActionSqs (\s a -> s { _ioTTopicRuleActionSqs = a })
+ library-gen/Stratosphere/ResourceProperties/IoTTopicRuleCloudwatchAlarmAction.hs view
@@ -0,0 +1,63 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchalarm.html++module Stratosphere.ResourceProperties.IoTTopicRuleCloudwatchAlarmAction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTTopicRuleCloudwatchAlarmAction. See+-- | 'ioTTopicRuleCloudwatchAlarmAction' for a more convenient constructor.+data IoTTopicRuleCloudwatchAlarmAction =+  IoTTopicRuleCloudwatchAlarmAction+  { _ioTTopicRuleCloudwatchAlarmActionAlarmName :: Val Text+  , _ioTTopicRuleCloudwatchAlarmActionRoleArn :: Val Text+  , _ioTTopicRuleCloudwatchAlarmActionStateReason :: Val Text+  , _ioTTopicRuleCloudwatchAlarmActionStateValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON IoTTopicRuleCloudwatchAlarmAction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON IoTTopicRuleCloudwatchAlarmAction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'IoTTopicRuleCloudwatchAlarmAction' containing required+-- | fields as arguments.+ioTTopicRuleCloudwatchAlarmAction+  :: Val Text -- ^ 'ittrcaaAlarmName'+  -> Val Text -- ^ 'ittrcaaRoleArn'+  -> Val Text -- ^ 'ittrcaaStateReason'+  -> Val Text -- ^ 'ittrcaaStateValue'+  -> IoTTopicRuleCloudwatchAlarmAction+ioTTopicRuleCloudwatchAlarmAction alarmNamearg roleArnarg stateReasonarg stateValuearg =+  IoTTopicRuleCloudwatchAlarmAction+  { _ioTTopicRuleCloudwatchAlarmActionAlarmName = alarmNamearg+  , _ioTTopicRuleCloudwatchAlarmActionRoleArn = roleArnarg+  , _ioTTopicRuleCloudwatchAlarmActionStateReason = stateReasonarg+  , _ioTTopicRuleCloudwatchAlarmActionStateValue = stateValuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchalarm.html#cfn-iot-cloudwatchalarm-alarmname+ittrcaaAlarmName :: Lens' IoTTopicRuleCloudwatchAlarmAction (Val Text)+ittrcaaAlarmName = lens _ioTTopicRuleCloudwatchAlarmActionAlarmName (\s a -> s { _ioTTopicRuleCloudwatchAlarmActionAlarmName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchalarm.html#cfn-iot-cloudwatchalarm-rolearn+ittrcaaRoleArn :: Lens' IoTTopicRuleCloudwatchAlarmAction (Val Text)+ittrcaaRoleArn = lens _ioTTopicRuleCloudwatchAlarmActionRoleArn (\s a -> s { _ioTTopicRuleCloudwatchAlarmActionRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchalarm.html#cfn-iot-cloudwatchalarm-statereason+ittrcaaStateReason :: Lens' IoTTopicRuleCloudwatchAlarmAction (Val Text)+ittrcaaStateReason = lens _ioTTopicRuleCloudwatchAlarmActionStateReason (\s a -> s { _ioTTopicRuleCloudwatchAlarmActionStateReason = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchalarm.html#cfn-iot-cloudwatchalarm-statevalue+ittrcaaStateValue :: Lens' IoTTopicRuleCloudwatchAlarmAction (Val Text)+ittrcaaStateValue = lens _ioTTopicRuleCloudwatchAlarmActionStateValue (\s a -> s { _ioTTopicRuleCloudwatchAlarmActionStateValue = a })
+ library-gen/Stratosphere/ResourceProperties/IoTTopicRuleCloudwatchMetricAction.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchmetric.html++module Stratosphere.ResourceProperties.IoTTopicRuleCloudwatchMetricAction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTTopicRuleCloudwatchMetricAction. See+-- | 'ioTTopicRuleCloudwatchMetricAction' for a more convenient constructor.+data IoTTopicRuleCloudwatchMetricAction =+  IoTTopicRuleCloudwatchMetricAction+  { _ioTTopicRuleCloudwatchMetricActionMetricName :: Val Text+  , _ioTTopicRuleCloudwatchMetricActionMetricNamespace :: Val Text+  , _ioTTopicRuleCloudwatchMetricActionMetricTimestamp :: Maybe (Val Text)+  , _ioTTopicRuleCloudwatchMetricActionMetricUnit :: Val Text+  , _ioTTopicRuleCloudwatchMetricActionMetricValue :: Val Text+  , _ioTTopicRuleCloudwatchMetricActionRoleArn :: Val Text+  } deriving (Show, Generic)++instance ToJSON IoTTopicRuleCloudwatchMetricAction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++instance FromJSON IoTTopicRuleCloudwatchMetricAction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++-- | Constructor for 'IoTTopicRuleCloudwatchMetricAction' containing required+-- | fields as arguments.+ioTTopicRuleCloudwatchMetricAction+  :: Val Text -- ^ 'ittrcmaMetricName'+  -> Val Text -- ^ 'ittrcmaMetricNamespace'+  -> Val Text -- ^ 'ittrcmaMetricUnit'+  -> Val Text -- ^ 'ittrcmaMetricValue'+  -> Val Text -- ^ 'ittrcmaRoleArn'+  -> IoTTopicRuleCloudwatchMetricAction+ioTTopicRuleCloudwatchMetricAction metricNamearg metricNamespacearg metricUnitarg metricValuearg roleArnarg =+  IoTTopicRuleCloudwatchMetricAction+  { _ioTTopicRuleCloudwatchMetricActionMetricName = metricNamearg+  , _ioTTopicRuleCloudwatchMetricActionMetricNamespace = metricNamespacearg+  , _ioTTopicRuleCloudwatchMetricActionMetricTimestamp = Nothing+  , _ioTTopicRuleCloudwatchMetricActionMetricUnit = metricUnitarg+  , _ioTTopicRuleCloudwatchMetricActionMetricValue = metricValuearg+  , _ioTTopicRuleCloudwatchMetricActionRoleArn = roleArnarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchmetric.html#cfn-iot-cloudwatchmetric-metricname+ittrcmaMetricName :: Lens' IoTTopicRuleCloudwatchMetricAction (Val Text)+ittrcmaMetricName = lens _ioTTopicRuleCloudwatchMetricActionMetricName (\s a -> s { _ioTTopicRuleCloudwatchMetricActionMetricName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchmetric.html#cfn-iot-cloudwatchmetric-metricnamespace+ittrcmaMetricNamespace :: Lens' IoTTopicRuleCloudwatchMetricAction (Val Text)+ittrcmaMetricNamespace = lens _ioTTopicRuleCloudwatchMetricActionMetricNamespace (\s a -> s { _ioTTopicRuleCloudwatchMetricActionMetricNamespace = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchmetric.html#cfn-iot-cloudwatchmetric-metrictimestamp+ittrcmaMetricTimestamp :: Lens' IoTTopicRuleCloudwatchMetricAction (Maybe (Val Text))+ittrcmaMetricTimestamp = lens _ioTTopicRuleCloudwatchMetricActionMetricTimestamp (\s a -> s { _ioTTopicRuleCloudwatchMetricActionMetricTimestamp = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchmetric.html#cfn-iot-cloudwatchmetric-metricunit+ittrcmaMetricUnit :: Lens' IoTTopicRuleCloudwatchMetricAction (Val Text)+ittrcmaMetricUnit = lens _ioTTopicRuleCloudwatchMetricActionMetricUnit (\s a -> s { _ioTTopicRuleCloudwatchMetricActionMetricUnit = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchmetric.html#cfn-iot-cloudwatchmetric-metricvalue+ittrcmaMetricValue :: Lens' IoTTopicRuleCloudwatchMetricAction (Val Text)+ittrcmaMetricValue = lens _ioTTopicRuleCloudwatchMetricActionMetricValue (\s a -> s { _ioTTopicRuleCloudwatchMetricActionMetricValue = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-cloudwatchmetric.html#cfn-iot-cloudwatchmetric-rolearn+ittrcmaRoleArn :: Lens' IoTTopicRuleCloudwatchMetricAction (Val Text)+ittrcmaRoleArn = lens _ioTTopicRuleCloudwatchMetricActionRoleArn (\s a -> s { _ioTTopicRuleCloudwatchMetricActionRoleArn = a })
+ library-gen/Stratosphere/ResourceProperties/IoTTopicRuleDynamoDBAction.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html++module Stratosphere.ResourceProperties.IoTTopicRuleDynamoDBAction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTTopicRuleDynamoDBAction. See+-- | 'ioTTopicRuleDynamoDBAction' for a more convenient constructor.+data IoTTopicRuleDynamoDBAction =+  IoTTopicRuleDynamoDBAction+  { _ioTTopicRuleDynamoDBActionHashKeyField :: Val Text+  , _ioTTopicRuleDynamoDBActionHashKeyValue :: Val Text+  , _ioTTopicRuleDynamoDBActionPayloadField :: Maybe (Val Text)+  , _ioTTopicRuleDynamoDBActionRangeKeyField :: Val Text+  , _ioTTopicRuleDynamoDBActionRangeKeyValue :: Val Text+  , _ioTTopicRuleDynamoDBActionRoleArn :: Val Text+  , _ioTTopicRuleDynamoDBActionTableName :: Val Text+  } deriving (Show, Generic)++instance ToJSON IoTTopicRuleDynamoDBAction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON IoTTopicRuleDynamoDBAction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'IoTTopicRuleDynamoDBAction' containing required fields+-- | as arguments.+ioTTopicRuleDynamoDBAction+  :: Val Text -- ^ 'ittrddbaHashKeyField'+  -> Val Text -- ^ 'ittrddbaHashKeyValue'+  -> Val Text -- ^ 'ittrddbaRangeKeyField'+  -> Val Text -- ^ 'ittrddbaRangeKeyValue'+  -> Val Text -- ^ 'ittrddbaRoleArn'+  -> Val Text -- ^ 'ittrddbaTableName'+  -> IoTTopicRuleDynamoDBAction+ioTTopicRuleDynamoDBAction hashKeyFieldarg hashKeyValuearg rangeKeyFieldarg rangeKeyValuearg roleArnarg tableNamearg =+  IoTTopicRuleDynamoDBAction+  { _ioTTopicRuleDynamoDBActionHashKeyField = hashKeyFieldarg+  , _ioTTopicRuleDynamoDBActionHashKeyValue = hashKeyValuearg+  , _ioTTopicRuleDynamoDBActionPayloadField = Nothing+  , _ioTTopicRuleDynamoDBActionRangeKeyField = rangeKeyFieldarg+  , _ioTTopicRuleDynamoDBActionRangeKeyValue = rangeKeyValuearg+  , _ioTTopicRuleDynamoDBActionRoleArn = roleArnarg+  , _ioTTopicRuleDynamoDBActionTableName = tableNamearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html#cfn-iot-dynamodb-hashkeyfield+ittrddbaHashKeyField :: Lens' IoTTopicRuleDynamoDBAction (Val Text)+ittrddbaHashKeyField = lens _ioTTopicRuleDynamoDBActionHashKeyField (\s a -> s { _ioTTopicRuleDynamoDBActionHashKeyField = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html#cfn-iot-dynamodb-hashkeyvalue+ittrddbaHashKeyValue :: Lens' IoTTopicRuleDynamoDBAction (Val Text)+ittrddbaHashKeyValue = lens _ioTTopicRuleDynamoDBActionHashKeyValue (\s a -> s { _ioTTopicRuleDynamoDBActionHashKeyValue = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html#cfn-iot-dynamodb-payloadfield+ittrddbaPayloadField :: Lens' IoTTopicRuleDynamoDBAction (Maybe (Val Text))+ittrddbaPayloadField = lens _ioTTopicRuleDynamoDBActionPayloadField (\s a -> s { _ioTTopicRuleDynamoDBActionPayloadField = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html#cfn-iot-dynamodb-rangekeyfield+ittrddbaRangeKeyField :: Lens' IoTTopicRuleDynamoDBAction (Val Text)+ittrddbaRangeKeyField = lens _ioTTopicRuleDynamoDBActionRangeKeyField (\s a -> s { _ioTTopicRuleDynamoDBActionRangeKeyField = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html#cfn-iot-dynamodb-rangekeyvalue+ittrddbaRangeKeyValue :: Lens' IoTTopicRuleDynamoDBAction (Val Text)+ittrddbaRangeKeyValue = lens _ioTTopicRuleDynamoDBActionRangeKeyValue (\s a -> s { _ioTTopicRuleDynamoDBActionRangeKeyValue = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html#cfn-iot-dynamodb-rolearn+ittrddbaRoleArn :: Lens' IoTTopicRuleDynamoDBAction (Val Text)+ittrddbaRoleArn = lens _ioTTopicRuleDynamoDBActionRoleArn (\s a -> s { _ioTTopicRuleDynamoDBActionRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-dynamodb.html#cfn-iot-dynamodb-tablename+ittrddbaTableName :: Lens' IoTTopicRuleDynamoDBAction (Val Text)+ittrddbaTableName = lens _ioTTopicRuleDynamoDBActionTableName (\s a -> s { _ioTTopicRuleDynamoDBActionTableName = a })
+ library-gen/Stratosphere/ResourceProperties/IoTTopicRuleElasticsearchAction.hs view
@@ -0,0 +1,70 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-elasticsearch.html++module Stratosphere.ResourceProperties.IoTTopicRuleElasticsearchAction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTTopicRuleElasticsearchAction. See+-- | 'ioTTopicRuleElasticsearchAction' for a more convenient constructor.+data IoTTopicRuleElasticsearchAction =+  IoTTopicRuleElasticsearchAction+  { _ioTTopicRuleElasticsearchActionEndpoint :: Val Text+  , _ioTTopicRuleElasticsearchActionId :: Val Text+  , _ioTTopicRuleElasticsearchActionIndex :: Val Text+  , _ioTTopicRuleElasticsearchActionRoleArn :: Val Text+  , _ioTTopicRuleElasticsearchActionType :: Val Text+  } deriving (Show, Generic)++instance ToJSON IoTTopicRuleElasticsearchAction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++instance FromJSON IoTTopicRuleElasticsearchAction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++-- | Constructor for 'IoTTopicRuleElasticsearchAction' containing required+-- | fields as arguments.+ioTTopicRuleElasticsearchAction+  :: Val Text -- ^ 'ittreaEndpoint'+  -> Val Text -- ^ 'ittreaId'+  -> Val Text -- ^ 'ittreaIndex'+  -> Val Text -- ^ 'ittreaRoleArn'+  -> Val Text -- ^ 'ittreaType'+  -> IoTTopicRuleElasticsearchAction+ioTTopicRuleElasticsearchAction endpointarg idarg indexarg roleArnarg typearg =+  IoTTopicRuleElasticsearchAction+  { _ioTTopicRuleElasticsearchActionEndpoint = endpointarg+  , _ioTTopicRuleElasticsearchActionId = idarg+  , _ioTTopicRuleElasticsearchActionIndex = indexarg+  , _ioTTopicRuleElasticsearchActionRoleArn = roleArnarg+  , _ioTTopicRuleElasticsearchActionType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-elasticsearch.html#cfn-iot-elasticsearch-endpoint+ittreaEndpoint :: Lens' IoTTopicRuleElasticsearchAction (Val Text)+ittreaEndpoint = lens _ioTTopicRuleElasticsearchActionEndpoint (\s a -> s { _ioTTopicRuleElasticsearchActionEndpoint = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-elasticsearch.html#cfn-iot-elasticsearch-id+ittreaId :: Lens' IoTTopicRuleElasticsearchAction (Val Text)+ittreaId = lens _ioTTopicRuleElasticsearchActionId (\s a -> s { _ioTTopicRuleElasticsearchActionId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-elasticsearch.html#cfn-iot-elasticsearch-index+ittreaIndex :: Lens' IoTTopicRuleElasticsearchAction (Val Text)+ittreaIndex = lens _ioTTopicRuleElasticsearchActionIndex (\s a -> s { _ioTTopicRuleElasticsearchActionIndex = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-elasticsearch.html#cfn-iot-elasticsearch-rolearn+ittreaRoleArn :: Lens' IoTTopicRuleElasticsearchAction (Val Text)+ittreaRoleArn = lens _ioTTopicRuleElasticsearchActionRoleArn (\s a -> s { _ioTTopicRuleElasticsearchActionRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-elasticsearch.html#cfn-iot-elasticsearch-type+ittreaType :: Lens' IoTTopicRuleElasticsearchAction (Val Text)+ittreaType = lens _ioTTopicRuleElasticsearchActionType (\s a -> s { _ioTTopicRuleElasticsearchActionType = a })
+ library-gen/Stratosphere/ResourceProperties/IoTTopicRuleFirehoseAction.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-firehose.html++module Stratosphere.ResourceProperties.IoTTopicRuleFirehoseAction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTTopicRuleFirehoseAction. See+-- | 'ioTTopicRuleFirehoseAction' for a more convenient constructor.+data IoTTopicRuleFirehoseAction =+  IoTTopicRuleFirehoseAction+  { _ioTTopicRuleFirehoseActionDeliveryStreamName :: Val Text+  , _ioTTopicRuleFirehoseActionRoleArn :: Val Text+  , _ioTTopicRuleFirehoseActionSeparator :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON IoTTopicRuleFirehoseAction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON IoTTopicRuleFirehoseAction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'IoTTopicRuleFirehoseAction' containing required fields+-- | as arguments.+ioTTopicRuleFirehoseAction+  :: Val Text -- ^ 'ittrfaDeliveryStreamName'+  -> Val Text -- ^ 'ittrfaRoleArn'+  -> IoTTopicRuleFirehoseAction+ioTTopicRuleFirehoseAction deliveryStreamNamearg roleArnarg =+  IoTTopicRuleFirehoseAction+  { _ioTTopicRuleFirehoseActionDeliveryStreamName = deliveryStreamNamearg+  , _ioTTopicRuleFirehoseActionRoleArn = roleArnarg+  , _ioTTopicRuleFirehoseActionSeparator = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-firehose.html#cfn-iot-firehose-deliverystreamname+ittrfaDeliveryStreamName :: Lens' IoTTopicRuleFirehoseAction (Val Text)+ittrfaDeliveryStreamName = lens _ioTTopicRuleFirehoseActionDeliveryStreamName (\s a -> s { _ioTTopicRuleFirehoseActionDeliveryStreamName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-firehose.html#cfn-iot-firehose-rolearn+ittrfaRoleArn :: Lens' IoTTopicRuleFirehoseAction (Val Text)+ittrfaRoleArn = lens _ioTTopicRuleFirehoseActionRoleArn (\s a -> s { _ioTTopicRuleFirehoseActionRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-firehose.html#cfn-iot-firehose-separator+ittrfaSeparator :: Lens' IoTTopicRuleFirehoseAction (Maybe (Val Text))+ittrfaSeparator = lens _ioTTopicRuleFirehoseActionSeparator (\s a -> s { _ioTTopicRuleFirehoseActionSeparator = a })
+ library-gen/Stratosphere/ResourceProperties/IoTTopicRuleKinesisAction.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-kinesis.html++module Stratosphere.ResourceProperties.IoTTopicRuleKinesisAction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTTopicRuleKinesisAction. See+-- | 'ioTTopicRuleKinesisAction' for a more convenient constructor.+data IoTTopicRuleKinesisAction =+  IoTTopicRuleKinesisAction+  { _ioTTopicRuleKinesisActionPartitionKey :: Maybe (Val Text)+  , _ioTTopicRuleKinesisActionRoleArn :: Val Text+  , _ioTTopicRuleKinesisActionStreamName :: Val Text+  } deriving (Show, Generic)++instance ToJSON IoTTopicRuleKinesisAction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++instance FromJSON IoTTopicRuleKinesisAction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++-- | Constructor for 'IoTTopicRuleKinesisAction' containing required fields as+-- | arguments.+ioTTopicRuleKinesisAction+  :: Val Text -- ^ 'ittrkaRoleArn'+  -> Val Text -- ^ 'ittrkaStreamName'+  -> IoTTopicRuleKinesisAction+ioTTopicRuleKinesisAction roleArnarg streamNamearg =+  IoTTopicRuleKinesisAction+  { _ioTTopicRuleKinesisActionPartitionKey = Nothing+  , _ioTTopicRuleKinesisActionRoleArn = roleArnarg+  , _ioTTopicRuleKinesisActionStreamName = streamNamearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-kinesis.html#cfn-iot-kinesis-partitionkey+ittrkaPartitionKey :: Lens' IoTTopicRuleKinesisAction (Maybe (Val Text))+ittrkaPartitionKey = lens _ioTTopicRuleKinesisActionPartitionKey (\s a -> s { _ioTTopicRuleKinesisActionPartitionKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-kinesis.html#cfn-iot-kinesis-rolearn+ittrkaRoleArn :: Lens' IoTTopicRuleKinesisAction (Val Text)+ittrkaRoleArn = lens _ioTTopicRuleKinesisActionRoleArn (\s a -> s { _ioTTopicRuleKinesisActionRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-kinesis.html#cfn-iot-kinesis-streamname+ittrkaStreamName :: Lens' IoTTopicRuleKinesisAction (Val Text)+ittrkaStreamName = lens _ioTTopicRuleKinesisActionStreamName (\s a -> s { _ioTTopicRuleKinesisActionStreamName = a })
+ library-gen/Stratosphere/ResourceProperties/IoTTopicRuleLambdaAction.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-lambda.html++module Stratosphere.ResourceProperties.IoTTopicRuleLambdaAction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTTopicRuleLambdaAction. See+-- | 'ioTTopicRuleLambdaAction' for a more convenient constructor.+data IoTTopicRuleLambdaAction =+  IoTTopicRuleLambdaAction+  { _ioTTopicRuleLambdaActionFunctionArn :: Val Text+  } deriving (Show, Generic)++instance ToJSON IoTTopicRuleLambdaAction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++instance FromJSON IoTTopicRuleLambdaAction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++-- | Constructor for 'IoTTopicRuleLambdaAction' containing required fields as+-- | arguments.+ioTTopicRuleLambdaAction+  :: Val Text -- ^ 'ittrlaFunctionArn'+  -> IoTTopicRuleLambdaAction+ioTTopicRuleLambdaAction functionArnarg =+  IoTTopicRuleLambdaAction+  { _ioTTopicRuleLambdaActionFunctionArn = functionArnarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-lambda.html#cfn-iot-lambda-functionarn+ittrlaFunctionArn :: Lens' IoTTopicRuleLambdaAction (Val Text)+ittrlaFunctionArn = lens _ioTTopicRuleLambdaActionFunctionArn (\s a -> s { _ioTTopicRuleLambdaActionFunctionArn = a })
+ library-gen/Stratosphere/ResourceProperties/IoTTopicRuleRepublishAction.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-republish.html++module Stratosphere.ResourceProperties.IoTTopicRuleRepublishAction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTTopicRuleRepublishAction. See+-- | 'ioTTopicRuleRepublishAction' for a more convenient constructor.+data IoTTopicRuleRepublishAction =+  IoTTopicRuleRepublishAction+  { _ioTTopicRuleRepublishActionRoleArn :: Val Text+  , _ioTTopicRuleRepublishActionTopic :: Val Text+  } deriving (Show, Generic)++instance ToJSON IoTTopicRuleRepublishAction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON IoTTopicRuleRepublishAction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'IoTTopicRuleRepublishAction' containing required fields+-- | as arguments.+ioTTopicRuleRepublishAction+  :: Val Text -- ^ 'ittrraRoleArn'+  -> Val Text -- ^ 'ittrraTopic'+  -> IoTTopicRuleRepublishAction+ioTTopicRuleRepublishAction roleArnarg topicarg =+  IoTTopicRuleRepublishAction+  { _ioTTopicRuleRepublishActionRoleArn = roleArnarg+  , _ioTTopicRuleRepublishActionTopic = topicarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-republish.html#cfn-iot-republish-rolearn+ittrraRoleArn :: Lens' IoTTopicRuleRepublishAction (Val Text)+ittrraRoleArn = lens _ioTTopicRuleRepublishActionRoleArn (\s a -> s { _ioTTopicRuleRepublishActionRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-republish.html#cfn-iot-republish-topic+ittrraTopic :: Lens' IoTTopicRuleRepublishAction (Val Text)+ittrraTopic = lens _ioTTopicRuleRepublishActionTopic (\s a -> s { _ioTTopicRuleRepublishActionTopic = a })
+ library-gen/Stratosphere/ResourceProperties/IoTTopicRuleS3Action.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-s3.html++module Stratosphere.ResourceProperties.IoTTopicRuleS3Action where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTTopicRuleS3Action. See+-- | 'ioTTopicRuleS3Action' for a more convenient constructor.+data IoTTopicRuleS3Action =+  IoTTopicRuleS3Action+  { _ioTTopicRuleS3ActionBucketName :: Val Text+  , _ioTTopicRuleS3ActionKey :: Val Text+  , _ioTTopicRuleS3ActionRoleArn :: Val Text+  } deriving (Show, Generic)++instance ToJSON IoTTopicRuleS3Action where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++instance FromJSON IoTTopicRuleS3Action where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++-- | Constructor for 'IoTTopicRuleS3Action' containing required fields as+-- | arguments.+ioTTopicRuleS3Action+  :: Val Text -- ^ 'ittrs3aBucketName'+  -> Val Text -- ^ 'ittrs3aKey'+  -> Val Text -- ^ 'ittrs3aRoleArn'+  -> IoTTopicRuleS3Action+ioTTopicRuleS3Action bucketNamearg keyarg roleArnarg =+  IoTTopicRuleS3Action+  { _ioTTopicRuleS3ActionBucketName = bucketNamearg+  , _ioTTopicRuleS3ActionKey = keyarg+  , _ioTTopicRuleS3ActionRoleArn = roleArnarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-s3.html#cfn-iot-s3-bucketname+ittrs3aBucketName :: Lens' IoTTopicRuleS3Action (Val Text)+ittrs3aBucketName = lens _ioTTopicRuleS3ActionBucketName (\s a -> s { _ioTTopicRuleS3ActionBucketName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-s3.html#cfn-iot-s3-key+ittrs3aKey :: Lens' IoTTopicRuleS3Action (Val Text)+ittrs3aKey = lens _ioTTopicRuleS3ActionKey (\s a -> s { _ioTTopicRuleS3ActionKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-s3.html#cfn-iot-s3-rolearn+ittrs3aRoleArn :: Lens' IoTTopicRuleS3Action (Val Text)+ittrs3aRoleArn = lens _ioTTopicRuleS3ActionRoleArn (\s a -> s { _ioTTopicRuleS3ActionRoleArn = a })
+ library-gen/Stratosphere/ResourceProperties/IoTTopicRuleSnsAction.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sns.html++module Stratosphere.ResourceProperties.IoTTopicRuleSnsAction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTTopicRuleSnsAction. See+-- | 'ioTTopicRuleSnsAction' for a more convenient constructor.+data IoTTopicRuleSnsAction =+  IoTTopicRuleSnsAction+  { _ioTTopicRuleSnsActionMessageFormat :: Maybe (Val Text)+  , _ioTTopicRuleSnsActionRoleArn :: Val Text+  , _ioTTopicRuleSnsActionTargetArn :: Val Text+  } deriving (Show, Generic)++instance ToJSON IoTTopicRuleSnsAction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++instance FromJSON IoTTopicRuleSnsAction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++-- | Constructor for 'IoTTopicRuleSnsAction' containing required fields as+-- | arguments.+ioTTopicRuleSnsAction+  :: Val Text -- ^ 'ittrsnaRoleArn'+  -> Val Text -- ^ 'ittrsnaTargetArn'+  -> IoTTopicRuleSnsAction+ioTTopicRuleSnsAction roleArnarg targetArnarg =+  IoTTopicRuleSnsAction+  { _ioTTopicRuleSnsActionMessageFormat = Nothing+  , _ioTTopicRuleSnsActionRoleArn = roleArnarg+  , _ioTTopicRuleSnsActionTargetArn = targetArnarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sns.html#cfn-iot-sns-snsaction+ittrsnaMessageFormat :: Lens' IoTTopicRuleSnsAction (Maybe (Val Text))+ittrsnaMessageFormat = lens _ioTTopicRuleSnsActionMessageFormat (\s a -> s { _ioTTopicRuleSnsActionMessageFormat = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sns.html#cfn-iot-sns-rolearn+ittrsnaRoleArn :: Lens' IoTTopicRuleSnsAction (Val Text)+ittrsnaRoleArn = lens _ioTTopicRuleSnsActionRoleArn (\s a -> s { _ioTTopicRuleSnsActionRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sns.html#cfn-iot-sns-targetarn+ittrsnaTargetArn :: Lens' IoTTopicRuleSnsAction (Val Text)+ittrsnaTargetArn = lens _ioTTopicRuleSnsActionTargetArn (\s a -> s { _ioTTopicRuleSnsActionTargetArn = a })
+ library-gen/Stratosphere/ResourceProperties/IoTTopicRuleSqsAction.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sqs.html++module Stratosphere.ResourceProperties.IoTTopicRuleSqsAction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTTopicRuleSqsAction. See+-- | 'ioTTopicRuleSqsAction' for a more convenient constructor.+data IoTTopicRuleSqsAction =+  IoTTopicRuleSqsAction+  { _ioTTopicRuleSqsActionQueueUrl :: Val Text+  , _ioTTopicRuleSqsActionRoleArn :: Val Text+  , _ioTTopicRuleSqsActionUseBase64 :: Maybe (Val Bool')+  } deriving (Show, Generic)++instance ToJSON IoTTopicRuleSqsAction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++instance FromJSON IoTTopicRuleSqsAction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++-- | Constructor for 'IoTTopicRuleSqsAction' containing required fields as+-- | arguments.+ioTTopicRuleSqsAction+  :: Val Text -- ^ 'ittrsqaQueueUrl'+  -> Val Text -- ^ 'ittrsqaRoleArn'+  -> IoTTopicRuleSqsAction+ioTTopicRuleSqsAction queueUrlarg roleArnarg =+  IoTTopicRuleSqsAction+  { _ioTTopicRuleSqsActionQueueUrl = queueUrlarg+  , _ioTTopicRuleSqsActionRoleArn = roleArnarg+  , _ioTTopicRuleSqsActionUseBase64 = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sqs.html#cfn-iot-sqs-queueurl+ittrsqaQueueUrl :: Lens' IoTTopicRuleSqsAction (Val Text)+ittrsqaQueueUrl = lens _ioTTopicRuleSqsActionQueueUrl (\s a -> s { _ioTTopicRuleSqsActionQueueUrl = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sqs.html#cfn-iot-sqs-rolearn+ittrsqaRoleArn :: Lens' IoTTopicRuleSqsAction (Val Text)+ittrsqaRoleArn = lens _ioTTopicRuleSqsActionRoleArn (\s a -> s { _ioTTopicRuleSqsActionRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-sqs.html#cfn-iot-sqs-usebase64+ittrsqaUseBase64 :: Lens' IoTTopicRuleSqsAction (Maybe (Val Bool'))+ittrsqaUseBase64 = lens _ioTTopicRuleSqsActionUseBase64 (\s a -> s { _ioTTopicRuleSqsActionUseBase64 = a })
+ library-gen/Stratosphere/ResourceProperties/IoTTopicRuleTopicRulePayload.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrulepayload.html++module Stratosphere.ResourceProperties.IoTTopicRuleTopicRulePayload where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.IoTTopicRuleAction++-- | Full data type definition for IoTTopicRuleTopicRulePayload. See+-- | 'ioTTopicRuleTopicRulePayload' for a more convenient constructor.+data IoTTopicRuleTopicRulePayload =+  IoTTopicRuleTopicRulePayload+  { _ioTTopicRuleTopicRulePayloadActions :: [IoTTopicRuleAction]+  , _ioTTopicRuleTopicRulePayloadAwsIotSqlVersion :: Maybe (Val Text)+  , _ioTTopicRuleTopicRulePayloadDescription :: Maybe (Val Text)+  , _ioTTopicRuleTopicRulePayloadRuleDisabled :: Val Bool'+  , _ioTTopicRuleTopicRulePayloadSql :: Val Text+  } deriving (Show, Generic)++instance ToJSON IoTTopicRuleTopicRulePayload where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++instance FromJSON IoTTopicRuleTopicRulePayload where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++-- | Constructor for 'IoTTopicRuleTopicRulePayload' containing required fields+-- | as arguments.+ioTTopicRuleTopicRulePayload+  :: [IoTTopicRuleAction] -- ^ 'ittrtrpActions'+  -> Val Bool' -- ^ 'ittrtrpRuleDisabled'+  -> Val Text -- ^ 'ittrtrpSql'+  -> IoTTopicRuleTopicRulePayload+ioTTopicRuleTopicRulePayload actionsarg ruleDisabledarg sqlarg =+  IoTTopicRuleTopicRulePayload+  { _ioTTopicRuleTopicRulePayloadActions = actionsarg+  , _ioTTopicRuleTopicRulePayloadAwsIotSqlVersion = Nothing+  , _ioTTopicRuleTopicRulePayloadDescription = Nothing+  , _ioTTopicRuleTopicRulePayloadRuleDisabled = ruleDisabledarg+  , _ioTTopicRuleTopicRulePayloadSql = sqlarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrulepayload.html#cfn-iot-topicrulepayload-actions+ittrtrpActions :: Lens' IoTTopicRuleTopicRulePayload [IoTTopicRuleAction]+ittrtrpActions = lens _ioTTopicRuleTopicRulePayloadActions (\s a -> s { _ioTTopicRuleTopicRulePayloadActions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrulepayload.html#cfn-iot-topicrulepayload-awsiotsqlversion+ittrtrpAwsIotSqlVersion :: Lens' IoTTopicRuleTopicRulePayload (Maybe (Val Text))+ittrtrpAwsIotSqlVersion = lens _ioTTopicRuleTopicRulePayloadAwsIotSqlVersion (\s a -> s { _ioTTopicRuleTopicRulePayloadAwsIotSqlVersion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrulepayload.html#cfn-iot-topicrulepayload-description+ittrtrpDescription :: Lens' IoTTopicRuleTopicRulePayload (Maybe (Val Text))+ittrtrpDescription = lens _ioTTopicRuleTopicRulePayloadDescription (\s a -> s { _ioTTopicRuleTopicRulePayloadDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrulepayload.html#cfn-iot-topicrulepayload-ruledisabled+ittrtrpRuleDisabled :: Lens' IoTTopicRuleTopicRulePayload (Val Bool')+ittrtrpRuleDisabled = lens _ioTTopicRuleTopicRulePayloadRuleDisabled (\s a -> s { _ioTTopicRuleTopicRulePayloadRuleDisabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iot-topicrulepayload.html#cfn-iot-topicrulepayload-sql+ittrtrpSql :: Lens' IoTTopicRuleTopicRulePayload (Val Text)+ittrtrpSql = lens _ioTTopicRuleTopicRulePayloadSql (\s a -> s { _ioTTopicRuleTopicRulePayloadSql = a })
− library-gen/Stratosphere/ResourceProperties/KinesisFirehoseBufferingHints.hs
@@ -1,59 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | BufferingHints is a property of the Amazon Kinesis Firehose--- DeliveryStream that specifies how Amazon Kinesis Firehose (Firehose)--- buffers incoming data while delivering it to the destination. The first--- buffer condition that is satisfied triggers Firehose to deliver the data.--module Stratosphere.ResourceProperties.KinesisFirehoseBufferingHints where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for KinesisFirehoseBufferingHints. See--- 'kinesisFirehoseBufferingHints' for a more convenient constructor.-data KinesisFirehoseBufferingHints =-  KinesisFirehoseBufferingHints-  { _kinesisFirehoseBufferingHintsIntervalInSeconds :: Val Integer'-  , _kinesisFirehoseBufferingHintsSizeInMBs :: Val Integer'-  } deriving (Show, Generic)--instance ToJSON KinesisFirehoseBufferingHints where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }--instance FromJSON KinesisFirehoseBufferingHints where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }---- | Constructor for 'KinesisFirehoseBufferingHints' containing required--- fields as arguments.-kinesisFirehoseBufferingHints-  :: Val Integer' -- ^ 'kfbhIntervalInSeconds'-  -> Val Integer' -- ^ 'kfbhSizeInMBs'-  -> KinesisFirehoseBufferingHints-kinesisFirehoseBufferingHints intervalInSecondsarg sizeInMBsarg =-  KinesisFirehoseBufferingHints-  { _kinesisFirehoseBufferingHintsIntervalInSeconds = intervalInSecondsarg-  , _kinesisFirehoseBufferingHintsSizeInMBs = sizeInMBsarg-  }---- | The length of time, in seconds, that Firehose buffers incoming data--- before delivering it to the destination. The default value is 300. The--- minimum value is 60. The maximum value 900.-kfbhIntervalInSeconds :: Lens' KinesisFirehoseBufferingHints (Val Integer')-kfbhIntervalInSeconds = lens _kinesisFirehoseBufferingHintsIntervalInSeconds (\s a -> s { _kinesisFirehoseBufferingHintsIntervalInSeconds = a })---- | The size of the buffer, in MBs, that Firehose uses for incoming data--- before delivering it to the destination. The default value is 5. The--- minimum value is 1. The maximum value is 128. We recommend setting--- SizeInMBs to a value greater than the amount of data you typically ingest--- into the delivery stream in 10 seconds. For example, if you typically--- ingest data at 1 MB/sec set SizeInMBs to be 10 MB or higher.-kfbhSizeInMBs :: Lens' KinesisFirehoseBufferingHints (Val Integer')-kfbhSizeInMBs = lens _kinesisFirehoseBufferingHintsSizeInMBs (\s a -> s { _kinesisFirehoseBufferingHintsSizeInMBs = a })
− library-gen/Stratosphere/ResourceProperties/KinesisFirehoseCloudWatchLoggingOptions.hs
@@ -1,61 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | CloudWatchLoggingOptions is a property of the Amazon Kinesis Firehose--- DeliveryStream ElasticsearchDestinationConfiguration, Amazon Kinesis--- Firehose DeliveryStream RedshiftDestinationConfiguration, and Amazon--- Kinesis Firehose DeliveryStream S3DestinationConfiguration properties that--- specifies Amazon CloudWatch Logs (CloudWatch Logs) logging options that--- Amazon Kinesis Firehose (Firehose) uses for the delivery stream.--module Stratosphere.ResourceProperties.KinesisFirehoseCloudWatchLoggingOptions where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for KinesisFirehoseCloudWatchLoggingOptions.--- See 'kinesisFirehoseCloudWatchLoggingOptions' for a more convenient--- constructor.-data KinesisFirehoseCloudWatchLoggingOptions =-  KinesisFirehoseCloudWatchLoggingOptions-  { _kinesisFirehoseCloudWatchLoggingOptionsEnabled :: Maybe (Val Bool')-  , _kinesisFirehoseCloudWatchLoggingOptionsLogGroupName :: Maybe (Val Text)-  , _kinesisFirehoseCloudWatchLoggingOptionsLogStreamName :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON KinesisFirehoseCloudWatchLoggingOptions where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 40, omitNothingFields = True }--instance FromJSON KinesisFirehoseCloudWatchLoggingOptions where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 40, omitNothingFields = True }---- | Constructor for 'KinesisFirehoseCloudWatchLoggingOptions' containing--- required fields as arguments.-kinesisFirehoseCloudWatchLoggingOptions-  :: KinesisFirehoseCloudWatchLoggingOptions-kinesisFirehoseCloudWatchLoggingOptions  =-  KinesisFirehoseCloudWatchLoggingOptions-  { _kinesisFirehoseCloudWatchLoggingOptionsEnabled = Nothing-  , _kinesisFirehoseCloudWatchLoggingOptionsLogGroupName = Nothing-  , _kinesisFirehoseCloudWatchLoggingOptionsLogStreamName = Nothing-  }---- | Indicates whether CloudWatch Logs logging is enabled.-kfcwloEnabled :: Lens' KinesisFirehoseCloudWatchLoggingOptions (Maybe (Val Bool'))-kfcwloEnabled = lens _kinesisFirehoseCloudWatchLoggingOptionsEnabled (\s a -> s { _kinesisFirehoseCloudWatchLoggingOptionsEnabled = a })---- | The name of the CloudWatch Logs log group that contains the log stream--- that Firehose will use.-kfcwloLogGroupName :: Lens' KinesisFirehoseCloudWatchLoggingOptions (Maybe (Val Text))-kfcwloLogGroupName = lens _kinesisFirehoseCloudWatchLoggingOptionsLogGroupName (\s a -> s { _kinesisFirehoseCloudWatchLoggingOptionsLogGroupName = a })---- | The name of the CloudWatch Logs log stream that Firehose uses to send--- logs about data delivery.-kfcwloLogStreamName :: Lens' KinesisFirehoseCloudWatchLoggingOptions (Maybe (Val Text))-kfcwloLogStreamName = lens _kinesisFirehoseCloudWatchLoggingOptionsLogStreamName (\s a -> s { _kinesisFirehoseCloudWatchLoggingOptionsLogStreamName = a })
+ library-gen/Stratosphere/ResourceProperties/KinesisFirehoseDeliveryStreamBufferingHints.hs view
@@ -0,0 +1,51 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-bufferinghints.html++module Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamBufferingHints where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | KinesisFirehoseDeliveryStreamBufferingHints. See+-- | 'kinesisFirehoseDeliveryStreamBufferingHints' for a more convenient+-- | constructor.+data KinesisFirehoseDeliveryStreamBufferingHints =+  KinesisFirehoseDeliveryStreamBufferingHints+  { _kinesisFirehoseDeliveryStreamBufferingHintsIntervalInSeconds :: Val Integer'+  , _kinesisFirehoseDeliveryStreamBufferingHintsSizeInMBs :: Val Integer'+  } deriving (Show, Generic)++instance ToJSON KinesisFirehoseDeliveryStreamBufferingHints where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 44, omitNothingFields = True }++instance FromJSON KinesisFirehoseDeliveryStreamBufferingHints where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 44, omitNothingFields = True }++-- | Constructor for 'KinesisFirehoseDeliveryStreamBufferingHints' containing+-- | required fields as arguments.+kinesisFirehoseDeliveryStreamBufferingHints+  :: Val Integer' -- ^ 'kfdsbhIntervalInSeconds'+  -> Val Integer' -- ^ 'kfdsbhSizeInMBs'+  -> KinesisFirehoseDeliveryStreamBufferingHints+kinesisFirehoseDeliveryStreamBufferingHints intervalInSecondsarg sizeInMBsarg =+  KinesisFirehoseDeliveryStreamBufferingHints+  { _kinesisFirehoseDeliveryStreamBufferingHintsIntervalInSeconds = intervalInSecondsarg+  , _kinesisFirehoseDeliveryStreamBufferingHintsSizeInMBs = sizeInMBsarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-bufferinghints.html#cfn-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-bufferinghints-intervalinseconds+kfdsbhIntervalInSeconds :: Lens' KinesisFirehoseDeliveryStreamBufferingHints (Val Integer')+kfdsbhIntervalInSeconds = lens _kinesisFirehoseDeliveryStreamBufferingHintsIntervalInSeconds (\s a -> s { _kinesisFirehoseDeliveryStreamBufferingHintsIntervalInSeconds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-bufferinghints.html#cfn-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-bufferinghints-sizeinmbs+kfdsbhSizeInMBs :: Lens' KinesisFirehoseDeliveryStreamBufferingHints (Val Integer')+kfdsbhSizeInMBs = lens _kinesisFirehoseDeliveryStreamBufferingHintsSizeInMBs (\s a -> s { _kinesisFirehoseDeliveryStreamBufferingHintsSizeInMBs = a })
+ library-gen/Stratosphere/ResourceProperties/KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-destination-cloudwatchloggingoptions.html++module Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions. See+-- | 'kinesisFirehoseDeliveryStreamCloudWatchLoggingOptions' for a more+-- | convenient constructor.+data KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions =+  KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions+  { _kinesisFirehoseDeliveryStreamCloudWatchLoggingOptionsEnabled :: Maybe (Val Bool')+  , _kinesisFirehoseDeliveryStreamCloudWatchLoggingOptionsLogGroupName :: Maybe (Val Text)+  , _kinesisFirehoseDeliveryStreamCloudWatchLoggingOptionsLogStreamName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 54, omitNothingFields = True }++instance FromJSON KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 54, omitNothingFields = True }++-- | Constructor for 'KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions'+-- | containing required fields as arguments.+kinesisFirehoseDeliveryStreamCloudWatchLoggingOptions+  :: KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions+kinesisFirehoseDeliveryStreamCloudWatchLoggingOptions  =+  KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions+  { _kinesisFirehoseDeliveryStreamCloudWatchLoggingOptionsEnabled = Nothing+  , _kinesisFirehoseDeliveryStreamCloudWatchLoggingOptionsLogGroupName = Nothing+  , _kinesisFirehoseDeliveryStreamCloudWatchLoggingOptionsLogStreamName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-destination-cloudwatchloggingoptions.html#cfn-kinesisfirehose-kinesisdeliverystream-destination-cloudwatchloggingoptions-enabled+kfdscwloEnabled :: Lens' KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions (Maybe (Val Bool'))+kfdscwloEnabled = lens _kinesisFirehoseDeliveryStreamCloudWatchLoggingOptionsEnabled (\s a -> s { _kinesisFirehoseDeliveryStreamCloudWatchLoggingOptionsEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-destination-cloudwatchloggingoptions.html#cfn-kinesisfirehose-kinesisdeliverystream-destination-cloudwatchloggingoptions-loggroupname+kfdscwloLogGroupName :: Lens' KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions (Maybe (Val Text))+kfdscwloLogGroupName = lens _kinesisFirehoseDeliveryStreamCloudWatchLoggingOptionsLogGroupName (\s a -> s { _kinesisFirehoseDeliveryStreamCloudWatchLoggingOptionsLogGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-destination-cloudwatchloggingoptions.html#cfn-kinesisfirehose-kinesisdeliverystream-destination-cloudwatchloggingoptions-logstreamname+kfdscwloLogStreamName :: Lens' KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions (Maybe (Val Text))+kfdscwloLogStreamName = lens _kinesisFirehoseDeliveryStreamCloudWatchLoggingOptionsLogStreamName (\s a -> s { _kinesisFirehoseDeliveryStreamCloudWatchLoggingOptionsLogStreamName = a })
+ library-gen/Stratosphere/ResourceProperties/KinesisFirehoseDeliveryStreamCopyCommand.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration-copycommand.html++module Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamCopyCommand where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for KinesisFirehoseDeliveryStreamCopyCommand.+-- | See 'kinesisFirehoseDeliveryStreamCopyCommand' for a more convenient+-- | constructor.+data KinesisFirehoseDeliveryStreamCopyCommand =+  KinesisFirehoseDeliveryStreamCopyCommand+  { _kinesisFirehoseDeliveryStreamCopyCommandCopyOptions :: Maybe (Val Text)+  , _kinesisFirehoseDeliveryStreamCopyCommandDataTableColumns :: Maybe (Val Text)+  , _kinesisFirehoseDeliveryStreamCopyCommandDataTableName :: Val Text+  } deriving (Show, Generic)++instance ToJSON KinesisFirehoseDeliveryStreamCopyCommand where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++instance FromJSON KinesisFirehoseDeliveryStreamCopyCommand where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++-- | Constructor for 'KinesisFirehoseDeliveryStreamCopyCommand' containing+-- | required fields as arguments.+kinesisFirehoseDeliveryStreamCopyCommand+  :: Val Text -- ^ 'kfdsccDataTableName'+  -> KinesisFirehoseDeliveryStreamCopyCommand+kinesisFirehoseDeliveryStreamCopyCommand dataTableNamearg =+  KinesisFirehoseDeliveryStreamCopyCommand+  { _kinesisFirehoseDeliveryStreamCopyCommandCopyOptions = Nothing+  , _kinesisFirehoseDeliveryStreamCopyCommandDataTableColumns = Nothing+  , _kinesisFirehoseDeliveryStreamCopyCommandDataTableName = dataTableNamearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration-copycommand.html#cfn-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration-copycommand-copyoptions+kfdsccCopyOptions :: Lens' KinesisFirehoseDeliveryStreamCopyCommand (Maybe (Val Text))+kfdsccCopyOptions = lens _kinesisFirehoseDeliveryStreamCopyCommandCopyOptions (\s a -> s { _kinesisFirehoseDeliveryStreamCopyCommandCopyOptions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration-copycommand.html#cfn-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration-copycommand-datatablecolumns+kfdsccDataTableColumns :: Lens' KinesisFirehoseDeliveryStreamCopyCommand (Maybe (Val Text))+kfdsccDataTableColumns = lens _kinesisFirehoseDeliveryStreamCopyCommandDataTableColumns (\s a -> s { _kinesisFirehoseDeliveryStreamCopyCommandDataTableColumns = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration-copycommand.html#cfn-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration-copycommand-datatablename+kfdsccDataTableName :: Lens' KinesisFirehoseDeliveryStreamCopyCommand (Val Text)+kfdsccDataTableName = lens _kinesisFirehoseDeliveryStreamCopyCommandDataTableName (\s a -> s { _kinesisFirehoseDeliveryStreamCopyCommandDataTableName = a })
+ library-gen/Stratosphere/ResourceProperties/KinesisFirehoseDeliveryStreamElasticsearchBufferingHints.hs view
@@ -0,0 +1,52 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration.html++module Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamElasticsearchBufferingHints where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | KinesisFirehoseDeliveryStreamElasticsearchBufferingHints. See+-- | 'kinesisFirehoseDeliveryStreamElasticsearchBufferingHints' for a more+-- | convenient constructor.+data KinesisFirehoseDeliveryStreamElasticsearchBufferingHints =+  KinesisFirehoseDeliveryStreamElasticsearchBufferingHints+  { _kinesisFirehoseDeliveryStreamElasticsearchBufferingHintsIntervalInSeconds :: Val Integer'+  , _kinesisFirehoseDeliveryStreamElasticsearchBufferingHintsSizeInMBs :: Val Integer'+  } deriving (Show, Generic)++instance ToJSON KinesisFirehoseDeliveryStreamElasticsearchBufferingHints where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 57, omitNothingFields = True }++instance FromJSON KinesisFirehoseDeliveryStreamElasticsearchBufferingHints where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 57, omitNothingFields = True }++-- | Constructor for+-- | 'KinesisFirehoseDeliveryStreamElasticsearchBufferingHints' containing+-- | required fields as arguments.+kinesisFirehoseDeliveryStreamElasticsearchBufferingHints+  :: Val Integer' -- ^ 'kfdsebhIntervalInSeconds'+  -> Val Integer' -- ^ 'kfdsebhSizeInMBs'+  -> KinesisFirehoseDeliveryStreamElasticsearchBufferingHints+kinesisFirehoseDeliveryStreamElasticsearchBufferingHints intervalInSecondsarg sizeInMBsarg =+  KinesisFirehoseDeliveryStreamElasticsearchBufferingHints+  { _kinesisFirehoseDeliveryStreamElasticsearchBufferingHintsIntervalInSeconds = intervalInSecondsarg+  , _kinesisFirehoseDeliveryStreamElasticsearchBufferingHintsSizeInMBs = sizeInMBsarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration-bufferinghints-intervalinseconds+kfdsebhIntervalInSeconds :: Lens' KinesisFirehoseDeliveryStreamElasticsearchBufferingHints (Val Integer')+kfdsebhIntervalInSeconds = lens _kinesisFirehoseDeliveryStreamElasticsearchBufferingHintsIntervalInSeconds (\s a -> s { _kinesisFirehoseDeliveryStreamElasticsearchBufferingHintsIntervalInSeconds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration-bufferinghints-sizeinmbs+kfdsebhSizeInMBs :: Lens' KinesisFirehoseDeliveryStreamElasticsearchBufferingHints (Val Integer')+kfdsebhSizeInMBs = lens _kinesisFirehoseDeliveryStreamElasticsearchBufferingHintsSizeInMBs (\s a -> s { _kinesisFirehoseDeliveryStreamElasticsearchBufferingHintsSizeInMBs = a })
+ library-gen/Stratosphere/ResourceProperties/KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration.hs view
@@ -0,0 +1,111 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration.html++module Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.Types+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamElasticsearchBufferingHints+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamElasticsearchRetryOptions+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamS3DestinationConfiguration++-- | Full data type definition for+-- | KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration. See+-- | 'kinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration' for+-- | a more convenient constructor.+data KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration =+  KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration+  { _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationBufferingHints :: KinesisFirehoseDeliveryStreamElasticsearchBufferingHints+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationCloudWatchLoggingOptions :: Maybe KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationDomainARN :: Val Text+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationIndexName :: Val Text+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationIndexRotationPeriod :: Val Text+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationRetryOptions :: KinesisFirehoseDeliveryStreamElasticsearchRetryOptions+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationRoleARN :: Val Text+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationS3BackupMode :: Val KinesisFirehoseElasticsearchS3BackupMode+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationS3Configuration :: KinesisFirehoseDeliveryStreamS3DestinationConfiguration+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationTypeName :: Val Text+  } deriving (Show, Generic)++instance ToJSON KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 67, omitNothingFields = True }++instance FromJSON KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 67, omitNothingFields = True }++-- | Constructor for+-- | 'KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration'+-- | containing required fields as arguments.+kinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration+  :: KinesisFirehoseDeliveryStreamElasticsearchBufferingHints -- ^ 'kfdsedcBufferingHints'+  -> Val Text -- ^ 'kfdsedcDomainARN'+  -> Val Text -- ^ 'kfdsedcIndexName'+  -> Val Text -- ^ 'kfdsedcIndexRotationPeriod'+  -> KinesisFirehoseDeliveryStreamElasticsearchRetryOptions -- ^ 'kfdsedcRetryOptions'+  -> Val Text -- ^ 'kfdsedcRoleARN'+  -> Val KinesisFirehoseElasticsearchS3BackupMode -- ^ 'kfdsedcS3BackupMode'+  -> KinesisFirehoseDeliveryStreamS3DestinationConfiguration -- ^ 'kfdsedcS3Configuration'+  -> Val Text -- ^ 'kfdsedcTypeName'+  -> KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration+kinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration bufferingHintsarg domainARNarg indexNamearg indexRotationPeriodarg retryOptionsarg roleARNarg s3BackupModearg s3Configurationarg typeNamearg =+  KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration+  { _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationBufferingHints = bufferingHintsarg+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationCloudWatchLoggingOptions = Nothing+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationDomainARN = domainARNarg+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationIndexName = indexNamearg+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationIndexRotationPeriod = indexRotationPeriodarg+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationRetryOptions = retryOptionsarg+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationRoleARN = roleARNarg+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationS3BackupMode = s3BackupModearg+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationS3Configuration = s3Configurationarg+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationTypeName = typeNamearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration-bufferinghints+kfdsedcBufferingHints :: Lens' KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration KinesisFirehoseDeliveryStreamElasticsearchBufferingHints+kfdsedcBufferingHints = lens _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationBufferingHints (\s a -> s { _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationBufferingHints = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration-cloudwatchloggingoptions+kfdsedcCloudWatchLoggingOptions :: Lens' KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration (Maybe KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions)+kfdsedcCloudWatchLoggingOptions = lens _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationCloudWatchLoggingOptions (\s a -> s { _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationCloudWatchLoggingOptions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration-domainarn+kfdsedcDomainARN :: Lens' KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration (Val Text)+kfdsedcDomainARN = lens _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationDomainARN (\s a -> s { _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationDomainARN = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration-indexname+kfdsedcIndexName :: Lens' KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration (Val Text)+kfdsedcIndexName = lens _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationIndexName (\s a -> s { _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationIndexName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration-indexrotationperiod+kfdsedcIndexRotationPeriod :: Lens' KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration (Val Text)+kfdsedcIndexRotationPeriod = lens _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationIndexRotationPeriod (\s a -> s { _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationIndexRotationPeriod = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration-retryoptions+kfdsedcRetryOptions :: Lens' KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration KinesisFirehoseDeliveryStreamElasticsearchRetryOptions+kfdsedcRetryOptions = lens _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationRetryOptions (\s a -> s { _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationRetryOptions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration-rolearn+kfdsedcRoleARN :: Lens' KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration (Val Text)+kfdsedcRoleARN = lens _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationRoleARN (\s a -> s { _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationRoleARN = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration-s3backupmode+kfdsedcS3BackupMode :: Lens' KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration (Val KinesisFirehoseElasticsearchS3BackupMode)+kfdsedcS3BackupMode = lens _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationS3BackupMode (\s a -> s { _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationS3BackupMode = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration-s3configuration+kfdsedcS3Configuration :: Lens' KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration KinesisFirehoseDeliveryStreamS3DestinationConfiguration+kfdsedcS3Configuration = lens _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationS3Configuration (\s a -> s { _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationS3Configuration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration-typename+kfdsedcTypeName :: Lens' KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration (Val Text)+kfdsedcTypeName = lens _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationTypeName (\s a -> s { _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfigurationTypeName = a })
+ library-gen/Stratosphere/ResourceProperties/KinesisFirehoseDeliveryStreamElasticsearchRetryOptions.hs view
@@ -0,0 +1,44 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration-retryoptions.html++module Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamElasticsearchRetryOptions where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | KinesisFirehoseDeliveryStreamElasticsearchRetryOptions. See+-- | 'kinesisFirehoseDeliveryStreamElasticsearchRetryOptions' for a more+-- | convenient constructor.+data KinesisFirehoseDeliveryStreamElasticsearchRetryOptions =+  KinesisFirehoseDeliveryStreamElasticsearchRetryOptions+  { _kinesisFirehoseDeliveryStreamElasticsearchRetryOptionsDurationInSeconds :: Val Integer'+  } deriving (Show, Generic)++instance ToJSON KinesisFirehoseDeliveryStreamElasticsearchRetryOptions where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 55, omitNothingFields = True }++instance FromJSON KinesisFirehoseDeliveryStreamElasticsearchRetryOptions where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 55, omitNothingFields = True }++-- | Constructor for 'KinesisFirehoseDeliveryStreamElasticsearchRetryOptions'+-- | containing required fields as arguments.+kinesisFirehoseDeliveryStreamElasticsearchRetryOptions+  :: Val Integer' -- ^ 'kfdseroDurationInSeconds'+  -> KinesisFirehoseDeliveryStreamElasticsearchRetryOptions+kinesisFirehoseDeliveryStreamElasticsearchRetryOptions durationInSecondsarg =+  KinesisFirehoseDeliveryStreamElasticsearchRetryOptions+  { _kinesisFirehoseDeliveryStreamElasticsearchRetryOptionsDurationInSeconds = durationInSecondsarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration-retryoptions.html#cfn-kinesisfirehose-kinesisdeliverystream-elasticsearchdestinationconfiguration-retryoptions-durationinseconds+kfdseroDurationInSeconds :: Lens' KinesisFirehoseDeliveryStreamElasticsearchRetryOptions (Val Integer')+kfdseroDurationInSeconds = lens _kinesisFirehoseDeliveryStreamElasticsearchRetryOptionsDurationInSeconds (\s a -> s { _kinesisFirehoseDeliveryStreamElasticsearchRetryOptionsDurationInSeconds = a })
+ library-gen/Stratosphere/ResourceProperties/KinesisFirehoseDeliveryStreamEncryptionConfiguration.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-encryptionconfiguration.html++module Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamEncryptionConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.Types+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamKMSEncryptionConfig++-- | Full data type definition for+-- | KinesisFirehoseDeliveryStreamEncryptionConfiguration. See+-- | 'kinesisFirehoseDeliveryStreamEncryptionConfiguration' for a more+-- | convenient constructor.+data KinesisFirehoseDeliveryStreamEncryptionConfiguration =+  KinesisFirehoseDeliveryStreamEncryptionConfiguration+  { _kinesisFirehoseDeliveryStreamEncryptionConfigurationKMSEncryptionConfig :: Maybe KinesisFirehoseDeliveryStreamKMSEncryptionConfig+  , _kinesisFirehoseDeliveryStreamEncryptionConfigurationNoEncryptionConfig :: Maybe (Val KinesisFirehoseNoEncryptionConfig)+  } deriving (Show, Generic)++instance ToJSON KinesisFirehoseDeliveryStreamEncryptionConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 53, omitNothingFields = True }++instance FromJSON KinesisFirehoseDeliveryStreamEncryptionConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 53, omitNothingFields = True }++-- | Constructor for 'KinesisFirehoseDeliveryStreamEncryptionConfiguration'+-- | containing required fields as arguments.+kinesisFirehoseDeliveryStreamEncryptionConfiguration+  :: KinesisFirehoseDeliveryStreamEncryptionConfiguration+kinesisFirehoseDeliveryStreamEncryptionConfiguration  =+  KinesisFirehoseDeliveryStreamEncryptionConfiguration+  { _kinesisFirehoseDeliveryStreamEncryptionConfigurationKMSEncryptionConfig = Nothing+  , _kinesisFirehoseDeliveryStreamEncryptionConfigurationNoEncryptionConfig = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-encryptionconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-encryptionconfiguration-kmsencryptionconfig+kfdsecKMSEncryptionConfig :: Lens' KinesisFirehoseDeliveryStreamEncryptionConfiguration (Maybe KinesisFirehoseDeliveryStreamKMSEncryptionConfig)+kfdsecKMSEncryptionConfig = lens _kinesisFirehoseDeliveryStreamEncryptionConfigurationKMSEncryptionConfig (\s a -> s { _kinesisFirehoseDeliveryStreamEncryptionConfigurationKMSEncryptionConfig = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-encryptionconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-encryptionconfiguration-noencryptionconfig+kfdsecNoEncryptionConfig :: Lens' KinesisFirehoseDeliveryStreamEncryptionConfiguration (Maybe (Val KinesisFirehoseNoEncryptionConfig))+kfdsecNoEncryptionConfig = lens _kinesisFirehoseDeliveryStreamEncryptionConfigurationNoEncryptionConfig (\s a -> s { _kinesisFirehoseDeliveryStreamEncryptionConfigurationNoEncryptionConfig = a })
+ library-gen/Stratosphere/ResourceProperties/KinesisFirehoseDeliveryStreamKMSEncryptionConfig.hs view
@@ -0,0 +1,44 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-encryptionconfiguration-kmsencryptionconfig.html++module Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamKMSEncryptionConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for+-- | KinesisFirehoseDeliveryStreamKMSEncryptionConfig. See+-- | 'kinesisFirehoseDeliveryStreamKMSEncryptionConfig' for a more convenient+-- | constructor.+data KinesisFirehoseDeliveryStreamKMSEncryptionConfig =+  KinesisFirehoseDeliveryStreamKMSEncryptionConfig+  { _kinesisFirehoseDeliveryStreamKMSEncryptionConfigAWSKMSKeyARN :: Val Text+  } deriving (Show, Generic)++instance ToJSON KinesisFirehoseDeliveryStreamKMSEncryptionConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 49, omitNothingFields = True }++instance FromJSON KinesisFirehoseDeliveryStreamKMSEncryptionConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 49, omitNothingFields = True }++-- | Constructor for 'KinesisFirehoseDeliveryStreamKMSEncryptionConfig'+-- | containing required fields as arguments.+kinesisFirehoseDeliveryStreamKMSEncryptionConfig+  :: Val Text -- ^ 'kfdskmsecAWSKMSKeyARN'+  -> KinesisFirehoseDeliveryStreamKMSEncryptionConfig+kinesisFirehoseDeliveryStreamKMSEncryptionConfig aWSKMSKeyARNarg =+  KinesisFirehoseDeliveryStreamKMSEncryptionConfig+  { _kinesisFirehoseDeliveryStreamKMSEncryptionConfigAWSKMSKeyARN = aWSKMSKeyARNarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-encryptionconfiguration-kmsencryptionconfig.html#cfn-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-encryptionconfiguration-kmsencryptionconfig-awskmskeyarn+kfdskmsecAWSKMSKeyARN :: Lens' KinesisFirehoseDeliveryStreamKMSEncryptionConfig (Val Text)+kfdskmsecAWSKMSKeyARN = lens _kinesisFirehoseDeliveryStreamKMSEncryptionConfigAWSKMSKeyARN (\s a -> s { _kinesisFirehoseDeliveryStreamKMSEncryptionConfigAWSKMSKeyARN = a })
+ library-gen/Stratosphere/ResourceProperties/KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration.hs view
@@ -0,0 +1,88 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration.html++module Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamCopyCommand+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamS3DestinationConfiguration++-- | Full data type definition for+-- | KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration. See+-- | 'kinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration' for a+-- | more convenient constructor.+data KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration =+  KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration+  { _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationCloudWatchLoggingOptions :: Maybe KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions+  , _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationClusterJDBCURL :: Val Text+  , _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationCopyCommand :: KinesisFirehoseDeliveryStreamCopyCommand+  , _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationPassword :: Val Text+  , _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationRoleARN :: Val Text+  , _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationS3Configuration :: KinesisFirehoseDeliveryStreamS3DestinationConfiguration+  , _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationUsername :: Val Text+  } deriving (Show, Generic)++instance ToJSON KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 62, omitNothingFields = True }++instance FromJSON KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 62, omitNothingFields = True }++-- | Constructor for+-- | 'KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration'+-- | containing required fields as arguments.+kinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration+  :: Val Text -- ^ 'kfdsrdcClusterJDBCURL'+  -> KinesisFirehoseDeliveryStreamCopyCommand -- ^ 'kfdsrdcCopyCommand'+  -> Val Text -- ^ 'kfdsrdcPassword'+  -> Val Text -- ^ 'kfdsrdcRoleARN'+  -> KinesisFirehoseDeliveryStreamS3DestinationConfiguration -- ^ 'kfdsrdcS3Configuration'+  -> Val Text -- ^ 'kfdsrdcUsername'+  -> KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration+kinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration clusterJDBCURLarg copyCommandarg passwordarg roleARNarg s3Configurationarg usernamearg =+  KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration+  { _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationCloudWatchLoggingOptions = Nothing+  , _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationClusterJDBCURL = clusterJDBCURLarg+  , _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationCopyCommand = copyCommandarg+  , _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationPassword = passwordarg+  , _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationRoleARN = roleARNarg+  , _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationS3Configuration = s3Configurationarg+  , _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationUsername = usernamearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration-cloudwatchloggingoptions+kfdsrdcCloudWatchLoggingOptions :: Lens' KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration (Maybe KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions)+kfdsrdcCloudWatchLoggingOptions = lens _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationCloudWatchLoggingOptions (\s a -> s { _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationCloudWatchLoggingOptions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration-clusterjdbcurl+kfdsrdcClusterJDBCURL :: Lens' KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration (Val Text)+kfdsrdcClusterJDBCURL = lens _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationClusterJDBCURL (\s a -> s { _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationClusterJDBCURL = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration-copycommand+kfdsrdcCopyCommand :: Lens' KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration KinesisFirehoseDeliveryStreamCopyCommand+kfdsrdcCopyCommand = lens _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationCopyCommand (\s a -> s { _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationCopyCommand = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration-password+kfdsrdcPassword :: Lens' KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration (Val Text)+kfdsrdcPassword = lens _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationPassword (\s a -> s { _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationPassword = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration-rolearn+kfdsrdcRoleARN :: Lens' KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration (Val Text)+kfdsrdcRoleARN = lens _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationRoleARN (\s a -> s { _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationRoleARN = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration-s3configuration+kfdsrdcS3Configuration :: Lens' KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration KinesisFirehoseDeliveryStreamS3DestinationConfiguration+kfdsrdcS3Configuration = lens _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationS3Configuration (\s a -> s { _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationS3Configuration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-redshiftdestinationconfiguration-usename+kfdsrdcUsername :: Lens' KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration (Val Text)+kfdsrdcUsername = lens _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationUsername (\s a -> s { _kinesisFirehoseDeliveryStreamRedshiftDestinationConfigurationUsername = a })
+ library-gen/Stratosphere/ResourceProperties/KinesisFirehoseDeliveryStreamS3DestinationConfiguration.hs view
@@ -0,0 +1,87 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration.html++module Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamS3DestinationConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.Types+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamBufferingHints+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamEncryptionConfiguration++-- | Full data type definition for+-- | KinesisFirehoseDeliveryStreamS3DestinationConfiguration. See+-- | 'kinesisFirehoseDeliveryStreamS3DestinationConfiguration' for a more+-- | convenient constructor.+data KinesisFirehoseDeliveryStreamS3DestinationConfiguration =+  KinesisFirehoseDeliveryStreamS3DestinationConfiguration+  { _kinesisFirehoseDeliveryStreamS3DestinationConfigurationBucketARN :: Val Text+  , _kinesisFirehoseDeliveryStreamS3DestinationConfigurationBufferingHints :: KinesisFirehoseDeliveryStreamBufferingHints+  , _kinesisFirehoseDeliveryStreamS3DestinationConfigurationCloudWatchLoggingOptions :: Maybe KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions+  , _kinesisFirehoseDeliveryStreamS3DestinationConfigurationCompressionFormat :: Val KinesisFirehoseS3CompressionFormat+  , _kinesisFirehoseDeliveryStreamS3DestinationConfigurationEncryptionConfiguration :: Maybe KinesisFirehoseDeliveryStreamEncryptionConfiguration+  , _kinesisFirehoseDeliveryStreamS3DestinationConfigurationPrefix :: Val Text+  , _kinesisFirehoseDeliveryStreamS3DestinationConfigurationRoleARN :: Val Text+  } deriving (Show, Generic)++instance ToJSON KinesisFirehoseDeliveryStreamS3DestinationConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 56, omitNothingFields = True }++instance FromJSON KinesisFirehoseDeliveryStreamS3DestinationConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 56, omitNothingFields = True }++-- | Constructor for 'KinesisFirehoseDeliveryStreamS3DestinationConfiguration'+-- | containing required fields as arguments.+kinesisFirehoseDeliveryStreamS3DestinationConfiguration+  :: Val Text -- ^ 'kfdssdcBucketARN'+  -> KinesisFirehoseDeliveryStreamBufferingHints -- ^ 'kfdssdcBufferingHints'+  -> Val KinesisFirehoseS3CompressionFormat -- ^ 'kfdssdcCompressionFormat'+  -> Val Text -- ^ 'kfdssdcPrefix'+  -> Val Text -- ^ 'kfdssdcRoleARN'+  -> KinesisFirehoseDeliveryStreamS3DestinationConfiguration+kinesisFirehoseDeliveryStreamS3DestinationConfiguration bucketARNarg bufferingHintsarg compressionFormatarg prefixarg roleARNarg =+  KinesisFirehoseDeliveryStreamS3DestinationConfiguration+  { _kinesisFirehoseDeliveryStreamS3DestinationConfigurationBucketARN = bucketARNarg+  , _kinesisFirehoseDeliveryStreamS3DestinationConfigurationBufferingHints = bufferingHintsarg+  , _kinesisFirehoseDeliveryStreamS3DestinationConfigurationCloudWatchLoggingOptions = Nothing+  , _kinesisFirehoseDeliveryStreamS3DestinationConfigurationCompressionFormat = compressionFormatarg+  , _kinesisFirehoseDeliveryStreamS3DestinationConfigurationEncryptionConfiguration = Nothing+  , _kinesisFirehoseDeliveryStreamS3DestinationConfigurationPrefix = prefixarg+  , _kinesisFirehoseDeliveryStreamS3DestinationConfigurationRoleARN = roleARNarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-bucketarn+kfdssdcBucketARN :: Lens' KinesisFirehoseDeliveryStreamS3DestinationConfiguration (Val Text)+kfdssdcBucketARN = lens _kinesisFirehoseDeliveryStreamS3DestinationConfigurationBucketARN (\s a -> s { _kinesisFirehoseDeliveryStreamS3DestinationConfigurationBucketARN = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-bufferinghints+kfdssdcBufferingHints :: Lens' KinesisFirehoseDeliveryStreamS3DestinationConfiguration KinesisFirehoseDeliveryStreamBufferingHints+kfdssdcBufferingHints = lens _kinesisFirehoseDeliveryStreamS3DestinationConfigurationBufferingHints (\s a -> s { _kinesisFirehoseDeliveryStreamS3DestinationConfigurationBufferingHints = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-cloudwatchloggingoptions+kfdssdcCloudWatchLoggingOptions :: Lens' KinesisFirehoseDeliveryStreamS3DestinationConfiguration (Maybe KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions)+kfdssdcCloudWatchLoggingOptions = lens _kinesisFirehoseDeliveryStreamS3DestinationConfigurationCloudWatchLoggingOptions (\s a -> s { _kinesisFirehoseDeliveryStreamS3DestinationConfigurationCloudWatchLoggingOptions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-compressionformat+kfdssdcCompressionFormat :: Lens' KinesisFirehoseDeliveryStreamS3DestinationConfiguration (Val KinesisFirehoseS3CompressionFormat)+kfdssdcCompressionFormat = lens _kinesisFirehoseDeliveryStreamS3DestinationConfigurationCompressionFormat (\s a -> s { _kinesisFirehoseDeliveryStreamS3DestinationConfigurationCompressionFormat = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-encryptionconfiguration+kfdssdcEncryptionConfiguration :: Lens' KinesisFirehoseDeliveryStreamS3DestinationConfiguration (Maybe KinesisFirehoseDeliveryStreamEncryptionConfiguration)+kfdssdcEncryptionConfiguration = lens _kinesisFirehoseDeliveryStreamS3DestinationConfigurationEncryptionConfiguration (\s a -> s { _kinesisFirehoseDeliveryStreamS3DestinationConfigurationEncryptionConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-prefix+kfdssdcPrefix :: Lens' KinesisFirehoseDeliveryStreamS3DestinationConfiguration (Val Text)+kfdssdcPrefix = lens _kinesisFirehoseDeliveryStreamS3DestinationConfigurationPrefix (\s a -> s { _kinesisFirehoseDeliveryStreamS3DestinationConfigurationPrefix = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration.html#cfn-kinesisfirehose-kinesisdeliverystream-s3destinationconfiguration-rolearn+kfdssdcRoleARN :: Lens' KinesisFirehoseDeliveryStreamS3DestinationConfiguration (Val Text)+kfdssdcRoleARN = lens _kinesisFirehoseDeliveryStreamS3DestinationConfigurationRoleARN (\s a -> s { _kinesisFirehoseDeliveryStreamS3DestinationConfigurationRoleARN = a })
− library-gen/Stratosphere/ResourceProperties/KinesisFirehoseElasticsearchDestinationConfiguration.hs
@@ -1,131 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | ElasticsearchDestinationConfiguration is a property of the--- AWS::KinesisFirehose::DeliveryStream resource that specifies an Amazon--- Elasticsearch Service (Amazon ES) domain that Amazon Kinesis Firehose--- (Firehose) delivers data to.--module Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchDestinationConfiguration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.KinesisFirehoseBufferingHints-import Stratosphere.ResourceProperties.KinesisFirehoseCloudWatchLoggingOptions-import Stratosphere.ResourceProperties.KinesisFirehoseS3DestinationConfiguration-import Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchRetryOptions-import Stratosphere.Types---- | Full data type definition for--- KinesisFirehoseElasticsearchDestinationConfiguration. See--- 'kinesisFirehoseElasticsearchDestinationConfiguration' for a more--- convenient constructor.-data KinesisFirehoseElasticsearchDestinationConfiguration =-  KinesisFirehoseElasticsearchDestinationConfiguration-  { _kinesisFirehoseElasticsearchDestinationConfigurationBufferingHints :: KinesisFirehoseBufferingHints-  , _kinesisFirehoseElasticsearchDestinationConfigurationCloudWatchLoggingOptions :: Maybe KinesisFirehoseCloudWatchLoggingOptions-  , _kinesisFirehoseElasticsearchDestinationConfigurationDomainARN :: Val Text-  , _kinesisFirehoseElasticsearchDestinationConfigurationIndexName :: Val Text-  , _kinesisFirehoseElasticsearchDestinationConfigurationIndexRotationPeriod :: Val Text-  , _kinesisFirehoseElasticsearchDestinationConfigurationRetryOptions :: Maybe KinesisFirehoseElasticsearchRetryOptions-  , _kinesisFirehoseElasticsearchDestinationConfigurationRoleARN :: Val Text-  , _kinesisFirehoseElasticsearchDestinationConfigurationS3BackupMode :: KinesisFirehoseElasticsearchS3BackupMode-  , _kinesisFirehoseElasticsearchDestinationConfigurationS3Configuration :: Maybe KinesisFirehoseS3DestinationConfiguration-  , _kinesisFirehoseElasticsearchDestinationConfigurationTypeName :: Val Text-  } deriving (Show, Generic)--instance ToJSON KinesisFirehoseElasticsearchDestinationConfiguration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 53, omitNothingFields = True }--instance FromJSON KinesisFirehoseElasticsearchDestinationConfiguration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 53, omitNothingFields = True }---- | Constructor for 'KinesisFirehoseElasticsearchDestinationConfiguration'--- containing required fields as arguments.-kinesisFirehoseElasticsearchDestinationConfiguration-  :: KinesisFirehoseBufferingHints -- ^ 'kfedcBufferingHints'-  -> Val Text -- ^ 'kfedcDomainARN'-  -> Val Text -- ^ 'kfedcIndexName'-  -> Val Text -- ^ 'kfedcIndexRotationPeriod'-  -> Val Text -- ^ 'kfedcRoleARN'-  -> KinesisFirehoseElasticsearchS3BackupMode -- ^ 'kfedcS3BackupMode'-  -> Val Text -- ^ 'kfedcTypeName'-  -> KinesisFirehoseElasticsearchDestinationConfiguration-kinesisFirehoseElasticsearchDestinationConfiguration bufferingHintsarg domainARNarg indexNamearg indexRotationPeriodarg roleARNarg s3BackupModearg typeNamearg =-  KinesisFirehoseElasticsearchDestinationConfiguration-  { _kinesisFirehoseElasticsearchDestinationConfigurationBufferingHints = bufferingHintsarg-  , _kinesisFirehoseElasticsearchDestinationConfigurationCloudWatchLoggingOptions = Nothing-  , _kinesisFirehoseElasticsearchDestinationConfigurationDomainARN = domainARNarg-  , _kinesisFirehoseElasticsearchDestinationConfigurationIndexName = indexNamearg-  , _kinesisFirehoseElasticsearchDestinationConfigurationIndexRotationPeriod = indexRotationPeriodarg-  , _kinesisFirehoseElasticsearchDestinationConfigurationRetryOptions = Nothing-  , _kinesisFirehoseElasticsearchDestinationConfigurationRoleARN = roleARNarg-  , _kinesisFirehoseElasticsearchDestinationConfigurationS3BackupMode = s3BackupModearg-  , _kinesisFirehoseElasticsearchDestinationConfigurationS3Configuration = Nothing-  , _kinesisFirehoseElasticsearchDestinationConfigurationTypeName = typeNamearg-  }---- | Configures how Firehose buffers incoming data while delivering it to the--- Amazon ES domain.-kfedcBufferingHints :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration KinesisFirehoseBufferingHints-kfedcBufferingHints = lens _kinesisFirehoseElasticsearchDestinationConfigurationBufferingHints (\s a -> s { _kinesisFirehoseElasticsearchDestinationConfigurationBufferingHints = a })---- | The Amazon CloudWatch Logs logging options for the delivery stream.-kfedcCloudWatchLoggingOptions :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Maybe KinesisFirehoseCloudWatchLoggingOptions)-kfedcCloudWatchLoggingOptions = lens _kinesisFirehoseElasticsearchDestinationConfigurationCloudWatchLoggingOptions (\s a -> s { _kinesisFirehoseElasticsearchDestinationConfigurationCloudWatchLoggingOptions = a })---- | The Amazon Resource Name (ARN) of the Amazon ES domain that Firehose--- delivers data to.-kfedcDomainARN :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Val Text)-kfedcDomainARN = lens _kinesisFirehoseElasticsearchDestinationConfigurationDomainARN (\s a -> s { _kinesisFirehoseElasticsearchDestinationConfigurationDomainARN = a })---- | The name of the Elasticsearch index to which Firehose adds data for--- indexing.-kfedcIndexName :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Val Text)-kfedcIndexName = lens _kinesisFirehoseElasticsearchDestinationConfigurationIndexName (\s a -> s { _kinesisFirehoseElasticsearchDestinationConfigurationIndexName = a })---- | The frequency of Elasticsearch index rotation. If you enable index--- rotation, Firehose appends a portion of the UTC arrival timestamp to the--- specified index name, and rotates the appended timestamp accordingly. For--- more information, see Index Rotation for the Amazon ES Destination in the--- Amazon Kinesis Firehose Developer Guide.-kfedcIndexRotationPeriod :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Val Text)-kfedcIndexRotationPeriod = lens _kinesisFirehoseElasticsearchDestinationConfigurationIndexRotationPeriod (\s a -> s { _kinesisFirehoseElasticsearchDestinationConfigurationIndexRotationPeriod = a })---- | The retry behavior when Firehose is unable to deliver data to Amazon ES.--- Type: Amazon Kinesis Firehose DeliveryStream--- ElasticsearchDestinationConfiguration RetryOptions Type: String-kfedcRetryOptions :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Maybe KinesisFirehoseElasticsearchRetryOptions)-kfedcRetryOptions = lens _kinesisFirehoseElasticsearchDestinationConfigurationRetryOptions (\s a -> s { _kinesisFirehoseElasticsearchDestinationConfigurationRetryOptions = a })---- | The ARN of the AWS Identity and Access Management (IAM) role that grants--- Firehose access to your S3 bucket, AWS KMS (if you enable data encryption),--- and Amazon CloudWatch Logs (if you enable logging). For more information,--- see Grant Firehose Access to an Amazon Elasticsearch Service Destination in--- the Amazon Kinesis Firehose Developer Guide.-kfedcRoleARN :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Val Text)-kfedcRoleARN = lens _kinesisFirehoseElasticsearchDestinationConfigurationRoleARN (\s a -> s { _kinesisFirehoseElasticsearchDestinationConfigurationRoleARN = a })---- | The condition under which Firehose delivers data to Amazon Simple Storage--- Service (Amazon S3). You can send Amazon S3 all documents (all data) or--- only the documents that Firehose could not deliver to the Amazon ES--- destination. For more information and valid values, see the S3BackupMode--- content for the ElasticsearchDestinationConfiguration data type in the--- Amazon Kinesis Firehose API Reference.-kfedcS3BackupMode :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration KinesisFirehoseElasticsearchS3BackupMode-kfedcS3BackupMode = lens _kinesisFirehoseElasticsearchDestinationConfigurationS3BackupMode (\s a -> s { _kinesisFirehoseElasticsearchDestinationConfigurationS3BackupMode = a })---- | The S3 bucket where Firehose backs up incoming data. Type: Amazon Kinesis--- Firehose DeliveryStream S3DestinationConfiguration Type: String-kfedcS3Configuration :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Maybe KinesisFirehoseS3DestinationConfiguration)-kfedcS3Configuration = lens _kinesisFirehoseElasticsearchDestinationConfigurationS3Configuration (\s a -> s { _kinesisFirehoseElasticsearchDestinationConfigurationS3Configuration = a })---- | The Elasticsearch type name that Amazon ES adds to documents when--- indexing data.-kfedcTypeName :: Lens' KinesisFirehoseElasticsearchDestinationConfiguration (Val Text)-kfedcTypeName = lens _kinesisFirehoseElasticsearchDestinationConfigurationTypeName (\s a -> s { _kinesisFirehoseElasticsearchDestinationConfigurationTypeName = a })
− library-gen/Stratosphere/ResourceProperties/KinesisFirehoseElasticsearchRetryOptions.hs
@@ -1,51 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | RetryOptions is a property of the Amazon Kinesis Firehose DeliveryStream--- ElasticsearchDestinationConfiguration property that configures the retry--- behavior when Amazon Kinesis Firehose (Firehose) can't deliver data to--- Amazon Elasticsearch Service (Amazon ES).--module Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchRetryOptions where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for KinesisFirehoseElasticsearchRetryOptions.--- See 'kinesisFirehoseElasticsearchRetryOptions' for a more convenient--- constructor.-data KinesisFirehoseElasticsearchRetryOptions =-  KinesisFirehoseElasticsearchRetryOptions-  { _kinesisFirehoseElasticsearchRetryOptionsDurationInSeconds :: Val Integer'-  } deriving (Show, Generic)--instance ToJSON KinesisFirehoseElasticsearchRetryOptions where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }--instance FromJSON KinesisFirehoseElasticsearchRetryOptions where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }---- | Constructor for 'KinesisFirehoseElasticsearchRetryOptions' containing--- required fields as arguments.-kinesisFirehoseElasticsearchRetryOptions-  :: Val Integer' -- ^ 'kferoDurationInSeconds'-  -> KinesisFirehoseElasticsearchRetryOptions-kinesisFirehoseElasticsearchRetryOptions durationInSecondsarg =-  KinesisFirehoseElasticsearchRetryOptions-  { _kinesisFirehoseElasticsearchRetryOptionsDurationInSeconds = durationInSecondsarg-  }---- | After an initial failure to deliver to Amazon ES, the total amount of--- time during which Firehose re-attempts delivery (including the first--- attempt). If Firehose can't deliver the data within the specified time, it--- writes the data to the backup S3 bucket. For valid values, see the--- DurationInSeconds content for the ElasticsearchRetryOptions data type in--- the Amazon Kinesis Firehose API Reference.-kferoDurationInSeconds :: Lens' KinesisFirehoseElasticsearchRetryOptions (Val Integer')-kferoDurationInSeconds = lens _kinesisFirehoseElasticsearchRetryOptionsDurationInSeconds (\s a -> s { _kinesisFirehoseElasticsearchRetryOptionsDurationInSeconds = a })
− library-gen/Stratosphere/ResourceProperties/KinesisFirehoseRedshiftCopyCommand.hs
@@ -1,60 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | CopyCommand is a property of the Amazon Kinesis Firehose DeliveryStream--- RedshiftDestinationConfiguration property that configures the Amazon--- Redshift COPY command that Amazon Kinesis Firehose (Firehose) uses to load--- data into an Amazon Redshift cluster from an S3 bucket.--module Stratosphere.ResourceProperties.KinesisFirehoseRedshiftCopyCommand where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for KinesisFirehoseRedshiftCopyCommand. See--- 'kinesisFirehoseRedshiftCopyCommand' for a more convenient constructor.-data KinesisFirehoseRedshiftCopyCommand =-  KinesisFirehoseRedshiftCopyCommand-  { _kinesisFirehoseRedshiftCopyCommandCopyOptions :: Maybe (Val Text)-  , _kinesisFirehoseRedshiftCopyCommandDataTableColumns :: Maybe (Val Text)-  , _kinesisFirehoseRedshiftCopyCommandDataTableName :: Val Text-  } deriving (Show, Generic)--instance ToJSON KinesisFirehoseRedshiftCopyCommand where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }--instance FromJSON KinesisFirehoseRedshiftCopyCommand where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }---- | Constructor for 'KinesisFirehoseRedshiftCopyCommand' containing required--- fields as arguments.-kinesisFirehoseRedshiftCopyCommand-  :: Val Text -- ^ 'kfrccDataTableName'-  -> KinesisFirehoseRedshiftCopyCommand-kinesisFirehoseRedshiftCopyCommand dataTableNamearg =-  KinesisFirehoseRedshiftCopyCommand-  { _kinesisFirehoseRedshiftCopyCommandCopyOptions = Nothing-  , _kinesisFirehoseRedshiftCopyCommandDataTableColumns = Nothing-  , _kinesisFirehoseRedshiftCopyCommandDataTableName = dataTableNamearg-  }---- | Parameters to use with the Amazon Redshift COPY command. For examples,--- see the CopyOptions content for the CopyCommand data type in the Amazon--- Kinesis Firehose API Reference.-kfrccCopyOptions :: Lens' KinesisFirehoseRedshiftCopyCommand (Maybe (Val Text))-kfrccCopyOptions = lens _kinesisFirehoseRedshiftCopyCommandCopyOptions (\s a -> s { _kinesisFirehoseRedshiftCopyCommandCopyOptions = a })---- | A comma-separated list of the column names in the table that Firehose--- copies data to.-kfrccDataTableColumns :: Lens' KinesisFirehoseRedshiftCopyCommand (Maybe (Val Text))-kfrccDataTableColumns = lens _kinesisFirehoseRedshiftCopyCommandDataTableColumns (\s a -> s { _kinesisFirehoseRedshiftCopyCommandDataTableColumns = a })---- | The name of the table where Firehose adds the copied data.-kfrccDataTableName :: Lens' KinesisFirehoseRedshiftCopyCommand (Val Text)-kfrccDataTableName = lens _kinesisFirehoseRedshiftCopyCommandDataTableName (\s a -> s { _kinesisFirehoseRedshiftCopyCommandDataTableName = a })
− library-gen/Stratosphere/ResourceProperties/KinesisFirehoseRedshiftDestinationConfiguration.hs
@@ -1,101 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | RedshiftDestinationConfiguration is a property of the--- AWS::KinesisFirehose::DeliveryStream resource that specifies an Amazon--- Redshift cluster to which Amazon Kinesis Firehose (Firehose) delivers data.--module Stratosphere.ResourceProperties.KinesisFirehoseRedshiftDestinationConfiguration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.KinesisFirehoseCloudWatchLoggingOptions-import Stratosphere.ResourceProperties.KinesisFirehoseRedshiftCopyCommand-import Stratosphere.ResourceProperties.KinesisFirehoseS3DestinationConfiguration---- | Full data type definition for--- KinesisFirehoseRedshiftDestinationConfiguration. See--- 'kinesisFirehoseRedshiftDestinationConfiguration' for a more convenient--- constructor.-data KinesisFirehoseRedshiftDestinationConfiguration =-  KinesisFirehoseRedshiftDestinationConfiguration-  { _kinesisFirehoseRedshiftDestinationConfigurationCloudWatchLoggingOptions :: Maybe KinesisFirehoseCloudWatchLoggingOptions-  , _kinesisFirehoseRedshiftDestinationConfigurationClusterJDBCURL :: Val Text-  , _kinesisFirehoseRedshiftDestinationConfigurationCopyCommand :: KinesisFirehoseRedshiftCopyCommand-  , _kinesisFirehoseRedshiftDestinationConfigurationPassword :: Val Text-  , _kinesisFirehoseRedshiftDestinationConfigurationRoleARN :: Val Text-  , _kinesisFirehoseRedshiftDestinationConfigurationS3Configuration :: KinesisFirehoseS3DestinationConfiguration-  , _kinesisFirehoseRedshiftDestinationConfigurationUsername :: Val Text-  } deriving (Show, Generic)--instance ToJSON KinesisFirehoseRedshiftDestinationConfiguration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 48, omitNothingFields = True }--instance FromJSON KinesisFirehoseRedshiftDestinationConfiguration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 48, omitNothingFields = True }---- | Constructor for 'KinesisFirehoseRedshiftDestinationConfiguration'--- containing required fields as arguments.-kinesisFirehoseRedshiftDestinationConfiguration-  :: Val Text -- ^ 'kfrdcClusterJDBCURL'-  -> KinesisFirehoseRedshiftCopyCommand -- ^ 'kfrdcCopyCommand'-  -> Val Text -- ^ 'kfrdcPassword'-  -> Val Text -- ^ 'kfrdcRoleARN'-  -> KinesisFirehoseS3DestinationConfiguration -- ^ 'kfrdcS3Configuration'-  -> Val Text -- ^ 'kfrdcUsername'-  -> KinesisFirehoseRedshiftDestinationConfiguration-kinesisFirehoseRedshiftDestinationConfiguration clusterJDBCURLarg copyCommandarg passwordarg roleARNarg s3Configurationarg usernamearg =-  KinesisFirehoseRedshiftDestinationConfiguration-  { _kinesisFirehoseRedshiftDestinationConfigurationCloudWatchLoggingOptions = Nothing-  , _kinesisFirehoseRedshiftDestinationConfigurationClusterJDBCURL = clusterJDBCURLarg-  , _kinesisFirehoseRedshiftDestinationConfigurationCopyCommand = copyCommandarg-  , _kinesisFirehoseRedshiftDestinationConfigurationPassword = passwordarg-  , _kinesisFirehoseRedshiftDestinationConfigurationRoleARN = roleARNarg-  , _kinesisFirehoseRedshiftDestinationConfigurationS3Configuration = s3Configurationarg-  , _kinesisFirehoseRedshiftDestinationConfigurationUsername = usernamearg-  }---- | The Amazon CloudWatch Logs logging options for the delivery stream.-kfrdcCloudWatchLoggingOptions :: Lens' KinesisFirehoseRedshiftDestinationConfiguration (Maybe KinesisFirehoseCloudWatchLoggingOptions)-kfrdcCloudWatchLoggingOptions = lens _kinesisFirehoseRedshiftDestinationConfigurationCloudWatchLoggingOptions (\s a -> s { _kinesisFirehoseRedshiftDestinationConfigurationCloudWatchLoggingOptions = a })---- | The connection string that Firehose uses to connect to the Amazon--- Redshift cluster.-kfrdcClusterJDBCURL :: Lens' KinesisFirehoseRedshiftDestinationConfiguration (Val Text)-kfrdcClusterJDBCURL = lens _kinesisFirehoseRedshiftDestinationConfigurationClusterJDBCURL (\s a -> s { _kinesisFirehoseRedshiftDestinationConfigurationClusterJDBCURL = a })---- | Configures the Amazon Redshift COPY command that Firehose uses to load--- data into the cluster from the S3 bucket.-kfrdcCopyCommand :: Lens' KinesisFirehoseRedshiftDestinationConfiguration KinesisFirehoseRedshiftCopyCommand-kfrdcCopyCommand = lens _kinesisFirehoseRedshiftDestinationConfigurationCopyCommand (\s a -> s { _kinesisFirehoseRedshiftDestinationConfigurationCopyCommand = a })---- | The password for the Amazon Redshift user that you specified in the--- Username property.-kfrdcPassword :: Lens' KinesisFirehoseRedshiftDestinationConfiguration (Val Text)-kfrdcPassword = lens _kinesisFirehoseRedshiftDestinationConfigurationPassword (\s a -> s { _kinesisFirehoseRedshiftDestinationConfigurationPassword = a })---- | The ARN of the AWS Identity and Access Management (IAM) role that grants--- Firehose access to your S3 bucket and AWS KMS (if you enable data--- encryption). For more information, see Grant Firehose Access to an Amazon--- Redshift Destination in the Amazon Kinesis Firehose Developer Guide.-kfrdcRoleARN :: Lens' KinesisFirehoseRedshiftDestinationConfiguration (Val Text)-kfrdcRoleARN = lens _kinesisFirehoseRedshiftDestinationConfigurationRoleARN (\s a -> s { _kinesisFirehoseRedshiftDestinationConfigurationRoleARN = a })---- | The S3 bucket where Firehose first delivers data. After the data is in--- the bucket, Firehose uses the COPY command to load the data into the Amazon--- Redshift cluster. For the S3 bucket's compression format, don't specify--- SNAPPY or ZIP because the Amazon Redshift COPY command doesn't support--- them.-kfrdcS3Configuration :: Lens' KinesisFirehoseRedshiftDestinationConfiguration KinesisFirehoseS3DestinationConfiguration-kfrdcS3Configuration = lens _kinesisFirehoseRedshiftDestinationConfigurationS3Configuration (\s a -> s { _kinesisFirehoseRedshiftDestinationConfigurationS3Configuration = a })---- | The Amazon Redshift user that has permission to access the Amazon--- Redshift cluster. This user must have INSERT privileges for copying data--- from the S3 bucket to the cluster.-kfrdcUsername :: Lens' KinesisFirehoseRedshiftDestinationConfiguration (Val Text)-kfrdcUsername = lens _kinesisFirehoseRedshiftDestinationConfigurationUsername (\s a -> s { _kinesisFirehoseRedshiftDestinationConfigurationUsername = a })
− library-gen/Stratosphere/ResourceProperties/KinesisFirehoseS3DestinationConfiguration.hs
@@ -1,101 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | S3DestinationConfiguration is a property of the--- AWS::KinesisFirehose::DeliveryStream resource and the Amazon Kinesis--- Firehose DeliveryStream ElasticsearchDestinationConfiguration and Amazon--- Kinesis Firehose DeliveryStream RedshiftDestinationConfiguration properties--- that specifies an Amazon Simple Storage Service (Amazon S3) destination to--- which Amazon Kinesis Firehose (Firehose) delivers data.--module Stratosphere.ResourceProperties.KinesisFirehoseS3DestinationConfiguration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.KinesisFirehoseBufferingHints-import Stratosphere.ResourceProperties.KinesisFirehoseCloudWatchLoggingOptions-import Stratosphere.ResourceProperties.KinesisFirehoseS3EncryptionConfiguration-import Stratosphere.Types---- | Full data type definition for KinesisFirehoseS3DestinationConfiguration.--- See 'kinesisFirehoseS3DestinationConfiguration' for a more convenient--- constructor.-data KinesisFirehoseS3DestinationConfiguration =-  KinesisFirehoseS3DestinationConfiguration-  { _kinesisFirehoseS3DestinationConfigurationBucketARN :: Val Text-  , _kinesisFirehoseS3DestinationConfigurationBufferingHints :: KinesisFirehoseBufferingHints-  , _kinesisFirehoseS3DestinationConfigurationCloudWatchLoggingOptions :: Maybe KinesisFirehoseCloudWatchLoggingOptions-  , _kinesisFirehoseS3DestinationConfigurationCompressionFormat :: KinesisFirehoseS3CompressionFormat-  , _kinesisFirehoseS3DestinationConfigurationEncryptionConfiguration :: Maybe KinesisFirehoseS3EncryptionConfiguration-  , _kinesisFirehoseS3DestinationConfigurationPrefix :: Val Text-  , _kinesisFirehoseS3DestinationConfigurationRoleARN :: Val Text-  } deriving (Show, Generic)--instance ToJSON KinesisFirehoseS3DestinationConfiguration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }--instance FromJSON KinesisFirehoseS3DestinationConfiguration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 42, omitNothingFields = True }---- | Constructor for 'KinesisFirehoseS3DestinationConfiguration' containing--- required fields as arguments.-kinesisFirehoseS3DestinationConfiguration-  :: Val Text -- ^ 'kfsdcBucketARN'-  -> KinesisFirehoseBufferingHints -- ^ 'kfsdcBufferingHints'-  -> KinesisFirehoseS3CompressionFormat -- ^ 'kfsdcCompressionFormat'-  -> Val Text -- ^ 'kfsdcPrefix'-  -> Val Text -- ^ 'kfsdcRoleARN'-  -> KinesisFirehoseS3DestinationConfiguration-kinesisFirehoseS3DestinationConfiguration bucketARNarg bufferingHintsarg compressionFormatarg prefixarg roleARNarg =-  KinesisFirehoseS3DestinationConfiguration-  { _kinesisFirehoseS3DestinationConfigurationBucketARN = bucketARNarg-  , _kinesisFirehoseS3DestinationConfigurationBufferingHints = bufferingHintsarg-  , _kinesisFirehoseS3DestinationConfigurationCloudWatchLoggingOptions = Nothing-  , _kinesisFirehoseS3DestinationConfigurationCompressionFormat = compressionFormatarg-  , _kinesisFirehoseS3DestinationConfigurationEncryptionConfiguration = Nothing-  , _kinesisFirehoseS3DestinationConfigurationPrefix = prefixarg-  , _kinesisFirehoseS3DestinationConfigurationRoleARN = roleARNarg-  }---- | The Amazon Resource Name (ARN) of the S3 bucket to send data to.-kfsdcBucketARN :: Lens' KinesisFirehoseS3DestinationConfiguration (Val Text)-kfsdcBucketARN = lens _kinesisFirehoseS3DestinationConfigurationBucketARN (\s a -> s { _kinesisFirehoseS3DestinationConfigurationBucketARN = a })---- | Configures how Firehose buffers incoming data while delivering it to the--- S3 bucket.-kfsdcBufferingHints :: Lens' KinesisFirehoseS3DestinationConfiguration KinesisFirehoseBufferingHints-kfsdcBufferingHints = lens _kinesisFirehoseS3DestinationConfigurationBufferingHints (\s a -> s { _kinesisFirehoseS3DestinationConfigurationBufferingHints = a })---- | The Amazon CloudWatch Logs logging options for the delivery stream.-kfsdcCloudWatchLoggingOptions :: Lens' KinesisFirehoseS3DestinationConfiguration (Maybe KinesisFirehoseCloudWatchLoggingOptions)-kfsdcCloudWatchLoggingOptions = lens _kinesisFirehoseS3DestinationConfigurationCloudWatchLoggingOptions (\s a -> s { _kinesisFirehoseS3DestinationConfigurationCloudWatchLoggingOptions = a })---- | The type of compression that Firehose uses to compress the data that it--- delivers to the S3 bucket. For valid values, see the CompressionFormat--- content for the S3DestinationConfiguration data type in the Amazon Kinesis--- Firehose API Reference.-kfsdcCompressionFormat :: Lens' KinesisFirehoseS3DestinationConfiguration KinesisFirehoseS3CompressionFormat-kfsdcCompressionFormat = lens _kinesisFirehoseS3DestinationConfigurationCompressionFormat (\s a -> s { _kinesisFirehoseS3DestinationConfigurationCompressionFormat = a })---- | Configures Amazon Simple Storage Service (Amazon S3) server-side--- encryption. Firehose uses AWS Key Management Service (AWS KMS) to encrypt--- the data that it delivers to your S3 bucket.-kfsdcEncryptionConfiguration :: Lens' KinesisFirehoseS3DestinationConfiguration (Maybe KinesisFirehoseS3EncryptionConfiguration)-kfsdcEncryptionConfiguration = lens _kinesisFirehoseS3DestinationConfigurationEncryptionConfiguration (\s a -> s { _kinesisFirehoseS3DestinationConfigurationEncryptionConfiguration = a })---- | A prefix that Firehose adds to the files that it delivers to the S3--- bucket. The prefix helps you identify the files that Firehose delivered.-kfsdcPrefix :: Lens' KinesisFirehoseS3DestinationConfiguration (Val Text)-kfsdcPrefix = lens _kinesisFirehoseS3DestinationConfigurationPrefix (\s a -> s { _kinesisFirehoseS3DestinationConfigurationPrefix = a })---- | The ARN of an AWS Identity and Access Management (IAM) role that grants--- Firehose access to your S3 bucket and AWS KMS (if you enable data--- encryption). For more information, see Grant Firehose Access to an Amazon--- S3 Destination in the Amazon Kinesis Firehose Developer Guide.-kfsdcRoleARN :: Lens' KinesisFirehoseS3DestinationConfiguration (Val Text)-kfsdcRoleARN = lens _kinesisFirehoseS3DestinationConfigurationRoleARN (\s a -> s { _kinesisFirehoseS3DestinationConfigurationRoleARN = a })
− library-gen/Stratosphere/ResourceProperties/KinesisFirehoseS3EncryptionConfiguration.hs
@@ -1,55 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | EncryptionConfiguration is a property of the Amazon Kinesis Firehose--- DeliveryStream S3DestinationConfiguration property that specifies the--- encryption settings that Amazon Kinesis Firehose (Firehose) uses when--- delivering data to Amazon Simple Storage Service (Amazon S3).--module Stratosphere.ResourceProperties.KinesisFirehoseS3EncryptionConfiguration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.KinesisFirehoseS3KMSEncryptionConfig-import Stratosphere.Types---- | Full data type definition for KinesisFirehoseS3EncryptionConfiguration.--- See 'kinesisFirehoseS3EncryptionConfiguration' for a more convenient--- constructor.-data KinesisFirehoseS3EncryptionConfiguration =-  KinesisFirehoseS3EncryptionConfiguration-  { _kinesisFirehoseS3EncryptionConfigurationKMSEncryptionConfig :: Maybe KinesisFirehoseS3KMSEncryptionConfig-  , _kinesisFirehoseS3EncryptionConfigurationNoEncryptionConfig :: Maybe KinesisFirehoseNoEncryptionConfig-  } deriving (Show, Generic)--instance ToJSON KinesisFirehoseS3EncryptionConfiguration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }--instance FromJSON KinesisFirehoseS3EncryptionConfiguration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }---- | Constructor for 'KinesisFirehoseS3EncryptionConfiguration' containing--- required fields as arguments.-kinesisFirehoseS3EncryptionConfiguration-  :: KinesisFirehoseS3EncryptionConfiguration-kinesisFirehoseS3EncryptionConfiguration  =-  KinesisFirehoseS3EncryptionConfiguration-  { _kinesisFirehoseS3EncryptionConfigurationKMSEncryptionConfig = Nothing-  , _kinesisFirehoseS3EncryptionConfigurationNoEncryptionConfig = Nothing-  }---- | The AWS Key Management Service (AWS KMS) encryption key that Amazon S3--- uses to encrypt your data.-kfsecKMSEncryptionConfig :: Lens' KinesisFirehoseS3EncryptionConfiguration (Maybe KinesisFirehoseS3KMSEncryptionConfig)-kfsecKMSEncryptionConfig = lens _kinesisFirehoseS3EncryptionConfigurationKMSEncryptionConfig (\s a -> s { _kinesisFirehoseS3EncryptionConfigurationKMSEncryptionConfig = a })---- | Disables encryption. For valid values, see the NoEncryptionConfig content--- for the EncryptionConfiguration data type in the Amazon Kinesis Firehose--- API Reference.-kfsecNoEncryptionConfig :: Lens' KinesisFirehoseS3EncryptionConfiguration (Maybe KinesisFirehoseNoEncryptionConfig)-kfsecNoEncryptionConfig = lens _kinesisFirehoseS3EncryptionConfigurationNoEncryptionConfig (\s a -> s { _kinesisFirehoseS3EncryptionConfigurationNoEncryptionConfig = a })
− library-gen/Stratosphere/ResourceProperties/KinesisFirehoseS3KMSEncryptionConfig.hs
@@ -1,48 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | KMSEncryptionConfig is a property of the Amazon Kinesis Firehose--- DeliveryStream S3DestinationConfiguration EncryptionConfiguration property--- that specifies the AWS Key Management Service (AWS KMS) encryption key that--- Amazon Simple Storage Service (Amazon S3) uses to encrypt data delivered by--- the Amazon Kinesis Firehose (Firehose) stream.--module Stratosphere.ResourceProperties.KinesisFirehoseS3KMSEncryptionConfig where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for KinesisFirehoseS3KMSEncryptionConfig. See--- 'kinesisFirehoseS3KMSEncryptionConfig' for a more convenient constructor.-data KinesisFirehoseS3KMSEncryptionConfig =-  KinesisFirehoseS3KMSEncryptionConfig-  { _kinesisFirehoseS3KMSEncryptionConfigAWSKMSKeyARN :: Val Text-  } deriving (Show, Generic)--instance ToJSON KinesisFirehoseS3KMSEncryptionConfig where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }--instance FromJSON KinesisFirehoseS3KMSEncryptionConfig where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }---- | Constructor for 'KinesisFirehoseS3KMSEncryptionConfig' containing--- required fields as arguments.-kinesisFirehoseS3KMSEncryptionConfig-  :: Val Text -- ^ 'kfskmsecAWSKMSKeyARN'-  -> KinesisFirehoseS3KMSEncryptionConfig-kinesisFirehoseS3KMSEncryptionConfig aWSKMSKeyARNarg =-  KinesisFirehoseS3KMSEncryptionConfig-  { _kinesisFirehoseS3KMSEncryptionConfigAWSKMSKeyARN = aWSKMSKeyARNarg-  }---- | The Amazon Resource Name (ARN) of the AWS KMS encryption key that Amazon--- S3 uses to encrypt data delivered by the Firehose stream. The key must--- belong to the same region as the destination S3 bucket.-kfskmsecAWSKMSKeyARN :: Lens' KinesisFirehoseS3KMSEncryptionConfig (Val Text)-kfskmsecAWSKMSKeyARN = lens _kinesisFirehoseS3KMSEncryptionConfigAWSKMSKeyARN (\s a -> s { _kinesisFirehoseS3KMSEncryptionConfigAWSKMSKeyARN = a })
− library-gen/Stratosphere/ResourceProperties/LBCookieStickinessPolicy.hs
@@ -1,53 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The LBCookieStickinessPolicy type is an embedded property of the--- AWS::ElasticLoadBalancing::LoadBalancer type.--module Stratosphere.ResourceProperties.LBCookieStickinessPolicy where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for LBCookieStickinessPolicy. See--- 'lbCookieStickinessPolicy' for a more convenient constructor.-data LBCookieStickinessPolicy =-  LBCookieStickinessPolicy-  { _lBCookieStickinessPolicyCookieExpirationPeriod :: Maybe (Val Text)-  , _lBCookieStickinessPolicyPolicyName :: Val Text-  } deriving (Show, Generic)--instance ToJSON LBCookieStickinessPolicy where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }--instance FromJSON LBCookieStickinessPolicy where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }---- | Constructor for 'LBCookieStickinessPolicy' containing required fields as--- arguments.-lbCookieStickinessPolicy-  :: Val Text -- ^ 'lbcspPolicyName'-  -> LBCookieStickinessPolicy-lbCookieStickinessPolicy policyNamearg =-  LBCookieStickinessPolicy-  { _lBCookieStickinessPolicyCookieExpirationPeriod = Nothing-  , _lBCookieStickinessPolicyPolicyName = policyNamearg-  }---- | The time period, in seconds, after which the cookie should be considered--- stale. If this parameter isn't specified, the sticky session will last for--- the duration of the browser session.-lbcspCookieExpirationPeriod :: Lens' LBCookieStickinessPolicy (Maybe (Val Text))-lbcspCookieExpirationPeriod = lens _lBCookieStickinessPolicyCookieExpirationPeriod (\s a -> s { _lBCookieStickinessPolicyCookieExpirationPeriod = a })---- | The name of the policy being created. The name must be unique within the--- set of policies for this load balancer. Note To associate this policy with--- a listener, include the policy name in the listener's PolicyNames property.-lbcspPolicyName :: Lens' LBCookieStickinessPolicy (Val Text)-lbcspPolicyName = lens _lBCookieStickinessPolicyPolicyName (\s a -> s { _lBCookieStickinessPolicyPolicyName = a })
library-gen/Stratosphere/ResourceProperties/LambdaFunctionCode.hs view
@@ -1,11 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | Code is a property of the AWS::Lambda::Function resource that enables you--- to specify the source code of an AWS Lambda (Lambda) function. Source code--- can be located in a file in an S3 bucket. For nodejs, nodejs4.3, and--- python2.7 runtime environments only, you can provide source code as inline--- text.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html  module Stratosphere.ResourceProperties.LambdaFunctionCode where @@ -19,7 +15,7 @@   -- | Full data type definition for LambdaFunctionCode. See--- 'lambdaFunctionCode' for a more convenient constructor.+-- | 'lambdaFunctionCode' for a more convenient constructor. data LambdaFunctionCode =   LambdaFunctionCode   { _lambdaFunctionCodeS3Bucket :: Maybe (Val Text)@@ -35,7 +31,7 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }  -- | Constructor for 'LambdaFunctionCode' containing required fields as--- arguments.+-- | arguments. lambdaFunctionCode   :: LambdaFunctionCode lambdaFunctionCode  =@@ -46,34 +42,18 @@   , _lambdaFunctionCodeZipFile = Nothing   } --- | The name of the S3 bucket that contains the source code of your Lambda--- function. The S3 bucket must be in the same region as the stack. Note The--- cfn-response module isn't available for source code stored in S3 buckets.--- You must write your own functions to send responses.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3bucket lfcS3Bucket :: Lens' LambdaFunctionCode (Maybe (Val Text)) lfcS3Bucket = lens _lambdaFunctionCodeS3Bucket (\s a -> s { _lambdaFunctionCodeS3Bucket = a }) --- | The location and name of the .zip file that contains your source code. If--- you specify this property, you must also specify the S3Bucket property.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3key lfcS3Key :: Lens' LambdaFunctionCode (Maybe (Val Text)) lfcS3Key = lens _lambdaFunctionCodeS3Key (\s a -> s { _lambdaFunctionCodeS3Key = a }) --- | If you have S3 versioning enabled, the version ID of the.zip file that--- contains your source code. You can specify this property only if you--- specify the S3Bucket and S3Key properties.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-s3objectversion lfcS3ObjectVersion :: Lens' LambdaFunctionCode (Maybe (Val Text)) lfcS3ObjectVersion = lens _lambdaFunctionCodeS3ObjectVersion (\s a -> s { _lambdaFunctionCodeS3ObjectVersion = a }) --- | For nodejs, nodejs4.3, and python2.7 runtime environments, the source--- code of your Lambda function. You can't use this property with other--- runtime environments. You can specify up to 4096 characters. You must--- precede certain special characters in your source code, such as quotation--- marks ("), newlines (\n), and tabs (\t), with a backslash (\). For a list--- of special characters, see http://json.org/. If you specify a function that--- interacts with an AWS CloudFormation custom resource, you don't have to--- write your own functions to send responses to the custom resource that--- invoked the function. AWS CloudFormation provides a response module that--- simplifies sending responses. For more information, see cfn-response--- Module.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile lfcZipFile :: Lens' LambdaFunctionCode (Maybe (Val Text)) lfcZipFile = lens _lambdaFunctionCodeZipFile (\s a -> s { _lambdaFunctionCodeZipFile = a })
+ library-gen/Stratosphere/ResourceProperties/LambdaFunctionEnvironment.hs view
@@ -0,0 +1,41 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html++module Stratosphere.ResourceProperties.LambdaFunctionEnvironment where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for LambdaFunctionEnvironment. See+-- | 'lambdaFunctionEnvironment' for a more convenient constructor.+data LambdaFunctionEnvironment =+  LambdaFunctionEnvironment+  { _lambdaFunctionEnvironmentVariables :: Maybe Object+  } deriving (Show, Generic)++instance ToJSON LambdaFunctionEnvironment where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++instance FromJSON LambdaFunctionEnvironment where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++-- | Constructor for 'LambdaFunctionEnvironment' containing required fields as+-- | arguments.+lambdaFunctionEnvironment+  :: LambdaFunctionEnvironment+lambdaFunctionEnvironment  =+  LambdaFunctionEnvironment+  { _lambdaFunctionEnvironmentVariables = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-environment.html#cfn-lambda-function-environment-variables+lfeVariables :: Lens' LambdaFunctionEnvironment (Maybe Object)+lfeVariables = lens _lambdaFunctionEnvironmentVariables (\s a -> s { _lambdaFunctionEnvironmentVariables = a })
− library-gen/Stratosphere/ResourceProperties/LambdaFunctionVPCConfig.hs
@@ -1,54 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | VpcConfig is a property of the AWS::Lambda::Function resource that--- enables to your AWS Lambda (Lambda) function to access resources in a VPC.--- For more information, see Configuring a Lambda Function to Access Resources--- in an Amazon VPC in the AWS Lambda Developer Guide.--module Stratosphere.ResourceProperties.LambdaFunctionVPCConfig where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for LambdaFunctionVPCConfig. See--- 'lambdaFunctionVPCConfig' for a more convenient constructor.-data LambdaFunctionVPCConfig =-  LambdaFunctionVPCConfig-  { _lambdaFunctionVPCConfigSecurityGroupIds :: [Val Text]-  , _lambdaFunctionVPCConfigSubnetIds :: [Val Text]-  } deriving (Show, Generic)--instance ToJSON LambdaFunctionVPCConfig where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }--instance FromJSON LambdaFunctionVPCConfig where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }---- | Constructor for 'LambdaFunctionVPCConfig' containing required fields as--- arguments.-lambdaFunctionVPCConfig-  :: [Val Text] -- ^ 'lfvpccSecurityGroupIds'-  -> [Val Text] -- ^ 'lfvpccSubnetIds'-  -> LambdaFunctionVPCConfig-lambdaFunctionVPCConfig securityGroupIdsarg subnetIdsarg =-  LambdaFunctionVPCConfig-  { _lambdaFunctionVPCConfigSecurityGroupIds = securityGroupIdsarg-  , _lambdaFunctionVPCConfigSubnetIds = subnetIdsarg-  }---- | A list of one or more security groups IDs in the VPC that includes the--- resources to which your Lambda function requires access.-lfvpccSecurityGroupIds :: Lens' LambdaFunctionVPCConfig [Val Text]-lfvpccSecurityGroupIds = lens _lambdaFunctionVPCConfigSecurityGroupIds (\s a -> s { _lambdaFunctionVPCConfigSecurityGroupIds = a })---- | A list of one or more subnet IDs in the VPC that includes the resources--- to which your Lambda function requires access.-lfvpccSubnetIds :: Lens' LambdaFunctionVPCConfig [Val Text]-lfvpccSubnetIds = lens _lambdaFunctionVPCConfigSubnetIds (\s a -> s { _lambdaFunctionVPCConfigSubnetIds = a })
+ library-gen/Stratosphere/ResourceProperties/LambdaFunctionVpcConfig.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html++module Stratosphere.ResourceProperties.LambdaFunctionVpcConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for LambdaFunctionVpcConfig. See+-- | 'lambdaFunctionVpcConfig' for a more convenient constructor.+data LambdaFunctionVpcConfig =+  LambdaFunctionVpcConfig+  { _lambdaFunctionVpcConfigSecurityGroupIds :: [Val Text]+  , _lambdaFunctionVpcConfigSubnetIds :: [Val Text]+  } deriving (Show, Generic)++instance ToJSON LambdaFunctionVpcConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++instance FromJSON LambdaFunctionVpcConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++-- | Constructor for 'LambdaFunctionVpcConfig' containing required fields as+-- | arguments.+lambdaFunctionVpcConfig+  :: [Val Text] -- ^ 'lfvcSecurityGroupIds'+  -> [Val Text] -- ^ 'lfvcSubnetIds'+  -> LambdaFunctionVpcConfig+lambdaFunctionVpcConfig securityGroupIdsarg subnetIdsarg =+  LambdaFunctionVpcConfig+  { _lambdaFunctionVpcConfigSecurityGroupIds = securityGroupIdsarg+  , _lambdaFunctionVpcConfigSubnetIds = subnetIdsarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html#cfn-lambda-function-vpcconfig-securitygroupids+lfvcSecurityGroupIds :: Lens' LambdaFunctionVpcConfig [Val Text]+lfvcSecurityGroupIds = lens _lambdaFunctionVpcConfigSecurityGroupIds (\s a -> s { _lambdaFunctionVpcConfigSecurityGroupIds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-vpcconfig.html#cfn-lambda-function-vpcconfig-subnetids+lfvcSubnetIds :: Lens' LambdaFunctionVpcConfig [Val Text]+lfvcSubnetIds = lens _lambdaFunctionVpcConfigSubnetIds (\s a -> s { _lambdaFunctionVpcConfigSubnetIds = a })
− library-gen/Stratosphere/ResourceProperties/ListenerProperty.hs
@@ -1,84 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The Listener property is an embedded property of the--- AWS::ElasticLoadBalancing::LoadBalancer type.--module Stratosphere.ResourceProperties.ListenerProperty where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for ListenerProperty. See 'listenerProperty'--- for a more convenient constructor.-data ListenerProperty =-  ListenerProperty-  { _listenerPropertyInstancePort :: Val Text-  , _listenerPropertyInstanceProtocol :: Maybe (Val Text)-  , _listenerPropertyLoadBalancerPort :: Val Text-  , _listenerPropertyPolicyNames :: Maybe [Val Text]-  , _listenerPropertyProtocol :: Val Text-  , _listenerPropertySSLCertificateId :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON ListenerProperty where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }--instance FromJSON ListenerProperty where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }---- | Constructor for 'ListenerProperty' containing required fields as--- arguments.-listenerProperty-  :: Val Text -- ^ 'lpInstancePort'-  -> Val Text -- ^ 'lpLoadBalancerPort'-  -> Val Text -- ^ 'lpProtocol'-  -> ListenerProperty-listenerProperty instancePortarg loadBalancerPortarg protocolarg =-  ListenerProperty-  { _listenerPropertyInstancePort = instancePortarg-  , _listenerPropertyInstanceProtocol = Nothing-  , _listenerPropertyLoadBalancerPort = loadBalancerPortarg-  , _listenerPropertyPolicyNames = Nothing-  , _listenerPropertyProtocol = protocolarg-  , _listenerPropertySSLCertificateId = Nothing-  }---- | Specifies the TCP port on which the instance server is listening. This--- property cannot be modified for the life of the load balancer.-lpInstancePort :: Lens' ListenerProperty (Val Text)-lpInstancePort = lens _listenerPropertyInstancePort (\s a -> s { _listenerPropertyInstancePort = a })---- | Specifies the protocol to use for routing traffic to back-end--- instances—HTTP, HTTPS, TCP, or SSL. This property cannot be modified for--- the life of the load balancer.-lpInstanceProtocol :: Lens' ListenerProperty (Maybe (Val Text))-lpInstanceProtocol = lens _listenerPropertyInstanceProtocol (\s a -> s { _listenerPropertyInstanceProtocol = a })---- | Specifies the external load balancer port number. This property cannot be--- modified for the life of the load balancer.-lpLoadBalancerPort :: Lens' ListenerProperty (Val Text)-lpLoadBalancerPort = lens _listenerPropertyLoadBalancerPort (\s a -> s { _listenerPropertyLoadBalancerPort = a })---- | A list of ElasticLoadBalancing policy names to associate with the--- listener.-lpPolicyNames :: Lens' ListenerProperty (Maybe [Val Text])-lpPolicyNames = lens _listenerPropertyPolicyNames (\s a -> s { _listenerPropertyPolicyNames = a })---- | Specifies the load balancer transport protocol to use for routing — HTTP,--- HTTPS, TCP or SSL. This property cannot be modified for the life of the--- load balancer.-lpProtocol :: Lens' ListenerProperty (Val Text)-lpProtocol = lens _listenerPropertyProtocol (\s a -> s { _listenerPropertyProtocol = a })---- | The ARN of the SSL certificate to use. For more information about SSL--- certificates, see Managing Server Certificates in the AWS Identity and--- Access Management documentation.-lpSSLCertificateId :: Lens' ListenerProperty (Maybe (Val Text))-lpSSLCertificateId = lens _listenerPropertySSLCertificateId (\s a -> s { _listenerPropertySSLCertificateId = a })
+ library-gen/Stratosphere/ResourceProperties/LogsMetricFilterMetricTransformation.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html++module Stratosphere.ResourceProperties.LogsMetricFilterMetricTransformation where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for LogsMetricFilterMetricTransformation. See+-- | 'logsMetricFilterMetricTransformation' for a more convenient constructor.+data LogsMetricFilterMetricTransformation =+  LogsMetricFilterMetricTransformation+  { _logsMetricFilterMetricTransformationMetricName :: Val Text+  , _logsMetricFilterMetricTransformationMetricNamespace :: Val Text+  , _logsMetricFilterMetricTransformationMetricValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON LogsMetricFilterMetricTransformation where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++instance FromJSON LogsMetricFilterMetricTransformation where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++-- | Constructor for 'LogsMetricFilterMetricTransformation' containing+-- | required fields as arguments.+logsMetricFilterMetricTransformation+  :: Val Text -- ^ 'lmfmtMetricName'+  -> Val Text -- ^ 'lmfmtMetricNamespace'+  -> Val Text -- ^ 'lmfmtMetricValue'+  -> LogsMetricFilterMetricTransformation+logsMetricFilterMetricTransformation metricNamearg metricNamespacearg metricValuearg =+  LogsMetricFilterMetricTransformation+  { _logsMetricFilterMetricTransformationMetricName = metricNamearg+  , _logsMetricFilterMetricTransformationMetricNamespace = metricNamespacearg+  , _logsMetricFilterMetricTransformationMetricValue = metricValuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-cwl-metricfilter-metrictransformation-metricname+lmfmtMetricName :: Lens' LogsMetricFilterMetricTransformation (Val Text)+lmfmtMetricName = lens _logsMetricFilterMetricTransformationMetricName (\s a -> s { _logsMetricFilterMetricTransformationMetricName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-cwl-metricfilter-metrictransformation-metricnamespace+lmfmtMetricNamespace :: Lens' LogsMetricFilterMetricTransformation (Val Text)+lmfmtMetricNamespace = lens _logsMetricFilterMetricTransformationMetricNamespace (\s a -> s { _logsMetricFilterMetricTransformationMetricNamespace = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-logs-metricfilter-metrictransformation.html#cfn-cwl-metricfilter-metrictransformation-metricvalue+lmfmtMetricValue :: Lens' LogsMetricFilterMetricTransformation (Val Text)+lmfmtMetricValue = lens _logsMetricFilterMetricTransformationMetricValue (\s a -> s { _logsMetricFilterMetricTransformationMetricValue = a })
− library-gen/Stratosphere/ResourceProperties/NameValuePair.hs
@@ -1,48 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | A pair of name and value. Used in ELB Attributes--module Stratosphere.ResourceProperties.NameValuePair where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for NameValuePair. See 'nameValuePair' for a--- more convenient constructor.-data NameValuePair =-  NameValuePair-  { _nameValuePairName :: Val Text-  , _nameValuePairValue :: Val Text-  } deriving (Show, Generic)--instance ToJSON NameValuePair where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }--instance FromJSON NameValuePair where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }---- | Constructor for 'NameValuePair' containing required fields as arguments.-nameValuePair-  :: Val Text -- ^ 'nvpName'-  -> Val Text -- ^ 'nvpValue'-  -> NameValuePair-nameValuePair namearg valuearg =-  NameValuePair-  { _nameValuePairName = namearg-  , _nameValuePairValue = valuearg-  }---- | The name of an attribute-nvpName :: Lens' NameValuePair (Val Text)-nvpName = lens _nameValuePairName (\s a -> s { _nameValuePairName = a })---- | The value of an attribute-nvpValue :: Lens' NameValuePair (Val Text)-nvpValue = lens _nameValuePairValue (\s a -> s { _nameValuePairValue = a })
− library-gen/Stratosphere/ResourceProperties/NetworkInterface.hs
@@ -1,117 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}----module Stratosphere.ResourceProperties.NetworkInterface where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.PrivateIpAddressSpecification---- | Full data type definition for NetworkInterface. See 'networkInterface'--- for a more convenient constructor.-data NetworkInterface =-  NetworkInterface-  { _networkInterfaceAssociatePublicIpAddress :: Maybe (Val Bool')-  , _networkInterfaceDeleteOnTermination :: Maybe (Val Bool')-  , _networkInterfaceDescription :: Maybe (Val Text)-  , _networkInterfaceDeviceIndex :: Val Text-  , _networkInterfaceGroupSet :: Maybe [Val Text]-  , _networkInterfaceNetworkInterfaceId :: Maybe (Val Text)-  , _networkInterfacePrivateIpAddress :: Maybe (Val Text)-  , _networkInterfacePrivateIpAddresses :: Maybe [PrivateIpAddressSpecification]-  , _networkInterfaceSecondaryPrivateIpAddressCount :: Maybe (Val Integer')-  , _networkInterfaceSubnetId :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON NetworkInterface where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }--instance FromJSON NetworkInterface where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }---- | Constructor for 'NetworkInterface' containing required fields as--- arguments.-networkInterface-  :: Val Text -- ^ 'niDeviceIndex'-  -> NetworkInterface-networkInterface deviceIndexarg =-  NetworkInterface-  { _networkInterfaceAssociatePublicIpAddress = Nothing-  , _networkInterfaceDeleteOnTermination = Nothing-  , _networkInterfaceDescription = Nothing-  , _networkInterfaceDeviceIndex = deviceIndexarg-  , _networkInterfaceGroupSet = Nothing-  , _networkInterfaceNetworkInterfaceId = Nothing-  , _networkInterfacePrivateIpAddress = Nothing-  , _networkInterfacePrivateIpAddresses = Nothing-  , _networkInterfaceSecondaryPrivateIpAddressCount = Nothing-  , _networkInterfaceSubnetId = Nothing-  }---- | Indicates whether the network interface receives a public IP address. You--- can associate a public IP address with a network interface only if it has a--- device index of eth0 and if it is a new network interface (not an existing--- one). In other words, if you specify true, don't specify a network--- interface ID. For more information, see Amazon EC2 Instance IP Addressing.-niAssociatePublicIpAddress :: Lens' NetworkInterface (Maybe (Val Bool'))-niAssociatePublicIpAddress = lens _networkInterfaceAssociatePublicIpAddress (\s a -> s { _networkInterfaceAssociatePublicIpAddress = a })---- | Whether to delete the network interface when the instance terminates.-niDeleteOnTermination :: Lens' NetworkInterface (Maybe (Val Bool'))-niDeleteOnTermination = lens _networkInterfaceDeleteOnTermination (\s a -> s { _networkInterfaceDeleteOnTermination = a })---- | The description of this network interface.-niDescription :: Lens' NetworkInterface (Maybe (Val Text))-niDescription = lens _networkInterfaceDescription (\s a -> s { _networkInterfaceDescription = a })---- | The network interface's position in the attachment order.-niDeviceIndex :: Lens' NetworkInterface (Val Text)-niDeviceIndex = lens _networkInterfaceDeviceIndex (\s a -> s { _networkInterfaceDeviceIndex = a })---- | A list of security group IDs associated with this network interface.-niGroupSet :: Lens' NetworkInterface (Maybe [Val Text])-niGroupSet = lens _networkInterfaceGroupSet (\s a -> s { _networkInterfaceGroupSet = a })---- | An existing network interface ID.-niNetworkInterfaceId :: Lens' NetworkInterface (Maybe (Val Text))-niNetworkInterfaceId = lens _networkInterfaceNetworkInterfaceId (\s a -> s { _networkInterfaceNetworkInterfaceId = a })---- | Assigns a single private IP address to the network interface, which is--- used as the primary private IP address. If you want to specify multiple--- private IP address, use the PrivateIpAddresses property.-niPrivateIpAddress :: Lens' NetworkInterface (Maybe (Val Text))-niPrivateIpAddress = lens _networkInterfacePrivateIpAddress (\s a -> s { _networkInterfacePrivateIpAddress = a })---- | Assigns a list of private IP addresses to the network interface. You can--- specify a primary private IP address by setting the value of the Primary--- property to true in the PrivateIpAddressSpecification property. If you want--- Amazon EC2 to automatically assign private IP addresses, use the--- SecondaryPrivateIpCount property and do not specify this property. For--- information about the maximum number of private IP addresses, see Private--- IP Addresses Per ENI Per Instance Type in the Amazon EC2 User Guide for--- Linux Instances.-niPrivateIpAddresses :: Lens' NetworkInterface (Maybe [PrivateIpAddressSpecification])-niPrivateIpAddresses = lens _networkInterfacePrivateIpAddresses (\s a -> s { _networkInterfacePrivateIpAddresses = a })---- | The number of secondary private IP addresses that Amazon EC2 auto assigns--- to the network interface. Amazon EC2 uses the value of the PrivateIpAddress--- property as the primary private IP address. If you don't specify that--- property, Amazon EC2 auto assigns both the primary and secondary private IP--- addresses. If you want to specify your own list of private IP addresses,--- use the PrivateIpAddresses property and do not specify this property. For--- information about the maximum number of private IP addresses, see Private--- IP Addresses Per ENI Per Instance Type in the Amazon EC2 User Guide for--- Linux Instances.-niSecondaryPrivateIpAddressCount :: Lens' NetworkInterface (Maybe (Val Integer'))-niSecondaryPrivateIpAddressCount = lens _networkInterfaceSecondaryPrivateIpAddressCount (\s a -> s { _networkInterfaceSecondaryPrivateIpAddressCount = a })---- | The ID of the subnet to associate with the network interface.-niSubnetId :: Lens' NetworkInterface (Maybe (Val Text))-niSubnetId = lens _networkInterfaceSubnetId (\s a -> s { _networkInterfaceSubnetId = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksAppDataSource.hs view
@@ -0,0 +1,53 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-datasource.html++module Stratosphere.ResourceProperties.OpsWorksAppDataSource where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksAppDataSource. See+-- | 'opsWorksAppDataSource' for a more convenient constructor.+data OpsWorksAppDataSource =+  OpsWorksAppDataSource+  { _opsWorksAppDataSourceArn :: Maybe (Val Text)+  , _opsWorksAppDataSourceDatabaseName :: Maybe (Val Text)+  , _opsWorksAppDataSourceType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON OpsWorksAppDataSource where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++instance FromJSON OpsWorksAppDataSource where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++-- | Constructor for 'OpsWorksAppDataSource' containing required fields as+-- | arguments.+opsWorksAppDataSource+  :: OpsWorksAppDataSource+opsWorksAppDataSource  =+  OpsWorksAppDataSource+  { _opsWorksAppDataSourceArn = Nothing+  , _opsWorksAppDataSourceDatabaseName = Nothing+  , _opsWorksAppDataSourceType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-datasource.html#cfn-opsworks-app-datasource-arn+owadsArn :: Lens' OpsWorksAppDataSource (Maybe (Val Text))+owadsArn = lens _opsWorksAppDataSourceArn (\s a -> s { _opsWorksAppDataSourceArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-datasource.html#cfn-opsworks-app-datasource-databasename+owadsDatabaseName :: Lens' OpsWorksAppDataSource (Maybe (Val Text))+owadsDatabaseName = lens _opsWorksAppDataSourceDatabaseName (\s a -> s { _opsWorksAppDataSourceDatabaseName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-datasource.html#cfn-opsworks-app-datasource-type+owadsType :: Lens' OpsWorksAppDataSource (Maybe (Val Text))+owadsType = lens _opsWorksAppDataSourceType (\s a -> s { _opsWorksAppDataSourceType = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksAppEnvironmentVariable.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-environment.html++module Stratosphere.ResourceProperties.OpsWorksAppEnvironmentVariable where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksAppEnvironmentVariable. See+-- | 'opsWorksAppEnvironmentVariable' for a more convenient constructor.+data OpsWorksAppEnvironmentVariable =+  OpsWorksAppEnvironmentVariable+  { _opsWorksAppEnvironmentVariableKey :: Val Text+  , _opsWorksAppEnvironmentVariableSecure :: Maybe (Val Bool')+  , _opsWorksAppEnvironmentVariableValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON OpsWorksAppEnvironmentVariable where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON OpsWorksAppEnvironmentVariable where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'OpsWorksAppEnvironmentVariable' containing required+-- | fields as arguments.+opsWorksAppEnvironmentVariable+  :: Val Text -- ^ 'owaevKey'+  -> Val Text -- ^ 'owaevValue'+  -> OpsWorksAppEnvironmentVariable+opsWorksAppEnvironmentVariable keyarg valuearg =+  OpsWorksAppEnvironmentVariable+  { _opsWorksAppEnvironmentVariableKey = keyarg+  , _opsWorksAppEnvironmentVariableSecure = Nothing+  , _opsWorksAppEnvironmentVariableValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-environment.html#cfn-opsworks-app-environment-key+owaevKey :: Lens' OpsWorksAppEnvironmentVariable (Val Text)+owaevKey = lens _opsWorksAppEnvironmentVariableKey (\s a -> s { _opsWorksAppEnvironmentVariableKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-environment.html#cfn-opsworks-app-environment-secure+owaevSecure :: Lens' OpsWorksAppEnvironmentVariable (Maybe (Val Bool'))+owaevSecure = lens _opsWorksAppEnvironmentVariableSecure (\s a -> s { _opsWorksAppEnvironmentVariableSecure = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-environment.html#value+owaevValue :: Lens' OpsWorksAppEnvironmentVariable (Val Text)+owaevValue = lens _opsWorksAppEnvironmentVariableValue (\s a -> s { _opsWorksAppEnvironmentVariableValue = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksAppSource.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html++module Stratosphere.ResourceProperties.OpsWorksAppSource where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksAppSource. See 'opsWorksAppSource'+-- | for a more convenient constructor.+data OpsWorksAppSource =+  OpsWorksAppSource+  { _opsWorksAppSourcePassword :: Maybe (Val Text)+  , _opsWorksAppSourceRevision :: Maybe (Val Text)+  , _opsWorksAppSourceSshKey :: Maybe (Val Text)+  , _opsWorksAppSourceType :: Maybe (Val Text)+  , _opsWorksAppSourceUrl :: Maybe (Val Text)+  , _opsWorksAppSourceUsername :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON OpsWorksAppSource where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }++instance FromJSON OpsWorksAppSource where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }++-- | Constructor for 'OpsWorksAppSource' containing required fields as+-- | arguments.+opsWorksAppSource+  :: OpsWorksAppSource+opsWorksAppSource  =+  OpsWorksAppSource+  { _opsWorksAppSourcePassword = Nothing+  , _opsWorksAppSourceRevision = Nothing+  , _opsWorksAppSourceSshKey = Nothing+  , _opsWorksAppSourceType = Nothing+  , _opsWorksAppSourceUrl = Nothing+  , _opsWorksAppSourceUsername = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-pw+owasPassword :: Lens' OpsWorksAppSource (Maybe (Val Text))+owasPassword = lens _opsWorksAppSourcePassword (\s a -> s { _opsWorksAppSourcePassword = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-revision+owasRevision :: Lens' OpsWorksAppSource (Maybe (Val Text))+owasRevision = lens _opsWorksAppSourceRevision (\s a -> s { _opsWorksAppSourceRevision = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-sshkey+owasSshKey :: Lens' OpsWorksAppSource (Maybe (Val Text))+owasSshKey = lens _opsWorksAppSourceSshKey (\s a -> s { _opsWorksAppSourceSshKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-type+owasType :: Lens' OpsWorksAppSource (Maybe (Val Text))+owasType = lens _opsWorksAppSourceType (\s a -> s { _opsWorksAppSourceType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-url+owasUrl :: Lens' OpsWorksAppSource (Maybe (Val Text))+owasUrl = lens _opsWorksAppSourceUrl (\s a -> s { _opsWorksAppSourceUrl = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-username+owasUsername :: Lens' OpsWorksAppSource (Maybe (Val Text))+owasUsername = lens _opsWorksAppSourceUsername (\s a -> s { _opsWorksAppSourceUsername = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksAppSslConfiguration.hs view
@@ -0,0 +1,53 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-sslconfiguration.html++module Stratosphere.ResourceProperties.OpsWorksAppSslConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksAppSslConfiguration. See+-- | 'opsWorksAppSslConfiguration' for a more convenient constructor.+data OpsWorksAppSslConfiguration =+  OpsWorksAppSslConfiguration+  { _opsWorksAppSslConfigurationCertificate :: Maybe (Val Text)+  , _opsWorksAppSslConfigurationChain :: Maybe (Val Text)+  , _opsWorksAppSslConfigurationPrivateKey :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON OpsWorksAppSslConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON OpsWorksAppSslConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'OpsWorksAppSslConfiguration' containing required fields+-- | as arguments.+opsWorksAppSslConfiguration+  :: OpsWorksAppSslConfiguration+opsWorksAppSslConfiguration  =+  OpsWorksAppSslConfiguration+  { _opsWorksAppSslConfigurationCertificate = Nothing+  , _opsWorksAppSslConfigurationChain = Nothing+  , _opsWorksAppSslConfigurationPrivateKey = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-sslconfiguration.html#cfn-opsworks-app-sslconfig-certificate+owascCertificate :: Lens' OpsWorksAppSslConfiguration (Maybe (Val Text))+owascCertificate = lens _opsWorksAppSslConfigurationCertificate (\s a -> s { _opsWorksAppSslConfigurationCertificate = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-sslconfiguration.html#cfn-opsworks-app-sslconfig-chain+owascChain :: Lens' OpsWorksAppSslConfiguration (Maybe (Val Text))+owascChain = lens _opsWorksAppSslConfigurationChain (\s a -> s { _opsWorksAppSslConfigurationChain = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-app-sslconfiguration.html#cfn-opsworks-app-sslconfig-privatekey+owascPrivateKey :: Lens' OpsWorksAppSslConfiguration (Maybe (Val Text))+owascPrivateKey = lens _opsWorksAppSslConfigurationPrivateKey (\s a -> s { _opsWorksAppSslConfigurationPrivateKey = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksInstanceBlockDeviceMapping.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html++module Stratosphere.ResourceProperties.OpsWorksInstanceBlockDeviceMapping where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.OpsWorksInstanceEbsBlockDevice++-- | Full data type definition for OpsWorksInstanceBlockDeviceMapping. See+-- | 'opsWorksInstanceBlockDeviceMapping' for a more convenient constructor.+data OpsWorksInstanceBlockDeviceMapping =+  OpsWorksInstanceBlockDeviceMapping+  { _opsWorksInstanceBlockDeviceMappingDeviceName :: Maybe (Val Text)+  , _opsWorksInstanceBlockDeviceMappingEbs :: Maybe OpsWorksInstanceEbsBlockDevice+  , _opsWorksInstanceBlockDeviceMappingNoDevice :: Maybe (Val Text)+  , _opsWorksInstanceBlockDeviceMappingVirtualName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON OpsWorksInstanceBlockDeviceMapping where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++instance FromJSON OpsWorksInstanceBlockDeviceMapping where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++-- | Constructor for 'OpsWorksInstanceBlockDeviceMapping' containing required+-- | fields as arguments.+opsWorksInstanceBlockDeviceMapping+  :: OpsWorksInstanceBlockDeviceMapping+opsWorksInstanceBlockDeviceMapping  =+  OpsWorksInstanceBlockDeviceMapping+  { _opsWorksInstanceBlockDeviceMappingDeviceName = Nothing+  , _opsWorksInstanceBlockDeviceMappingEbs = Nothing+  , _opsWorksInstanceBlockDeviceMappingNoDevice = Nothing+  , _opsWorksInstanceBlockDeviceMappingVirtualName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html#cfn-opsworks-instance-blockdevicemapping-devicename+owibdmDeviceName :: Lens' OpsWorksInstanceBlockDeviceMapping (Maybe (Val Text))+owibdmDeviceName = lens _opsWorksInstanceBlockDeviceMappingDeviceName (\s a -> s { _opsWorksInstanceBlockDeviceMappingDeviceName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html#cfn-opsworks-instance-blockdevicemapping-ebs+owibdmEbs :: Lens' OpsWorksInstanceBlockDeviceMapping (Maybe OpsWorksInstanceEbsBlockDevice)+owibdmEbs = lens _opsWorksInstanceBlockDeviceMappingEbs (\s a -> s { _opsWorksInstanceBlockDeviceMappingEbs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html#cfn-opsworks-instance-blockdevicemapping-nodevice+owibdmNoDevice :: Lens' OpsWorksInstanceBlockDeviceMapping (Maybe (Val Text))+owibdmNoDevice = lens _opsWorksInstanceBlockDeviceMappingNoDevice (\s a -> s { _opsWorksInstanceBlockDeviceMappingNoDevice = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-blockdevicemapping.html#cfn-opsworks-instance-blockdevicemapping-virtualname+owibdmVirtualName :: Lens' OpsWorksInstanceBlockDeviceMapping (Maybe (Val Text))+owibdmVirtualName = lens _opsWorksInstanceBlockDeviceMappingVirtualName (\s a -> s { _opsWorksInstanceBlockDeviceMappingVirtualName = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksInstanceEbsBlockDevice.hs view
@@ -0,0 +1,65 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html++module Stratosphere.ResourceProperties.OpsWorksInstanceEbsBlockDevice where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksInstanceEbsBlockDevice. See+-- | 'opsWorksInstanceEbsBlockDevice' for a more convenient constructor.+data OpsWorksInstanceEbsBlockDevice =+  OpsWorksInstanceEbsBlockDevice+  { _opsWorksInstanceEbsBlockDeviceDeleteOnTermination :: Maybe (Val Bool')+  , _opsWorksInstanceEbsBlockDeviceIops :: Maybe (Val Integer')+  , _opsWorksInstanceEbsBlockDeviceSnapshotId :: Maybe (Val Text)+  , _opsWorksInstanceEbsBlockDeviceVolumeSize :: Maybe (Val Integer')+  , _opsWorksInstanceEbsBlockDeviceVolumeType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON OpsWorksInstanceEbsBlockDevice where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON OpsWorksInstanceEbsBlockDevice where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'OpsWorksInstanceEbsBlockDevice' containing required+-- | fields as arguments.+opsWorksInstanceEbsBlockDevice+  :: OpsWorksInstanceEbsBlockDevice+opsWorksInstanceEbsBlockDevice  =+  OpsWorksInstanceEbsBlockDevice+  { _opsWorksInstanceEbsBlockDeviceDeleteOnTermination = Nothing+  , _opsWorksInstanceEbsBlockDeviceIops = Nothing+  , _opsWorksInstanceEbsBlockDeviceSnapshotId = Nothing+  , _opsWorksInstanceEbsBlockDeviceVolumeSize = Nothing+  , _opsWorksInstanceEbsBlockDeviceVolumeType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html#cfn-opsworks-instance-ebsblockdevice-deleteontermination+owiebdDeleteOnTermination :: Lens' OpsWorksInstanceEbsBlockDevice (Maybe (Val Bool'))+owiebdDeleteOnTermination = lens _opsWorksInstanceEbsBlockDeviceDeleteOnTermination (\s a -> s { _opsWorksInstanceEbsBlockDeviceDeleteOnTermination = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html#cfn-opsworks-instance-ebsblockdevice-iops+owiebdIops :: Lens' OpsWorksInstanceEbsBlockDevice (Maybe (Val Integer'))+owiebdIops = lens _opsWorksInstanceEbsBlockDeviceIops (\s a -> s { _opsWorksInstanceEbsBlockDeviceIops = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html#cfn-opsworks-instance-ebsblockdevice-snapshotid+owiebdSnapshotId :: Lens' OpsWorksInstanceEbsBlockDevice (Maybe (Val Text))+owiebdSnapshotId = lens _opsWorksInstanceEbsBlockDeviceSnapshotId (\s a -> s { _opsWorksInstanceEbsBlockDeviceSnapshotId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html#cfn-opsworks-instance-ebsblockdevice-volumesize+owiebdVolumeSize :: Lens' OpsWorksInstanceEbsBlockDevice (Maybe (Val Integer'))+owiebdVolumeSize = lens _opsWorksInstanceEbsBlockDeviceVolumeSize (\s a -> s { _opsWorksInstanceEbsBlockDeviceVolumeSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-ebsblockdevice.html#cfn-opsworks-instance-ebsblockdevice-volumetype+owiebdVolumeType :: Lens' OpsWorksInstanceEbsBlockDevice (Maybe (Val Text))+owiebdVolumeType = lens _opsWorksInstanceEbsBlockDeviceVolumeType (\s a -> s { _opsWorksInstanceEbsBlockDeviceVolumeType = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksInstanceTimeBasedAutoScaling.hs view
@@ -0,0 +1,77 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html++module Stratosphere.ResourceProperties.OpsWorksInstanceTimeBasedAutoScaling where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksInstanceTimeBasedAutoScaling. See+-- | 'opsWorksInstanceTimeBasedAutoScaling' for a more convenient constructor.+data OpsWorksInstanceTimeBasedAutoScaling =+  OpsWorksInstanceTimeBasedAutoScaling+  { _opsWorksInstanceTimeBasedAutoScalingFriday :: Maybe Object+  , _opsWorksInstanceTimeBasedAutoScalingMonday :: Maybe Object+  , _opsWorksInstanceTimeBasedAutoScalingSaturday :: Maybe Object+  , _opsWorksInstanceTimeBasedAutoScalingSunday :: Maybe Object+  , _opsWorksInstanceTimeBasedAutoScalingThursday :: Maybe Object+  , _opsWorksInstanceTimeBasedAutoScalingTuesday :: Maybe Object+  , _opsWorksInstanceTimeBasedAutoScalingWednesday :: Maybe Object+  } deriving (Show, Generic)++instance ToJSON OpsWorksInstanceTimeBasedAutoScaling where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++instance FromJSON OpsWorksInstanceTimeBasedAutoScaling where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++-- | Constructor for 'OpsWorksInstanceTimeBasedAutoScaling' containing+-- | required fields as arguments.+opsWorksInstanceTimeBasedAutoScaling+  :: OpsWorksInstanceTimeBasedAutoScaling+opsWorksInstanceTimeBasedAutoScaling  =+  OpsWorksInstanceTimeBasedAutoScaling+  { _opsWorksInstanceTimeBasedAutoScalingFriday = Nothing+  , _opsWorksInstanceTimeBasedAutoScalingMonday = Nothing+  , _opsWorksInstanceTimeBasedAutoScalingSaturday = Nothing+  , _opsWorksInstanceTimeBasedAutoScalingSunday = Nothing+  , _opsWorksInstanceTimeBasedAutoScalingThursday = Nothing+  , _opsWorksInstanceTimeBasedAutoScalingTuesday = Nothing+  , _opsWorksInstanceTimeBasedAutoScalingWednesday = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-friday+owitbasFriday :: Lens' OpsWorksInstanceTimeBasedAutoScaling (Maybe Object)+owitbasFriday = lens _opsWorksInstanceTimeBasedAutoScalingFriday (\s a -> s { _opsWorksInstanceTimeBasedAutoScalingFriday = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-monday+owitbasMonday :: Lens' OpsWorksInstanceTimeBasedAutoScaling (Maybe Object)+owitbasMonday = lens _opsWorksInstanceTimeBasedAutoScalingMonday (\s a -> s { _opsWorksInstanceTimeBasedAutoScalingMonday = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-saturday+owitbasSaturday :: Lens' OpsWorksInstanceTimeBasedAutoScaling (Maybe Object)+owitbasSaturday = lens _opsWorksInstanceTimeBasedAutoScalingSaturday (\s a -> s { _opsWorksInstanceTimeBasedAutoScalingSaturday = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-sunday+owitbasSunday :: Lens' OpsWorksInstanceTimeBasedAutoScaling (Maybe Object)+owitbasSunday = lens _opsWorksInstanceTimeBasedAutoScalingSunday (\s a -> s { _opsWorksInstanceTimeBasedAutoScalingSunday = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-thursday+owitbasThursday :: Lens' OpsWorksInstanceTimeBasedAutoScaling (Maybe Object)+owitbasThursday = lens _opsWorksInstanceTimeBasedAutoScalingThursday (\s a -> s { _opsWorksInstanceTimeBasedAutoScalingThursday = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-tuesday+owitbasTuesday :: Lens' OpsWorksInstanceTimeBasedAutoScaling (Maybe Object)+owitbasTuesday = lens _opsWorksInstanceTimeBasedAutoScalingTuesday (\s a -> s { _opsWorksInstanceTimeBasedAutoScalingTuesday = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-instance-timebasedautoscaling.html#cfn-opsworks-instance-timebasedautoscaling-wednesday+owitbasWednesday :: Lens' OpsWorksInstanceTimeBasedAutoScaling (Maybe Object)+owitbasWednesday = lens _opsWorksInstanceTimeBasedAutoScalingWednesday (\s a -> s { _opsWorksInstanceTimeBasedAutoScalingWednesday = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksLayerAutoScalingThresholds.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html++module Stratosphere.ResourceProperties.OpsWorksLayerAutoScalingThresholds where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksLayerAutoScalingThresholds. See+-- | 'opsWorksLayerAutoScalingThresholds' for a more convenient constructor.+data OpsWorksLayerAutoScalingThresholds =+  OpsWorksLayerAutoScalingThresholds+  { _opsWorksLayerAutoScalingThresholdsCpuThreshold :: Maybe (Val Double')+  , _opsWorksLayerAutoScalingThresholdsIgnoreMetricsTime :: Maybe (Val Integer')+  , _opsWorksLayerAutoScalingThresholdsInstanceCount :: Maybe (Val Integer')+  , _opsWorksLayerAutoScalingThresholdsLoadThreshold :: Maybe (Val Double')+  , _opsWorksLayerAutoScalingThresholdsMemoryThreshold :: Maybe (Val Double')+  , _opsWorksLayerAutoScalingThresholdsThresholdsWaitTime :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON OpsWorksLayerAutoScalingThresholds where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++instance FromJSON OpsWorksLayerAutoScalingThresholds where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++-- | Constructor for 'OpsWorksLayerAutoScalingThresholds' containing required+-- | fields as arguments.+opsWorksLayerAutoScalingThresholds+  :: OpsWorksLayerAutoScalingThresholds+opsWorksLayerAutoScalingThresholds  =+  OpsWorksLayerAutoScalingThresholds+  { _opsWorksLayerAutoScalingThresholdsCpuThreshold = Nothing+  , _opsWorksLayerAutoScalingThresholdsIgnoreMetricsTime = Nothing+  , _opsWorksLayerAutoScalingThresholdsInstanceCount = Nothing+  , _opsWorksLayerAutoScalingThresholdsLoadThreshold = Nothing+  , _opsWorksLayerAutoScalingThresholdsMemoryThreshold = Nothing+  , _opsWorksLayerAutoScalingThresholdsThresholdsWaitTime = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-cputhreshold+owlastCpuThreshold :: Lens' OpsWorksLayerAutoScalingThresholds (Maybe (Val Double'))+owlastCpuThreshold = lens _opsWorksLayerAutoScalingThresholdsCpuThreshold (\s a -> s { _opsWorksLayerAutoScalingThresholdsCpuThreshold = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-ignoremetricstime+owlastIgnoreMetricsTime :: Lens' OpsWorksLayerAutoScalingThresholds (Maybe (Val Integer'))+owlastIgnoreMetricsTime = lens _opsWorksLayerAutoScalingThresholdsIgnoreMetricsTime (\s a -> s { _opsWorksLayerAutoScalingThresholdsIgnoreMetricsTime = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-instancecount+owlastInstanceCount :: Lens' OpsWorksLayerAutoScalingThresholds (Maybe (Val Integer'))+owlastInstanceCount = lens _opsWorksLayerAutoScalingThresholdsInstanceCount (\s a -> s { _opsWorksLayerAutoScalingThresholdsInstanceCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-loadthreshold+owlastLoadThreshold :: Lens' OpsWorksLayerAutoScalingThresholds (Maybe (Val Double'))+owlastLoadThreshold = lens _opsWorksLayerAutoScalingThresholdsLoadThreshold (\s a -> s { _opsWorksLayerAutoScalingThresholdsLoadThreshold = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-memorythreshold+owlastMemoryThreshold :: Lens' OpsWorksLayerAutoScalingThresholds (Maybe (Val Double'))+owlastMemoryThreshold = lens _opsWorksLayerAutoScalingThresholdsMemoryThreshold (\s a -> s { _opsWorksLayerAutoScalingThresholdsMemoryThreshold = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling-autoscalingthresholds.html#cfn-opsworks-layer-loadbasedautoscaling-autoscalingthresholds-thresholdwaittime+owlastThresholdsWaitTime :: Lens' OpsWorksLayerAutoScalingThresholds (Maybe (Val Integer'))+owlastThresholdsWaitTime = lens _opsWorksLayerAutoScalingThresholdsThresholdsWaitTime (\s a -> s { _opsWorksLayerAutoScalingThresholdsThresholdsWaitTime = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksLayerLifecycleEventConfiguration.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration.html++module Stratosphere.ResourceProperties.OpsWorksLayerLifecycleEventConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.OpsWorksLayerShutdownEventConfiguration++-- | Full data type definition for OpsWorksLayerLifecycleEventConfiguration.+-- | See 'opsWorksLayerLifecycleEventConfiguration' for a more convenient+-- | constructor.+data OpsWorksLayerLifecycleEventConfiguration =+  OpsWorksLayerLifecycleEventConfiguration+  { _opsWorksLayerLifecycleEventConfigurationShutdownEventConfiguration :: Maybe OpsWorksLayerShutdownEventConfiguration+  } deriving (Show, Generic)++instance ToJSON OpsWorksLayerLifecycleEventConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++instance FromJSON OpsWorksLayerLifecycleEventConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 41, omitNothingFields = True }++-- | Constructor for 'OpsWorksLayerLifecycleEventConfiguration' containing+-- | required fields as arguments.+opsWorksLayerLifecycleEventConfiguration+  :: OpsWorksLayerLifecycleEventConfiguration+opsWorksLayerLifecycleEventConfiguration  =+  OpsWorksLayerLifecycleEventConfiguration+  { _opsWorksLayerLifecycleEventConfigurationShutdownEventConfiguration = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration.html#cfn-opsworks-layer-lifecycleconfiguration-shutdowneventconfiguration+owllecShutdownEventConfiguration :: Lens' OpsWorksLayerLifecycleEventConfiguration (Maybe OpsWorksLayerShutdownEventConfiguration)+owllecShutdownEventConfiguration = lens _opsWorksLayerLifecycleEventConfigurationShutdownEventConfiguration (\s a -> s { _opsWorksLayerLifecycleEventConfigurationShutdownEventConfiguration = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksLayerLoadBasedAutoScaling.hs view
@@ -0,0 +1,53 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html++module Stratosphere.ResourceProperties.OpsWorksLayerLoadBasedAutoScaling where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.OpsWorksLayerAutoScalingThresholds++-- | Full data type definition for OpsWorksLayerLoadBasedAutoScaling. See+-- | 'opsWorksLayerLoadBasedAutoScaling' for a more convenient constructor.+data OpsWorksLayerLoadBasedAutoScaling =+  OpsWorksLayerLoadBasedAutoScaling+  { _opsWorksLayerLoadBasedAutoScalingDownScaling :: Maybe OpsWorksLayerAutoScalingThresholds+  , _opsWorksLayerLoadBasedAutoScalingEnable :: Maybe (Val Bool')+  , _opsWorksLayerLoadBasedAutoScalingUpScaling :: Maybe OpsWorksLayerAutoScalingThresholds+  } deriving (Show, Generic)++instance ToJSON OpsWorksLayerLoadBasedAutoScaling where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON OpsWorksLayerLoadBasedAutoScaling where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'OpsWorksLayerLoadBasedAutoScaling' containing required+-- | fields as arguments.+opsWorksLayerLoadBasedAutoScaling+  :: OpsWorksLayerLoadBasedAutoScaling+opsWorksLayerLoadBasedAutoScaling  =+  OpsWorksLayerLoadBasedAutoScaling+  { _opsWorksLayerLoadBasedAutoScalingDownScaling = Nothing+  , _opsWorksLayerLoadBasedAutoScalingEnable = Nothing+  , _opsWorksLayerLoadBasedAutoScalingUpScaling = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html#cfn-opsworks-layer-loadbasedautoscaling-downscaling+owllbasDownScaling :: Lens' OpsWorksLayerLoadBasedAutoScaling (Maybe OpsWorksLayerAutoScalingThresholds)+owllbasDownScaling = lens _opsWorksLayerLoadBasedAutoScalingDownScaling (\s a -> s { _opsWorksLayerLoadBasedAutoScalingDownScaling = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html#cfn-opsworks-layer-loadbasedautoscaling-enable+owllbasEnable :: Lens' OpsWorksLayerLoadBasedAutoScaling (Maybe (Val Bool'))+owllbasEnable = lens _opsWorksLayerLoadBasedAutoScalingEnable (\s a -> s { _opsWorksLayerLoadBasedAutoScalingEnable = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-loadbasedautoscaling.html#cfn-opsworks-layer-loadbasedautoscaling-upscaling+owllbasUpScaling :: Lens' OpsWorksLayerLoadBasedAutoScaling (Maybe OpsWorksLayerAutoScalingThresholds)+owllbasUpScaling = lens _opsWorksLayerLoadBasedAutoScalingUpScaling (\s a -> s { _opsWorksLayerLoadBasedAutoScalingUpScaling = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksLayerRecipes.hs view
@@ -0,0 +1,65 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html++module Stratosphere.ResourceProperties.OpsWorksLayerRecipes where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksLayerRecipes. See+-- | 'opsWorksLayerRecipes' for a more convenient constructor.+data OpsWorksLayerRecipes =+  OpsWorksLayerRecipes+  { _opsWorksLayerRecipesConfigure :: Maybe [Val Text]+  , _opsWorksLayerRecipesDeploy :: Maybe [Val Text]+  , _opsWorksLayerRecipesSetup :: Maybe [Val Text]+  , _opsWorksLayerRecipesShutdown :: Maybe [Val Text]+  , _opsWorksLayerRecipesUndeploy :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON OpsWorksLayerRecipes where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++instance FromJSON OpsWorksLayerRecipes where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++-- | Constructor for 'OpsWorksLayerRecipes' containing required fields as+-- | arguments.+opsWorksLayerRecipes+  :: OpsWorksLayerRecipes+opsWorksLayerRecipes  =+  OpsWorksLayerRecipes+  { _opsWorksLayerRecipesConfigure = Nothing+  , _opsWorksLayerRecipesDeploy = Nothing+  , _opsWorksLayerRecipesSetup = Nothing+  , _opsWorksLayerRecipesShutdown = Nothing+  , _opsWorksLayerRecipesUndeploy = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html#cfn-opsworks-layer-customrecipes-configure+owlrConfigure :: Lens' OpsWorksLayerRecipes (Maybe [Val Text])+owlrConfigure = lens _opsWorksLayerRecipesConfigure (\s a -> s { _opsWorksLayerRecipesConfigure = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html#cfn-opsworks-layer-customrecipes-deploy+owlrDeploy :: Lens' OpsWorksLayerRecipes (Maybe [Val Text])+owlrDeploy = lens _opsWorksLayerRecipesDeploy (\s a -> s { _opsWorksLayerRecipesDeploy = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html#cfn-opsworks-layer-customrecipes-setup+owlrSetup :: Lens' OpsWorksLayerRecipes (Maybe [Val Text])+owlrSetup = lens _opsWorksLayerRecipesSetup (\s a -> s { _opsWorksLayerRecipesSetup = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html#cfn-opsworks-layer-customrecipes-shutdown+owlrShutdown :: Lens' OpsWorksLayerRecipes (Maybe [Val Text])+owlrShutdown = lens _opsWorksLayerRecipesShutdown (\s a -> s { _opsWorksLayerRecipesShutdown = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-recipes.html#cfn-opsworks-layer-customrecipes-undeploy+owlrUndeploy :: Lens' OpsWorksLayerRecipes (Maybe [Val Text])+owlrUndeploy = lens _opsWorksLayerRecipesUndeploy (\s a -> s { _opsWorksLayerRecipesUndeploy = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksLayerShutdownEventConfiguration.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration-shutdowneventconfiguration.html++module Stratosphere.ResourceProperties.OpsWorksLayerShutdownEventConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksLayerShutdownEventConfiguration.+-- | See 'opsWorksLayerShutdownEventConfiguration' for a more convenient+-- | constructor.+data OpsWorksLayerShutdownEventConfiguration =+  OpsWorksLayerShutdownEventConfiguration+  { _opsWorksLayerShutdownEventConfigurationDelayUntilElbConnectionsDrained :: Maybe (Val Bool')+  , _opsWorksLayerShutdownEventConfigurationExecutionTimeout :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON OpsWorksLayerShutdownEventConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 40, omitNothingFields = True }++instance FromJSON OpsWorksLayerShutdownEventConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 40, omitNothingFields = True }++-- | Constructor for 'OpsWorksLayerShutdownEventConfiguration' containing+-- | required fields as arguments.+opsWorksLayerShutdownEventConfiguration+  :: OpsWorksLayerShutdownEventConfiguration+opsWorksLayerShutdownEventConfiguration  =+  OpsWorksLayerShutdownEventConfiguration+  { _opsWorksLayerShutdownEventConfigurationDelayUntilElbConnectionsDrained = Nothing+  , _opsWorksLayerShutdownEventConfigurationExecutionTimeout = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration-shutdowneventconfiguration.html#cfn-opsworks-layer-lifecycleconfiguration-shutdowneventconfiguration-delayuntilelbconnectionsdrained+owlsecDelayUntilElbConnectionsDrained :: Lens' OpsWorksLayerShutdownEventConfiguration (Maybe (Val Bool'))+owlsecDelayUntilElbConnectionsDrained = lens _opsWorksLayerShutdownEventConfigurationDelayUntilElbConnectionsDrained (\s a -> s { _opsWorksLayerShutdownEventConfigurationDelayUntilElbConnectionsDrained = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-lifecycleeventconfiguration-shutdowneventconfiguration.html#cfn-opsworks-layer-lifecycleconfiguration-shutdowneventconfiguration-executiontimeout+owlsecExecutionTimeout :: Lens' OpsWorksLayerShutdownEventConfiguration (Maybe (Val Integer'))+owlsecExecutionTimeout = lens _opsWorksLayerShutdownEventConfigurationExecutionTimeout (\s a -> s { _opsWorksLayerShutdownEventConfigurationExecutionTimeout = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksLayerVolumeConfiguration.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html++module Stratosphere.ResourceProperties.OpsWorksLayerVolumeConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksLayerVolumeConfiguration. See+-- | 'opsWorksLayerVolumeConfiguration' for a more convenient constructor.+data OpsWorksLayerVolumeConfiguration =+  OpsWorksLayerVolumeConfiguration+  { _opsWorksLayerVolumeConfigurationIops :: Maybe (Val Integer')+  , _opsWorksLayerVolumeConfigurationMountPoint :: Maybe (Val Text)+  , _opsWorksLayerVolumeConfigurationNumberOfDisks :: Maybe (Val Integer')+  , _opsWorksLayerVolumeConfigurationRaidLevel :: Maybe (Val Integer')+  , _opsWorksLayerVolumeConfigurationSize :: Maybe (Val Integer')+  , _opsWorksLayerVolumeConfigurationVolumeType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON OpsWorksLayerVolumeConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++instance FromJSON OpsWorksLayerVolumeConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++-- | Constructor for 'OpsWorksLayerVolumeConfiguration' containing required+-- | fields as arguments.+opsWorksLayerVolumeConfiguration+  :: OpsWorksLayerVolumeConfiguration+opsWorksLayerVolumeConfiguration  =+  OpsWorksLayerVolumeConfiguration+  { _opsWorksLayerVolumeConfigurationIops = Nothing+  , _opsWorksLayerVolumeConfigurationMountPoint = Nothing+  , _opsWorksLayerVolumeConfigurationNumberOfDisks = Nothing+  , _opsWorksLayerVolumeConfigurationRaidLevel = Nothing+  , _opsWorksLayerVolumeConfigurationSize = Nothing+  , _opsWorksLayerVolumeConfigurationVolumeType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-iops+owlvcIops :: Lens' OpsWorksLayerVolumeConfiguration (Maybe (Val Integer'))+owlvcIops = lens _opsWorksLayerVolumeConfigurationIops (\s a -> s { _opsWorksLayerVolumeConfigurationIops = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-mountpoint+owlvcMountPoint :: Lens' OpsWorksLayerVolumeConfiguration (Maybe (Val Text))+owlvcMountPoint = lens _opsWorksLayerVolumeConfigurationMountPoint (\s a -> s { _opsWorksLayerVolumeConfigurationMountPoint = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-numberofdisks+owlvcNumberOfDisks :: Lens' OpsWorksLayerVolumeConfiguration (Maybe (Val Integer'))+owlvcNumberOfDisks = lens _opsWorksLayerVolumeConfigurationNumberOfDisks (\s a -> s { _opsWorksLayerVolumeConfigurationNumberOfDisks = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-raidlevel+owlvcRaidLevel :: Lens' OpsWorksLayerVolumeConfiguration (Maybe (Val Integer'))+owlvcRaidLevel = lens _opsWorksLayerVolumeConfigurationRaidLevel (\s a -> s { _opsWorksLayerVolumeConfigurationRaidLevel = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-size+owlvcSize :: Lens' OpsWorksLayerVolumeConfiguration (Maybe (Val Integer'))+owlvcSize = lens _opsWorksLayerVolumeConfigurationSize (\s a -> s { _opsWorksLayerVolumeConfigurationSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-layer-volumeconfiguration.html#cfn-opsworks-layer-volconfig-volumetype+owlvcVolumeType :: Lens' OpsWorksLayerVolumeConfiguration (Maybe (Val Text))+owlvcVolumeType = lens _opsWorksLayerVolumeConfigurationVolumeType (\s a -> s { _opsWorksLayerVolumeConfigurationVolumeType = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksStackChefConfiguration.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-chefconfiguration.html++module Stratosphere.ResourceProperties.OpsWorksStackChefConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksStackChefConfiguration. See+-- | 'opsWorksStackChefConfiguration' for a more convenient constructor.+data OpsWorksStackChefConfiguration =+  OpsWorksStackChefConfiguration+  { _opsWorksStackChefConfigurationBerkshelfVersion :: Maybe (Val Text)+  , _opsWorksStackChefConfigurationManageBerkshelf :: Maybe (Val Bool')+  } deriving (Show, Generic)++instance ToJSON OpsWorksStackChefConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON OpsWorksStackChefConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'OpsWorksStackChefConfiguration' containing required+-- | fields as arguments.+opsWorksStackChefConfiguration+  :: OpsWorksStackChefConfiguration+opsWorksStackChefConfiguration  =+  OpsWorksStackChefConfiguration+  { _opsWorksStackChefConfigurationBerkshelfVersion = Nothing+  , _opsWorksStackChefConfigurationManageBerkshelf = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-chefconfiguration.html#cfn-opsworks-chefconfiguration-berkshelfversion+owsccBerkshelfVersion :: Lens' OpsWorksStackChefConfiguration (Maybe (Val Text))+owsccBerkshelfVersion = lens _opsWorksStackChefConfigurationBerkshelfVersion (\s a -> s { _opsWorksStackChefConfigurationBerkshelfVersion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-chefconfiguration.html#cfn-opsworks-chefconfiguration-berkshelfversion+owsccManageBerkshelf :: Lens' OpsWorksStackChefConfiguration (Maybe (Val Bool'))+owsccManageBerkshelf = lens _opsWorksStackChefConfigurationManageBerkshelf (\s a -> s { _opsWorksStackChefConfigurationManageBerkshelf = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksStackElasticIp.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-elasticip.html++module Stratosphere.ResourceProperties.OpsWorksStackElasticIp where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksStackElasticIp. See+-- | 'opsWorksStackElasticIp' for a more convenient constructor.+data OpsWorksStackElasticIp =+  OpsWorksStackElasticIp+  { _opsWorksStackElasticIpIp :: Val Text+  , _opsWorksStackElasticIpName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON OpsWorksStackElasticIp where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++instance FromJSON OpsWorksStackElasticIp where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++-- | Constructor for 'OpsWorksStackElasticIp' containing required fields as+-- | arguments.+opsWorksStackElasticIp+  :: Val Text -- ^ 'owseiIp'+  -> OpsWorksStackElasticIp+opsWorksStackElasticIp iparg =+  OpsWorksStackElasticIp+  { _opsWorksStackElasticIpIp = iparg+  , _opsWorksStackElasticIpName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-elasticip.html#cfn-opsworks-stack-elasticip-ip+owseiIp :: Lens' OpsWorksStackElasticIp (Val Text)+owseiIp = lens _opsWorksStackElasticIpIp (\s a -> s { _opsWorksStackElasticIpIp = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-elasticip.html#cfn-opsworks-stack-elasticip-name+owseiName :: Lens' OpsWorksStackElasticIp (Maybe (Val Text))+owseiName = lens _opsWorksStackElasticIpName (\s a -> s { _opsWorksStackElasticIpName = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksStackRdsDbInstance.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-rdsdbinstance.html++module Stratosphere.ResourceProperties.OpsWorksStackRdsDbInstance where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksStackRdsDbInstance. See+-- | 'opsWorksStackRdsDbInstance' for a more convenient constructor.+data OpsWorksStackRdsDbInstance =+  OpsWorksStackRdsDbInstance+  { _opsWorksStackRdsDbInstanceDbPassword :: Val Text+  , _opsWorksStackRdsDbInstanceDbUser :: Val Text+  , _opsWorksStackRdsDbInstanceRdsDbInstanceArn :: Val Text+  } deriving (Show, Generic)++instance ToJSON OpsWorksStackRdsDbInstance where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON OpsWorksStackRdsDbInstance where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'OpsWorksStackRdsDbInstance' containing required fields+-- | as arguments.+opsWorksStackRdsDbInstance+  :: Val Text -- ^ 'owsrdiDbPassword'+  -> Val Text -- ^ 'owsrdiDbUser'+  -> Val Text -- ^ 'owsrdiRdsDbInstanceArn'+  -> OpsWorksStackRdsDbInstance+opsWorksStackRdsDbInstance dbPasswordarg dbUserarg rdsDbInstanceArnarg =+  OpsWorksStackRdsDbInstance+  { _opsWorksStackRdsDbInstanceDbPassword = dbPasswordarg+  , _opsWorksStackRdsDbInstanceDbUser = dbUserarg+  , _opsWorksStackRdsDbInstanceRdsDbInstanceArn = rdsDbInstanceArnarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-rdsdbinstance.html#cfn-opsworks-stack-rdsdbinstance-dbpassword+owsrdiDbPassword :: Lens' OpsWorksStackRdsDbInstance (Val Text)+owsrdiDbPassword = lens _opsWorksStackRdsDbInstanceDbPassword (\s a -> s { _opsWorksStackRdsDbInstanceDbPassword = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-rdsdbinstance.html#cfn-opsworks-stack-rdsdbinstance-dbuser+owsrdiDbUser :: Lens' OpsWorksStackRdsDbInstance (Val Text)+owsrdiDbUser = lens _opsWorksStackRdsDbInstanceDbUser (\s a -> s { _opsWorksStackRdsDbInstanceDbUser = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-rdsdbinstance.html#cfn-opsworks-stack-rdsdbinstance-rdsdbinstancearn+owsrdiRdsDbInstanceArn :: Lens' OpsWorksStackRdsDbInstance (Val Text)+owsrdiRdsDbInstanceArn = lens _opsWorksStackRdsDbInstanceRdsDbInstanceArn (\s a -> s { _opsWorksStackRdsDbInstanceRdsDbInstanceArn = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksStackSource.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html++module Stratosphere.ResourceProperties.OpsWorksStackSource where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksStackSource. See+-- | 'opsWorksStackSource' for a more convenient constructor.+data OpsWorksStackSource =+  OpsWorksStackSource+  { _opsWorksStackSourcePassword :: Maybe (Val Text)+  , _opsWorksStackSourceRevision :: Maybe (Val Text)+  , _opsWorksStackSourceSshKey :: Maybe (Val Text)+  , _opsWorksStackSourceType :: Maybe (Val Text)+  , _opsWorksStackSourceUrl :: Maybe (Val Text)+  , _opsWorksStackSourceUsername :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON OpsWorksStackSource where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++instance FromJSON OpsWorksStackSource where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++-- | Constructor for 'OpsWorksStackSource' containing required fields as+-- | arguments.+opsWorksStackSource+  :: OpsWorksStackSource+opsWorksStackSource  =+  OpsWorksStackSource+  { _opsWorksStackSourcePassword = Nothing+  , _opsWorksStackSourceRevision = Nothing+  , _opsWorksStackSourceSshKey = Nothing+  , _opsWorksStackSourceType = Nothing+  , _opsWorksStackSourceUrl = Nothing+  , _opsWorksStackSourceUsername = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-password+owssPassword :: Lens' OpsWorksStackSource (Maybe (Val Text))+owssPassword = lens _opsWorksStackSourcePassword (\s a -> s { _opsWorksStackSourcePassword = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-revision+owssRevision :: Lens' OpsWorksStackSource (Maybe (Val Text))+owssRevision = lens _opsWorksStackSourceRevision (\s a -> s { _opsWorksStackSourceRevision = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-sshkey+owssSshKey :: Lens' OpsWorksStackSource (Maybe (Val Text))+owssSshKey = lens _opsWorksStackSourceSshKey (\s a -> s { _opsWorksStackSourceSshKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-type+owssType :: Lens' OpsWorksStackSource (Maybe (Val Text))+owssType = lens _opsWorksStackSourceType (\s a -> s { _opsWorksStackSourceType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-url+owssUrl :: Lens' OpsWorksStackSource (Maybe (Val Text))+owssUrl = lens _opsWorksStackSourceUrl (\s a -> s { _opsWorksStackSourceUrl = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html#cfn-opsworks-custcookbooksource-username+owssUsername :: Lens' OpsWorksStackSource (Maybe (Val Text))+owssUsername = lens _opsWorksStackSourceUsername (\s a -> s { _opsWorksStackSourceUsername = a })
+ library-gen/Stratosphere/ResourceProperties/OpsWorksStackStackConfigurationManager.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-stackconfigmanager.html++module Stratosphere.ResourceProperties.OpsWorksStackStackConfigurationManager where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksStackStackConfigurationManager. See+-- | 'opsWorksStackStackConfigurationManager' for a more convenient+-- | constructor.+data OpsWorksStackStackConfigurationManager =+  OpsWorksStackStackConfigurationManager+  { _opsWorksStackStackConfigurationManagerName :: Maybe (Val Text)+  , _opsWorksStackStackConfigurationManagerVersion :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON OpsWorksStackStackConfigurationManager where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++instance FromJSON OpsWorksStackStackConfigurationManager where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++-- | Constructor for 'OpsWorksStackStackConfigurationManager' containing+-- | required fields as arguments.+opsWorksStackStackConfigurationManager+  :: OpsWorksStackStackConfigurationManager+opsWorksStackStackConfigurationManager  =+  OpsWorksStackStackConfigurationManager+  { _opsWorksStackStackConfigurationManagerName = Nothing+  , _opsWorksStackStackConfigurationManagerVersion = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-stackconfigmanager.html#cfn-opsworks-configmanager-name+owsscmName :: Lens' OpsWorksStackStackConfigurationManager (Maybe (Val Text))+owsscmName = lens _opsWorksStackStackConfigurationManagerName (\s a -> s { _opsWorksStackStackConfigurationManagerName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-stackconfigmanager.html#cfn-opsworks-configmanager-version+owsscmVersion :: Lens' OpsWorksStackStackConfigurationManager (Maybe (Val Text))+owsscmVersion = lens _opsWorksStackStackConfigurationManagerVersion (\s a -> s { _opsWorksStackStackConfigurationManagerVersion = a })
− library-gen/Stratosphere/ResourceProperties/PrivateIpAddressSpecification.hs
@@ -1,51 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}----module Stratosphere.ResourceProperties.PrivateIpAddressSpecification where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for PrivateIpAddressSpecification. See--- 'privateIpAddressSpecification' for a more convenient constructor.-data PrivateIpAddressSpecification =-  PrivateIpAddressSpecification-  { _privateIpAddressSpecificationPrivateIpAddress :: Val Text-  , _privateIpAddressSpecificationPrimary :: Val Bool'-  } deriving (Show, Generic)--instance ToJSON PrivateIpAddressSpecification where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }--instance FromJSON PrivateIpAddressSpecification where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }---- | Constructor for 'PrivateIpAddressSpecification' containing required--- fields as arguments.-privateIpAddressSpecification-  :: Val Text -- ^ 'piasPrivateIpAddress'-  -> Val Bool' -- ^ 'piasPrimary'-  -> PrivateIpAddressSpecification-privateIpAddressSpecification privateIpAddressarg primaryarg =-  PrivateIpAddressSpecification-  { _privateIpAddressSpecificationPrivateIpAddress = privateIpAddressarg-  , _privateIpAddressSpecificationPrimary = primaryarg-  }---- | The private IP address of the network interface.-piasPrivateIpAddress :: Lens' PrivateIpAddressSpecification (Val Text)-piasPrivateIpAddress = lens _privateIpAddressSpecificationPrivateIpAddress (\s a -> s { _privateIpAddressSpecificationPrivateIpAddress = a })---- | Sets the private IP address as the primary private address. You can set--- only one primary private IP address. If you don't specify a primary private--- IP address, Amazon EC2 automatically assigns a primary private IP address.-piasPrimary :: Lens' PrivateIpAddressSpecification (Val Bool')-piasPrimary = lens _privateIpAddressSpecificationPrimary (\s a -> s { _privateIpAddressSpecificationPrimary = a })
+ library-gen/Stratosphere/ResourceProperties/RDSDBSecurityGroupIngressProperty.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html++module Stratosphere.ResourceProperties.RDSDBSecurityGroupIngressProperty where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for RDSDBSecurityGroupIngressProperty. See+-- | 'rdsdbSecurityGroupIngressProperty' for a more convenient constructor.+data RDSDBSecurityGroupIngressProperty =+  RDSDBSecurityGroupIngressProperty+  { _rDSDBSecurityGroupIngressPropertyCDIRIP :: Maybe (Val Text)+  , _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupId :: Maybe (Val Text)+  , _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupName :: Maybe (Val Text)+  , _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupOwnerId :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON RDSDBSecurityGroupIngressProperty where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON RDSDBSecurityGroupIngressProperty where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'RDSDBSecurityGroupIngressProperty' containing required+-- | fields as arguments.+rdsdbSecurityGroupIngressProperty+  :: RDSDBSecurityGroupIngressProperty+rdsdbSecurityGroupIngressProperty  =+  RDSDBSecurityGroupIngressProperty+  { _rDSDBSecurityGroupIngressPropertyCDIRIP = Nothing+  , _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupId = Nothing+  , _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupName = Nothing+  , _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupOwnerId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html#cfn-rds-securitygroup-cidrip+rdsdbsgipCDIRIP :: Lens' RDSDBSecurityGroupIngressProperty (Maybe (Val Text))+rdsdbsgipCDIRIP = lens _rDSDBSecurityGroupIngressPropertyCDIRIP (\s a -> s { _rDSDBSecurityGroupIngressPropertyCDIRIP = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html#cfn-rds-securitygroup-ec2securitygroupid+rdsdbsgipEC2SecurityGroupId :: Lens' RDSDBSecurityGroupIngressProperty (Maybe (Val Text))+rdsdbsgipEC2SecurityGroupId = lens _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupId (\s a -> s { _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html#cfn-rds-securitygroup-ec2securitygroupname+rdsdbsgipEC2SecurityGroupName :: Lens' RDSDBSecurityGroupIngressProperty (Maybe (Val Text))+rdsdbsgipEC2SecurityGroupName = lens _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupName (\s a -> s { _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group-rule.html#cfn-rds-securitygroup-ec2securitygroupownerid+rdsdbsgipEC2SecurityGroupOwnerId :: Lens' RDSDBSecurityGroupIngressProperty (Maybe (Val Text))+rdsdbsgipEC2SecurityGroupOwnerId = lens _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupOwnerId (\s a -> s { _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupOwnerId = a })
+ library-gen/Stratosphere/ResourceProperties/RDSOptionGroupOptionConfiguration.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html++module Stratosphere.ResourceProperties.RDSOptionGroupOptionConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.RDSOptionGroupOptionSetting++-- | Full data type definition for RDSOptionGroupOptionConfiguration. See+-- | 'rdsOptionGroupOptionConfiguration' for a more convenient constructor.+data RDSOptionGroupOptionConfiguration =+  RDSOptionGroupOptionConfiguration+  { _rDSOptionGroupOptionConfigurationDBSecurityGroupMemberships :: Maybe [Val Text]+  , _rDSOptionGroupOptionConfigurationOptionName :: Val Text+  , _rDSOptionGroupOptionConfigurationOptionSettings :: Maybe RDSOptionGroupOptionSetting+  , _rDSOptionGroupOptionConfigurationPort :: Maybe (Val Integer')+  , _rDSOptionGroupOptionConfigurationVpcSecurityGroupMemberships :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON RDSOptionGroupOptionConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON RDSOptionGroupOptionConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'RDSOptionGroupOptionConfiguration' containing required+-- | fields as arguments.+rdsOptionGroupOptionConfiguration+  :: Val Text -- ^ 'rdsogocOptionName'+  -> RDSOptionGroupOptionConfiguration+rdsOptionGroupOptionConfiguration optionNamearg =+  RDSOptionGroupOptionConfiguration+  { _rDSOptionGroupOptionConfigurationDBSecurityGroupMemberships = Nothing+  , _rDSOptionGroupOptionConfigurationOptionName = optionNamearg+  , _rDSOptionGroupOptionConfigurationOptionSettings = Nothing+  , _rDSOptionGroupOptionConfigurationPort = Nothing+  , _rDSOptionGroupOptionConfigurationVpcSecurityGroupMemberships = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-dbsecuritygroupmemberships+rdsogocDBSecurityGroupMemberships :: Lens' RDSOptionGroupOptionConfiguration (Maybe [Val Text])+rdsogocDBSecurityGroupMemberships = lens _rDSOptionGroupOptionConfigurationDBSecurityGroupMemberships (\s a -> s { _rDSOptionGroupOptionConfigurationDBSecurityGroupMemberships = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-optionname+rdsogocOptionName :: Lens' RDSOptionGroupOptionConfiguration (Val Text)+rdsogocOptionName = lens _rDSOptionGroupOptionConfigurationOptionName (\s a -> s { _rDSOptionGroupOptionConfigurationOptionName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-optionsettings+rdsogocOptionSettings :: Lens' RDSOptionGroupOptionConfiguration (Maybe RDSOptionGroupOptionSetting)+rdsogocOptionSettings = lens _rDSOptionGroupOptionConfigurationOptionSettings (\s a -> s { _rDSOptionGroupOptionConfigurationOptionSettings = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-port+rdsogocPort :: Lens' RDSOptionGroupOptionConfiguration (Maybe (Val Integer'))+rdsogocPort = lens _rDSOptionGroupOptionConfigurationPort (\s a -> s { _rDSOptionGroupOptionConfigurationPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations.html#cfn-rds-optiongroup-optionconfigurations-vpcsecuritygroupmemberships+rdsogocVpcSecurityGroupMemberships :: Lens' RDSOptionGroupOptionConfiguration (Maybe [Val Text])+rdsogocVpcSecurityGroupMemberships = lens _rDSOptionGroupOptionConfigurationVpcSecurityGroupMemberships (\s a -> s { _rDSOptionGroupOptionConfigurationVpcSecurityGroupMemberships = a })
+ library-gen/Stratosphere/ResourceProperties/RDSOptionGroupOptionSetting.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations-optionsettings.html++module Stratosphere.ResourceProperties.RDSOptionGroupOptionSetting where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for RDSOptionGroupOptionSetting. See+-- | 'rdsOptionGroupOptionSetting' for a more convenient constructor.+data RDSOptionGroupOptionSetting =+  RDSOptionGroupOptionSetting+  { _rDSOptionGroupOptionSettingName :: Maybe (Val Text)+  , _rDSOptionGroupOptionSettingValue :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON RDSOptionGroupOptionSetting where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON RDSOptionGroupOptionSetting where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'RDSOptionGroupOptionSetting' containing required fields+-- | as arguments.+rdsOptionGroupOptionSetting+  :: RDSOptionGroupOptionSetting+rdsOptionGroupOptionSetting  =+  RDSOptionGroupOptionSetting+  { _rDSOptionGroupOptionSettingName = Nothing+  , _rDSOptionGroupOptionSettingValue = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations-optionsettings.html#cfn-rds-optiongroup-optionconfigurations-optionsettings-name+rdsogosName :: Lens' RDSOptionGroupOptionSetting (Maybe (Val Text))+rdsogosName = lens _rDSOptionGroupOptionSettingName (\s a -> s { _rDSOptionGroupOptionSettingName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-optiongroup-optionconfigurations-optionsettings.html#cfn-rds-optiongroup-optionconfigurations-optionsettings-value+rdsogosValue :: Lens' RDSOptionGroupOptionSetting (Maybe (Val Text))+rdsogosValue = lens _rDSOptionGroupOptionSettingValue (\s a -> s { _rDSOptionGroupOptionSettingValue = a })
− library-gen/Stratosphere/ResourceProperties/RDSSecurityGroupRule.hs
@@ -1,71 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The Amazon RDS security group rule is an embedded property of the--- AWS::RDS::DBSecurityGroup type.--module Stratosphere.ResourceProperties.RDSSecurityGroupRule where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for RDSSecurityGroupRule. See--- 'rdsSecurityGroupRule' for a more convenient constructor.-data RDSSecurityGroupRule =-  RDSSecurityGroupRule-  { _rDSSecurityGroupRuleCIDRIP :: Maybe (Val Text)-  , _rDSSecurityGroupRuleEC2SecurityGroupId :: Maybe (Val Text)-  , _rDSSecurityGroupRuleEC2SecurityGroupName :: Maybe (Val Text)-  , _rDSSecurityGroupRuleEC2SecurityGroupOwnerId :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON RDSSecurityGroupRule where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }--instance FromJSON RDSSecurityGroupRule where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }---- | Constructor for 'RDSSecurityGroupRule' containing required fields as--- arguments.-rdsSecurityGroupRule-  :: RDSSecurityGroupRule-rdsSecurityGroupRule  =-  RDSSecurityGroupRule-  { _rDSSecurityGroupRuleCIDRIP = Nothing-  , _rDSSecurityGroupRuleEC2SecurityGroupId = Nothing-  , _rDSSecurityGroupRuleEC2SecurityGroupName = Nothing-  , _rDSSecurityGroupRuleEC2SecurityGroupOwnerId = Nothing-  }---- | The IP range to authorize. For an overview of CIDR ranges, go to the--- Wikipedia Tutorial. Type: String-rdssgrCIDRIP :: Lens' RDSSecurityGroupRule (Maybe (Val Text))-rdssgrCIDRIP = lens _rDSSecurityGroupRuleCIDRIP (\s a -> s { _rDSSecurityGroupRuleCIDRIP = a })---- | Id of the VPC or EC2 Security Group to authorize. For VPC DB Security--- Groups, use EC2SecurityGroupId. For EC2 Security Groups, use--- EC2SecurityGroupOwnerId and either EC2SecurityGroupName or--- EC2SecurityGroupId. Type: String-rdssgrEC2SecurityGroupId :: Lens' RDSSecurityGroupRule (Maybe (Val Text))-rdssgrEC2SecurityGroupId = lens _rDSSecurityGroupRuleEC2SecurityGroupId (\s a -> s { _rDSSecurityGroupRuleEC2SecurityGroupId = a })---- | Name of the EC2 Security Group to authorize. For VPC DB Security Groups,--- use EC2SecurityGroupId. For EC2 Security Groups, use--- EC2SecurityGroupOwnerId and either EC2SecurityGroupName or--- EC2SecurityGroupId. Type: String-rdssgrEC2SecurityGroupName :: Lens' RDSSecurityGroupRule (Maybe (Val Text))-rdssgrEC2SecurityGroupName = lens _rDSSecurityGroupRuleEC2SecurityGroupName (\s a -> s { _rDSSecurityGroupRuleEC2SecurityGroupName = a })---- | AWS Account Number of the owner of the EC2 Security Group specified in--- the EC2SecurityGroupName parameter. The AWS Access Key ID is not an--- acceptable value. For VPC DB Security Groups, use EC2SecurityGroupId. For--- EC2 Security Groups, use EC2SecurityGroupOwnerId and either--- EC2SecurityGroupName or EC2SecurityGroupId. Type: String-rdssgrEC2SecurityGroupOwnerId :: Lens' RDSSecurityGroupRule (Maybe (Val Text))-rdssgrEC2SecurityGroupOwnerId = lens _rDSSecurityGroupRuleEC2SecurityGroupOwnerId (\s a -> s { _rDSSecurityGroupRuleEC2SecurityGroupOwnerId = a })
− library-gen/Stratosphere/ResourceProperties/RecordSetGeoLocation.hs
@@ -1,66 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The GeoLocation property is part of the AWS::Route53::RecordSet resource--- that describes how Amazon Route 53 responds to DNS queries based on the--- geographic location of the query.--module Stratosphere.ResourceProperties.RecordSetGeoLocation where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for RecordSetGeoLocation. See--- 'recordSetGeoLocation' for a more convenient constructor.-data RecordSetGeoLocation =-  RecordSetGeoLocation-  { _recordSetGeoLocationContinentCode :: Maybe (Val Text)-  , _recordSetGeoLocationCountryCode :: Maybe (Val Text)-  , _recordSetGeoLocationSubdivisionCode :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON RecordSetGeoLocation where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }--instance FromJSON RecordSetGeoLocation where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }---- | Constructor for 'RecordSetGeoLocation' containing required fields as--- arguments.-recordSetGeoLocation-  :: RecordSetGeoLocation-recordSetGeoLocation  =-  RecordSetGeoLocation-  { _recordSetGeoLocationContinentCode = Nothing-  , _recordSetGeoLocationCountryCode = Nothing-  , _recordSetGeoLocationSubdivisionCode = Nothing-  }---- | All DNS queries from the continent that you specified are routed to this--- resource record set. If you specify this property, omit the CountryCode and--- SubdivisionCode properties. For valid values, see the ContinentCode element--- in the Amazon Route 53 API Reference. Type: String-rsglContinentCode :: Lens' RecordSetGeoLocation (Maybe (Val Text))-rsglContinentCode = lens _recordSetGeoLocationContinentCode (\s a -> s { _recordSetGeoLocationContinentCode = a })---- | All DNS queries from the country that you specified are routed to this--- resource record set. If you specify this property, omit the ContinentCode--- property. For valid values, see the CountryCode element in the Amazon Route--- 53 API Reference. Type: String-rsglCountryCode :: Lens' RecordSetGeoLocation (Maybe (Val Text))-rsglCountryCode = lens _recordSetGeoLocationCountryCode (\s a -> s { _recordSetGeoLocationCountryCode = a })---- | If you specified US for the country code, you can specify a state in the--- United States. All DNS queries from the state that you specified are routed--- to this resource record set. If you specify this property, you must specify--- US for the CountryCode and omit the ContinentCode property. For valid--- values, see the SubdivisionCode element in the Amazon Route 53 API--- Reference. Type: String-rsglSubdivisionCode :: Lens' RecordSetGeoLocation (Maybe (Val Text))-rsglSubdivisionCode = lens _recordSetGeoLocationSubdivisionCode (\s a -> s { _recordSetGeoLocationSubdivisionCode = a })
+ library-gen/Stratosphere/ResourceProperties/RedshiftClusterParameterGroupParameter.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-property-redshift-clusterparametergroup-parameter.html++module Stratosphere.ResourceProperties.RedshiftClusterParameterGroupParameter where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for RedshiftClusterParameterGroupParameter. See+-- | 'redshiftClusterParameterGroupParameter' for a more convenient+-- | constructor.+data RedshiftClusterParameterGroupParameter =+  RedshiftClusterParameterGroupParameter+  { _redshiftClusterParameterGroupParameterParameterName :: Val Text+  , _redshiftClusterParameterGroupParameterParameterValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON RedshiftClusterParameterGroupParameter where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++instance FromJSON RedshiftClusterParameterGroupParameter where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 39, omitNothingFields = True }++-- | Constructor for 'RedshiftClusterParameterGroupParameter' containing+-- | required fields as arguments.+redshiftClusterParameterGroupParameter+  :: Val Text -- ^ 'rcpgpParameterName'+  -> Val Text -- ^ 'rcpgpParameterValue'+  -> RedshiftClusterParameterGroupParameter+redshiftClusterParameterGroupParameter parameterNamearg parameterValuearg =+  RedshiftClusterParameterGroupParameter+  { _redshiftClusterParameterGroupParameterParameterName = parameterNamearg+  , _redshiftClusterParameterGroupParameterParameterValue = parameterValuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-property-redshift-clusterparametergroup-parameter.html#cfn-redshift-clusterparametergroup-parameter-parametername+rcpgpParameterName :: Lens' RedshiftClusterParameterGroupParameter (Val Text)+rcpgpParameterName = lens _redshiftClusterParameterGroupParameterParameterName (\s a -> s { _redshiftClusterParameterGroupParameterParameterName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-property-redshift-clusterparametergroup-parameter.html#cfn-redshift-clusterparametergroup-parameter-parametervalue+rcpgpParameterValue :: Lens' RedshiftClusterParameterGroupParameter (Val Text)+rcpgpParameterValue = lens _redshiftClusterParameterGroupParameterParameterValue (\s a -> s { _redshiftClusterParameterGroupParameterParameterValue = a })
− library-gen/Stratosphere/ResourceProperties/ResourceTag.hs
@@ -1,63 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | You can use the AWS CloudFormation Resource Tags property to apply tags--- to resources, which can help you identify and categorize those resources.--- You can tag only resources for which AWS CloudFormation supports tagging.--- For information about which resources you can tag with AWS CloudFormation,--- see the individual resources in AWS Resource Types Reference. In addition--- to any tags you define, AWS CloudFormation automatically creates the--- following stack-level tags with the prefix aws:: All stack-level tags,--- including automatically created tags, are propagated to resources that AWS--- CloudFormation supports. Currently, tags are not propagated to Amazon EBS--- volumes that are created from block device mappings.--module Stratosphere.ResourceProperties.ResourceTag where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for ResourceTag. See 'resourceTag' for a more--- convenient constructor.-data ResourceTag =-  ResourceTag-  { _resourceTagKey :: Val Text-  , _resourceTagValue :: Val Text-  } deriving (Show, Generic)--instance ToJSON ResourceTag where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 12, omitNothingFields = True }--instance FromJSON ResourceTag where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 12, omitNothingFields = True }---- | Constructor for 'ResourceTag' containing required fields as arguments.-resourceTag-  :: Val Text -- ^ 'rtKey'-  -> Val Text -- ^ 'rtValue'-  -> ResourceTag-resourceTag keyarg valuearg =-  ResourceTag-  { _resourceTagKey = keyarg-  , _resourceTagValue = valuearg-  }---- | The key name of the tag. You can specify a value that is 1 to 128 Unicode--- characters in length and cannot be prefixed with aws:. You can use any of--- the following characters: the set of Unicode letters, digits, whitespace,--- _, ., /, =, +, and -.-rtKey :: Lens' ResourceTag (Val Text)-rtKey = lens _resourceTagKey (\s a -> s { _resourceTagKey = a })---- | The value for the tag. You can specify a value that is 1 to 128 Unicode--- characters in length and cannot be prefixed with aws:. You can use any of--- the following characters: the set of Unicode letters, digits, whitespace,--- _, ., /, =, +, and -.-rtValue :: Lens' ResourceTag (Val Text)-rtValue = lens _resourceTagValue (\s a -> s { _resourceTagValue = a })
+ library-gen/Stratosphere/ResourceProperties/Route53HealthCheckHealthCheckConfig.hs view
@@ -0,0 +1,84 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html++module Stratosphere.ResourceProperties.Route53HealthCheckHealthCheckConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for Route53HealthCheckHealthCheckConfig. See+-- | 'route53HealthCheckHealthCheckConfig' for a more convenient constructor.+data Route53HealthCheckHealthCheckConfig =+  Route53HealthCheckHealthCheckConfig+  { _route53HealthCheckHealthCheckConfigFailureThreshold :: Maybe (Val Integer')+  , _route53HealthCheckHealthCheckConfigFullyQualifiedDomainName :: Maybe (Val Text)+  , _route53HealthCheckHealthCheckConfigIPAddress :: Maybe (Val Text)+  , _route53HealthCheckHealthCheckConfigPort :: Maybe (Val Integer')+  , _route53HealthCheckHealthCheckConfigRequestInterval :: Maybe (Val Integer')+  , _route53HealthCheckHealthCheckConfigResourcePath :: Maybe (Val Text)+  , _route53HealthCheckHealthCheckConfigSearchString :: Maybe (Val Text)+  , _route53HealthCheckHealthCheckConfigType :: Val Text+  } deriving (Show, Generic)++instance ToJSON Route53HealthCheckHealthCheckConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++instance FromJSON Route53HealthCheckHealthCheckConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++-- | Constructor for 'Route53HealthCheckHealthCheckConfig' containing required+-- | fields as arguments.+route53HealthCheckHealthCheckConfig+  :: Val Text -- ^ 'rhchccType'+  -> Route53HealthCheckHealthCheckConfig+route53HealthCheckHealthCheckConfig typearg =+  Route53HealthCheckHealthCheckConfig+  { _route53HealthCheckHealthCheckConfigFailureThreshold = Nothing+  , _route53HealthCheckHealthCheckConfigFullyQualifiedDomainName = Nothing+  , _route53HealthCheckHealthCheckConfigIPAddress = Nothing+  , _route53HealthCheckHealthCheckConfigPort = Nothing+  , _route53HealthCheckHealthCheckConfigRequestInterval = Nothing+  , _route53HealthCheckHealthCheckConfigResourcePath = Nothing+  , _route53HealthCheckHealthCheckConfigSearchString = Nothing+  , _route53HealthCheckHealthCheckConfigType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-failurethreshold+rhchccFailureThreshold :: Lens' Route53HealthCheckHealthCheckConfig (Maybe (Val Integer'))+rhchccFailureThreshold = lens _route53HealthCheckHealthCheckConfigFailureThreshold (\s a -> s { _route53HealthCheckHealthCheckConfigFailureThreshold = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-fullyqualifieddomainname+rhchccFullyQualifiedDomainName :: Lens' Route53HealthCheckHealthCheckConfig (Maybe (Val Text))+rhchccFullyQualifiedDomainName = lens _route53HealthCheckHealthCheckConfigFullyQualifiedDomainName (\s a -> s { _route53HealthCheckHealthCheckConfigFullyQualifiedDomainName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-ipaddress+rhchccIPAddress :: Lens' Route53HealthCheckHealthCheckConfig (Maybe (Val Text))+rhchccIPAddress = lens _route53HealthCheckHealthCheckConfigIPAddress (\s a -> s { _route53HealthCheckHealthCheckConfigIPAddress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-port+rhchccPort :: Lens' Route53HealthCheckHealthCheckConfig (Maybe (Val Integer'))+rhchccPort = lens _route53HealthCheckHealthCheckConfigPort (\s a -> s { _route53HealthCheckHealthCheckConfigPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-requestinterval+rhchccRequestInterval :: Lens' Route53HealthCheckHealthCheckConfig (Maybe (Val Integer'))+rhchccRequestInterval = lens _route53HealthCheckHealthCheckConfigRequestInterval (\s a -> s { _route53HealthCheckHealthCheckConfigRequestInterval = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-resourcepath+rhchccResourcePath :: Lens' Route53HealthCheckHealthCheckConfig (Maybe (Val Text))+rhchccResourcePath = lens _route53HealthCheckHealthCheckConfigResourcePath (\s a -> s { _route53HealthCheckHealthCheckConfigResourcePath = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-searchstring+rhchccSearchString :: Lens' Route53HealthCheckHealthCheckConfig (Maybe (Val Text))+rhchccSearchString = lens _route53HealthCheckHealthCheckConfigSearchString (\s a -> s { _route53HealthCheckHealthCheckConfigSearchString = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthcheckconfig.html#cfn-route53-healthcheck-healthcheckconfig-type+rhchccType :: Lens' Route53HealthCheckHealthCheckConfig (Val Text)+rhchccType = lens _route53HealthCheckHealthCheckConfigType (\s a -> s { _route53HealthCheckHealthCheckConfigType = a })
+ library-gen/Stratosphere/ResourceProperties/Route53HealthCheckHealthCheckTag.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthchecktags.html++module Stratosphere.ResourceProperties.Route53HealthCheckHealthCheckTag where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for Route53HealthCheckHealthCheckTag. See+-- | 'route53HealthCheckHealthCheckTag' for a more convenient constructor.+data Route53HealthCheckHealthCheckTag =+  Route53HealthCheckHealthCheckTag+  { _route53HealthCheckHealthCheckTagKey :: Val Text+  , _route53HealthCheckHealthCheckTagValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON Route53HealthCheckHealthCheckTag where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++instance FromJSON Route53HealthCheckHealthCheckTag where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++-- | Constructor for 'Route53HealthCheckHealthCheckTag' containing required+-- | fields as arguments.+route53HealthCheckHealthCheckTag+  :: Val Text -- ^ 'rhchctKey'+  -> Val Text -- ^ 'rhchctValue'+  -> Route53HealthCheckHealthCheckTag+route53HealthCheckHealthCheckTag keyarg valuearg =+  Route53HealthCheckHealthCheckTag+  { _route53HealthCheckHealthCheckTagKey = keyarg+  , _route53HealthCheckHealthCheckTagValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthchecktags.html#cfn-route53-healthchecktags-key+rhchctKey :: Lens' Route53HealthCheckHealthCheckTag (Val Text)+rhchctKey = lens _route53HealthCheckHealthCheckTagKey (\s a -> s { _route53HealthCheckHealthCheckTagKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-healthcheck-healthchecktags.html#cfn-route53-healthchecktags-value+rhchctValue :: Lens' Route53HealthCheckHealthCheckTag (Val Text)+rhchctValue = lens _route53HealthCheckHealthCheckTagValue (\s a -> s { _route53HealthCheckHealthCheckTagValue = a })
+ library-gen/Stratosphere/ResourceProperties/Route53HostedZoneHostedZoneConfig.hs view
@@ -0,0 +1,41 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzoneconfig.html++module Stratosphere.ResourceProperties.Route53HostedZoneHostedZoneConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for Route53HostedZoneHostedZoneConfig. See+-- | 'route53HostedZoneHostedZoneConfig' for a more convenient constructor.+data Route53HostedZoneHostedZoneConfig =+  Route53HostedZoneHostedZoneConfig+  { _route53HostedZoneHostedZoneConfigComment :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON Route53HostedZoneHostedZoneConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON Route53HostedZoneHostedZoneConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'Route53HostedZoneHostedZoneConfig' containing required+-- | fields as arguments.+route53HostedZoneHostedZoneConfig+  :: Route53HostedZoneHostedZoneConfig+route53HostedZoneHostedZoneConfig  =+  Route53HostedZoneHostedZoneConfig+  { _route53HostedZoneHostedZoneConfigComment = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzoneconfig.html#cfn-route53-hostedzone-hostedzoneconfig-comment+rhzhzcComment :: Lens' Route53HostedZoneHostedZoneConfig (Maybe (Val Text))+rhzhzcComment = lens _route53HostedZoneHostedZoneConfigComment (\s a -> s { _route53HostedZoneHostedZoneConfigComment = a })
+ library-gen/Stratosphere/ResourceProperties/Route53HostedZoneHostedZoneTag.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzonetags.html++module Stratosphere.ResourceProperties.Route53HostedZoneHostedZoneTag where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for Route53HostedZoneHostedZoneTag. See+-- | 'route53HostedZoneHostedZoneTag' for a more convenient constructor.+data Route53HostedZoneHostedZoneTag =+  Route53HostedZoneHostedZoneTag+  { _route53HostedZoneHostedZoneTagKey :: Val Text+  , _route53HostedZoneHostedZoneTagValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON Route53HostedZoneHostedZoneTag where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON Route53HostedZoneHostedZoneTag where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'Route53HostedZoneHostedZoneTag' containing required+-- | fields as arguments.+route53HostedZoneHostedZoneTag+  :: Val Text -- ^ 'rhzhztKey'+  -> Val Text -- ^ 'rhzhztValue'+  -> Route53HostedZoneHostedZoneTag+route53HostedZoneHostedZoneTag keyarg valuearg =+  Route53HostedZoneHostedZoneTag+  { _route53HostedZoneHostedZoneTagKey = keyarg+  , _route53HostedZoneHostedZoneTagValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzonetags.html#cfn-route53-hostedzonetags-key+rhzhztKey :: Lens' Route53HostedZoneHostedZoneTag (Val Text)+rhzhztKey = lens _route53HostedZoneHostedZoneTagKey (\s a -> s { _route53HostedZoneHostedZoneTagKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-hostedzone-hostedzonetags.html#cfn-route53-hostedzonetags-value+rhzhztValue :: Lens' Route53HostedZoneHostedZoneTag (Val Text)+rhzhztValue = lens _route53HostedZoneHostedZoneTagValue (\s a -> s { _route53HostedZoneHostedZoneTagValue = a })
+ library-gen/Stratosphere/ResourceProperties/Route53HostedZoneVPC.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone-hostedzonevpcs.html++module Stratosphere.ResourceProperties.Route53HostedZoneVPC where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for Route53HostedZoneVPC. See+-- | 'route53HostedZoneVPC' for a more convenient constructor.+data Route53HostedZoneVPC =+  Route53HostedZoneVPC+  { _route53HostedZoneVPCVPCId :: Val Text+  , _route53HostedZoneVPCVPCRegion :: Val Text+  } deriving (Show, Generic)++instance ToJSON Route53HostedZoneVPC where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++instance FromJSON Route53HostedZoneVPC where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++-- | Constructor for 'Route53HostedZoneVPC' containing required fields as+-- | arguments.+route53HostedZoneVPC+  :: Val Text -- ^ 'rhzvpcVPCId'+  -> Val Text -- ^ 'rhzvpcVPCRegion'+  -> Route53HostedZoneVPC+route53HostedZoneVPC vPCIdarg vPCRegionarg =+  Route53HostedZoneVPC+  { _route53HostedZoneVPCVPCId = vPCIdarg+  , _route53HostedZoneVPCVPCRegion = vPCRegionarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone-hostedzonevpcs.html#cfn-route53-hostedzone-hostedzonevpcs-vpcid+rhzvpcVPCId :: Lens' Route53HostedZoneVPC (Val Text)+rhzvpcVPCId = lens _route53HostedZoneVPCVPCId (\s a -> s { _route53HostedZoneVPCVPCId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone-hostedzonevpcs.html#cfn-route53-hostedzone-hostedzonevpcs-vpcregion+rhzvpcVPCRegion :: Lens' Route53HostedZoneVPC (Val Text)+rhzvpcVPCRegion = lens _route53HostedZoneVPCVPCRegion (\s a -> s { _route53HostedZoneVPCVPCRegion = a })
+ library-gen/Stratosphere/ResourceProperties/Route53RecordSetAliasTarget.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html++module Stratosphere.ResourceProperties.Route53RecordSetAliasTarget where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for Route53RecordSetAliasTarget. See+-- | 'route53RecordSetAliasTarget' for a more convenient constructor.+data Route53RecordSetAliasTarget =+  Route53RecordSetAliasTarget+  { _route53RecordSetAliasTargetDNSName :: Val Text+  , _route53RecordSetAliasTargetEvaluateTargetHealth :: Maybe (Val Bool')+  , _route53RecordSetAliasTargetHostedZoneId :: Val Text+  } deriving (Show, Generic)++instance ToJSON Route53RecordSetAliasTarget where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON Route53RecordSetAliasTarget where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'Route53RecordSetAliasTarget' containing required fields+-- | as arguments.+route53RecordSetAliasTarget+  :: Val Text -- ^ 'rrsatDNSName'+  -> Val Text -- ^ 'rrsatHostedZoneId'+  -> Route53RecordSetAliasTarget+route53RecordSetAliasTarget dNSNamearg hostedZoneIdarg =+  Route53RecordSetAliasTarget+  { _route53RecordSetAliasTargetDNSName = dNSNamearg+  , _route53RecordSetAliasTargetEvaluateTargetHealth = Nothing+  , _route53RecordSetAliasTargetHostedZoneId = hostedZoneIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-dnshostname+rrsatDNSName :: Lens' Route53RecordSetAliasTarget (Val Text)+rrsatDNSName = lens _route53RecordSetAliasTargetDNSName (\s a -> s { _route53RecordSetAliasTargetDNSName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-evaluatetargethealth+rrsatEvaluateTargetHealth :: Lens' Route53RecordSetAliasTarget (Maybe (Val Bool'))+rrsatEvaluateTargetHealth = lens _route53RecordSetAliasTargetEvaluateTargetHealth (\s a -> s { _route53RecordSetAliasTargetEvaluateTargetHealth = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-hostedzoneid+rrsatHostedZoneId :: Lens' Route53RecordSetAliasTarget (Val Text)+rrsatHostedZoneId = lens _route53RecordSetAliasTargetHostedZoneId (\s a -> s { _route53RecordSetAliasTargetHostedZoneId = a })
+ library-gen/Stratosphere/ResourceProperties/Route53RecordSetGeoLocation.hs view
@@ -0,0 +1,53 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html++module Stratosphere.ResourceProperties.Route53RecordSetGeoLocation where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for Route53RecordSetGeoLocation. See+-- | 'route53RecordSetGeoLocation' for a more convenient constructor.+data Route53RecordSetGeoLocation =+  Route53RecordSetGeoLocation+  { _route53RecordSetGeoLocationContinentCode :: Maybe (Val Text)+  , _route53RecordSetGeoLocationCountryCode :: Maybe (Val Text)+  , _route53RecordSetGeoLocationSubdivisionCode :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON Route53RecordSetGeoLocation where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON Route53RecordSetGeoLocation where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'Route53RecordSetGeoLocation' containing required fields+-- | as arguments.+route53RecordSetGeoLocation+  :: Route53RecordSetGeoLocation+route53RecordSetGeoLocation  =+  Route53RecordSetGeoLocation+  { _route53RecordSetGeoLocationContinentCode = Nothing+  , _route53RecordSetGeoLocationCountryCode = Nothing+  , _route53RecordSetGeoLocationSubdivisionCode = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordset-geolocation-continentcode+rrsglContinentCode :: Lens' Route53RecordSetGeoLocation (Maybe (Val Text))+rrsglContinentCode = lens _route53RecordSetGeoLocationContinentCode (\s a -> s { _route53RecordSetGeoLocationContinentCode = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordset-geolocation-countrycode+rrsglCountryCode :: Lens' Route53RecordSetGeoLocation (Maybe (Val Text))+rrsglCountryCode = lens _route53RecordSetGeoLocationCountryCode (\s a -> s { _route53RecordSetGeoLocationCountryCode = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordset-geolocation-subdivisioncode+rrsglSubdivisionCode :: Lens' Route53RecordSetGeoLocation (Maybe (Val Text))+rrsglSubdivisionCode = lens _route53RecordSetGeoLocationSubdivisionCode (\s a -> s { _route53RecordSetGeoLocationSubdivisionCode = a })
+ library-gen/Stratosphere/ResourceProperties/Route53RecordSetGroupAliasTarget.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html++module Stratosphere.ResourceProperties.Route53RecordSetGroupAliasTarget where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for Route53RecordSetGroupAliasTarget. See+-- | 'route53RecordSetGroupAliasTarget' for a more convenient constructor.+data Route53RecordSetGroupAliasTarget =+  Route53RecordSetGroupAliasTarget+  { _route53RecordSetGroupAliasTargetDNSName :: Val Text+  , _route53RecordSetGroupAliasTargetEvaluateTargetHealth :: Maybe (Val Bool')+  , _route53RecordSetGroupAliasTargetHostedZoneId :: Val Text+  } deriving (Show, Generic)++instance ToJSON Route53RecordSetGroupAliasTarget where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++instance FromJSON Route53RecordSetGroupAliasTarget where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++-- | Constructor for 'Route53RecordSetGroupAliasTarget' containing required+-- | fields as arguments.+route53RecordSetGroupAliasTarget+  :: Val Text -- ^ 'rrsgatDNSName'+  -> Val Text -- ^ 'rrsgatHostedZoneId'+  -> Route53RecordSetGroupAliasTarget+route53RecordSetGroupAliasTarget dNSNamearg hostedZoneIdarg =+  Route53RecordSetGroupAliasTarget+  { _route53RecordSetGroupAliasTargetDNSName = dNSNamearg+  , _route53RecordSetGroupAliasTargetEvaluateTargetHealth = Nothing+  , _route53RecordSetGroupAliasTargetHostedZoneId = hostedZoneIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-dnshostname+rrsgatDNSName :: Lens' Route53RecordSetGroupAliasTarget (Val Text)+rrsgatDNSName = lens _route53RecordSetGroupAliasTargetDNSName (\s a -> s { _route53RecordSetGroupAliasTargetDNSName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-evaluatetargethealth+rrsgatEvaluateTargetHealth :: Lens' Route53RecordSetGroupAliasTarget (Maybe (Val Bool'))+rrsgatEvaluateTargetHealth = lens _route53RecordSetGroupAliasTargetEvaluateTargetHealth (\s a -> s { _route53RecordSetGroupAliasTargetEvaluateTargetHealth = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-aliastarget.html#cfn-route53-aliastarget-hostedzoneid+rrsgatHostedZoneId :: Lens' Route53RecordSetGroupAliasTarget (Val Text)+rrsgatHostedZoneId = lens _route53RecordSetGroupAliasTargetHostedZoneId (\s a -> s { _route53RecordSetGroupAliasTargetHostedZoneId = a })
+ library-gen/Stratosphere/ResourceProperties/Route53RecordSetGroupGeoLocation.hs view
@@ -0,0 +1,53 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html++module Stratosphere.ResourceProperties.Route53RecordSetGroupGeoLocation where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for Route53RecordSetGroupGeoLocation. See+-- | 'route53RecordSetGroupGeoLocation' for a more convenient constructor.+data Route53RecordSetGroupGeoLocation =+  Route53RecordSetGroupGeoLocation+  { _route53RecordSetGroupGeoLocationContinentCode :: Maybe (Val Text)+  , _route53RecordSetGroupGeoLocationCountryCode :: Maybe (Val Text)+  , _route53RecordSetGroupGeoLocationSubdivisionCode :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON Route53RecordSetGroupGeoLocation where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++instance FromJSON Route53RecordSetGroupGeoLocation where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++-- | Constructor for 'Route53RecordSetGroupGeoLocation' containing required+-- | fields as arguments.+route53RecordSetGroupGeoLocation+  :: Route53RecordSetGroupGeoLocation+route53RecordSetGroupGeoLocation  =+  Route53RecordSetGroupGeoLocation+  { _route53RecordSetGroupGeoLocationContinentCode = Nothing+  , _route53RecordSetGroupGeoLocationCountryCode = Nothing+  , _route53RecordSetGroupGeoLocationSubdivisionCode = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordsetgroup-geolocation-continentcode+rrsgglContinentCode :: Lens' Route53RecordSetGroupGeoLocation (Maybe (Val Text))+rrsgglContinentCode = lens _route53RecordSetGroupGeoLocationContinentCode (\s a -> s { _route53RecordSetGroupGeoLocationContinentCode = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordset-geolocation-countrycode+rrsgglCountryCode :: Lens' Route53RecordSetGroupGeoLocation (Maybe (Val Text))+rrsgglCountryCode = lens _route53RecordSetGroupGeoLocationCountryCode (\s a -> s { _route53RecordSetGroupGeoLocationCountryCode = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset-geolocation.html#cfn-route53-recordset-geolocation-subdivisioncode+rrsgglSubdivisionCode :: Lens' Route53RecordSetGroupGeoLocation (Maybe (Val Text))+rrsgglSubdivisionCode = lens _route53RecordSetGroupGeoLocationSubdivisionCode (\s a -> s { _route53RecordSetGroupGeoLocationSubdivisionCode = a })
+ library-gen/Stratosphere/ResourceProperties/Route53RecordSetGroupRecordSet.hs view
@@ -0,0 +1,122 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html++module Stratosphere.ResourceProperties.Route53RecordSetGroupRecordSet where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Route53RecordSetGroupAliasTarget+import Stratosphere.ResourceProperties.Route53RecordSetGroupGeoLocation++-- | Full data type definition for Route53RecordSetGroupRecordSet. See+-- | 'route53RecordSetGroupRecordSet' for a more convenient constructor.+data Route53RecordSetGroupRecordSet =+  Route53RecordSetGroupRecordSet+  { _route53RecordSetGroupRecordSetAliasTarget :: Maybe Route53RecordSetGroupAliasTarget+  , _route53RecordSetGroupRecordSetComment :: Maybe (Val Text)+  , _route53RecordSetGroupRecordSetFailover :: Maybe (Val Text)+  , _route53RecordSetGroupRecordSetGeoLocation :: Maybe Route53RecordSetGroupGeoLocation+  , _route53RecordSetGroupRecordSetHealthCheckId :: Maybe (Val Text)+  , _route53RecordSetGroupRecordSetHostedZoneId :: Maybe (Val Text)+  , _route53RecordSetGroupRecordSetHostedZoneName :: Maybe (Val Text)+  , _route53RecordSetGroupRecordSetName :: Val Text+  , _route53RecordSetGroupRecordSetRegion :: Maybe (Val Text)+  , _route53RecordSetGroupRecordSetResourceRecords :: Maybe [Val Text]+  , _route53RecordSetGroupRecordSetSetIdentifier :: Maybe (Val Text)+  , _route53RecordSetGroupRecordSetTTL :: Maybe (Val Text)+  , _route53RecordSetGroupRecordSetType :: Val Text+  , _route53RecordSetGroupRecordSetWeight :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON Route53RecordSetGroupRecordSet where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON Route53RecordSetGroupRecordSet where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'Route53RecordSetGroupRecordSet' containing required+-- | fields as arguments.+route53RecordSetGroupRecordSet+  :: Val Text -- ^ 'rrsgrsName'+  -> Val Text -- ^ 'rrsgrsType'+  -> Route53RecordSetGroupRecordSet+route53RecordSetGroupRecordSet namearg typearg =+  Route53RecordSetGroupRecordSet+  { _route53RecordSetGroupRecordSetAliasTarget = Nothing+  , _route53RecordSetGroupRecordSetComment = Nothing+  , _route53RecordSetGroupRecordSetFailover = Nothing+  , _route53RecordSetGroupRecordSetGeoLocation = Nothing+  , _route53RecordSetGroupRecordSetHealthCheckId = Nothing+  , _route53RecordSetGroupRecordSetHostedZoneId = Nothing+  , _route53RecordSetGroupRecordSetHostedZoneName = Nothing+  , _route53RecordSetGroupRecordSetName = namearg+  , _route53RecordSetGroupRecordSetRegion = Nothing+  , _route53RecordSetGroupRecordSetResourceRecords = Nothing+  , _route53RecordSetGroupRecordSetSetIdentifier = Nothing+  , _route53RecordSetGroupRecordSetTTL = Nothing+  , _route53RecordSetGroupRecordSetType = typearg+  , _route53RecordSetGroupRecordSetWeight = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-aliastarget+rrsgrsAliasTarget :: Lens' Route53RecordSetGroupRecordSet (Maybe Route53RecordSetGroupAliasTarget)+rrsgrsAliasTarget = lens _route53RecordSetGroupRecordSetAliasTarget (\s a -> s { _route53RecordSetGroupRecordSetAliasTarget = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-comment+rrsgrsComment :: Lens' Route53RecordSetGroupRecordSet (Maybe (Val Text))+rrsgrsComment = lens _route53RecordSetGroupRecordSetComment (\s a -> s { _route53RecordSetGroupRecordSetComment = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-failover+rrsgrsFailover :: Lens' Route53RecordSetGroupRecordSet (Maybe (Val Text))+rrsgrsFailover = lens _route53RecordSetGroupRecordSetFailover (\s a -> s { _route53RecordSetGroupRecordSetFailover = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-geolocation+rrsgrsGeoLocation :: Lens' Route53RecordSetGroupRecordSet (Maybe Route53RecordSetGroupGeoLocation)+rrsgrsGeoLocation = lens _route53RecordSetGroupRecordSetGeoLocation (\s a -> s { _route53RecordSetGroupRecordSetGeoLocation = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-healthcheckid+rrsgrsHealthCheckId :: Lens' Route53RecordSetGroupRecordSet (Maybe (Val Text))+rrsgrsHealthCheckId = lens _route53RecordSetGroupRecordSetHealthCheckId (\s a -> s { _route53RecordSetGroupRecordSetHealthCheckId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-hostedzoneid+rrsgrsHostedZoneId :: Lens' Route53RecordSetGroupRecordSet (Maybe (Val Text))+rrsgrsHostedZoneId = lens _route53RecordSetGroupRecordSetHostedZoneId (\s a -> s { _route53RecordSetGroupRecordSetHostedZoneId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-hostedzonename+rrsgrsHostedZoneName :: Lens' Route53RecordSetGroupRecordSet (Maybe (Val Text))+rrsgrsHostedZoneName = lens _route53RecordSetGroupRecordSetHostedZoneName (\s a -> s { _route53RecordSetGroupRecordSetHostedZoneName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-name+rrsgrsName :: Lens' Route53RecordSetGroupRecordSet (Val Text)+rrsgrsName = lens _route53RecordSetGroupRecordSetName (\s a -> s { _route53RecordSetGroupRecordSetName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-region+rrsgrsRegion :: Lens' Route53RecordSetGroupRecordSet (Maybe (Val Text))+rrsgrsRegion = lens _route53RecordSetGroupRecordSetRegion (\s a -> s { _route53RecordSetGroupRecordSetRegion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-resourcerecords+rrsgrsResourceRecords :: Lens' Route53RecordSetGroupRecordSet (Maybe [Val Text])+rrsgrsResourceRecords = lens _route53RecordSetGroupRecordSetResourceRecords (\s a -> s { _route53RecordSetGroupRecordSetResourceRecords = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-setidentifier+rrsgrsSetIdentifier :: Lens' Route53RecordSetGroupRecordSet (Maybe (Val Text))+rrsgrsSetIdentifier = lens _route53RecordSetGroupRecordSetSetIdentifier (\s a -> s { _route53RecordSetGroupRecordSetSetIdentifier = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-ttl+rrsgrsTTL :: Lens' Route53RecordSetGroupRecordSet (Maybe (Val Text))+rrsgrsTTL = lens _route53RecordSetGroupRecordSetTTL (\s a -> s { _route53RecordSetGroupRecordSetTTL = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-type+rrsgrsType :: Lens' Route53RecordSetGroupRecordSet (Val Text)+rrsgrsType = lens _route53RecordSetGroupRecordSetType (\s a -> s { _route53RecordSetGroupRecordSetType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-weight+rrsgrsWeight :: Lens' Route53RecordSetGroupRecordSet (Maybe (Val Integer'))+rrsgrsWeight = lens _route53RecordSetGroupRecordSetWeight (\s a -> s { _route53RecordSetGroupRecordSetWeight = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketCorsConfiguration.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors.html++module Stratosphere.ResourceProperties.S3BucketCorsConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.S3BucketCorsRule++-- | Full data type definition for S3BucketCorsConfiguration. See+-- | 's3BucketCorsConfiguration' for a more convenient constructor.+data S3BucketCorsConfiguration =+  S3BucketCorsConfiguration+  { _s3BucketCorsConfigurationCorsRules :: [S3BucketCorsRule]+  } deriving (Show, Generic)++instance ToJSON S3BucketCorsConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++instance FromJSON S3BucketCorsConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++-- | Constructor for 'S3BucketCorsConfiguration' containing required fields as+-- | arguments.+s3BucketCorsConfiguration+  :: [S3BucketCorsRule] -- ^ 'sbccCorsRules'+  -> S3BucketCorsConfiguration+s3BucketCorsConfiguration corsRulesarg =+  S3BucketCorsConfiguration+  { _s3BucketCorsConfigurationCorsRules = corsRulesarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors.html#cfn-s3-bucket-cors-corsrule+sbccCorsRules :: Lens' S3BucketCorsConfiguration [S3BucketCorsRule]+sbccCorsRules = lens _s3BucketCorsConfigurationCorsRules (\s a -> s { _s3BucketCorsConfigurationCorsRules = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketCorsRule.hs view
@@ -0,0 +1,73 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html++module Stratosphere.ResourceProperties.S3BucketCorsRule where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for S3BucketCorsRule. See 's3BucketCorsRule'+-- | for a more convenient constructor.+data S3BucketCorsRule =+  S3BucketCorsRule+  { _s3BucketCorsRuleAllowedHeaders :: Maybe [Val Text]+  , _s3BucketCorsRuleAllowedMethods :: [Val Text]+  , _s3BucketCorsRuleAllowedOrigins :: [Val Text]+  , _s3BucketCorsRuleExposedHeaders :: Maybe [Val Text]+  , _s3BucketCorsRuleId :: Maybe (Val Text)+  , _s3BucketCorsRuleMaxAge :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON S3BucketCorsRule where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++instance FromJSON S3BucketCorsRule where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++-- | Constructor for 'S3BucketCorsRule' containing required fields as+-- | arguments.+s3BucketCorsRule+  :: [Val Text] -- ^ 'sbcrAllowedMethods'+  -> [Val Text] -- ^ 'sbcrAllowedOrigins'+  -> S3BucketCorsRule+s3BucketCorsRule allowedMethodsarg allowedOriginsarg =+  S3BucketCorsRule+  { _s3BucketCorsRuleAllowedHeaders = Nothing+  , _s3BucketCorsRuleAllowedMethods = allowedMethodsarg+  , _s3BucketCorsRuleAllowedOrigins = allowedOriginsarg+  , _s3BucketCorsRuleExposedHeaders = Nothing+  , _s3BucketCorsRuleId = Nothing+  , _s3BucketCorsRuleMaxAge = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-allowedheaders+sbcrAllowedHeaders :: Lens' S3BucketCorsRule (Maybe [Val Text])+sbcrAllowedHeaders = lens _s3BucketCorsRuleAllowedHeaders (\s a -> s { _s3BucketCorsRuleAllowedHeaders = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-allowedmethods+sbcrAllowedMethods :: Lens' S3BucketCorsRule [Val Text]+sbcrAllowedMethods = lens _s3BucketCorsRuleAllowedMethods (\s a -> s { _s3BucketCorsRuleAllowedMethods = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-allowedorigins+sbcrAllowedOrigins :: Lens' S3BucketCorsRule [Val Text]+sbcrAllowedOrigins = lens _s3BucketCorsRuleAllowedOrigins (\s a -> s { _s3BucketCorsRuleAllowedOrigins = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-exposedheaders+sbcrExposedHeaders :: Lens' S3BucketCorsRule (Maybe [Val Text])+sbcrExposedHeaders = lens _s3BucketCorsRuleExposedHeaders (\s a -> s { _s3BucketCorsRuleExposedHeaders = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-id+sbcrId :: Lens' S3BucketCorsRule (Maybe (Val Text))+sbcrId = lens _s3BucketCorsRuleId (\s a -> s { _s3BucketCorsRuleId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors-corsrule.html#cfn-s3-bucket-cors-corsrule-maxage+sbcrMaxAge :: Lens' S3BucketCorsRule (Maybe (Val Integer'))+sbcrMaxAge = lens _s3BucketCorsRuleMaxAge (\s a -> s { _s3BucketCorsRuleMaxAge = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketFilterRule.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key-rules.html++module Stratosphere.ResourceProperties.S3BucketFilterRule where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for S3BucketFilterRule. See+-- | 's3BucketFilterRule' for a more convenient constructor.+data S3BucketFilterRule =+  S3BucketFilterRule+  { _s3BucketFilterRuleName :: Val Text+  , _s3BucketFilterRuleValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON S3BucketFilterRule where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++instance FromJSON S3BucketFilterRule where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++-- | Constructor for 'S3BucketFilterRule' containing required fields as+-- | arguments.+s3BucketFilterRule+  :: Val Text -- ^ 'sbfrName'+  -> Val Text -- ^ 'sbfrValue'+  -> S3BucketFilterRule+s3BucketFilterRule namearg valuearg =+  S3BucketFilterRule+  { _s3BucketFilterRuleName = namearg+  , _s3BucketFilterRuleValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key-rules.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key-rules-name+sbfrName :: Lens' S3BucketFilterRule (Val Text)+sbfrName = lens _s3BucketFilterRuleName (\s a -> s { _s3BucketFilterRuleName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key-rules.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key-rules-value+sbfrValue :: Lens' S3BucketFilterRule (Val Text)+sbfrValue = lens _s3BucketFilterRuleValue (\s a -> s { _s3BucketFilterRuleValue = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketLambdaConfiguration.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html++module Stratosphere.ResourceProperties.S3BucketLambdaConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.S3BucketNotificationFilter++-- | Full data type definition for S3BucketLambdaConfiguration. See+-- | 's3BucketLambdaConfiguration' for a more convenient constructor.+data S3BucketLambdaConfiguration =+  S3BucketLambdaConfiguration+  { _s3BucketLambdaConfigurationEvent :: Val Text+  , _s3BucketLambdaConfigurationFilter :: Maybe S3BucketNotificationFilter+  , _s3BucketLambdaConfigurationFunction :: Val Text+  } deriving (Show, Generic)++instance ToJSON S3BucketLambdaConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON S3BucketLambdaConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'S3BucketLambdaConfiguration' containing required fields+-- | as arguments.+s3BucketLambdaConfiguration+  :: Val Text -- ^ 'sblcEvent'+  -> Val Text -- ^ 'sblcFunction'+  -> S3BucketLambdaConfiguration+s3BucketLambdaConfiguration eventarg functionarg =+  S3BucketLambdaConfiguration+  { _s3BucketLambdaConfigurationEvent = eventarg+  , _s3BucketLambdaConfigurationFilter = Nothing+  , _s3BucketLambdaConfigurationFunction = functionarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig-event+sblcEvent :: Lens' S3BucketLambdaConfiguration (Val Text)+sblcEvent = lens _s3BucketLambdaConfigurationEvent (\s a -> s { _s3BucketLambdaConfigurationEvent = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig-filter+sblcFilter :: Lens' S3BucketLambdaConfiguration (Maybe S3BucketNotificationFilter)+sblcFilter = lens _s3BucketLambdaConfigurationFilter (\s a -> s { _s3BucketLambdaConfigurationFilter = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-lambdaconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig-function+sblcFunction :: Lens' S3BucketLambdaConfiguration (Val Text)+sblcFunction = lens _s3BucketLambdaConfigurationFunction (\s a -> s { _s3BucketLambdaConfigurationFunction = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketLifecycleConfiguration.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig.html++module Stratosphere.ResourceProperties.S3BucketLifecycleConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.S3BucketRule++-- | Full data type definition for S3BucketLifecycleConfiguration. See+-- | 's3BucketLifecycleConfiguration' for a more convenient constructor.+data S3BucketLifecycleConfiguration =+  S3BucketLifecycleConfiguration+  { _s3BucketLifecycleConfigurationRules :: [S3BucketRule]+  } deriving (Show, Generic)++instance ToJSON S3BucketLifecycleConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON S3BucketLifecycleConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'S3BucketLifecycleConfiguration' containing required+-- | fields as arguments.+s3BucketLifecycleConfiguration+  :: [S3BucketRule] -- ^ 'sblcRules'+  -> S3BucketLifecycleConfiguration+s3BucketLifecycleConfiguration rulesarg =+  S3BucketLifecycleConfiguration+  { _s3BucketLifecycleConfigurationRules = rulesarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig.html#cfn-s3-bucket-lifecycleconfig-rules+sblcRules :: Lens' S3BucketLifecycleConfiguration [S3BucketRule]+sblcRules = lens _s3BucketLifecycleConfigurationRules (\s a -> s { _s3BucketLifecycleConfigurationRules = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketLoggingConfiguration.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html++module Stratosphere.ResourceProperties.S3BucketLoggingConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for S3BucketLoggingConfiguration. See+-- | 's3BucketLoggingConfiguration' for a more convenient constructor.+data S3BucketLoggingConfiguration =+  S3BucketLoggingConfiguration+  { _s3BucketLoggingConfigurationDestinationBucketName :: Maybe (Val Text)+  , _s3BucketLoggingConfigurationLogFilePrefix :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON S3BucketLoggingConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++instance FromJSON S3BucketLoggingConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++-- | Constructor for 'S3BucketLoggingConfiguration' containing required fields+-- | as arguments.+s3BucketLoggingConfiguration+  :: S3BucketLoggingConfiguration+s3BucketLoggingConfiguration  =+  S3BucketLoggingConfiguration+  { _s3BucketLoggingConfigurationDestinationBucketName = Nothing+  , _s3BucketLoggingConfigurationLogFilePrefix = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html#cfn-s3-bucket-loggingconfig-destinationbucketname+sblcDestinationBucketName :: Lens' S3BucketLoggingConfiguration (Maybe (Val Text))+sblcDestinationBucketName = lens _s3BucketLoggingConfigurationDestinationBucketName (\s a -> s { _s3BucketLoggingConfigurationDestinationBucketName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html#cfn-s3-bucket-loggingconfig-logfileprefix+sblcLogFilePrefix :: Lens' S3BucketLoggingConfiguration (Maybe (Val Text))+sblcLogFilePrefix = lens _s3BucketLoggingConfigurationLogFilePrefix (\s a -> s { _s3BucketLoggingConfigurationLogFilePrefix = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketNoncurrentVersionTransition.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html++module Stratosphere.ResourceProperties.S3BucketNoncurrentVersionTransition where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for S3BucketNoncurrentVersionTransition. See+-- | 's3BucketNoncurrentVersionTransition' for a more convenient constructor.+data S3BucketNoncurrentVersionTransition =+  S3BucketNoncurrentVersionTransition+  { _s3BucketNoncurrentVersionTransitionStorageClass :: Val Text+  , _s3BucketNoncurrentVersionTransitionTransitionInDays :: Val Integer'+  } deriving (Show, Generic)++instance ToJSON S3BucketNoncurrentVersionTransition where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++instance FromJSON S3BucketNoncurrentVersionTransition where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++-- | Constructor for 'S3BucketNoncurrentVersionTransition' containing required+-- | fields as arguments.+s3BucketNoncurrentVersionTransition+  :: Val Text -- ^ 'sbnvtStorageClass'+  -> Val Integer' -- ^ 'sbnvtTransitionInDays'+  -> S3BucketNoncurrentVersionTransition+s3BucketNoncurrentVersionTransition storageClassarg transitionInDaysarg =+  S3BucketNoncurrentVersionTransition+  { _s3BucketNoncurrentVersionTransitionStorageClass = storageClassarg+  , _s3BucketNoncurrentVersionTransitionTransitionInDays = transitionInDaysarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition-storageclass+sbnvtStorageClass :: Lens' S3BucketNoncurrentVersionTransition (Val Text)+sbnvtStorageClass = lens _s3BucketNoncurrentVersionTransitionStorageClass (\s a -> s { _s3BucketNoncurrentVersionTransitionStorageClass = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition-transitionindays+sbnvtTransitionInDays :: Lens' S3BucketNoncurrentVersionTransition (Val Integer')+sbnvtTransitionInDays = lens _s3BucketNoncurrentVersionTransitionTransitionInDays (\s a -> s { _s3BucketNoncurrentVersionTransitionTransitionInDays = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketNotificationConfiguration.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html++module Stratosphere.ResourceProperties.S3BucketNotificationConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.S3BucketLambdaConfiguration+import Stratosphere.ResourceProperties.S3BucketQueueConfiguration+import Stratosphere.ResourceProperties.S3BucketTopicConfiguration++-- | Full data type definition for S3BucketNotificationConfiguration. See+-- | 's3BucketNotificationConfiguration' for a more convenient constructor.+data S3BucketNotificationConfiguration =+  S3BucketNotificationConfiguration+  { _s3BucketNotificationConfigurationLambdaConfigurations :: Maybe [S3BucketLambdaConfiguration]+  , _s3BucketNotificationConfigurationQueueConfigurations :: Maybe [S3BucketQueueConfiguration]+  , _s3BucketNotificationConfigurationTopicConfigurations :: Maybe [S3BucketTopicConfiguration]+  } deriving (Show, Generic)++instance ToJSON S3BucketNotificationConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON S3BucketNotificationConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'S3BucketNotificationConfiguration' containing required+-- | fields as arguments.+s3BucketNotificationConfiguration+  :: S3BucketNotificationConfiguration+s3BucketNotificationConfiguration  =+  S3BucketNotificationConfiguration+  { _s3BucketNotificationConfigurationLambdaConfigurations = Nothing+  , _s3BucketNotificationConfigurationQueueConfigurations = Nothing+  , _s3BucketNotificationConfigurationTopicConfigurations = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-lambdaconfig+sbncLambdaConfigurations :: Lens' S3BucketNotificationConfiguration (Maybe [S3BucketLambdaConfiguration])+sbncLambdaConfigurations = lens _s3BucketNotificationConfigurationLambdaConfigurations (\s a -> s { _s3BucketNotificationConfigurationLambdaConfigurations = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-queueconfig+sbncQueueConfigurations :: Lens' S3BucketNotificationConfiguration (Maybe [S3BucketQueueConfiguration])+sbncQueueConfigurations = lens _s3BucketNotificationConfigurationQueueConfigurations (\s a -> s { _s3BucketNotificationConfigurationQueueConfigurations = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html#cfn-s3-bucket-notificationconfig-topicconfig+sbncTopicConfigurations :: Lens' S3BucketNotificationConfiguration (Maybe [S3BucketTopicConfiguration])+sbncTopicConfigurations = lens _s3BucketNotificationConfigurationTopicConfigurations (\s a -> s { _s3BucketNotificationConfigurationTopicConfigurations = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketNotificationFilter.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html++module Stratosphere.ResourceProperties.S3BucketNotificationFilter where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.S3BucketS3KeyFilter++-- | Full data type definition for S3BucketNotificationFilter. See+-- | 's3BucketNotificationFilter' for a more convenient constructor.+data S3BucketNotificationFilter =+  S3BucketNotificationFilter+  { _s3BucketNotificationFilterS3Key :: S3BucketS3KeyFilter+  } deriving (Show, Generic)++instance ToJSON S3BucketNotificationFilter where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON S3BucketNotificationFilter where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'S3BucketNotificationFilter' containing required fields+-- | as arguments.+s3BucketNotificationFilter+  :: S3BucketS3KeyFilter -- ^ 'sbnfS3Key'+  -> S3BucketNotificationFilter+s3BucketNotificationFilter s3Keyarg =+  S3BucketNotificationFilter+  { _s3BucketNotificationFilterS3Key = s3Keyarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key+sbnfS3Key :: Lens' S3BucketNotificationFilter S3BucketS3KeyFilter+sbnfS3Key = lens _s3BucketNotificationFilterS3Key (\s a -> s { _s3BucketNotificationFilterS3Key = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketQueueConfiguration.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html++module Stratosphere.ResourceProperties.S3BucketQueueConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.S3BucketNotificationFilter++-- | Full data type definition for S3BucketQueueConfiguration. See+-- | 's3BucketQueueConfiguration' for a more convenient constructor.+data S3BucketQueueConfiguration =+  S3BucketQueueConfiguration+  { _s3BucketQueueConfigurationEvent :: Val Text+  , _s3BucketQueueConfigurationFilter :: Maybe S3BucketNotificationFilter+  , _s3BucketQueueConfigurationQueue :: Val Text+  } deriving (Show, Generic)++instance ToJSON S3BucketQueueConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON S3BucketQueueConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'S3BucketQueueConfiguration' containing required fields+-- | as arguments.+s3BucketQueueConfiguration+  :: Val Text -- ^ 'sbqcEvent'+  -> Val Text -- ^ 'sbqcQueue'+  -> S3BucketQueueConfiguration+s3BucketQueueConfiguration eventarg queuearg =+  S3BucketQueueConfiguration+  { _s3BucketQueueConfigurationEvent = eventarg+  , _s3BucketQueueConfigurationFilter = Nothing+  , _s3BucketQueueConfigurationQueue = queuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html#cfn-s3-bucket-notificationconfig-queueconfig-event+sbqcEvent :: Lens' S3BucketQueueConfiguration (Val Text)+sbqcEvent = lens _s3BucketQueueConfigurationEvent (\s a -> s { _s3BucketQueueConfigurationEvent = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html#cfn-s3-bucket-notificationconfig-queueconfig-filter+sbqcFilter :: Lens' S3BucketQueueConfiguration (Maybe S3BucketNotificationFilter)+sbqcFilter = lens _s3BucketQueueConfigurationFilter (\s a -> s { _s3BucketQueueConfigurationFilter = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html#cfn-s3-bucket-notificationconfig-queueconfig-queue+sbqcQueue :: Lens' S3BucketQueueConfiguration (Val Text)+sbqcQueue = lens _s3BucketQueueConfigurationQueue (\s a -> s { _s3BucketQueueConfigurationQueue = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketRedirectAllRequestsTo.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html++module Stratosphere.ResourceProperties.S3BucketRedirectAllRequestsTo where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for S3BucketRedirectAllRequestsTo. See+-- | 's3BucketRedirectAllRequestsTo' for a more convenient constructor.+data S3BucketRedirectAllRequestsTo =+  S3BucketRedirectAllRequestsTo+  { _s3BucketRedirectAllRequestsToHostName :: Val Text+  , _s3BucketRedirectAllRequestsToProtocol :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON S3BucketRedirectAllRequestsTo where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON S3BucketRedirectAllRequestsTo where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'S3BucketRedirectAllRequestsTo' containing required+-- | fields as arguments.+s3BucketRedirectAllRequestsTo+  :: Val Text -- ^ 'sbrartHostName'+  -> S3BucketRedirectAllRequestsTo+s3BucketRedirectAllRequestsTo hostNamearg =+  S3BucketRedirectAllRequestsTo+  { _s3BucketRedirectAllRequestsToHostName = hostNamearg+  , _s3BucketRedirectAllRequestsToProtocol = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html#cfn-s3-websiteconfiguration-redirectallrequeststo-hostname+sbrartHostName :: Lens' S3BucketRedirectAllRequestsTo (Val Text)+sbrartHostName = lens _s3BucketRedirectAllRequestsToHostName (\s a -> s { _s3BucketRedirectAllRequestsToHostName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html#cfn-s3-websiteconfiguration-redirectallrequeststo-protocol+sbrartProtocol :: Lens' S3BucketRedirectAllRequestsTo (Maybe (Val Text))+sbrartProtocol = lens _s3BucketRedirectAllRequestsToProtocol (\s a -> s { _s3BucketRedirectAllRequestsToProtocol = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketRedirectRule.hs view
@@ -0,0 +1,65 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html++module Stratosphere.ResourceProperties.S3BucketRedirectRule where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for S3BucketRedirectRule. See+-- | 's3BucketRedirectRule' for a more convenient constructor.+data S3BucketRedirectRule =+  S3BucketRedirectRule+  { _s3BucketRedirectRuleHostName :: Maybe (Val Text)+  , _s3BucketRedirectRuleHttpRedirectCode :: Maybe (Val Text)+  , _s3BucketRedirectRuleProtocol :: Maybe (Val Text)+  , _s3BucketRedirectRuleReplaceKeyPrefixWith :: Maybe (Val Text)+  , _s3BucketRedirectRuleReplaceKeyWith :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON S3BucketRedirectRule where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++instance FromJSON S3BucketRedirectRule where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++-- | Constructor for 'S3BucketRedirectRule' containing required fields as+-- | arguments.+s3BucketRedirectRule+  :: S3BucketRedirectRule+s3BucketRedirectRule  =+  S3BucketRedirectRule+  { _s3BucketRedirectRuleHostName = Nothing+  , _s3BucketRedirectRuleHttpRedirectCode = Nothing+  , _s3BucketRedirectRuleProtocol = Nothing+  , _s3BucketRedirectRuleReplaceKeyPrefixWith = Nothing+  , _s3BucketRedirectRuleReplaceKeyWith = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-hostname+sbrrHostName :: Lens' S3BucketRedirectRule (Maybe (Val Text))+sbrrHostName = lens _s3BucketRedirectRuleHostName (\s a -> s { _s3BucketRedirectRuleHostName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-httpredirectcode+sbrrHttpRedirectCode :: Lens' S3BucketRedirectRule (Maybe (Val Text))+sbrrHttpRedirectCode = lens _s3BucketRedirectRuleHttpRedirectCode (\s a -> s { _s3BucketRedirectRuleHttpRedirectCode = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-protocol+sbrrProtocol :: Lens' S3BucketRedirectRule (Maybe (Val Text))+sbrrProtocol = lens _s3BucketRedirectRuleProtocol (\s a -> s { _s3BucketRedirectRuleProtocol = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-replacekeyprefixwith+sbrrReplaceKeyPrefixWith :: Lens' S3BucketRedirectRule (Maybe (Val Text))+sbrrReplaceKeyPrefixWith = lens _s3BucketRedirectRuleReplaceKeyPrefixWith (\s a -> s { _s3BucketRedirectRuleReplaceKeyPrefixWith = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html#cfn-s3-websiteconfiguration-redirectrule-replacekeywith+sbrrReplaceKeyWith :: Lens' S3BucketRedirectRule (Maybe (Val Text))+sbrrReplaceKeyWith = lens _s3BucketRedirectRuleReplaceKeyWith (\s a -> s { _s3BucketRedirectRuleReplaceKeyWith = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketReplicationConfiguration.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html++module Stratosphere.ResourceProperties.S3BucketReplicationConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.S3BucketReplicationRule++-- | Full data type definition for S3BucketReplicationConfiguration. See+-- | 's3BucketReplicationConfiguration' for a more convenient constructor.+data S3BucketReplicationConfiguration =+  S3BucketReplicationConfiguration+  { _s3BucketReplicationConfigurationRole :: Val Text+  , _s3BucketReplicationConfigurationRules :: [S3BucketReplicationRule]+  } deriving (Show, Generic)++instance ToJSON S3BucketReplicationConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++instance FromJSON S3BucketReplicationConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++-- | Constructor for 'S3BucketReplicationConfiguration' containing required+-- | fields as arguments.+s3BucketReplicationConfiguration+  :: Val Text -- ^ 'sbrcRole'+  -> [S3BucketReplicationRule] -- ^ 'sbrcRules'+  -> S3BucketReplicationConfiguration+s3BucketReplicationConfiguration rolearg rulesarg =+  S3BucketReplicationConfiguration+  { _s3BucketReplicationConfigurationRole = rolearg+  , _s3BucketReplicationConfigurationRules = rulesarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html#cfn-s3-bucket-replicationconfiguration-role+sbrcRole :: Lens' S3BucketReplicationConfiguration (Val Text)+sbrcRole = lens _s3BucketReplicationConfigurationRole (\s a -> s { _s3BucketReplicationConfigurationRole = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html#cfn-s3-bucket-replicationconfiguration-rules+sbrcRules :: Lens' S3BucketReplicationConfiguration [S3BucketReplicationRule]+sbrcRules = lens _s3BucketReplicationConfigurationRules (\s a -> s { _s3BucketReplicationConfigurationRules = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketReplicationDestination.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html++module Stratosphere.ResourceProperties.S3BucketReplicationDestination where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for S3BucketReplicationDestination. See+-- | 's3BucketReplicationDestination' for a more convenient constructor.+data S3BucketReplicationDestination =+  S3BucketReplicationDestination+  { _s3BucketReplicationDestinationBucket :: Val Text+  , _s3BucketReplicationDestinationStorageClass :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON S3BucketReplicationDestination where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON S3BucketReplicationDestination where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'S3BucketReplicationDestination' containing required+-- | fields as arguments.+s3BucketReplicationDestination+  :: Val Text -- ^ 'sbrdBucket'+  -> S3BucketReplicationDestination+s3BucketReplicationDestination bucketarg =+  S3BucketReplicationDestination+  { _s3BucketReplicationDestinationBucket = bucketarg+  , _s3BucketReplicationDestinationStorageClass = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationconfiguration-rules-destination-bucket+sbrdBucket :: Lens' S3BucketReplicationDestination (Val Text)+sbrdBucket = lens _s3BucketReplicationDestinationBucket (\s a -> s { _s3BucketReplicationDestinationBucket = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html#cfn-s3-bucket-replicationconfiguration-rules-destination-storageclass+sbrdStorageClass :: Lens' S3BucketReplicationDestination (Maybe (Val Text))+sbrdStorageClass = lens _s3BucketReplicationDestinationStorageClass (\s a -> s { _s3BucketReplicationDestinationStorageClass = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketReplicationRule.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html++module Stratosphere.ResourceProperties.S3BucketReplicationRule where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.S3BucketReplicationDestination++-- | Full data type definition for S3BucketReplicationRule. See+-- | 's3BucketReplicationRule' for a more convenient constructor.+data S3BucketReplicationRule =+  S3BucketReplicationRule+  { _s3BucketReplicationRuleDestination :: S3BucketReplicationDestination+  , _s3BucketReplicationRuleId :: Maybe (Val Text)+  , _s3BucketReplicationRulePrefix :: Val Text+  , _s3BucketReplicationRuleStatus :: Val Text+  } deriving (Show, Generic)++instance ToJSON S3BucketReplicationRule where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++instance FromJSON S3BucketReplicationRule where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++-- | Constructor for 'S3BucketReplicationRule' containing required fields as+-- | arguments.+s3BucketReplicationRule+  :: S3BucketReplicationDestination -- ^ 'sbrrDestination'+  -> Val Text -- ^ 'sbrrPrefix'+  -> Val Text -- ^ 'sbrrStatus'+  -> S3BucketReplicationRule+s3BucketReplicationRule destinationarg prefixarg statusarg =+  S3BucketReplicationRule+  { _s3BucketReplicationRuleDestination = destinationarg+  , _s3BucketReplicationRuleId = Nothing+  , _s3BucketReplicationRulePrefix = prefixarg+  , _s3BucketReplicationRuleStatus = statusarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-destination+sbrrDestination :: Lens' S3BucketReplicationRule S3BucketReplicationDestination+sbrrDestination = lens _s3BucketReplicationRuleDestination (\s a -> s { _s3BucketReplicationRuleDestination = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-id+sbrrId :: Lens' S3BucketReplicationRule (Maybe (Val Text))+sbrrId = lens _s3BucketReplicationRuleId (\s a -> s { _s3BucketReplicationRuleId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-prefix+sbrrPrefix :: Lens' S3BucketReplicationRule (Val Text)+sbrrPrefix = lens _s3BucketReplicationRulePrefix (\s a -> s { _s3BucketReplicationRulePrefix = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html#cfn-s3-bucket-replicationconfiguration-rules-status+sbrrStatus :: Lens' S3BucketReplicationRule (Val Text)+sbrrStatus = lens _s3BucketReplicationRuleStatus (\s a -> s { _s3BucketReplicationRuleStatus = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketRoutingRule.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html++module Stratosphere.ResourceProperties.S3BucketRoutingRule where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.S3BucketRedirectRule+import Stratosphere.ResourceProperties.S3BucketRoutingRuleCondition++-- | Full data type definition for S3BucketRoutingRule. See+-- | 's3BucketRoutingRule' for a more convenient constructor.+data S3BucketRoutingRule =+  S3BucketRoutingRule+  { _s3BucketRoutingRuleRedirectRule :: S3BucketRedirectRule+  , _s3BucketRoutingRuleRoutingRuleCondition :: Maybe S3BucketRoutingRuleCondition+  } deriving (Show, Generic)++instance ToJSON S3BucketRoutingRule where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++instance FromJSON S3BucketRoutingRule where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++-- | Constructor for 'S3BucketRoutingRule' containing required fields as+-- | arguments.+s3BucketRoutingRule+  :: S3BucketRedirectRule -- ^ 'sbrrRedirectRule'+  -> S3BucketRoutingRule+s3BucketRoutingRule redirectRulearg =+  S3BucketRoutingRule+  { _s3BucketRoutingRuleRedirectRule = redirectRulearg+  , _s3BucketRoutingRuleRoutingRuleCondition = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html#cfn-s3-websiteconfiguration-routingrules-redirectrule+sbrrRedirectRule :: Lens' S3BucketRoutingRule S3BucketRedirectRule+sbrrRedirectRule = lens _s3BucketRoutingRuleRedirectRule (\s a -> s { _s3BucketRoutingRuleRedirectRule = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html#cfn-s3-websiteconfiguration-routingrules-routingrulecondition+sbrrRoutingRuleCondition :: Lens' S3BucketRoutingRule (Maybe S3BucketRoutingRuleCondition)+sbrrRoutingRuleCondition = lens _s3BucketRoutingRuleRoutingRuleCondition (\s a -> s { _s3BucketRoutingRuleRoutingRuleCondition = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketRoutingRuleCondition.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-routingrulecondition.html++module Stratosphere.ResourceProperties.S3BucketRoutingRuleCondition where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for S3BucketRoutingRuleCondition. See+-- | 's3BucketRoutingRuleCondition' for a more convenient constructor.+data S3BucketRoutingRuleCondition =+  S3BucketRoutingRuleCondition+  { _s3BucketRoutingRuleConditionHttpErrorCodeReturnedEquals :: Maybe (Val Text)+  , _s3BucketRoutingRuleConditionKeyPrefixEquals :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON S3BucketRoutingRuleCondition where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++instance FromJSON S3BucketRoutingRuleCondition where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++-- | Constructor for 'S3BucketRoutingRuleCondition' containing required fields+-- | as arguments.+s3BucketRoutingRuleCondition+  :: S3BucketRoutingRuleCondition+s3BucketRoutingRuleCondition  =+  S3BucketRoutingRuleCondition+  { _s3BucketRoutingRuleConditionHttpErrorCodeReturnedEquals = Nothing+  , _s3BucketRoutingRuleConditionKeyPrefixEquals = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-routingrulecondition.html#cfn-s3-websiteconfiguration-routingrules-routingrulecondition-httperrorcodereturnedequals+sbrrcHttpErrorCodeReturnedEquals :: Lens' S3BucketRoutingRuleCondition (Maybe (Val Text))+sbrrcHttpErrorCodeReturnedEquals = lens _s3BucketRoutingRuleConditionHttpErrorCodeReturnedEquals (\s a -> s { _s3BucketRoutingRuleConditionHttpErrorCodeReturnedEquals = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-routingrulecondition.html#cfn-s3-websiteconfiguration-routingrules-routingrulecondition-keyprefixequals+sbrrcKeyPrefixEquals :: Lens' S3BucketRoutingRuleCondition (Maybe (Val Text))+sbrrcKeyPrefixEquals = lens _s3BucketRoutingRuleConditionKeyPrefixEquals (\s a -> s { _s3BucketRoutingRuleConditionKeyPrefixEquals = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketRule.hs view
@@ -0,0 +1,96 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html++module Stratosphere.ResourceProperties.S3BucketRule where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.S3BucketNoncurrentVersionTransition+import Stratosphere.ResourceProperties.S3BucketTransition++-- | Full data type definition for S3BucketRule. See 's3BucketRule' for a more+-- | convenient constructor.+data S3BucketRule =+  S3BucketRule+  { _s3BucketRuleExpirationDate :: Maybe (Val Text)+  , _s3BucketRuleExpirationInDays :: Maybe (Val Integer')+  , _s3BucketRuleId :: Maybe (Val Text)+  , _s3BucketRuleNoncurrentVersionExpirationInDays :: Maybe (Val Integer')+  , _s3BucketRuleNoncurrentVersionTransition :: Maybe S3BucketNoncurrentVersionTransition+  , _s3BucketRuleNoncurrentVersionTransitions :: Maybe S3BucketNoncurrentVersionTransition+  , _s3BucketRulePrefix :: Maybe (Val Text)+  , _s3BucketRuleStatus :: Val Text+  , _s3BucketRuleTransition :: Maybe S3BucketTransition+  , _s3BucketRuleTransitions :: Maybe S3BucketTransition+  } deriving (Show, Generic)++instance ToJSON S3BucketRule where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }++instance FromJSON S3BucketRule where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }++-- | Constructor for 'S3BucketRule' containing required fields as arguments.+s3BucketRule+  :: Val Text -- ^ 'sbrStatus'+  -> S3BucketRule+s3BucketRule statusarg =+  S3BucketRule+  { _s3BucketRuleExpirationDate = Nothing+  , _s3BucketRuleExpirationInDays = Nothing+  , _s3BucketRuleId = Nothing+  , _s3BucketRuleNoncurrentVersionExpirationInDays = Nothing+  , _s3BucketRuleNoncurrentVersionTransition = Nothing+  , _s3BucketRuleNoncurrentVersionTransitions = Nothing+  , _s3BucketRulePrefix = Nothing+  , _s3BucketRuleStatus = statusarg+  , _s3BucketRuleTransition = Nothing+  , _s3BucketRuleTransitions = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-expirationdate+sbrExpirationDate :: Lens' S3BucketRule (Maybe (Val Text))+sbrExpirationDate = lens _s3BucketRuleExpirationDate (\s a -> s { _s3BucketRuleExpirationDate = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-expirationindays+sbrExpirationInDays :: Lens' S3BucketRule (Maybe (Val Integer'))+sbrExpirationInDays = lens _s3BucketRuleExpirationInDays (\s a -> s { _s3BucketRuleExpirationInDays = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-id+sbrId :: Lens' S3BucketRule (Maybe (Val Text))+sbrId = lens _s3BucketRuleId (\s a -> s { _s3BucketRuleId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversionexpirationindays+sbrNoncurrentVersionExpirationInDays :: Lens' S3BucketRule (Maybe (Val Integer'))+sbrNoncurrentVersionExpirationInDays = lens _s3BucketRuleNoncurrentVersionExpirationInDays (\s a -> s { _s3BucketRuleNoncurrentVersionExpirationInDays = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransition+sbrNoncurrentVersionTransition :: Lens' S3BucketRule (Maybe S3BucketNoncurrentVersionTransition)+sbrNoncurrentVersionTransition = lens _s3BucketRuleNoncurrentVersionTransition (\s a -> s { _s3BucketRuleNoncurrentVersionTransition = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-noncurrentversiontransitions+sbrNoncurrentVersionTransitions :: Lens' S3BucketRule (Maybe S3BucketNoncurrentVersionTransition)+sbrNoncurrentVersionTransitions = lens _s3BucketRuleNoncurrentVersionTransitions (\s a -> s { _s3BucketRuleNoncurrentVersionTransitions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-prefix+sbrPrefix :: Lens' S3BucketRule (Maybe (Val Text))+sbrPrefix = lens _s3BucketRulePrefix (\s a -> s { _s3BucketRulePrefix = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-status+sbrStatus :: Lens' S3BucketRule (Val Text)+sbrStatus = lens _s3BucketRuleStatus (\s a -> s { _s3BucketRuleStatus = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-transition+sbrTransition :: Lens' S3BucketRule (Maybe S3BucketTransition)+sbrTransition = lens _s3BucketRuleTransition (\s a -> s { _s3BucketRuleTransition = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html#cfn-s3-bucket-lifecycleconfig-rule-transitions+sbrTransitions :: Lens' S3BucketRule (Maybe S3BucketTransition)+sbrTransitions = lens _s3BucketRuleTransitions (\s a -> s { _s3BucketRuleTransitions = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketS3KeyFilter.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key.html++module Stratosphere.ResourceProperties.S3BucketS3KeyFilter where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.S3BucketFilterRule++-- | Full data type definition for S3BucketS3KeyFilter. See+-- | 's3BucketS3KeyFilter' for a more convenient constructor.+data S3BucketS3KeyFilter =+  S3BucketS3KeyFilter+  { _s3BucketS3KeyFilterRules :: [S3BucketFilterRule]+  } deriving (Show, Generic)++instance ToJSON S3BucketS3KeyFilter where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++instance FromJSON S3BucketS3KeyFilter where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++-- | Constructor for 'S3BucketS3KeyFilter' containing required fields as+-- | arguments.+s3BucketS3KeyFilter+  :: [S3BucketFilterRule] -- ^ 'sbskfRules'+  -> S3BucketS3KeyFilter+s3BucketS3KeyFilter rulesarg =+  S3BucketS3KeyFilter+  { _s3BucketS3KeyFilterRules = rulesarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key.html#cfn-s3-bucket-notificationconfiguraiton-config-filter-s3key-rules+sbskfRules :: Lens' S3BucketS3KeyFilter [S3BucketFilterRule]+sbskfRules = lens _s3BucketS3KeyFilterRules (\s a -> s { _s3BucketS3KeyFilterRules = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketTopicConfiguration.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html++module Stratosphere.ResourceProperties.S3BucketTopicConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.S3BucketNotificationFilter++-- | Full data type definition for S3BucketTopicConfiguration. See+-- | 's3BucketTopicConfiguration' for a more convenient constructor.+data S3BucketTopicConfiguration =+  S3BucketTopicConfiguration+  { _s3BucketTopicConfigurationEvent :: Val Text+  , _s3BucketTopicConfigurationFilter :: Maybe S3BucketNotificationFilter+  , _s3BucketTopicConfigurationTopic :: Val Text+  } deriving (Show, Generic)++instance ToJSON S3BucketTopicConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON S3BucketTopicConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'S3BucketTopicConfiguration' containing required fields+-- | as arguments.+s3BucketTopicConfiguration+  :: Val Text -- ^ 'sbtcEvent'+  -> Val Text -- ^ 'sbtcTopic'+  -> S3BucketTopicConfiguration+s3BucketTopicConfiguration eventarg topicarg =+  S3BucketTopicConfiguration+  { _s3BucketTopicConfigurationEvent = eventarg+  , _s3BucketTopicConfigurationFilter = Nothing+  , _s3BucketTopicConfigurationTopic = topicarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html#cfn-s3-bucket-notificationconfig-topicconfig-event+sbtcEvent :: Lens' S3BucketTopicConfiguration (Val Text)+sbtcEvent = lens _s3BucketTopicConfigurationEvent (\s a -> s { _s3BucketTopicConfigurationEvent = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html#cfn-s3-bucket-notificationconfig-topicconfig-filter+sbtcFilter :: Lens' S3BucketTopicConfiguration (Maybe S3BucketNotificationFilter)+sbtcFilter = lens _s3BucketTopicConfigurationFilter (\s a -> s { _s3BucketTopicConfigurationFilter = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html#cfn-s3-bucket-notificationconfig-topicconfig-topic+sbtcTopic :: Lens' S3BucketTopicConfiguration (Val Text)+sbtcTopic = lens _s3BucketTopicConfigurationTopic (\s a -> s { _s3BucketTopicConfigurationTopic = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketTransition.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html++module Stratosphere.ResourceProperties.S3BucketTransition where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for S3BucketTransition. See+-- | 's3BucketTransition' for a more convenient constructor.+data S3BucketTransition =+  S3BucketTransition+  { _s3BucketTransitionStorageClass :: Val Text+  , _s3BucketTransitionTransitionDate :: Maybe (Val Text)+  , _s3BucketTransitionTransitionInDays :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON S3BucketTransition where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++instance FromJSON S3BucketTransition where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++-- | Constructor for 'S3BucketTransition' containing required fields as+-- | arguments.+s3BucketTransition+  :: Val Text -- ^ 'sbtStorageClass'+  -> S3BucketTransition+s3BucketTransition storageClassarg =+  S3BucketTransition+  { _s3BucketTransitionStorageClass = storageClassarg+  , _s3BucketTransitionTransitionDate = Nothing+  , _s3BucketTransitionTransitionInDays = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html#cfn-s3-bucket-lifecycleconfig-rule-transition-storageclass+sbtStorageClass :: Lens' S3BucketTransition (Val Text)+sbtStorageClass = lens _s3BucketTransitionStorageClass (\s a -> s { _s3BucketTransitionStorageClass = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html#cfn-s3-bucket-lifecycleconfig-rule-transition-transitiondate+sbtTransitionDate :: Lens' S3BucketTransition (Maybe (Val Text))+sbtTransitionDate = lens _s3BucketTransitionTransitionDate (\s a -> s { _s3BucketTransitionTransitionDate = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html#cfn-s3-bucket-lifecycleconfig-rule-transition-transitionindays+sbtTransitionInDays :: Lens' S3BucketTransition (Maybe (Val Integer'))+sbtTransitionInDays = lens _s3BucketTransitionTransitionInDays (\s a -> s { _s3BucketTransitionTransitionInDays = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketVersioningConfiguration.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-versioningconfig.html++module Stratosphere.ResourceProperties.S3BucketVersioningConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for S3BucketVersioningConfiguration. See+-- | 's3BucketVersioningConfiguration' for a more convenient constructor.+data S3BucketVersioningConfiguration =+  S3BucketVersioningConfiguration+  { _s3BucketVersioningConfigurationStatus :: Val Text+  } deriving (Show, Generic)++instance ToJSON S3BucketVersioningConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++instance FromJSON S3BucketVersioningConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++-- | Constructor for 'S3BucketVersioningConfiguration' containing required+-- | fields as arguments.+s3BucketVersioningConfiguration+  :: Val Text -- ^ 'sbvcStatus'+  -> S3BucketVersioningConfiguration+s3BucketVersioningConfiguration statusarg =+  S3BucketVersioningConfiguration+  { _s3BucketVersioningConfigurationStatus = statusarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-versioningconfig.html#cfn-s3-bucket-versioningconfig-status+sbvcStatus :: Lens' S3BucketVersioningConfiguration (Val Text)+sbvcStatus = lens _s3BucketVersioningConfigurationStatus (\s a -> s { _s3BucketVersioningConfigurationStatus = a })
+ library-gen/Stratosphere/ResourceProperties/S3BucketWebsiteConfiguration.hs view
@@ -0,0 +1,60 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html++module Stratosphere.ResourceProperties.S3BucketWebsiteConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.S3BucketRedirectAllRequestsTo+import Stratosphere.ResourceProperties.S3BucketRoutingRule++-- | Full data type definition for S3BucketWebsiteConfiguration. See+-- | 's3BucketWebsiteConfiguration' for a more convenient constructor.+data S3BucketWebsiteConfiguration =+  S3BucketWebsiteConfiguration+  { _s3BucketWebsiteConfigurationErrorDocument :: Maybe (Val Text)+  , _s3BucketWebsiteConfigurationIndexDocument :: Maybe (Val Text)+  , _s3BucketWebsiteConfigurationRedirectAllRequestsTo :: Maybe S3BucketRedirectAllRequestsTo+  , _s3BucketWebsiteConfigurationRoutingRules :: Maybe [S3BucketRoutingRule]+  } deriving (Show, Generic)++instance ToJSON S3BucketWebsiteConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++instance FromJSON S3BucketWebsiteConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++-- | Constructor for 'S3BucketWebsiteConfiguration' containing required fields+-- | as arguments.+s3BucketWebsiteConfiguration+  :: S3BucketWebsiteConfiguration+s3BucketWebsiteConfiguration  =+  S3BucketWebsiteConfiguration+  { _s3BucketWebsiteConfigurationErrorDocument = Nothing+  , _s3BucketWebsiteConfigurationIndexDocument = Nothing+  , _s3BucketWebsiteConfigurationRedirectAllRequestsTo = Nothing+  , _s3BucketWebsiteConfigurationRoutingRules = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-errordocument+sbwcErrorDocument :: Lens' S3BucketWebsiteConfiguration (Maybe (Val Text))+sbwcErrorDocument = lens _s3BucketWebsiteConfigurationErrorDocument (\s a -> s { _s3BucketWebsiteConfigurationErrorDocument = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-indexdocument+sbwcIndexDocument :: Lens' S3BucketWebsiteConfiguration (Maybe (Val Text))+sbwcIndexDocument = lens _s3BucketWebsiteConfigurationIndexDocument (\s a -> s { _s3BucketWebsiteConfigurationIndexDocument = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-redirectallrequeststo+sbwcRedirectAllRequestsTo :: Lens' S3BucketWebsiteConfiguration (Maybe S3BucketRedirectAllRequestsTo)+sbwcRedirectAllRequestsTo = lens _s3BucketWebsiteConfigurationRedirectAllRequestsTo (\s a -> s { _s3BucketWebsiteConfigurationRedirectAllRequestsTo = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html#cfn-s3-websiteconfiguration-routingrules+sbwcRoutingRules :: Lens' S3BucketWebsiteConfiguration (Maybe [S3BucketRoutingRule])+sbwcRoutingRules = lens _s3BucketWebsiteConfigurationRoutingRules (\s a -> s { _s3BucketWebsiteConfigurationRoutingRules = a })
− library-gen/Stratosphere/ResourceProperties/S3CorsConfiguration.hs
@@ -1,43 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Describes the cross-origin access configuration for objects in an--- AWS::S3::Bucket resource.--module Stratosphere.ResourceProperties.S3CorsConfiguration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.S3CorsConfigurationRule---- | Full data type definition for S3CorsConfiguration. See--- 's3CorsConfiguration' for a more convenient constructor.-data S3CorsConfiguration =-  S3CorsConfiguration-  { _s3CorsConfigurationCorsRules :: [S3CorsConfigurationRule]-  } deriving (Show, Generic)--instance ToJSON S3CorsConfiguration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }--instance FromJSON S3CorsConfiguration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }---- | Constructor for 'S3CorsConfiguration' containing required fields as--- arguments.-s3CorsConfiguration-  :: [S3CorsConfigurationRule] -- ^ 'sccCorsRules'-  -> S3CorsConfiguration-s3CorsConfiguration corsRulesarg =-  S3CorsConfiguration-  { _s3CorsConfigurationCorsRules = corsRulesarg-  }---- | A set of origins and methods that you allow.-sccCorsRules :: Lens' S3CorsConfiguration [S3CorsConfigurationRule]-sccCorsRules = lens _s3CorsConfigurationCorsRules (\s a -> s { _s3CorsConfigurationCorsRules = a })
− library-gen/Stratosphere/ResourceProperties/S3CorsConfigurationRule.hs
@@ -1,81 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Describes cross-origin access rules for the Amazon S3 Cors Configuration--- property.--module Stratosphere.ResourceProperties.S3CorsConfigurationRule where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for S3CorsConfigurationRule. See--- 's3CorsConfigurationRule' for a more convenient constructor.-data S3CorsConfigurationRule =-  S3CorsConfigurationRule-  { _s3CorsConfigurationRuleAllowedHeaders :: Maybe [Val Text]-  , _s3CorsConfigurationRuleAllowedMethods :: [Val Text]-  , _s3CorsConfigurationRuleAllowedOrigins :: [Val Text]-  , _s3CorsConfigurationRuleExposedHeaders :: Maybe [Val Text]-  , _s3CorsConfigurationRuleId :: Maybe (Val Text)-  , _s3CorsConfigurationRuleMaxAge :: Maybe (Val Integer')-  } deriving (Show, Generic)--instance ToJSON S3CorsConfigurationRule where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }--instance FromJSON S3CorsConfigurationRule where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }---- | Constructor for 'S3CorsConfigurationRule' containing required fields as--- arguments.-s3CorsConfigurationRule-  :: [Val Text] -- ^ 'sccrAllowedMethods'-  -> [Val Text] -- ^ 'sccrAllowedOrigins'-  -> S3CorsConfigurationRule-s3CorsConfigurationRule allowedMethodsarg allowedOriginsarg =-  S3CorsConfigurationRule-  { _s3CorsConfigurationRuleAllowedHeaders = Nothing-  , _s3CorsConfigurationRuleAllowedMethods = allowedMethodsarg-  , _s3CorsConfigurationRuleAllowedOrigins = allowedOriginsarg-  , _s3CorsConfigurationRuleExposedHeaders = Nothing-  , _s3CorsConfigurationRuleId = Nothing-  , _s3CorsConfigurationRuleMaxAge = Nothing-  }---- | Headers that are specified in the Access-Control-Request-Headers header.--- These headers are allowed in a preflight OPTIONS request. In response to--- any preflight OPTIONS request, Amazon S3 returns any requested headers that--- are allowed.-sccrAllowedHeaders :: Lens' S3CorsConfigurationRule (Maybe [Val Text])-sccrAllowedHeaders = lens _s3CorsConfigurationRuleAllowedHeaders (\s a -> s { _s3CorsConfigurationRuleAllowedHeaders = a })---- | An HTTP method that you allow the origin to execute. The valid values are--- GET, PUT, HEAD, POST, and DELETE.-sccrAllowedMethods :: Lens' S3CorsConfigurationRule [Val Text]-sccrAllowedMethods = lens _s3CorsConfigurationRuleAllowedMethods (\s a -> s { _s3CorsConfigurationRuleAllowedMethods = a })---- | An origin that you allow to send cross-domain requests.-sccrAllowedOrigins :: Lens' S3CorsConfigurationRule [Val Text]-sccrAllowedOrigins = lens _s3CorsConfigurationRuleAllowedOrigins (\s a -> s { _s3CorsConfigurationRuleAllowedOrigins = a })---- | One or more headers in the response that are accessible to client--- applications (for example, from a JavaScript XMLHttpRequest object).-sccrExposedHeaders :: Lens' S3CorsConfigurationRule (Maybe [Val Text])-sccrExposedHeaders = lens _s3CorsConfigurationRuleExposedHeaders (\s a -> s { _s3CorsConfigurationRuleExposedHeaders = a })---- | A unique identifier for this rule. The value cannot be more than 255--- characters.-sccrId :: Lens' S3CorsConfigurationRule (Maybe (Val Text))-sccrId = lens _s3CorsConfigurationRuleId (\s a -> s { _s3CorsConfigurationRuleId = a })---- | The time in seconds that your browser is to cache the preflight response--- for the specified resource.-sccrMaxAge :: Lens' S3CorsConfigurationRule (Maybe (Val Integer'))-sccrMaxAge = lens _s3CorsConfigurationRuleMaxAge (\s a -> s { _s3CorsConfigurationRuleMaxAge = a })
− library-gen/Stratosphere/ResourceProperties/S3LifecycleConfiguration.hs
@@ -1,43 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Describes the lifecycle configuration for objects in an AWS::S3::Bucket--- resource.--module Stratosphere.ResourceProperties.S3LifecycleConfiguration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.S3LifecycleRule---- | Full data type definition for S3LifecycleConfiguration. See--- 's3LifecycleConfiguration' for a more convenient constructor.-data S3LifecycleConfiguration =-  S3LifecycleConfiguration-  { _s3LifecycleConfigurationRules :: [S3LifecycleRule]-  } deriving (Show, Generic)--instance ToJSON S3LifecycleConfiguration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }--instance FromJSON S3LifecycleConfiguration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }---- | Constructor for 'S3LifecycleConfiguration' containing required fields as--- arguments.-s3LifecycleConfiguration-  :: [S3LifecycleRule] -- ^ 'slcRules'-  -> S3LifecycleConfiguration-s3LifecycleConfiguration rulesarg =-  S3LifecycleConfiguration-  { _s3LifecycleConfigurationRules = rulesarg-  }---- | A lifecycle rule for individual objects in an S3 bucket.-slcRules :: Lens' S3LifecycleConfiguration [S3LifecycleRule]-slcRules = lens _s3LifecycleConfigurationRules (\s a -> s { _s3LifecycleConfigurationRules = a })
− library-gen/Stratosphere/ResourceProperties/S3LifecycleRule.hs
@@ -1,131 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Describes lifecycle rules for the Amazon S3 Lifecycle Configuration--- property.--module Stratosphere.ResourceProperties.S3LifecycleRule where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.S3LifecycleRuleNoncurrentVersionTransition-import Stratosphere.ResourceProperties.S3LifecycleRuleTransition---- | Full data type definition for S3LifecycleRule. See 's3LifecycleRule' for--- a more convenient constructor.-data S3LifecycleRule =-  S3LifecycleRule-  { _s3LifecycleRuleExpirationDate :: Maybe (Val Text)-  , _s3LifecycleRuleExpirationInDays :: Maybe (Val Integer')-  , _s3LifecycleRuleId :: Maybe (Val Text)-  , _s3LifecycleRuleNoncurrentVersionExpirationInDays :: Maybe (Val Integer')-  , _s3LifecycleRuleNoncurrentVersionTransition :: Maybe S3LifecycleRuleNoncurrentVersionTransition-  , _s3LifecycleRuleNoncurrentVersionTransitions :: Maybe [S3LifecycleRuleNoncurrentVersionTransition]-  , _s3LifecycleRulePrefix :: Maybe (Val Text)-  , _s3LifecycleRuleStatus :: Val Text-  , _s3LifecycleRuleTransition :: Maybe S3LifecycleRuleTransition-  , _s3LifecycleRuleTransitions :: Maybe [S3LifecycleRuleTransition]-  } deriving (Show, Generic)--instance ToJSON S3LifecycleRule where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }--instance FromJSON S3LifecycleRule where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }---- | Constructor for 'S3LifecycleRule' containing required fields as--- arguments.-s3LifecycleRule-  :: Val Text -- ^ 'slrStatus'-  -> S3LifecycleRule-s3LifecycleRule statusarg =-  S3LifecycleRule-  { _s3LifecycleRuleExpirationDate = Nothing-  , _s3LifecycleRuleExpirationInDays = Nothing-  , _s3LifecycleRuleId = Nothing-  , _s3LifecycleRuleNoncurrentVersionExpirationInDays = Nothing-  , _s3LifecycleRuleNoncurrentVersionTransition = Nothing-  , _s3LifecycleRuleNoncurrentVersionTransitions = Nothing-  , _s3LifecycleRulePrefix = Nothing-  , _s3LifecycleRuleStatus = statusarg-  , _s3LifecycleRuleTransition = Nothing-  , _s3LifecycleRuleTransitions = Nothing-  }---- | Indicates when objects are deleted from Amazon S3 and Amazon Glacier. The--- date value must be in ISO 8601 format. The time is always midnight UTC. If--- you specify an expiration and transition time, you must use the same time--- unit for both properties (either in days or by date). The expiration time--- must also be later than the transition time.-slrExpirationDate :: Lens' S3LifecycleRule (Maybe (Val Text))-slrExpirationDate = lens _s3LifecycleRuleExpirationDate (\s a -> s { _s3LifecycleRuleExpirationDate = a })---- | Indicates the number of days after creation when objects are deleted from--- Amazon S3 and Amazon Glacier. If you specify an expiration and transition--- time, you must use the same time unit for both properties (either in days--- or by date). The expiration time must also be later than the transition--- time.-slrExpirationInDays :: Lens' S3LifecycleRule (Maybe (Val Integer'))-slrExpirationInDays = lens _s3LifecycleRuleExpirationInDays (\s a -> s { _s3LifecycleRuleExpirationInDays = a })---- | A unique identifier for this rule. The value cannot be more than 255--- characters.-slrId :: Lens' S3LifecycleRule (Maybe (Val Text))-slrId = lens _s3LifecycleRuleId (\s a -> s { _s3LifecycleRuleId = a })---- | For buckets with versioning enabled (or suspended), specifies the time,--- in days, between when a new version of the object is uploaded to the bucket--- and when old versions of the object expire. When object versions expire,--- Amazon S3 permanently deletes them. If you specify a transition and--- expiration time, the expiration time must be later than the transition--- time.-slrNoncurrentVersionExpirationInDays :: Lens' S3LifecycleRule (Maybe (Val Integer'))-slrNoncurrentVersionExpirationInDays = lens _s3LifecycleRuleNoncurrentVersionExpirationInDays (\s a -> s { _s3LifecycleRuleNoncurrentVersionExpirationInDays = a })---- | For buckets with versioning enabled (or suspended), specifies when--- non-current objects transition to a specified storage class. If you specify--- a transition and expiration time, the expiration time must be later than--- the transition time. If you specify this property, don't specify the--- NoncurrentVersionTransitions property.-slrNoncurrentVersionTransition :: Lens' S3LifecycleRule (Maybe S3LifecycleRuleNoncurrentVersionTransition)-slrNoncurrentVersionTransition = lens _s3LifecycleRuleNoncurrentVersionTransition (\s a -> s { _s3LifecycleRuleNoncurrentVersionTransition = a })---- | For buckets with versioning enabled (or suspended), one or more--- transition rules that specify when non-current objects transition to a--- specified storage class. If you specify a transition and expiration time,--- the expiration time must be later than the transition time. If you specify--- this property, don't specify the NoncurrentVersionTransition property.-slrNoncurrentVersionTransitions :: Lens' S3LifecycleRule (Maybe [S3LifecycleRuleNoncurrentVersionTransition])-slrNoncurrentVersionTransitions = lens _s3LifecycleRuleNoncurrentVersionTransitions (\s a -> s { _s3LifecycleRuleNoncurrentVersionTransitions = a })---- | Object key prefix that identifies one or more objects to which this rule--- applies.-slrPrefix :: Lens' S3LifecycleRule (Maybe (Val Text))-slrPrefix = lens _s3LifecycleRulePrefix (\s a -> s { _s3LifecycleRulePrefix = a })---- | Specify either Enabled or Disabled. If you specify Enabled, Amazon S3--- executes this rule as scheduled. If you specify Disabled, Amazon S3 ignores--- this rule.-slrStatus :: Lens' S3LifecycleRule (Val Text)-slrStatus = lens _s3LifecycleRuleStatus (\s a -> s { _s3LifecycleRuleStatus = a })---- | Specifies when an object transitions to a specified storage class. If you--- specify an expiration and transition time, you must use the same time unit--- for both properties (either in days or by date). The expiration time must--- also be later than the transition time. If you specify this property, don't--- specify the Transitions property.-slrTransition :: Lens' S3LifecycleRule (Maybe S3LifecycleRuleTransition)-slrTransition = lens _s3LifecycleRuleTransition (\s a -> s { _s3LifecycleRuleTransition = a })---- | One or more transition rules that specify when an object transitions to a--- specified storage class. If you specify an expiration and transition time,--- you must use the same time unit for both properties (either in days or by--- date). The expiration time must also be later than the transition time. If--- you specify this property, don't specify the Transition property.-slrTransitions :: Lens' S3LifecycleRule (Maybe [S3LifecycleRuleTransition])-slrTransitions = lens _s3LifecycleRuleTransitions (\s a -> s { _s3LifecycleRuleTransitions = a })
− library-gen/Stratosphere/ResourceProperties/S3LifecycleRuleNoncurrentVersionTransition.hs
@@ -1,56 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | NoncurrentVersionTransition is a property of the Amazon S3 Lifecycle Rule--- property that describes when noncurrent objects transition to a specified--- storage class.--module Stratosphere.ResourceProperties.S3LifecycleRuleNoncurrentVersionTransition where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for S3LifecycleRuleNoncurrentVersionTransition.--- See 's3LifecycleRuleNoncurrentVersionTransition' for a more convenient--- constructor.-data S3LifecycleRuleNoncurrentVersionTransition =-  S3LifecycleRuleNoncurrentVersionTransition-  { _s3LifecycleRuleNoncurrentVersionTransitionStorageClass :: Val Text-  , _s3LifecycleRuleNoncurrentVersionTransitionTransitionInDays :: Val Integer'-  } deriving (Show, Generic)--instance ToJSON S3LifecycleRuleNoncurrentVersionTransition where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 43, omitNothingFields = True }--instance FromJSON S3LifecycleRuleNoncurrentVersionTransition where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 43, omitNothingFields = True }---- | Constructor for 'S3LifecycleRuleNoncurrentVersionTransition' containing--- required fields as arguments.-s3LifecycleRuleNoncurrentVersionTransition-  :: Val Text -- ^ 'slrnvtStorageClass'-  -> Val Integer' -- ^ 'slrnvtTransitionInDays'-  -> S3LifecycleRuleNoncurrentVersionTransition-s3LifecycleRuleNoncurrentVersionTransition storageClassarg transitionInDaysarg =-  S3LifecycleRuleNoncurrentVersionTransition-  { _s3LifecycleRuleNoncurrentVersionTransitionStorageClass = storageClassarg-  , _s3LifecycleRuleNoncurrentVersionTransitionTransitionInDays = transitionInDaysarg-  }---- | The storage class to which you want the object to transition, such as--- GLACIER. For valid values, see the StorageClass request element of the PUT--- Bucket lifecycle action in the Amazon Simple Storage Service API Reference.-slrnvtStorageClass :: Lens' S3LifecycleRuleNoncurrentVersionTransition (Val Text)-slrnvtStorageClass = lens _s3LifecycleRuleNoncurrentVersionTransitionStorageClass (\s a -> s { _s3LifecycleRuleNoncurrentVersionTransitionStorageClass = a })---- | The number of days between the time that a new version of the object is--- uploaded to the bucket and when old versions of the object are transitioned--- to the specified storage class.-slrnvtTransitionInDays :: Lens' S3LifecycleRuleNoncurrentVersionTransition (Val Integer')-slrnvtTransitionInDays = lens _s3LifecycleRuleNoncurrentVersionTransitionTransitionInDays (\s a -> s { _s3LifecycleRuleNoncurrentVersionTransitionTransitionInDays = a })
− library-gen/Stratosphere/ResourceProperties/S3LifecycleRuleTransition.hs
@@ -1,59 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Describes when an object transitions to a specified storage class for the--- Amazon S3 Lifecycle Rule property.--module Stratosphere.ResourceProperties.S3LifecycleRuleTransition where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for S3LifecycleRuleTransition. See--- 's3LifecycleRuleTransition' for a more convenient constructor.-data S3LifecycleRuleTransition =-  S3LifecycleRuleTransition-  { _s3LifecycleRuleTransitionStorageClass :: Val Text-  , _s3LifecycleRuleTransitionTransitionDate :: Maybe (Val Text)-  , _s3LifecycleRuleTransitionTransitionInDays :: Maybe (Val Integer')-  } deriving (Show, Generic)--instance ToJSON S3LifecycleRuleTransition where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }--instance FromJSON S3LifecycleRuleTransition where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }---- | Constructor for 'S3LifecycleRuleTransition' containing required fields as--- arguments.-s3LifecycleRuleTransition-  :: Val Text -- ^ 'slrtStorageClass'-  -> S3LifecycleRuleTransition-s3LifecycleRuleTransition storageClassarg =-  S3LifecycleRuleTransition-  { _s3LifecycleRuleTransitionStorageClass = storageClassarg-  , _s3LifecycleRuleTransitionTransitionDate = Nothing-  , _s3LifecycleRuleTransitionTransitionInDays = Nothing-  }---- | The storage class to which you want the object to transition, such as--- GLACIER. For valid values, see the StorageClass request element of the PUT--- Bucket lifecycle action in the Amazon Simple Storage Service API Reference.-slrtStorageClass :: Lens' S3LifecycleRuleTransition (Val Text)-slrtStorageClass = lens _s3LifecycleRuleTransitionStorageClass (\s a -> s { _s3LifecycleRuleTransitionStorageClass = a })---- | Indicates when objects are transitioned to the specified storage class.--- The date value must be in ISO 8601 format. The time is always midnight UTC.-slrtTransitionDate :: Lens' S3LifecycleRuleTransition (Maybe (Val Text))-slrtTransitionDate = lens _s3LifecycleRuleTransitionTransitionDate (\s a -> s { _s3LifecycleRuleTransitionTransitionDate = a })---- | Indicates the number of days after creation when objects are transitioned--- to the specified storage class.-slrtTransitionInDays :: Lens' S3LifecycleRuleTransition (Maybe (Val Integer'))-slrtTransitionInDays = lens _s3LifecycleRuleTransitionTransitionInDays (\s a -> s { _s3LifecycleRuleTransitionTransitionInDays = a })
− library-gen/Stratosphere/ResourceProperties/S3LoggingConfiguration.hs
@@ -1,55 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Describes where logs are stored and the prefix that Amazon S3 assigns to--- all log object keys for an AWS::S3::Bucket resource. These logs track--- requests to an Amazon S3 bucket. For more information, see PUT Bucket--- logging in the Amazon Simple Storage Service API Reference.--module Stratosphere.ResourceProperties.S3LoggingConfiguration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for S3LoggingConfiguration. See--- 's3LoggingConfiguration' for a more convenient constructor.-data S3LoggingConfiguration =-  S3LoggingConfiguration-  { _s3LoggingConfigurationDestinationBucketName :: Maybe (Val Text)-  , _s3LoggingConfigurationLogFilePrefix :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON S3LoggingConfiguration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }--instance FromJSON S3LoggingConfiguration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }---- | Constructor for 'S3LoggingConfiguration' containing required fields as--- arguments.-s3LoggingConfiguration-  :: S3LoggingConfiguration-s3LoggingConfiguration  =-  S3LoggingConfiguration-  { _s3LoggingConfigurationDestinationBucketName = Nothing-  , _s3LoggingConfigurationLogFilePrefix = Nothing-  }---- | The name of an Amazon S3 bucket where Amazon S3 store server access log--- files. You can store log files in any bucket that you own. By default, logs--- are stored in the bucket where the LoggingConfiguration property is--- defined.-slcDestinationBucketName :: Lens' S3LoggingConfiguration (Maybe (Val Text))-slcDestinationBucketName = lens _s3LoggingConfigurationDestinationBucketName (\s a -> s { _s3LoggingConfigurationDestinationBucketName = a })---- | A prefix for the all log object keys. If you store log files from--- multiple Amazon S3 buckets in a single bucket, you can use a prefix to--- distinguish which log files came from which bucket.-slcLogFilePrefix :: Lens' S3LoggingConfiguration (Maybe (Val Text))-slcLogFilePrefix = lens _s3LoggingConfigurationLogFilePrefix (\s a -> s { _s3LoggingConfigurationLogFilePrefix = a })
− library-gen/Stratosphere/ResourceProperties/S3NotificationConfiguration.hs
@@ -1,58 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Describes the notification configuration for an AWS::S3::Bucket resource.--module Stratosphere.ResourceProperties.S3NotificationConfiguration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.S3NotificationConfigurationLambdaConfiguration-import Stratosphere.ResourceProperties.S3NotificationConfigurationQueueConfiguration-import Stratosphere.ResourceProperties.S3NotificationConfigurationTopicConfiguration---- | Full data type definition for S3NotificationConfiguration. See--- 's3NotificationConfiguration' for a more convenient constructor.-data S3NotificationConfiguration =-  S3NotificationConfiguration-  { _s3NotificationConfigurationLambdaConfigurations :: Maybe [S3NotificationConfigurationLambdaConfiguration]-  , _s3NotificationConfigurationQueueConfigurations :: Maybe [S3NotificationConfigurationQueueConfiguration]-  , _s3NotificationConfigurationTopicConfigurations :: Maybe [S3NotificationConfigurationTopicConfiguration]-  } deriving (Show, Generic)--instance ToJSON S3NotificationConfiguration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }--instance FromJSON S3NotificationConfiguration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }---- | Constructor for 'S3NotificationConfiguration' containing required fields--- as arguments.-s3NotificationConfiguration-  :: S3NotificationConfiguration-s3NotificationConfiguration  =-  S3NotificationConfiguration-  { _s3NotificationConfigurationLambdaConfigurations = Nothing-  , _s3NotificationConfigurationQueueConfigurations = Nothing-  , _s3NotificationConfigurationTopicConfigurations = Nothing-  }---- | The AWS Lambda functions to invoke and the events for which to invoke the--- functions.-sncLambdaConfigurations :: Lens' S3NotificationConfiguration (Maybe [S3NotificationConfigurationLambdaConfiguration])-sncLambdaConfigurations = lens _s3NotificationConfigurationLambdaConfigurations (\s a -> s { _s3NotificationConfigurationLambdaConfigurations = a })---- | The Amazon Simple Queue Service queues to publish messages to and the--- events for which to publish messages.-sncQueueConfigurations :: Lens' S3NotificationConfiguration (Maybe [S3NotificationConfigurationQueueConfiguration])-sncQueueConfigurations = lens _s3NotificationConfigurationQueueConfigurations (\s a -> s { _s3NotificationConfigurationQueueConfigurations = a })---- | The topic to which notifications are sent and the events for which--- notification are generated.-sncTopicConfigurations :: Lens' S3NotificationConfiguration (Maybe [S3NotificationConfigurationTopicConfiguration])-sncTopicConfigurations = lens _s3NotificationConfigurationTopicConfigurations (\s a -> s { _s3NotificationConfigurationTopicConfigurations = a })
− library-gen/Stratosphere/ResourceProperties/S3NotificationConfigurationConfigFilter.hs
@@ -1,47 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Filter is a property of the LambdaConfigurations, QueueConfigurations,--- and TopicConfigurations properties that describes the filtering rules that--- determine the Amazon Simple Storage Service (Amazon S3) objects for which--- to send notifications.--module Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilter where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3Key---- | Full data type definition for S3NotificationConfigurationConfigFilter.--- See 's3NotificationConfigurationConfigFilter' for a more convenient--- constructor.-data S3NotificationConfigurationConfigFilter =-  S3NotificationConfigurationConfigFilter-  { _s3NotificationConfigurationConfigFilterS3Key :: S3NotificationConfigurationConfigFilterS3Key-  } deriving (Show, Generic)--instance ToJSON S3NotificationConfigurationConfigFilter where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 40, omitNothingFields = True }--instance FromJSON S3NotificationConfigurationConfigFilter where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 40, omitNothingFields = True }---- | Constructor for 'S3NotificationConfigurationConfigFilter' containing--- required fields as arguments.-s3NotificationConfigurationConfigFilter-  :: S3NotificationConfigurationConfigFilterS3Key -- ^ 'snccfS3Key'-  -> S3NotificationConfigurationConfigFilter-s3NotificationConfigurationConfigFilter s3Keyarg =-  S3NotificationConfigurationConfigFilter-  { _s3NotificationConfigurationConfigFilterS3Key = s3Keyarg-  }---- | Amazon S3 filtering rules that describe for which object key names to--- send notifications.-snccfS3Key :: Lens' S3NotificationConfigurationConfigFilter S3NotificationConfigurationConfigFilterS3Key-snccfS3Key = lens _s3NotificationConfigurationConfigFilterS3Key (\s a -> s { _s3NotificationConfigurationConfigFilterS3Key = a })
− library-gen/Stratosphere/ResourceProperties/S3NotificationConfigurationConfigFilterS3Key.hs
@@ -1,47 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | S3Key is a property of the Amazon S3 NotificationConfiguration Config--- Filter property that specifies the key names of Amazon Simple Storage--- Service (Amazon S3) objects for which to send notifications.--module Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3Key where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3KeyRules---- | Full data type definition for--- S3NotificationConfigurationConfigFilterS3Key. See--- 's3NotificationConfigurationConfigFilterS3Key' for a more convenient--- constructor.-data S3NotificationConfigurationConfigFilterS3Key =-  S3NotificationConfigurationConfigFilterS3Key-  { _s3NotificationConfigurationConfigFilterS3KeyRules :: [S3NotificationConfigurationConfigFilterS3KeyRules]-  } deriving (Show, Generic)--instance ToJSON S3NotificationConfigurationConfigFilterS3Key where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 45, omitNothingFields = True }--instance FromJSON S3NotificationConfigurationConfigFilterS3Key where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 45, omitNothingFields = True }---- | Constructor for 'S3NotificationConfigurationConfigFilterS3Key' containing--- required fields as arguments.-s3NotificationConfigurationConfigFilterS3Key-  :: [S3NotificationConfigurationConfigFilterS3KeyRules] -- ^ 'snccfskRules'-  -> S3NotificationConfigurationConfigFilterS3Key-s3NotificationConfigurationConfigFilterS3Key rulesarg =-  S3NotificationConfigurationConfigFilterS3Key-  { _s3NotificationConfigurationConfigFilterS3KeyRules = rulesarg-  }---- | The object key name to filter on and whether to filter on the suffix or--- prefix of the key name.-snccfskRules :: Lens' S3NotificationConfigurationConfigFilterS3Key [S3NotificationConfigurationConfigFilterS3KeyRules]-snccfskRules = lens _s3NotificationConfigurationConfigFilterS3KeyRules (\s a -> s { _s3NotificationConfigurationConfigFilterS3KeyRules = a })
− library-gen/Stratosphere/ResourceProperties/S3NotificationConfigurationConfigFilterS3KeyRules.hs
@@ -1,56 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Rules is a property of the Amazon S3 NotificationConfiguration Config--- Filter S3Key property that describes the Amazon Simple Storage Service--- (Amazon S3) object key name to filter on and whether to filter on the--- suffix or prefix of the key name.--module Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3KeyRules where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for--- S3NotificationConfigurationConfigFilterS3KeyRules. See--- 's3NotificationConfigurationConfigFilterS3KeyRules' for a more convenient--- constructor.-data S3NotificationConfigurationConfigFilterS3KeyRules =-  S3NotificationConfigurationConfigFilterS3KeyRules-  { _s3NotificationConfigurationConfigFilterS3KeyRulesName :: Val Text-  , _s3NotificationConfigurationConfigFilterS3KeyRulesValue :: Val Text-  } deriving (Show, Generic)--instance ToJSON S3NotificationConfigurationConfigFilterS3KeyRules where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 50, omitNothingFields = True }--instance FromJSON S3NotificationConfigurationConfigFilterS3KeyRules where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 50, omitNothingFields = True }---- | Constructor for 'S3NotificationConfigurationConfigFilterS3KeyRules'--- containing required fields as arguments.-s3NotificationConfigurationConfigFilterS3KeyRules-  :: Val Text -- ^ 'snccfskrName'-  -> Val Text -- ^ 'snccfskrValue'-  -> S3NotificationConfigurationConfigFilterS3KeyRules-s3NotificationConfigurationConfigFilterS3KeyRules namearg valuearg =-  S3NotificationConfigurationConfigFilterS3KeyRules-  { _s3NotificationConfigurationConfigFilterS3KeyRulesName = namearg-  , _s3NotificationConfigurationConfigFilterS3KeyRulesValue = valuearg-  }---- | Whether the filter matches the prefix or suffix of object key names. For--- valid values, see the Name request element of the PUT Bucket notification--- action in the Amazon Simple Storage Service API Reference.-snccfskrName :: Lens' S3NotificationConfigurationConfigFilterS3KeyRules (Val Text)-snccfskrName = lens _s3NotificationConfigurationConfigFilterS3KeyRulesName (\s a -> s { _s3NotificationConfigurationConfigFilterS3KeyRulesName = a })---- | The value that the filter searches for in object key names.-snccfskrValue :: Lens' S3NotificationConfigurationConfigFilterS3KeyRules (Val Text)-snccfskrValue = lens _s3NotificationConfigurationConfigFilterS3KeyRulesValue (\s a -> s { _s3NotificationConfigurationConfigFilterS3KeyRulesValue = a })
− library-gen/Stratosphere/ResourceProperties/S3NotificationConfigurationLambdaConfiguration.hs
@@ -1,65 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | LambdaConfigurations is a property of the Amazon S3--- NotificationConfiguration property that describes the AWS Lambda (Lambda)--- functions to invoke and the events for which to invoke them.--module Stratosphere.ResourceProperties.S3NotificationConfigurationLambdaConfiguration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilter---- | Full data type definition for--- S3NotificationConfigurationLambdaConfiguration. See--- 's3NotificationConfigurationLambdaConfiguration' for a more convenient--- constructor.-data S3NotificationConfigurationLambdaConfiguration =-  S3NotificationConfigurationLambdaConfiguration-  { _s3NotificationConfigurationLambdaConfigurationEvent :: Val Text-  , _s3NotificationConfigurationLambdaConfigurationFilter :: Maybe S3NotificationConfigurationConfigFilter-  , _s3NotificationConfigurationLambdaConfigurationFunction :: Val Text-  } deriving (Show, Generic)--instance ToJSON S3NotificationConfigurationLambdaConfiguration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 47, omitNothingFields = True }--instance FromJSON S3NotificationConfigurationLambdaConfiguration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 47, omitNothingFields = True }---- | Constructor for 'S3NotificationConfigurationLambdaConfiguration'--- containing required fields as arguments.-s3NotificationConfigurationLambdaConfiguration-  :: Val Text -- ^ 'snclcEvent'-  -> Val Text -- ^ 'snclcFunction'-  -> S3NotificationConfigurationLambdaConfiguration-s3NotificationConfigurationLambdaConfiguration eventarg functionarg =-  S3NotificationConfigurationLambdaConfiguration-  { _s3NotificationConfigurationLambdaConfigurationEvent = eventarg-  , _s3NotificationConfigurationLambdaConfigurationFilter = Nothing-  , _s3NotificationConfigurationLambdaConfigurationFunction = functionarg-  }---- | The S3 bucket event for which to invoke the Lambda function. For more--- information, see Supported Event Types in the Amazon Simple Storage Service--- Developer Guide.-snclcEvent :: Lens' S3NotificationConfigurationLambdaConfiguration (Val Text)-snclcEvent = lens _s3NotificationConfigurationLambdaConfigurationEvent (\s a -> s { _s3NotificationConfigurationLambdaConfigurationEvent = a })---- | The filtering rules that determine which objects invoke the Lambda--- function. For example, you can create a filter so that only image files--- with a .jpg extension invoke the function when they are added to the S3--- bucket.-snclcFilter :: Lens' S3NotificationConfigurationLambdaConfiguration (Maybe S3NotificationConfigurationConfigFilter)-snclcFilter = lens _s3NotificationConfigurationLambdaConfigurationFilter (\s a -> s { _s3NotificationConfigurationLambdaConfigurationFilter = a })---- | The Amazon Resource Name (ARN) of the Lambda function that Amazon S3--- invokes when the specified event type occurs.-snclcFunction :: Lens' S3NotificationConfigurationLambdaConfiguration (Val Text)-snclcFunction = lens _s3NotificationConfigurationLambdaConfigurationFunction (\s a -> s { _s3NotificationConfigurationLambdaConfigurationFunction = a })
− library-gen/Stratosphere/ResourceProperties/S3NotificationConfigurationQueueConfiguration.hs
@@ -1,66 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | QueueConfigurations is a property of the Amazon S3--- NotificationConfiguration property that describes the S3 bucket events--- about which you want to send messages to Amazon SQS and the queues to which--- you want to send them.--module Stratosphere.ResourceProperties.S3NotificationConfigurationQueueConfiguration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilter---- | Full data type definition for--- S3NotificationConfigurationQueueConfiguration. See--- 's3NotificationConfigurationQueueConfiguration' for a more convenient--- constructor.-data S3NotificationConfigurationQueueConfiguration =-  S3NotificationConfigurationQueueConfiguration-  { _s3NotificationConfigurationQueueConfigurationEvent :: Val Text-  , _s3NotificationConfigurationQueueConfigurationFilter :: Maybe S3NotificationConfigurationConfigFilter-  , _s3NotificationConfigurationQueueConfigurationQueue :: Val Text-  } deriving (Show, Generic)--instance ToJSON S3NotificationConfigurationQueueConfiguration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 46, omitNothingFields = True }--instance FromJSON S3NotificationConfigurationQueueConfiguration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 46, omitNothingFields = True }---- | Constructor for 'S3NotificationConfigurationQueueConfiguration'--- containing required fields as arguments.-s3NotificationConfigurationQueueConfiguration-  :: Val Text -- ^ 'sncqcEvent'-  -> Val Text -- ^ 'sncqcQueue'-  -> S3NotificationConfigurationQueueConfiguration-s3NotificationConfigurationQueueConfiguration eventarg queuearg =-  S3NotificationConfigurationQueueConfiguration-  { _s3NotificationConfigurationQueueConfigurationEvent = eventarg-  , _s3NotificationConfigurationQueueConfigurationFilter = Nothing-  , _s3NotificationConfigurationQueueConfigurationQueue = queuearg-  }---- | The S3 bucket event about which you want to publish messages to Amazon--- Simple Queue Service ( Amazon SQS). For more information, see Supported--- Event Types in the Amazon Simple Storage Service Developer Guide.-sncqcEvent :: Lens' S3NotificationConfigurationQueueConfiguration (Val Text)-sncqcEvent = lens _s3NotificationConfigurationQueueConfigurationEvent (\s a -> s { _s3NotificationConfigurationQueueConfigurationEvent = a })---- | The filtering rules that determine for which objects to send--- notifications. For example, you can create a filter so that Amazon Simple--- Storage Service (Amazon S3) sends notifications only when image files with--- a .jpg extension are added to the bucket.-sncqcFilter :: Lens' S3NotificationConfigurationQueueConfiguration (Maybe S3NotificationConfigurationConfigFilter)-sncqcFilter = lens _s3NotificationConfigurationQueueConfigurationFilter (\s a -> s { _s3NotificationConfigurationQueueConfigurationFilter = a })---- | The Amazon Resource Name (ARN) of the Amazon SQS queue that Amazon S3--- publishes messages to when the specified event type occurs.-sncqcQueue :: Lens' S3NotificationConfigurationQueueConfiguration (Val Text)-sncqcQueue = lens _s3NotificationConfigurationQueueConfigurationQueue (\s a -> s { _s3NotificationConfigurationQueueConfigurationQueue = a })
− library-gen/Stratosphere/ResourceProperties/S3NotificationConfigurationTopicConfiguration.hs
@@ -1,64 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Describes the topic and events for the Amazon S3--- NotificationConfiguration property.--module Stratosphere.ResourceProperties.S3NotificationConfigurationTopicConfiguration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilter---- | Full data type definition for--- S3NotificationConfigurationTopicConfiguration. See--- 's3NotificationConfigurationTopicConfiguration' for a more convenient--- constructor.-data S3NotificationConfigurationTopicConfiguration =-  S3NotificationConfigurationTopicConfiguration-  { _s3NotificationConfigurationTopicConfigurationEvent :: Val Text-  , _s3NotificationConfigurationTopicConfigurationFilter :: Maybe S3NotificationConfigurationConfigFilter-  , _s3NotificationConfigurationTopicConfigurationTopic :: Val Text-  } deriving (Show, Generic)--instance ToJSON S3NotificationConfigurationTopicConfiguration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 46, omitNothingFields = True }--instance FromJSON S3NotificationConfigurationTopicConfiguration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 46, omitNothingFields = True }---- | Constructor for 'S3NotificationConfigurationTopicConfiguration'--- containing required fields as arguments.-s3NotificationConfigurationTopicConfiguration-  :: Val Text -- ^ 'snctcEvent'-  -> Val Text -- ^ 'snctcTopic'-  -> S3NotificationConfigurationTopicConfiguration-s3NotificationConfigurationTopicConfiguration eventarg topicarg =-  S3NotificationConfigurationTopicConfiguration-  { _s3NotificationConfigurationTopicConfigurationEvent = eventarg-  , _s3NotificationConfigurationTopicConfigurationFilter = Nothing-  , _s3NotificationConfigurationTopicConfigurationTopic = topicarg-  }---- | The Amazon Simple Storage Service (Amazon S3) bucket event about which to--- send notifications. For more information, see Supported Event Types in the--- Amazon Simple Storage Service Developer Guide.-snctcEvent :: Lens' S3NotificationConfigurationTopicConfiguration (Val Text)-snctcEvent = lens _s3NotificationConfigurationTopicConfigurationEvent (\s a -> s { _s3NotificationConfigurationTopicConfigurationEvent = a })---- | The filtering rules that determine for which objects to send--- notifications. For example, you can create a filter so that Amazon Simple--- Storage Service (Amazon S3) sends notifications only when image files with--- a .jpg extension are added to the bucket.-snctcFilter :: Lens' S3NotificationConfigurationTopicConfiguration (Maybe S3NotificationConfigurationConfigFilter)-snctcFilter = lens _s3NotificationConfigurationTopicConfigurationFilter (\s a -> s { _s3NotificationConfigurationTopicConfigurationFilter = a })---- | The Amazon SNS topic Amazon Resource Name (ARN) to which Amazon S3--- reports the specified events.-snctcTopic :: Lens' S3NotificationConfigurationTopicConfiguration (Val Text)-snctcTopic = lens _s3NotificationConfigurationTopicConfigurationTopic (\s a -> s { _s3NotificationConfigurationTopicConfigurationTopic = a })
− library-gen/Stratosphere/ResourceProperties/S3ReplicationConfiguration.hs
@@ -1,56 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | ReplicationConfiguration is a property of the AWS::S3::Bucket resource--- that specifies replication rules and the AWS Identity and Access Management--- (IAM) role Amazon Simple Storage Service (Amazon S3) uses to replicate--- objects.--module Stratosphere.ResourceProperties.S3ReplicationConfiguration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.S3ReplicationConfigurationRule---- | Full data type definition for S3ReplicationConfiguration. See--- 's3ReplicationConfiguration' for a more convenient constructor.-data S3ReplicationConfiguration =-  S3ReplicationConfiguration-  { _s3ReplicationConfigurationRole :: Val Text-  , _s3ReplicationConfigurationRules :: [S3ReplicationConfigurationRule]-  } deriving (Show, Generic)--instance ToJSON S3ReplicationConfiguration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }--instance FromJSON S3ReplicationConfiguration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }---- | Constructor for 'S3ReplicationConfiguration' containing required fields--- as arguments.-s3ReplicationConfiguration-  :: Val Text -- ^ 'srcRole'-  -> [S3ReplicationConfigurationRule] -- ^ 'srcRules'-  -> S3ReplicationConfiguration-s3ReplicationConfiguration rolearg rulesarg =-  S3ReplicationConfiguration-  { _s3ReplicationConfigurationRole = rolearg-  , _s3ReplicationConfigurationRules = rulesarg-  }---- | The Amazon Resource Name (ARN) of an AWS Identity and Access Management--- (IAM) role that Amazon S3 assumes when replicating objects. For more--- information, see How to Set Up Cross-Region Replication in the Amazon--- Simple Storage Service Developer Guide.-srcRole :: Lens' S3ReplicationConfiguration (Val Text)-srcRole = lens _s3ReplicationConfigurationRole (\s a -> s { _s3ReplicationConfigurationRole = a })---- | A replication rule that specifies which objects to replicate and where--- they are stored.-srcRules :: Lens' S3ReplicationConfiguration [S3ReplicationConfigurationRule]-srcRules = lens _s3ReplicationConfigurationRules (\s a -> s { _s3ReplicationConfigurationRules = a })
− library-gen/Stratosphere/ResourceProperties/S3ReplicationConfigurationRule.hs
@@ -1,68 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Rules is a property of the Amazon S3 ReplicationConfiguration property--- that specifies which Amazon Simple Storage Service (Amazon S3) objects to--- replicate and where to store them.--module Stratosphere.ResourceProperties.S3ReplicationConfigurationRule where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.S3ReplicationConfigurationRulesDestination---- | Full data type definition for S3ReplicationConfigurationRule. See--- 's3ReplicationConfigurationRule' for a more convenient constructor.-data S3ReplicationConfigurationRule =-  S3ReplicationConfigurationRule-  { _s3ReplicationConfigurationRuleDestination :: S3ReplicationConfigurationRulesDestination-  , _s3ReplicationConfigurationRuleId :: Maybe (Val Text)-  , _s3ReplicationConfigurationRulePrefix :: Val Text-  , _s3ReplicationConfigurationRuleStatus :: Val Text-  } deriving (Show, Generic)--instance ToJSON S3ReplicationConfigurationRule where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }--instance FromJSON S3ReplicationConfigurationRule where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }---- | Constructor for 'S3ReplicationConfigurationRule' containing required--- fields as arguments.-s3ReplicationConfigurationRule-  :: S3ReplicationConfigurationRulesDestination -- ^ 'srcrDestination'-  -> Val Text -- ^ 'srcrPrefix'-  -> Val Text -- ^ 'srcrStatus'-  -> S3ReplicationConfigurationRule-s3ReplicationConfigurationRule destinationarg prefixarg statusarg =-  S3ReplicationConfigurationRule-  { _s3ReplicationConfigurationRuleDestination = destinationarg-  , _s3ReplicationConfigurationRuleId = Nothing-  , _s3ReplicationConfigurationRulePrefix = prefixarg-  , _s3ReplicationConfigurationRuleStatus = statusarg-  }---- | Defines the destination where Amazon S3 stores replicated objects.-srcrDestination :: Lens' S3ReplicationConfigurationRule S3ReplicationConfigurationRulesDestination-srcrDestination = lens _s3ReplicationConfigurationRuleDestination (\s a -> s { _s3ReplicationConfigurationRuleDestination = a })---- | A unique identifier for the rule. If you don't specify a value, AWS--- CloudFormation generates a random ID.-srcrId :: Lens' S3ReplicationConfigurationRule (Maybe (Val Text))-srcrId = lens _s3ReplicationConfigurationRuleId (\s a -> s { _s3ReplicationConfigurationRuleId = a })---- | An object prefix. This rule applies to all Amazon S3 objects with this--- prefix. To specify all objects in an S3 bucket, specify an empty string.-srcrPrefix :: Lens' S3ReplicationConfigurationRule (Val Text)-srcrPrefix = lens _s3ReplicationConfigurationRulePrefix (\s a -> s { _s3ReplicationConfigurationRulePrefix = a })---- | Whether the rule is enabled. For valid values, see the Status element of--- the PUT Bucket replication action in the Amazon Simple Storage Service API--- Reference.-srcrStatus :: Lens' S3ReplicationConfigurationRule (Val Text)-srcrStatus = lens _s3ReplicationConfigurationRuleStatus (\s a -> s { _s3ReplicationConfigurationRuleStatus = a })
− library-gen/Stratosphere/ResourceProperties/S3ReplicationConfigurationRulesDestination.hs
@@ -1,58 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Destination is a property of the Amazon S3 ReplicationConfiguration Rules--- property that specifies which Amazon Simple Storage Service (Amazon S3)--- bucket to store replicated objects and their storage class.--module Stratosphere.ResourceProperties.S3ReplicationConfigurationRulesDestination where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for S3ReplicationConfigurationRulesDestination.--- See 's3ReplicationConfigurationRulesDestination' for a more convenient--- constructor.-data S3ReplicationConfigurationRulesDestination =-  S3ReplicationConfigurationRulesDestination-  { _s3ReplicationConfigurationRulesDestinationBucket :: Val Text-  , _s3ReplicationConfigurationRulesDestinationStorageClass :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON S3ReplicationConfigurationRulesDestination where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 43, omitNothingFields = True }--instance FromJSON S3ReplicationConfigurationRulesDestination where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 43, omitNothingFields = True }---- | Constructor for 'S3ReplicationConfigurationRulesDestination' containing--- required fields as arguments.-s3ReplicationConfigurationRulesDestination-  :: Val Text -- ^ 'srcrdBucket'-  -> S3ReplicationConfigurationRulesDestination-s3ReplicationConfigurationRulesDestination bucketarg =-  S3ReplicationConfigurationRulesDestination-  { _s3ReplicationConfigurationRulesDestinationBucket = bucketarg-  , _s3ReplicationConfigurationRulesDestinationStorageClass = Nothing-  }---- | The Amazon resource name (ARN) of an S3 bucket where Amazon S3 stores--- replicated objects. This destination bucket must be in a different region--- than your source bucket. If you have multiple rules in your replication--- configuration, specify the same destination bucket for all of the rules.-srcrdBucket :: Lens' S3ReplicationConfigurationRulesDestination (Val Text)-srcrdBucket = lens _s3ReplicationConfigurationRulesDestinationBucket (\s a -> s { _s3ReplicationConfigurationRulesDestinationBucket = a })---- | The storage class to use when replicating objects, such as standard or--- reduced redundancy. By default, Amazon S3 uses the storage class of the--- source object to create object replica. For valid values, see the--- StorageClass element of the PUT Bucket replication action in the Amazon--- Simple Storage Service API Reference.-srcrdStorageClass :: Lens' S3ReplicationConfigurationRulesDestination (Maybe (Val Text))-srcrdStorageClass = lens _s3ReplicationConfigurationRulesDestinationStorageClass (\s a -> s { _s3ReplicationConfigurationRulesDestinationStorageClass = a })
− library-gen/Stratosphere/ResourceProperties/S3VersioningConfiguration.hs
@@ -1,45 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Describes the versioning state of an AWS::S3::Bucket resource. For more--- information, see PUT Bucket versioning in the Amazon Simple Storage Service--- API Reference.--module Stratosphere.ResourceProperties.S3VersioningConfiguration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for S3VersioningConfiguration. See--- 's3VersioningConfiguration' for a more convenient constructor.-data S3VersioningConfiguration =-  S3VersioningConfiguration-  { _s3VersioningConfigurationStatus :: Val Text-  } deriving (Show, Generic)--instance ToJSON S3VersioningConfiguration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }--instance FromJSON S3VersioningConfiguration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }---- | Constructor for 'S3VersioningConfiguration' containing required fields as--- arguments.-s3VersioningConfiguration-  :: Val Text -- ^ 'svcStatus'-  -> S3VersioningConfiguration-s3VersioningConfiguration statusarg =-  S3VersioningConfiguration-  { _s3VersioningConfigurationStatus = statusarg-  }---- | The versioning state of an Amazon S3 bucket. If you enable versioning,--- you must suspend versioning to disable it.-svcStatus :: Lens' S3VersioningConfiguration (Val Text)-svcStatus = lens _s3VersioningConfigurationStatus (\s a -> s { _s3VersioningConfigurationStatus = a })
− library-gen/Stratosphere/ResourceProperties/S3WebsiteConfiguration.hs
@@ -1,64 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | WebsiteConfiguration is an embedded property of the AWS::S3::Bucket--- resource.--module Stratosphere.ResourceProperties.S3WebsiteConfiguration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.S3WebsiteRedirectAllRequestsTo-import Stratosphere.ResourceProperties.S3WebsiteRoutingRules---- | Full data type definition for S3WebsiteConfiguration. See--- 's3WebsiteConfiguration' for a more convenient constructor.-data S3WebsiteConfiguration =-  S3WebsiteConfiguration-  { _s3WebsiteConfigurationErrorDocument :: Maybe (Val Text)-  , _s3WebsiteConfigurationIndexDocument :: Val Text-  , _s3WebsiteConfigurationRedirectAllRequestsTo :: Maybe S3WebsiteRedirectAllRequestsTo-  , _s3WebsiteConfigurationRoutingRules :: Maybe S3WebsiteRoutingRules-  } deriving (Show, Generic)--instance ToJSON S3WebsiteConfiguration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }--instance FromJSON S3WebsiteConfiguration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }---- | Constructor for 'S3WebsiteConfiguration' containing required fields as--- arguments.-s3WebsiteConfiguration-  :: Val Text -- ^ 'swcIndexDocument'-  -> S3WebsiteConfiguration-s3WebsiteConfiguration indexDocumentarg =-  S3WebsiteConfiguration-  { _s3WebsiteConfigurationErrorDocument = Nothing-  , _s3WebsiteConfigurationIndexDocument = indexDocumentarg-  , _s3WebsiteConfigurationRedirectAllRequestsTo = Nothing-  , _s3WebsiteConfigurationRoutingRules = Nothing-  }---- | The name of the error document for the website.-swcErrorDocument :: Lens' S3WebsiteConfiguration (Maybe (Val Text))-swcErrorDocument = lens _s3WebsiteConfigurationErrorDocument (\s a -> s { _s3WebsiteConfigurationErrorDocument = a })---- | The name of the index document for the website.-swcIndexDocument :: Lens' S3WebsiteConfiguration (Val Text)-swcIndexDocument = lens _s3WebsiteConfigurationIndexDocument (\s a -> s { _s3WebsiteConfigurationIndexDocument = a })---- | The redirect behavior for every request to this bucket's website--- endpoint. Important If you specify this property, you cannot specify any--- other property.-swcRedirectAllRequestsTo :: Lens' S3WebsiteConfiguration (Maybe S3WebsiteRedirectAllRequestsTo)-swcRedirectAllRequestsTo = lens _s3WebsiteConfigurationRedirectAllRequestsTo (\s a -> s { _s3WebsiteConfigurationRedirectAllRequestsTo = a })---- | Rules that define when a redirect is applied and the redirect behavior.-swcRoutingRules :: Lens' S3WebsiteConfiguration (Maybe S3WebsiteRoutingRules)-swcRoutingRules = lens _s3WebsiteConfigurationRoutingRules (\s a -> s { _s3WebsiteConfigurationRoutingRules = a })
− library-gen/Stratosphere/ResourceProperties/S3WebsiteRedirectAllRequestsTo.hs
@@ -1,51 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The RedirectAllRequestsTo code is an embedded property of the Amazon S3--- Website Configuration Property property that describes the redirect--- behavior of all requests to a website endpoint of an Amazon S3 bucket.--module Stratosphere.ResourceProperties.S3WebsiteRedirectAllRequestsTo where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for S3WebsiteRedirectAllRequestsTo. See--- 's3WebsiteRedirectAllRequestsTo' for a more convenient constructor.-data S3WebsiteRedirectAllRequestsTo =-  S3WebsiteRedirectAllRequestsTo-  { _s3WebsiteRedirectAllRequestsToHostName :: Val Text-  , _s3WebsiteRedirectAllRequestsToProtocol :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON S3WebsiteRedirectAllRequestsTo where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }--instance FromJSON S3WebsiteRedirectAllRequestsTo where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }---- | Constructor for 'S3WebsiteRedirectAllRequestsTo' containing required--- fields as arguments.-s3WebsiteRedirectAllRequestsTo-  :: Val Text -- ^ 'swrartHostName'-  -> S3WebsiteRedirectAllRequestsTo-s3WebsiteRedirectAllRequestsTo hostNamearg =-  S3WebsiteRedirectAllRequestsTo-  { _s3WebsiteRedirectAllRequestsToHostName = hostNamearg-  , _s3WebsiteRedirectAllRequestsToProtocol = Nothing-  }---- | Name of the host where requests are redirected.-swrartHostName :: Lens' S3WebsiteRedirectAllRequestsTo (Val Text)-swrartHostName = lens _s3WebsiteRedirectAllRequestsToHostName (\s a -> s { _s3WebsiteRedirectAllRequestsToHostName = a })---- | Protocol to use (http or https) when redirecting requests. The default is--- the protocol that is used in the original request.-swrartProtocol :: Lens' S3WebsiteRedirectAllRequestsTo (Maybe (Val Text))-swrartProtocol = lens _s3WebsiteRedirectAllRequestsToProtocol (\s a -> s { _s3WebsiteRedirectAllRequestsToProtocol = a })
− library-gen/Stratosphere/ResourceProperties/S3WebsiteRedirectRule.hs
@@ -1,75 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The RedirectRule property is an embedded property of the Amazon S3--- Website Configuration Routing Rules Property that describes how requests--- are redirected. In the event of an error, you can specify a different error--- code to return.--module Stratosphere.ResourceProperties.S3WebsiteRedirectRule where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for S3WebsiteRedirectRule. See--- 's3WebsiteRedirectRule' for a more convenient constructor.-data S3WebsiteRedirectRule =-  S3WebsiteRedirectRule-  { _s3WebsiteRedirectRuleHostName :: Maybe (Val Text)-  , _s3WebsiteRedirectRuleHttpRedirectCode :: Maybe (Val Text)-  , _s3WebsiteRedirectRuleProtocol :: Maybe (Val Text)-  , _s3WebsiteRedirectRuleReplaceKeyPrefixWith :: Maybe (Val Text)-  , _s3WebsiteRedirectRuleReplaceKeyWith :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON S3WebsiteRedirectRule where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }--instance FromJSON S3WebsiteRedirectRule where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }---- | Constructor for 'S3WebsiteRedirectRule' containing required fields as--- arguments.-s3WebsiteRedirectRule-  :: S3WebsiteRedirectRule-s3WebsiteRedirectRule  =-  S3WebsiteRedirectRule-  { _s3WebsiteRedirectRuleHostName = Nothing-  , _s3WebsiteRedirectRuleHttpRedirectCode = Nothing-  , _s3WebsiteRedirectRuleProtocol = Nothing-  , _s3WebsiteRedirectRuleReplaceKeyPrefixWith = Nothing-  , _s3WebsiteRedirectRuleReplaceKeyWith = Nothing-  }---- | Name of the host where requests are redirected.-swrrHostName :: Lens' S3WebsiteRedirectRule (Maybe (Val Text))-swrrHostName = lens _s3WebsiteRedirectRuleHostName (\s a -> s { _s3WebsiteRedirectRuleHostName = a })---- | The HTTP redirect code to use on the response.-swrrHttpRedirectCode :: Lens' S3WebsiteRedirectRule (Maybe (Val Text))-swrrHttpRedirectCode = lens _s3WebsiteRedirectRuleHttpRedirectCode (\s a -> s { _s3WebsiteRedirectRuleHttpRedirectCode = a })---- | The protocol to use in the redirect request.-swrrProtocol :: Lens' S3WebsiteRedirectRule (Maybe (Val Text))-swrrProtocol = lens _s3WebsiteRedirectRuleProtocol (\s a -> s { _s3WebsiteRedirectRuleProtocol = a })---- | The object key prefix to use in the redirect request. For example, to--- redirect requests for all pages with the prefix docs/ (objects in the docs/--- folder) to the documents/ prefix, you can set the KeyPrefixEquals property--- in routing condition property to docs/, and set the ReplaceKeyPrefixWith--- property to documents/. Important If you specify this property, you cannot--- specify the ReplaceKeyWith property.-swrrReplaceKeyPrefixWith :: Lens' S3WebsiteRedirectRule (Maybe (Val Text))-swrrReplaceKeyPrefixWith = lens _s3WebsiteRedirectRuleReplaceKeyPrefixWith (\s a -> s { _s3WebsiteRedirectRuleReplaceKeyPrefixWith = a })---- | The specific object key to use in the redirect request. For example,--- redirect request to error.html. Important If you specify this property, you--- cannot specify the ReplaceKeyPrefixWith property.-swrrReplaceKeyWith :: Lens' S3WebsiteRedirectRule (Maybe (Val Text))-swrrReplaceKeyWith = lens _s3WebsiteRedirectRuleReplaceKeyWith (\s a -> s { _s3WebsiteRedirectRuleReplaceKeyWith = a })
− library-gen/Stratosphere/ResourceProperties/S3WebsiteRoutingRuleCondition.hs
@@ -1,54 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The RoutingRuleCondition property is an embedded property of the Amazon--- S3 Website Configuration Routing Rules Property that describes a condition--- that must be met for a redirect to apply.--module Stratosphere.ResourceProperties.S3WebsiteRoutingRuleCondition where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for S3WebsiteRoutingRuleCondition. See--- 's3WebsiteRoutingRuleCondition' for a more convenient constructor.-data S3WebsiteRoutingRuleCondition =-  S3WebsiteRoutingRuleCondition-  { _s3WebsiteRoutingRuleConditionHttpErrorCodeReturnedEquals :: Maybe (Val Text)-  , _s3WebsiteRoutingRuleConditionKeyPrefixEquals :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON S3WebsiteRoutingRuleCondition where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }--instance FromJSON S3WebsiteRoutingRuleCondition where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }---- | Constructor for 'S3WebsiteRoutingRuleCondition' containing required--- fields as arguments.-s3WebsiteRoutingRuleCondition-  :: S3WebsiteRoutingRuleCondition-s3WebsiteRoutingRuleCondition  =-  S3WebsiteRoutingRuleCondition-  { _s3WebsiteRoutingRuleConditionHttpErrorCodeReturnedEquals = Nothing-  , _s3WebsiteRoutingRuleConditionKeyPrefixEquals = Nothing-  }---- | Applies this redirect if the error code equals this value in the event of--- an error.-swrrcHttpErrorCodeReturnedEquals :: Lens' S3WebsiteRoutingRuleCondition (Maybe (Val Text))-swrrcHttpErrorCodeReturnedEquals = lens _s3WebsiteRoutingRuleConditionHttpErrorCodeReturnedEquals (\s a -> s { _s3WebsiteRoutingRuleConditionHttpErrorCodeReturnedEquals = a })---- | The object key name prefix when the redirect is applied. For example, to--- redirect requests for ExamplePage.html, set the key prefix to--- ExamplePage.html. To redirect request for all pages with the prefix docs/,--- set the key prefix to docs/, which identifies all objects in the docs/--- folder.-swrrcKeyPrefixEquals :: Lens' S3WebsiteRoutingRuleCondition (Maybe (Val Text))-swrrcKeyPrefixEquals = lens _s3WebsiteRoutingRuleConditionKeyPrefixEquals (\s a -> s { _s3WebsiteRoutingRuleConditionKeyPrefixEquals = a })
− library-gen/Stratosphere/ResourceProperties/S3WebsiteRoutingRules.hs
@@ -1,52 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The RoutingRules property is an embedded property of the Amazon S3--- Website Configuration Property property. This property describes the--- redirect behavior and when a redirect is applied.--module Stratosphere.ResourceProperties.S3WebsiteRoutingRules where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.S3WebsiteRedirectRule-import Stratosphere.ResourceProperties.S3WebsiteRoutingRuleCondition---- | Full data type definition for S3WebsiteRoutingRules. See--- 's3WebsiteRoutingRules' for a more convenient constructor.-data S3WebsiteRoutingRules =-  S3WebsiteRoutingRules-  { _s3WebsiteRoutingRulesRedirectRule :: S3WebsiteRedirectRule-  , _s3WebsiteRoutingRulesRoutingRuleCondition :: Maybe S3WebsiteRoutingRuleCondition-  } deriving (Show, Generic)--instance ToJSON S3WebsiteRoutingRules where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }--instance FromJSON S3WebsiteRoutingRules where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }---- | Constructor for 'S3WebsiteRoutingRules' containing required fields as--- arguments.-s3WebsiteRoutingRules-  :: S3WebsiteRedirectRule -- ^ 'swrrRedirectRule'-  -> S3WebsiteRoutingRules-s3WebsiteRoutingRules redirectRulearg =-  S3WebsiteRoutingRules-  { _s3WebsiteRoutingRulesRedirectRule = redirectRulearg-  , _s3WebsiteRoutingRulesRoutingRuleCondition = Nothing-  }---- | Redirect requests to another host, to another page, or with another--- protocol.-swrrRedirectRule :: Lens' S3WebsiteRoutingRules S3WebsiteRedirectRule-swrrRedirectRule = lens _s3WebsiteRoutingRulesRedirectRule (\s a -> s { _s3WebsiteRoutingRulesRedirectRule = a })---- | Rules that define when a redirect is applied.-swrrRoutingRuleCondition :: Lens' S3WebsiteRoutingRules (Maybe S3WebsiteRoutingRuleCondition)-swrrRoutingRuleCondition = lens _s3WebsiteRoutingRulesRoutingRuleCondition (\s a -> s { _s3WebsiteRoutingRulesRoutingRuleCondition = a })
library-gen/Stratosphere/ResourceProperties/SNSTopicSubscription.hs view
@@ -1,9 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | Subscription is an embedded property of the AWS::SNS::Topic resource that--- describes the subscription endpoints for an Amazon Simple Notification--- Service (Amazon SNS) topic.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-subscription.html  module Stratosphere.ResourceProperties.SNSTopicSubscription where @@ -17,11 +15,11 @@ import Stratosphere.Types  -- | Full data type definition for SNSTopicSubscription. See--- 'snsTopicSubscription' for a more convenient constructor.+-- | 'snsTopicSubscription' for a more convenient constructor. data SNSTopicSubscription =   SNSTopicSubscription   { _sNSTopicSubscriptionEndpoint :: Val Text-  , _sNSTopicSubscriptionProtocol :: SNSProtocol+  , _sNSTopicSubscriptionProtocol :: Val SNSProtocol   } deriving (Show, Generic)  instance ToJSON SNSTopicSubscription where@@ -31,10 +29,10 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }  -- | Constructor for 'SNSTopicSubscription' containing required fields as--- arguments.+-- | arguments. snsTopicSubscription   :: Val Text -- ^ 'snstsEndpoint'-  -> SNSProtocol -- ^ 'snstsProtocol'+  -> Val SNSProtocol -- ^ 'snstsProtocol'   -> SNSTopicSubscription snsTopicSubscription endpointarg protocolarg =   SNSTopicSubscription@@ -42,13 +40,10 @@   , _sNSTopicSubscriptionProtocol = protocolarg   } --- | The subscription's endpoint (format depends on the protocol). For more--- information, see the Subscribe Endpoint parameter in the Amazon Simple--- Notification Service API Reference.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-subscription.html#cfn-sns-topic-subscription-endpoint snstsEndpoint :: Lens' SNSTopicSubscription (Val Text) snstsEndpoint = lens _sNSTopicSubscriptionEndpoint (\s a -> s { _sNSTopicSubscriptionEndpoint = a }) --- | The subscription's protocol. For more information, see the Subscribe--- Protocol parameter in the Amazon Simple Notification Service API Reference.-snstsProtocol :: Lens' SNSTopicSubscription SNSProtocol+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-subscription.html#cfn-sns-topic-subscription-protocol+snstsProtocol :: Lens' SNSTopicSubscription (Val SNSProtocol) snstsProtocol = lens _sNSTopicSubscriptionProtocol (\s a -> s { _sNSTopicSubscriptionProtocol = a })
− library-gen/Stratosphere/ResourceProperties/SQSRedrivePolicy.hs
@@ -1,50 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The RedrivePolicy type is a property of the AWS::SQS::Queue resource.--module Stratosphere.ResourceProperties.SQSRedrivePolicy where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for SQSRedrivePolicy. See 'sqsRedrivePolicy'--- for a more convenient constructor.-data SQSRedrivePolicy =-  SQSRedrivePolicy-  { _sQSRedrivePolicydeadLetterTargetArn :: Val Text-  , _sQSRedrivePolicymaxReceiveCount :: Maybe (Val Integer')-  } deriving (Show, Generic)--instance ToJSON SQSRedrivePolicy where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }--instance FromJSON SQSRedrivePolicy where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }---- | Constructor for 'SQSRedrivePolicy' containing required fields as--- arguments.-sqsRedrivePolicy-  :: Val Text -- ^ 'sqsrpdeadLetterTargetArn'-  -> SQSRedrivePolicy-sqsRedrivePolicy deadLetterTargetArnarg =-  SQSRedrivePolicy-  { _sQSRedrivePolicydeadLetterTargetArn = deadLetterTargetArnarg-  , _sQSRedrivePolicymaxReceiveCount = Nothing-  }---- | The Amazon Resource Name (ARN) of the dead letter queue to which the--- messages are sent to after the maxReceiveCount value has been exceeded.-sqsrpdeadLetterTargetArn :: Lens' SQSRedrivePolicy (Val Text)-sqsrpdeadLetterTargetArn = lens _sQSRedrivePolicydeadLetterTargetArn (\s a -> s { _sQSRedrivePolicydeadLetterTargetArn = a })---- | The number of times a message is delivered to the source queue before--- being sent to the dead letter queue.-sqsrpmaxReceiveCount :: Lens' SQSRedrivePolicy (Maybe (Val Integer'))-sqsrpmaxReceiveCount = lens _sQSRedrivePolicymaxReceiveCount (\s a -> s { _sQSRedrivePolicymaxReceiveCount = a })
+ library-gen/Stratosphere/ResourceProperties/SSMAssociationParameterValues.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-parametervalues.html++module Stratosphere.ResourceProperties.SSMAssociationParameterValues where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for SSMAssociationParameterValues. See+-- | 'ssmAssociationParameterValues' for a more convenient constructor.+data SSMAssociationParameterValues =+  SSMAssociationParameterValues+  { _sSMAssociationParameterValuesParameterValues :: [Val Text]+  } deriving (Show, Generic)++instance ToJSON SSMAssociationParameterValues where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON SSMAssociationParameterValues where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'SSMAssociationParameterValues' containing required+-- | fields as arguments.+ssmAssociationParameterValues+  :: [Val Text] -- ^ 'ssmapvParameterValues'+  -> SSMAssociationParameterValues+ssmAssociationParameterValues parameterValuesarg =+  SSMAssociationParameterValues+  { _sSMAssociationParameterValuesParameterValues = parameterValuesarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-parametervalues.html#cfn-ssm-association-parametervalues-parametervalues+ssmapvParameterValues :: Lens' SSMAssociationParameterValues [Val Text]+ssmapvParameterValues = lens _sSMAssociationParameterValuesParameterValues (\s a -> s { _sSMAssociationParameterValuesParameterValues = a })
+ library-gen/Stratosphere/ResourceProperties/SSMAssociationTarget.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-target.html++module Stratosphere.ResourceProperties.SSMAssociationTarget where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for SSMAssociationTarget. See+-- | 'ssmAssociationTarget' for a more convenient constructor.+data SSMAssociationTarget =+  SSMAssociationTarget+  { _sSMAssociationTargetKey :: Val Text+  , _sSMAssociationTargetValues :: [Val Text]+  } deriving (Show, Generic)++instance ToJSON SSMAssociationTarget where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++instance FromJSON SSMAssociationTarget where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++-- | Constructor for 'SSMAssociationTarget' containing required fields as+-- | arguments.+ssmAssociationTarget+  :: Val Text -- ^ 'ssmatKey'+  -> [Val Text] -- ^ 'ssmatValues'+  -> SSMAssociationTarget+ssmAssociationTarget keyarg valuesarg =+  SSMAssociationTarget+  { _sSMAssociationTargetKey = keyarg+  , _sSMAssociationTargetValues = valuesarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-target.html#cfn-ssm-association-target-key+ssmatKey :: Lens' SSMAssociationTarget (Val Text)+ssmatKey = lens _sSMAssociationTargetKey (\s a -> s { _sSMAssociationTargetKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ssm-association-target.html#cfn-ssm-association-target-values+ssmatValues :: Lens' SSMAssociationTarget [Val Text]+ssmatValues = lens _sSMAssociationTargetValues (\s a -> s { _sSMAssociationTargetValues = a })
− library-gen/Stratosphere/ResourceProperties/SecurityGroupEgressRule.hs
@@ -1,72 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The EC2 Security Group Rule is an embedded property of the--- AWS::EC2::SecurityGroup type.--module Stratosphere.ResourceProperties.SecurityGroupEgressRule where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for SecurityGroupEgressRule. See--- 'securityGroupEgressRule' for a more convenient constructor.-data SecurityGroupEgressRule =-  SecurityGroupEgressRule-  { _securityGroupEgressRuleCidrIp :: Maybe (Val Text)-  , _securityGroupEgressRuleDestinationSecurityGroupId :: Maybe (Val Text)-  , _securityGroupEgressRuleFromPort :: Maybe (Val Integer')-  , _securityGroupEgressRuleIpProtocol :: Val Text-  , _securityGroupEgressRuleToPort :: Maybe (Val Integer')-  } deriving (Show, Generic)--instance ToJSON SecurityGroupEgressRule where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }--instance FromJSON SecurityGroupEgressRule where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }---- | Constructor for 'SecurityGroupEgressRule' containing required fields as--- arguments.-securityGroupEgressRule-  :: Val Text -- ^ 'sgerIpProtocol'-  -> SecurityGroupEgressRule-securityGroupEgressRule ipProtocolarg =-  SecurityGroupEgressRule-  { _securityGroupEgressRuleCidrIp = Nothing-  , _securityGroupEgressRuleDestinationSecurityGroupId = Nothing-  , _securityGroupEgressRuleFromPort = Nothing-  , _securityGroupEgressRuleIpProtocol = ipProtocolarg-  , _securityGroupEgressRuleToPort = Nothing-  }---- | Specifies a CIDR range.-sgerCidrIp :: Lens' SecurityGroupEgressRule (Maybe (Val Text))-sgerCidrIp = lens _securityGroupEgressRuleCidrIp (\s a -> s { _securityGroupEgressRuleCidrIp = a })---- | Specifies the GroupId of the destination Amazon VPC security group. Type:--- String-sgerDestinationSecurityGroupId :: Lens' SecurityGroupEgressRule (Maybe (Val Text))-sgerDestinationSecurityGroupId = lens _securityGroupEgressRuleDestinationSecurityGroupId (\s a -> s { _securityGroupEgressRuleDestinationSecurityGroupId = a })---- | The start of port range for the TCP and UDP protocols, or an ICMP type--- number. An ICMP type number of -1 indicates a wildcard (i.e., any ICMP type--- number).-sgerFromPort :: Lens' SecurityGroupEgressRule (Maybe (Val Integer'))-sgerFromPort = lens _securityGroupEgressRuleFromPort (\s a -> s { _securityGroupEgressRuleFromPort = a })---- | An IP protocol name or number. For valid values, go to the IpProtocol--- parameter in AuthorizeSecurityGroupIngress-sgerIpProtocol :: Lens' SecurityGroupEgressRule (Val Text)-sgerIpProtocol = lens _securityGroupEgressRuleIpProtocol (\s a -> s { _securityGroupEgressRuleIpProtocol = a })---- | The end of port range for the TCP and UDP protocols, or an ICMP code. An--- ICMP code of -1 indicates a wildcard (i.e., any ICMP code).-sgerToPort :: Lens' SecurityGroupEgressRule (Maybe (Val Integer'))-sgerToPort = lens _securityGroupEgressRuleToPort (\s a -> s { _securityGroupEgressRuleToPort = a })
− library-gen/Stratosphere/ResourceProperties/SecurityGroupIngressRule.hs
@@ -1,89 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The EC2 Security Group Rule is an embedded property of the--- AWS::EC2::SecurityGroup type.--module Stratosphere.ResourceProperties.SecurityGroupIngressRule where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for SecurityGroupIngressRule. See--- 'securityGroupIngressRule' for a more convenient constructor.-data SecurityGroupIngressRule =-  SecurityGroupIngressRule-  { _securityGroupIngressRuleCidrIp :: Maybe (Val Text)-  , _securityGroupIngressRuleFromPort :: Maybe (Val Integer')-  , _securityGroupIngressRuleIpProtocol :: Val Text-  , _securityGroupIngressRuleSourceSecurityGroupId :: Maybe (Val Text)-  , _securityGroupIngressRuleSourceSecurityGroupName :: Maybe (Val Text)-  , _securityGroupIngressRuleSourceSecurityGroupOwnerId :: Maybe (Val Text)-  , _securityGroupIngressRuleToPort :: Maybe (Val Integer')-  } deriving (Show, Generic)--instance ToJSON SecurityGroupIngressRule where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }--instance FromJSON SecurityGroupIngressRule where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }---- | Constructor for 'SecurityGroupIngressRule' containing required fields as--- arguments.-securityGroupIngressRule-  :: Val Text -- ^ 'sgirIpProtocol'-  -> SecurityGroupIngressRule-securityGroupIngressRule ipProtocolarg =-  SecurityGroupIngressRule-  { _securityGroupIngressRuleCidrIp = Nothing-  , _securityGroupIngressRuleFromPort = Nothing-  , _securityGroupIngressRuleIpProtocol = ipProtocolarg-  , _securityGroupIngressRuleSourceSecurityGroupId = Nothing-  , _securityGroupIngressRuleSourceSecurityGroupName = Nothing-  , _securityGroupIngressRuleSourceSecurityGroupOwnerId = Nothing-  , _securityGroupIngressRuleToPort = Nothing-  }---- | Specifies a CIDR range.-sgirCidrIp :: Lens' SecurityGroupIngressRule (Maybe (Val Text))-sgirCidrIp = lens _securityGroupIngressRuleCidrIp (\s a -> s { _securityGroupIngressRuleCidrIp = a })---- | The start of port range for the TCP and UDP protocols, or an ICMP type--- number. An ICMP type number of -1 indicates a wildcard (i.e., any ICMP type--- number). Type: Integer-sgirFromPort :: Lens' SecurityGroupIngressRule (Maybe (Val Integer'))-sgirFromPort = lens _securityGroupIngressRuleFromPort (\s a -> s { _securityGroupIngressRuleFromPort = a })---- | An IP protocol name or number. For valid values, go to the IpProtocol--- parameter in AuthorizeSecurityGroupIngress-sgirIpProtocol :: Lens' SecurityGroupIngressRule (Val Text)-sgirIpProtocol = lens _securityGroupIngressRuleIpProtocol (\s a -> s { _securityGroupIngressRuleIpProtocol = a })---- | For VPC security groups only. Specifies the ID of the Amazon EC2 Security--- Group to allow access. You can use the Ref intrinsic function to refer to--- the logical ID of a security group defined in the same template.-sgirSourceSecurityGroupId :: Lens' SecurityGroupIngressRule (Maybe (Val Text))-sgirSourceSecurityGroupId = lens _securityGroupIngressRuleSourceSecurityGroupId (\s a -> s { _securityGroupIngressRuleSourceSecurityGroupId = a })---- | For non-VPC security groups only. Specifies the name of the Amazon EC2--- Security Group to use for access. You can use the Ref intrinsic function to--- refer to the logical name of a security group that is defined in the same--- template.-sgirSourceSecurityGroupName :: Lens' SecurityGroupIngressRule (Maybe (Val Text))-sgirSourceSecurityGroupName = lens _securityGroupIngressRuleSourceSecurityGroupName (\s a -> s { _securityGroupIngressRuleSourceSecurityGroupName = a })---- | Specifies the AWS Account ID of the owner of the Amazon EC2 Security--- Group that is specified in the SourceSecurityGroupName property.-sgirSourceSecurityGroupOwnerId :: Lens' SecurityGroupIngressRule (Maybe (Val Text))-sgirSourceSecurityGroupOwnerId = lens _securityGroupIngressRuleSourceSecurityGroupOwnerId (\s a -> s { _securityGroupIngressRuleSourceSecurityGroupOwnerId = a })---- | The end of port range for the TCP and UDP protocols, or an ICMP code. An--- ICMP code of -1 indicates a wildcard (i.e., any ICMP code).-sgirToPort :: Lens' SecurityGroupIngressRule (Maybe (Val Integer'))-sgirToPort = lens _securityGroupIngressRuleToPort (\s a -> s { _securityGroupIngressRuleToPort = a })
− library-gen/Stratosphere/ResourceProperties/StepAdjustments.hs
@@ -1,70 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | StepAdjustments is a property of the AWS::AutoScaling::ScalingPolicy--- resource that describes a scaling adjustment based on the difference--- between the value of the aggregated CloudWatch metric and the breach--- threshold that you've defined for the alarm. For more information, see--- StepAdjustment in the Auto Scaling API Reference.--module Stratosphere.ResourceProperties.StepAdjustments where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for StepAdjustments. See 'stepAdjustments' for--- a more convenient constructor.-data StepAdjustments =-  StepAdjustments-  { _stepAdjustmentsMetricIntervalLowerBound :: Maybe Double'-  , _stepAdjustmentsMetricIntervalUpperBound :: Maybe Double'-  , _stepAdjustmentsScalingAdjustment :: Val Integer'-  } deriving (Show, Generic)--instance ToJSON StepAdjustments where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }--instance FromJSON StepAdjustments where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }---- | Constructor for 'StepAdjustments' containing required fields as--- arguments.-stepAdjustments-  :: Val Integer' -- ^ 'saScalingAdjustment'-  -> StepAdjustments-stepAdjustments scalingAdjustmentarg =-  StepAdjustments-  { _stepAdjustmentsMetricIntervalLowerBound = Nothing-  , _stepAdjustmentsMetricIntervalUpperBound = Nothing-  , _stepAdjustmentsScalingAdjustment = scalingAdjustmentarg-  }---- | The lower bound for the difference between the breach threshold and the--- CloudWatch metric. If the metric value exceeds the breach threshold, the--- lower bound is inclusive (the metric must be greater than or equal to the--- threshold plus the lower bound). Otherwise, it is exclusive (the metric--- must be greater than the threshold plus the lower bound). A null value--- indicates negative infinity.-saMetricIntervalLowerBound :: Lens' StepAdjustments (Maybe Double')-saMetricIntervalLowerBound = lens _stepAdjustmentsMetricIntervalLowerBound (\s a -> s { _stepAdjustmentsMetricIntervalLowerBound = a })---- | The upper bound for the difference between the breach threshold and the--- CloudWatch metric. If the metric value exceeds the breach threshold, the--- upper bound is exclusive (the metric must be less than the threshold plus--- the upper bound). Otherwise, it is inclusive (the metric must be less than--- or equal to the threshold plus the upper bound). A null value indicates--- positive infinity.-saMetricIntervalUpperBound :: Lens' StepAdjustments (Maybe Double')-saMetricIntervalUpperBound = lens _stepAdjustmentsMetricIntervalUpperBound (\s a -> s { _stepAdjustmentsMetricIntervalUpperBound = a })---- | The amount by which to scale, based on the value that you specified in--- the AdjustmentType property. A positive value adds to the current capacity--- and a negative number subtracts from the current capacity.-saScalingAdjustment :: Lens' StepAdjustments (Val Integer')-saScalingAdjustment = lens _stepAdjustmentsScalingAdjustment (\s a -> s { _stepAdjustmentsScalingAdjustment = a })
+ library-gen/Stratosphere/ResourceProperties/Tag.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html++module Stratosphere.ResourceProperties.Tag where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for Tag. See 'tag' for a more convenient+-- | constructor.+data Tag =+  Tag+  { _tagKey :: Val Text+  , _tagValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON Tag where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 4, omitNothingFields = True }++instance FromJSON Tag where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 4, omitNothingFields = True }++-- | Constructor for 'Tag' containing required fields as arguments.+tag+  :: Val Text -- ^ 'tagKey'+  -> Val Text -- ^ 'tagValue'+  -> Tag+tag keyarg valuearg =+  Tag+  { _tagKey = keyarg+  , _tagValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html#cfn-resource-tags-key+tagKey :: Lens' Tag (Val Text)+tagKey = lens _tagKey (\s a -> s { _tagKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html#cfn-resource-tags-value+tagValue :: Lens' Tag (Val Text)+tagValue = lens _tagValue (\s a -> s { _tagValue = a })
− library-gen/Stratosphere/ResourceProperties/UserLoginProfile.hs
@@ -1,50 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | LoginProfile is a property of the AWS::IAM::User resource that creates a--- login profile for users so that they can access the AWS Management Console.--module Stratosphere.ResourceProperties.UserLoginProfile where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for UserLoginProfile. See 'userLoginProfile'--- for a more convenient constructor.-data UserLoginProfile =-  UserLoginProfile-  { _userLoginProfilePassword :: Val Text-  , _userLoginProfilePasswordResetRequired :: Maybe (Val Bool')-  } deriving (Show, Generic)--instance ToJSON UserLoginProfile where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }--instance FromJSON UserLoginProfile where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }---- | Constructor for 'UserLoginProfile' containing required fields as--- arguments.-userLoginProfile-  :: Val Text -- ^ 'ulpPassword'-  -> UserLoginProfile-userLoginProfile passwordarg =-  UserLoginProfile-  { _userLoginProfilePassword = passwordarg-  , _userLoginProfilePasswordResetRequired = Nothing-  }---- | The password for the user.-ulpPassword :: Lens' UserLoginProfile (Val Text)-ulpPassword = lens _userLoginProfilePassword (\s a -> s { _userLoginProfilePassword = a })---- | Specifies whether the user is required to set a new password the next--- time the user logs in to the AWS Management Console.-ulpPasswordResetRequired :: Lens' UserLoginProfile (Maybe (Val Bool'))-ulpPasswordResetRequired = lens _userLoginProfilePasswordResetRequired (\s a -> s { _userLoginProfilePasswordResetRequired = a })
+ library-gen/Stratosphere/ResourceProperties/WAFByteMatchSetByteMatchTuple.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html++module Stratosphere.ResourceProperties.WAFByteMatchSetByteMatchTuple where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFByteMatchSetFieldToMatch++-- | Full data type definition for WAFByteMatchSetByteMatchTuple. See+-- | 'wafByteMatchSetByteMatchTuple' for a more convenient constructor.+data WAFByteMatchSetByteMatchTuple =+  WAFByteMatchSetByteMatchTuple+  { _wAFByteMatchSetByteMatchTupleFieldToMatch :: WAFByteMatchSetFieldToMatch+  , _wAFByteMatchSetByteMatchTuplePositionalConstraint :: Val Text+  , _wAFByteMatchSetByteMatchTupleTargetString :: Maybe (Val Text)+  , _wAFByteMatchSetByteMatchTupleTargetStringBase64 :: Maybe (Val Text)+  , _wAFByteMatchSetByteMatchTupleTextTransformation :: Val Text+  } deriving (Show, Generic)++instance ToJSON WAFByteMatchSetByteMatchTuple where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON WAFByteMatchSetByteMatchTuple where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'WAFByteMatchSetByteMatchTuple' containing required+-- | fields as arguments.+wafByteMatchSetByteMatchTuple+  :: WAFByteMatchSetFieldToMatch -- ^ 'wafbmsbmtFieldToMatch'+  -> Val Text -- ^ 'wafbmsbmtPositionalConstraint'+  -> Val Text -- ^ 'wafbmsbmtTextTransformation'+  -> WAFByteMatchSetByteMatchTuple+wafByteMatchSetByteMatchTuple fieldToMatcharg positionalConstraintarg textTransformationarg =+  WAFByteMatchSetByteMatchTuple+  { _wAFByteMatchSetByteMatchTupleFieldToMatch = fieldToMatcharg+  , _wAFByteMatchSetByteMatchTuplePositionalConstraint = positionalConstraintarg+  , _wAFByteMatchSetByteMatchTupleTargetString = Nothing+  , _wAFByteMatchSetByteMatchTupleTargetStringBase64 = Nothing+  , _wAFByteMatchSetByteMatchTupleTextTransformation = textTransformationarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-fieldtomatch+wafbmsbmtFieldToMatch :: Lens' WAFByteMatchSetByteMatchTuple WAFByteMatchSetFieldToMatch+wafbmsbmtFieldToMatch = lens _wAFByteMatchSetByteMatchTupleFieldToMatch (\s a -> s { _wAFByteMatchSetByteMatchTupleFieldToMatch = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-positionalconstraint+wafbmsbmtPositionalConstraint :: Lens' WAFByteMatchSetByteMatchTuple (Val Text)+wafbmsbmtPositionalConstraint = lens _wAFByteMatchSetByteMatchTuplePositionalConstraint (\s a -> s { _wAFByteMatchSetByteMatchTuplePositionalConstraint = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-targetstring+wafbmsbmtTargetString :: Lens' WAFByteMatchSetByteMatchTuple (Maybe (Val Text))+wafbmsbmtTargetString = lens _wAFByteMatchSetByteMatchTupleTargetString (\s a -> s { _wAFByteMatchSetByteMatchTupleTargetString = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-targetstringbase64+wafbmsbmtTargetStringBase64 :: Lens' WAFByteMatchSetByteMatchTuple (Maybe (Val Text))+wafbmsbmtTargetStringBase64 = lens _wAFByteMatchSetByteMatchTupleTargetStringBase64 (\s a -> s { _wAFByteMatchSetByteMatchTupleTargetStringBase64 = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples.html#cfn-waf-bytematchset-bytematchtuples-texttransformation+wafbmsbmtTextTransformation :: Lens' WAFByteMatchSetByteMatchTuple (Val Text)+wafbmsbmtTextTransformation = lens _wAFByteMatchSetByteMatchTupleTextTransformation (\s a -> s { _wAFByteMatchSetByteMatchTupleTextTransformation = a })
+ library-gen/Stratosphere/ResourceProperties/WAFByteMatchSetFieldToMatch.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html++module Stratosphere.ResourceProperties.WAFByteMatchSetFieldToMatch where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for WAFByteMatchSetFieldToMatch. See+-- | 'wafByteMatchSetFieldToMatch' for a more convenient constructor.+data WAFByteMatchSetFieldToMatch =+  WAFByteMatchSetFieldToMatch+  { _wAFByteMatchSetFieldToMatchData :: Maybe (Val Text)+  , _wAFByteMatchSetFieldToMatchType :: Val Text+  } deriving (Show, Generic)++instance ToJSON WAFByteMatchSetFieldToMatch where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON WAFByteMatchSetFieldToMatch where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'WAFByteMatchSetFieldToMatch' containing required fields+-- | as arguments.+wafByteMatchSetFieldToMatch+  :: Val Text -- ^ 'wafbmsftmType'+  -> WAFByteMatchSetFieldToMatch+wafByteMatchSetFieldToMatch typearg =+  WAFByteMatchSetFieldToMatch+  { _wAFByteMatchSetFieldToMatchData = Nothing+  , _wAFByteMatchSetFieldToMatchType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-bytematchset-bytematchtuples-fieldtomatch-data+wafbmsftmData :: Lens' WAFByteMatchSetFieldToMatch (Maybe (Val Text))+wafbmsftmData = lens _wAFByteMatchSetFieldToMatchData (\s a -> s { _wAFByteMatchSetFieldToMatchData = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-bytematchset-bytematchtuples-fieldtomatch-type+wafbmsftmType :: Lens' WAFByteMatchSetFieldToMatch (Val Text)+wafbmsftmType = lens _wAFByteMatchSetFieldToMatchType (\s a -> s { _wAFByteMatchSetFieldToMatchType = a })
+ library-gen/Stratosphere/ResourceProperties/WAFIPSetIPSetDescriptor.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-ipset-ipsetdescriptors.html++module Stratosphere.ResourceProperties.WAFIPSetIPSetDescriptor where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for WAFIPSetIPSetDescriptor. See+-- | 'wafipSetIPSetDescriptor' for a more convenient constructor.+data WAFIPSetIPSetDescriptor =+  WAFIPSetIPSetDescriptor+  { _wAFIPSetIPSetDescriptorType :: Val Text+  , _wAFIPSetIPSetDescriptorValue :: Val Text+  } deriving (Show, Generic)++instance ToJSON WAFIPSetIPSetDescriptor where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++instance FromJSON WAFIPSetIPSetDescriptor where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++-- | Constructor for 'WAFIPSetIPSetDescriptor' containing required fields as+-- | arguments.+wafipSetIPSetDescriptor+  :: Val Text -- ^ 'wafipsipsdType'+  -> Val Text -- ^ 'wafipsipsdValue'+  -> WAFIPSetIPSetDescriptor+wafipSetIPSetDescriptor typearg valuearg =+  WAFIPSetIPSetDescriptor+  { _wAFIPSetIPSetDescriptorType = typearg+  , _wAFIPSetIPSetDescriptorValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-ipset-ipsetdescriptors.html#cfn-waf-ipset-ipsetdescriptors-type+wafipsipsdType :: Lens' WAFIPSetIPSetDescriptor (Val Text)+wafipsipsdType = lens _wAFIPSetIPSetDescriptorType (\s a -> s { _wAFIPSetIPSetDescriptorType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-ipset-ipsetdescriptors.html#cfn-waf-ipset-ipsetdescriptors-value+wafipsipsdValue :: Lens' WAFIPSetIPSetDescriptor (Val Text)+wafipsipsdValue = lens _wAFIPSetIPSetDescriptorValue (\s a -> s { _wAFIPSetIPSetDescriptorValue = a })
+ library-gen/Stratosphere/ResourceProperties/WAFRulePredicate.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-rule-predicates.html++module Stratosphere.ResourceProperties.WAFRulePredicate where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for WAFRulePredicate. See 'wafRulePredicate'+-- | for a more convenient constructor.+data WAFRulePredicate =+  WAFRulePredicate+  { _wAFRulePredicateDataId :: Val Text+  , _wAFRulePredicateNegated :: Val Bool'+  , _wAFRulePredicateType :: Val Text+  } deriving (Show, Generic)++instance ToJSON WAFRulePredicate where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++instance FromJSON WAFRulePredicate where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++-- | Constructor for 'WAFRulePredicate' containing required fields as+-- | arguments.+wafRulePredicate+  :: Val Text -- ^ 'wafrpDataId'+  -> Val Bool' -- ^ 'wafrpNegated'+  -> Val Text -- ^ 'wafrpType'+  -> WAFRulePredicate+wafRulePredicate dataIdarg negatedarg typearg =+  WAFRulePredicate+  { _wAFRulePredicateDataId = dataIdarg+  , _wAFRulePredicateNegated = negatedarg+  , _wAFRulePredicateType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-rule-predicates.html#cfn-waf-rule-predicates-dataid+wafrpDataId :: Lens' WAFRulePredicate (Val Text)+wafrpDataId = lens _wAFRulePredicateDataId (\s a -> s { _wAFRulePredicateDataId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-rule-predicates.html#cfn-waf-rule-predicates-negated+wafrpNegated :: Lens' WAFRulePredicate (Val Bool')+wafrpNegated = lens _wAFRulePredicateNegated (\s a -> s { _wAFRulePredicateNegated = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-rule-predicates.html#cfn-waf-rule-predicates-type+wafrpType :: Lens' WAFRulePredicate (Val Text)+wafrpType = lens _wAFRulePredicateType (\s a -> s { _wAFRulePredicateType = a })
+ library-gen/Stratosphere/ResourceProperties/WAFSizeConstraintSetFieldToMatch.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint-fieldtomatch.html++module Stratosphere.ResourceProperties.WAFSizeConstraintSetFieldToMatch where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for WAFSizeConstraintSetFieldToMatch. See+-- | 'wafSizeConstraintSetFieldToMatch' for a more convenient constructor.+data WAFSizeConstraintSetFieldToMatch =+  WAFSizeConstraintSetFieldToMatch+  { _wAFSizeConstraintSetFieldToMatchData :: Maybe (Val Text)+  , _wAFSizeConstraintSetFieldToMatchType :: Val Text+  } deriving (Show, Generic)++instance ToJSON WAFSizeConstraintSetFieldToMatch where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++instance FromJSON WAFSizeConstraintSetFieldToMatch where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++-- | Constructor for 'WAFSizeConstraintSetFieldToMatch' containing required+-- | fields as arguments.+wafSizeConstraintSetFieldToMatch+  :: Val Text -- ^ 'wafscsftmType'+  -> WAFSizeConstraintSetFieldToMatch+wafSizeConstraintSetFieldToMatch typearg =+  WAFSizeConstraintSetFieldToMatch+  { _wAFSizeConstraintSetFieldToMatchData = Nothing+  , _wAFSizeConstraintSetFieldToMatchType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-data+wafscsftmData :: Lens' WAFSizeConstraintSetFieldToMatch (Maybe (Val Text))+wafscsftmData = lens _wAFSizeConstraintSetFieldToMatchData (\s a -> s { _wAFSizeConstraintSetFieldToMatchData = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-type+wafscsftmType :: Lens' WAFSizeConstraintSetFieldToMatch (Val Text)+wafscsftmType = lens _wAFSizeConstraintSetFieldToMatchType (\s a -> s { _wAFSizeConstraintSetFieldToMatchType = a })
+ library-gen/Stratosphere/ResourceProperties/WAFSizeConstraintSetSizeConstraint.hs view
@@ -0,0 +1,63 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html++module Stratosphere.ResourceProperties.WAFSizeConstraintSetSizeConstraint where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFSizeConstraintSetFieldToMatch++-- | Full data type definition for WAFSizeConstraintSetSizeConstraint. See+-- | 'wafSizeConstraintSetSizeConstraint' for a more convenient constructor.+data WAFSizeConstraintSetSizeConstraint =+  WAFSizeConstraintSetSizeConstraint+  { _wAFSizeConstraintSetSizeConstraintComparisonOperator :: Val Text+  , _wAFSizeConstraintSetSizeConstraintFieldToMatch :: WAFSizeConstraintSetFieldToMatch+  , _wAFSizeConstraintSetSizeConstraintSize :: Val Integer'+  , _wAFSizeConstraintSetSizeConstraintTextTransformation :: Val Text+  } deriving (Show, Generic)++instance ToJSON WAFSizeConstraintSetSizeConstraint where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++instance FromJSON WAFSizeConstraintSetSizeConstraint where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++-- | Constructor for 'WAFSizeConstraintSetSizeConstraint' containing required+-- | fields as arguments.+wafSizeConstraintSetSizeConstraint+  :: Val Text -- ^ 'wafscsscComparisonOperator'+  -> WAFSizeConstraintSetFieldToMatch -- ^ 'wafscsscFieldToMatch'+  -> Val Integer' -- ^ 'wafscsscSize'+  -> Val Text -- ^ 'wafscsscTextTransformation'+  -> WAFSizeConstraintSetSizeConstraint+wafSizeConstraintSetSizeConstraint comparisonOperatorarg fieldToMatcharg sizearg textTransformationarg =+  WAFSizeConstraintSetSizeConstraint+  { _wAFSizeConstraintSetSizeConstraintComparisonOperator = comparisonOperatorarg+  , _wAFSizeConstraintSetSizeConstraintFieldToMatch = fieldToMatcharg+  , _wAFSizeConstraintSetSizeConstraintSize = sizearg+  , _wAFSizeConstraintSetSizeConstraintTextTransformation = textTransformationarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html#cfn-waf-sizeconstraintset-sizeconstraint-comparisonoperator+wafscsscComparisonOperator :: Lens' WAFSizeConstraintSetSizeConstraint (Val Text)+wafscsscComparisonOperator = lens _wAFSizeConstraintSetSizeConstraintComparisonOperator (\s a -> s { _wAFSizeConstraintSetSizeConstraintComparisonOperator = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch+wafscsscFieldToMatch :: Lens' WAFSizeConstraintSetSizeConstraint WAFSizeConstraintSetFieldToMatch+wafscsscFieldToMatch = lens _wAFSizeConstraintSetSizeConstraintFieldToMatch (\s a -> s { _wAFSizeConstraintSetSizeConstraintFieldToMatch = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html#cfn-waf-sizeconstraintset-sizeconstraint-size+wafscsscSize :: Lens' WAFSizeConstraintSetSizeConstraint (Val Integer')+wafscsscSize = lens _wAFSizeConstraintSetSizeConstraintSize (\s a -> s { _wAFSizeConstraintSetSizeConstraintSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sizeconstraintset-sizeconstraint.html#cfn-waf-sizeconstraintset-sizeconstraint-texttransformation+wafscsscTextTransformation :: Lens' WAFSizeConstraintSetSizeConstraint (Val Text)+wafscsscTextTransformation = lens _wAFSizeConstraintSetSizeConstraintTextTransformation (\s a -> s { _wAFSizeConstraintSetSizeConstraintTextTransformation = a })
+ library-gen/Stratosphere/ResourceProperties/WAFSqlInjectionMatchSetFieldToMatch.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html++module Stratosphere.ResourceProperties.WAFSqlInjectionMatchSetFieldToMatch where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for WAFSqlInjectionMatchSetFieldToMatch. See+-- | 'wafSqlInjectionMatchSetFieldToMatch' for a more convenient constructor.+data WAFSqlInjectionMatchSetFieldToMatch =+  WAFSqlInjectionMatchSetFieldToMatch+  { _wAFSqlInjectionMatchSetFieldToMatchData :: Maybe (Val Text)+  , _wAFSqlInjectionMatchSetFieldToMatchType :: Val Text+  } deriving (Show, Generic)++instance ToJSON WAFSqlInjectionMatchSetFieldToMatch where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++instance FromJSON WAFSqlInjectionMatchSetFieldToMatch where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++-- | Constructor for 'WAFSqlInjectionMatchSetFieldToMatch' containing required+-- | fields as arguments.+wafSqlInjectionMatchSetFieldToMatch+  :: Val Text -- ^ 'wafsimsftmType'+  -> WAFSqlInjectionMatchSetFieldToMatch+wafSqlInjectionMatchSetFieldToMatch typearg =+  WAFSqlInjectionMatchSetFieldToMatch+  { _wAFSqlInjectionMatchSetFieldToMatchData = Nothing+  , _wAFSqlInjectionMatchSetFieldToMatchType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-data+wafsimsftmData :: Lens' WAFSqlInjectionMatchSetFieldToMatch (Maybe (Val Text))+wafsimsftmData = lens _wAFSqlInjectionMatchSetFieldToMatchData (\s a -> s { _wAFSqlInjectionMatchSetFieldToMatchData = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-bytematchset-bytematchtuples-fieldtomatch.html#cfn-waf-sizeconstraintset-sizeconstraint-fieldtomatch-type+wafsimsftmType :: Lens' WAFSqlInjectionMatchSetFieldToMatch (Val Text)+wafsimsftmType = lens _wAFSqlInjectionMatchSetFieldToMatchType (\s a -> s { _wAFSqlInjectionMatchSetFieldToMatchType = a })
+ library-gen/Stratosphere/ResourceProperties/WAFSqlInjectionMatchSetSqlInjectionMatchTuple.hs view
@@ -0,0 +1,51 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sqlinjectionmatchset-sqlinjectionmatchtuples.html++module Stratosphere.ResourceProperties.WAFSqlInjectionMatchSetSqlInjectionMatchTuple where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFSqlInjectionMatchSetFieldToMatch++-- | Full data type definition for+-- | WAFSqlInjectionMatchSetSqlInjectionMatchTuple. See+-- | 'wafSqlInjectionMatchSetSqlInjectionMatchTuple' for a more convenient+-- | constructor.+data WAFSqlInjectionMatchSetSqlInjectionMatchTuple =+  WAFSqlInjectionMatchSetSqlInjectionMatchTuple+  { _wAFSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatch :: WAFSqlInjectionMatchSetFieldToMatch+  , _wAFSqlInjectionMatchSetSqlInjectionMatchTupleTextTransformation :: Val Text+  } deriving (Show, Generic)++instance ToJSON WAFSqlInjectionMatchSetSqlInjectionMatchTuple where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 46, omitNothingFields = True }++instance FromJSON WAFSqlInjectionMatchSetSqlInjectionMatchTuple where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 46, omitNothingFields = True }++-- | Constructor for 'WAFSqlInjectionMatchSetSqlInjectionMatchTuple'+-- | containing required fields as arguments.+wafSqlInjectionMatchSetSqlInjectionMatchTuple+  :: WAFSqlInjectionMatchSetFieldToMatch -- ^ 'wafsimssimtFieldToMatch'+  -> Val Text -- ^ 'wafsimssimtTextTransformation'+  -> WAFSqlInjectionMatchSetSqlInjectionMatchTuple+wafSqlInjectionMatchSetSqlInjectionMatchTuple fieldToMatcharg textTransformationarg =+  WAFSqlInjectionMatchSetSqlInjectionMatchTuple+  { _wAFSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatch = fieldToMatcharg+  , _wAFSqlInjectionMatchSetSqlInjectionMatchTupleTextTransformation = textTransformationarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sqlinjectionmatchset-sqlinjectionmatchtuples.html#cfn-waf-sqlinjectionmatchset-sqlinjectionmatchtuples-fieldtomatch+wafsimssimtFieldToMatch :: Lens' WAFSqlInjectionMatchSetSqlInjectionMatchTuple WAFSqlInjectionMatchSetFieldToMatch+wafsimssimtFieldToMatch = lens _wAFSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatch (\s a -> s { _wAFSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatch = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-sqlinjectionmatchset-sqlinjectionmatchtuples.html#cfn-waf-sqlinjectionmatchset-sqlinjectionmatchtuples-texttransformation+wafsimssimtTextTransformation :: Lens' WAFSqlInjectionMatchSetSqlInjectionMatchTuple (Val Text)+wafsimssimtTextTransformation = lens _wAFSqlInjectionMatchSetSqlInjectionMatchTupleTextTransformation (\s a -> s { _wAFSqlInjectionMatchSetSqlInjectionMatchTupleTextTransformation = a })
+ library-gen/Stratosphere/ResourceProperties/WAFWebACLActivatedRule.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-rules.html++module Stratosphere.ResourceProperties.WAFWebACLActivatedRule where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFWebACLWafAction++-- | Full data type definition for WAFWebACLActivatedRule. See+-- | 'wafWebACLActivatedRule' for a more convenient constructor.+data WAFWebACLActivatedRule =+  WAFWebACLActivatedRule+  { _wAFWebACLActivatedRuleAction :: WAFWebACLWafAction+  , _wAFWebACLActivatedRulePriority :: Val Integer'+  , _wAFWebACLActivatedRuleRuleId :: Val Text+  } deriving (Show, Generic)++instance ToJSON WAFWebACLActivatedRule where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++instance FromJSON WAFWebACLActivatedRule where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++-- | Constructor for 'WAFWebACLActivatedRule' containing required fields as+-- | arguments.+wafWebACLActivatedRule+  :: WAFWebACLWafAction -- ^ 'wafwaclarAction'+  -> Val Integer' -- ^ 'wafwaclarPriority'+  -> Val Text -- ^ 'wafwaclarRuleId'+  -> WAFWebACLActivatedRule+wafWebACLActivatedRule actionarg priorityarg ruleIdarg =+  WAFWebACLActivatedRule+  { _wAFWebACLActivatedRuleAction = actionarg+  , _wAFWebACLActivatedRulePriority = priorityarg+  , _wAFWebACLActivatedRuleRuleId = ruleIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-rules.html#cfn-waf-webacl-rules-action+wafwaclarAction :: Lens' WAFWebACLActivatedRule WAFWebACLWafAction+wafwaclarAction = lens _wAFWebACLActivatedRuleAction (\s a -> s { _wAFWebACLActivatedRuleAction = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-rules.html#cfn-waf-webacl-rules-priority+wafwaclarPriority :: Lens' WAFWebACLActivatedRule (Val Integer')+wafwaclarPriority = lens _wAFWebACLActivatedRulePriority (\s a -> s { _wAFWebACLActivatedRulePriority = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-rules.html#cfn-waf-webacl-rules-ruleid+wafwaclarRuleId :: Lens' WAFWebACLActivatedRule (Val Text)+wafwaclarRuleId = lens _wAFWebACLActivatedRuleRuleId (\s a -> s { _wAFWebACLActivatedRuleRuleId = a })
+ library-gen/Stratosphere/ResourceProperties/WAFWebACLWafAction.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-action.html++module Stratosphere.ResourceProperties.WAFWebACLWafAction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for WAFWebACLWafAction. See+-- | 'wafWebACLWafAction' for a more convenient constructor.+data WAFWebACLWafAction =+  WAFWebACLWafAction+  { _wAFWebACLWafActionType :: Val Text+  } deriving (Show, Generic)++instance ToJSON WAFWebACLWafAction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++instance FromJSON WAFWebACLWafAction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++-- | Constructor for 'WAFWebACLWafAction' containing required fields as+-- | arguments.+wafWebACLWafAction+  :: Val Text -- ^ 'wafwaclwaType'+  -> WAFWebACLWafAction+wafWebACLWafAction typearg =+  WAFWebACLWafAction+  { _wAFWebACLWafActionType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-webacl-action.html#cfn-waf-webacl-action-type+wafwaclwaType :: Lens' WAFWebACLWafAction (Val Text)+wafwaclwaType = lens _wAFWebACLWafActionType (\s a -> s { _wAFWebACLWafActionType = a })
+ library-gen/Stratosphere/ResourceProperties/WAFXssMatchSetFieldToMatch.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple-fieldtomatch.html++module Stratosphere.ResourceProperties.WAFXssMatchSetFieldToMatch where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for WAFXssMatchSetFieldToMatch. See+-- | 'wafXssMatchSetFieldToMatch' for a more convenient constructor.+data WAFXssMatchSetFieldToMatch =+  WAFXssMatchSetFieldToMatch+  { _wAFXssMatchSetFieldToMatchData :: Maybe (Val Text)+  , _wAFXssMatchSetFieldToMatchType :: Val Text+  } deriving (Show, Generic)++instance ToJSON WAFXssMatchSetFieldToMatch where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON WAFXssMatchSetFieldToMatch where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'WAFXssMatchSetFieldToMatch' containing required fields+-- | as arguments.+wafXssMatchSetFieldToMatch+  :: Val Text -- ^ 'wafxmsftmType'+  -> WAFXssMatchSetFieldToMatch+wafXssMatchSetFieldToMatch typearg =+  WAFXssMatchSetFieldToMatch+  { _wAFXssMatchSetFieldToMatchData = Nothing+  , _wAFXssMatchSetFieldToMatchType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple-fieldtomatch.html#cfn-waf-xssmatchset-xssmatchtuple-fieldtomatch-data+wafxmsftmData :: Lens' WAFXssMatchSetFieldToMatch (Maybe (Val Text))+wafxmsftmData = lens _wAFXssMatchSetFieldToMatchData (\s a -> s { _wAFXssMatchSetFieldToMatchData = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple-fieldtomatch.html#cfn-waf-xssmatchset-xssmatchtuple-fieldtomatch-type+wafxmsftmType :: Lens' WAFXssMatchSetFieldToMatch (Val Text)+wafxmsftmType = lens _wAFXssMatchSetFieldToMatchType (\s a -> s { _wAFXssMatchSetFieldToMatchType = a })
+ library-gen/Stratosphere/ResourceProperties/WAFXssMatchSetXssMatchTuple.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple.html++module Stratosphere.ResourceProperties.WAFXssMatchSetXssMatchTuple where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFXssMatchSetFieldToMatch++-- | Full data type definition for WAFXssMatchSetXssMatchTuple. See+-- | 'wafXssMatchSetXssMatchTuple' for a more convenient constructor.+data WAFXssMatchSetXssMatchTuple =+  WAFXssMatchSetXssMatchTuple+  { _wAFXssMatchSetXssMatchTupleFieldToMatch :: WAFXssMatchSetFieldToMatch+  , _wAFXssMatchSetXssMatchTupleTextTransformation :: Val Text+  } deriving (Show, Generic)++instance ToJSON WAFXssMatchSetXssMatchTuple where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON WAFXssMatchSetXssMatchTuple where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'WAFXssMatchSetXssMatchTuple' containing required fields+-- | as arguments.+wafXssMatchSetXssMatchTuple+  :: WAFXssMatchSetFieldToMatch -- ^ 'wafxmsxmtFieldToMatch'+  -> Val Text -- ^ 'wafxmsxmtTextTransformation'+  -> WAFXssMatchSetXssMatchTuple+wafXssMatchSetXssMatchTuple fieldToMatcharg textTransformationarg =+  WAFXssMatchSetXssMatchTuple+  { _wAFXssMatchSetXssMatchTupleFieldToMatch = fieldToMatcharg+  , _wAFXssMatchSetXssMatchTupleTextTransformation = textTransformationarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple.html#cfn-waf-xssmatchset-xssmatchtuple-fieldtomatch+wafxmsxmtFieldToMatch :: Lens' WAFXssMatchSetXssMatchTuple WAFXssMatchSetFieldToMatch+wafxmsxmtFieldToMatch = lens _wAFXssMatchSetXssMatchTupleFieldToMatch (\s a -> s { _wAFXssMatchSetXssMatchTupleFieldToMatch = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waf-xssmatchset-xssmatchtuple.html#cfn-waf-xssmatchset-xssmatchtuple-texttransformation+wafxmsxmtTextTransformation :: Lens' WAFXssMatchSetXssMatchTuple (Val Text)+wafxmsxmtTextTransformation = lens _wAFXssMatchSetXssMatchTupleTextTransformation (\s a -> s { _wAFXssMatchSetXssMatchTupleTextTransformation = a })
library-gen/Stratosphere/Resources.hs view
@@ -1,534 +1,1271 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE ExistentialQuantification #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE FunctionalDependencies #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE MultiParamTypeClasses #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE TemplateHaskell #-}-{-# LANGUAGE TypeFamilies #-}---- | See:--- http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html------ The required Resources section declare the AWS resources that you want as--- part of your stack, such as an Amazon EC2 instance or an Amazon S3 bucket.--- You must declare each resource separately; however, you can specify multiple--- resources of the same type. If you declare multiple resources, separate them--- with commas.--module Stratosphere.Resources-     ( module X-     , Resource (..)-     , resource-     , resName-     , properties-     , deletionPolicy-     , resCreationPolicy-     , resUpdatePolicy-     , dependsOn-     , ResourceProperties (..)-     , DeletionPolicy (..)-     , Resources (..)-     ) where--import Control.Lens hiding ((.=))-import Data.Aeson-import Data.Aeson.Types-import Data.Maybe (catMaybes)-import qualified Data.Text as T-import GHC.Exts (IsList(..))-import GHC.Generics (Generic)--import Stratosphere.Resources.AccessKey as X-import Stratosphere.Resources.ApiGatewayAccount as X-import Stratosphere.Resources.ApiGatewayDeployment as X-import Stratosphere.Resources.ApiGatewayMethod as X-import Stratosphere.Resources.ApiGatewayModel as X-import Stratosphere.Resources.ApiGatewayResource as X-import Stratosphere.Resources.ApiGatewayRestApi as X-import Stratosphere.Resources.ApiGatewayStage as X-import Stratosphere.Resources.ApiGatewayUsagePlan as X-import Stratosphere.Resources.AutoScalingGroup as X-import Stratosphere.Resources.Bucket as X-import Stratosphere.Resources.CacheCluster as X-import Stratosphere.Resources.CacheSubnetGroup as X-import Stratosphere.Resources.DBInstance as X-import Stratosphere.Resources.DBParameterGroup as X-import Stratosphere.Resources.DBSecurityGroup as X-import Stratosphere.Resources.DBSecurityGroupIngress as X-import Stratosphere.Resources.DBSubnetGroup as X-import Stratosphere.Resources.DeliveryStream as X-import Stratosphere.Resources.DynamoDBTable as X-import Stratosphere.Resources.EC2Instance as X-import Stratosphere.Resources.EIP as X-import Stratosphere.Resources.EIPAssociation as X-import Stratosphere.Resources.EventsRule as X-import Stratosphere.Resources.Group as X-import Stratosphere.Resources.IAMRole as X-import Stratosphere.Resources.InstanceProfile as X-import Stratosphere.Resources.InternetGateway as X-import Stratosphere.Resources.KinesisStream as X-import Stratosphere.Resources.LambdaAlias as X-import Stratosphere.Resources.LambdaFunction as X-import Stratosphere.Resources.LambdaPermission as X-import Stratosphere.Resources.LambdaVersion as X-import Stratosphere.Resources.LaunchConfiguration as X-import Stratosphere.Resources.LifecycleHook as X-import Stratosphere.Resources.LoadBalancer as X-import Stratosphere.Resources.LogGroup as X-import Stratosphere.Resources.LogStream as X-import Stratosphere.Resources.ManagedPolicy as X-import Stratosphere.Resources.NatGateway as X-import Stratosphere.Resources.Policy as X-import Stratosphere.Resources.RecordSet as X-import Stratosphere.Resources.RecordSetGroup as X-import Stratosphere.Resources.Route as X-import Stratosphere.Resources.RouteTable as X-import Stratosphere.Resources.S3BucketPolicy as X-import Stratosphere.Resources.SNSSubscription as X-import Stratosphere.Resources.SNSTopic as X-import Stratosphere.Resources.SNSTopicPolicy as X-import Stratosphere.Resources.SQSQueue as X-import Stratosphere.Resources.SQSQueuePolicy as X-import Stratosphere.Resources.ScalingPolicy as X-import Stratosphere.Resources.ScheduledAction as X-import Stratosphere.Resources.SecurityGroup as X-import Stratosphere.Resources.SecurityGroupEgress as X-import Stratosphere.Resources.SecurityGroupIngress as X-import Stratosphere.Resources.Stack as X-import Stratosphere.Resources.Subnet as X-import Stratosphere.Resources.SubnetRouteTableAssociation as X-import Stratosphere.Resources.Trail as X-import Stratosphere.Resources.User as X-import Stratosphere.Resources.UserToGroupAddition as X-import Stratosphere.Resources.VPC as X-import Stratosphere.Resources.VPCEndpoint as X-import Stratosphere.Resources.VPCGatewayAttachment as X-import Stratosphere.Resources.Volume as X-import Stratosphere.Resources.VolumeAttachment as X--import Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescription as X-import Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescriptionMethodSetting as X-import Stratosphere.ResourceProperties.AccessLoggingPolicy as X-import Stratosphere.ResourceProperties.AliasTarget as X-import Stratosphere.ResourceProperties.ApiGatewayIntegration as X-import Stratosphere.ResourceProperties.ApiGatewayIntegrationResponse as X-import Stratosphere.ResourceProperties.ApiGatewayMethodResponse as X-import Stratosphere.ResourceProperties.ApiGatewayRestApiS3Location as X-import Stratosphere.ResourceProperties.ApiGatewayStageMethodSetting as X-import Stratosphere.ResourceProperties.ApiGatewayUsagePlanApiStage as X-import Stratosphere.ResourceProperties.ApiGatewayUsagePlanQuotaSettings as X-import Stratosphere.ResourceProperties.ApiGatewayUsagePlanThrottleSettings as X-import Stratosphere.ResourceProperties.AppCookieStickinessPolicy as X-import Stratosphere.ResourceProperties.AutoScalingBlockDeviceMapping as X-import Stratosphere.ResourceProperties.AutoScalingEBSBlockDevice as X-import Stratosphere.ResourceProperties.AutoScalingMetricsCollection as X-import Stratosphere.ResourceProperties.AutoScalingNotificationConfigurations as X-import Stratosphere.ResourceProperties.AutoScalingTags as X-import Stratosphere.ResourceProperties.ConnectionDrainingPolicy as X-import Stratosphere.ResourceProperties.ConnectionSettings as X-import Stratosphere.ResourceProperties.DynamoDBAttributeDefinition as X-import Stratosphere.ResourceProperties.DynamoDBGlobalSecondaryIndex as X-import Stratosphere.ResourceProperties.DynamoDBKeySchema as X-import Stratosphere.ResourceProperties.DynamoDBLocalSecondaryIndex as X-import Stratosphere.ResourceProperties.DynamoDBProjectionObject as X-import Stratosphere.ResourceProperties.DynamoDBProvisionedThroughput as X-import Stratosphere.ResourceProperties.DynamoDBStreamSpecification as X-import Stratosphere.ResourceProperties.EBSBlockDevice as X-import Stratosphere.ResourceProperties.EC2BlockDeviceMapping as X-import Stratosphere.ResourceProperties.EC2MountPoint as X-import Stratosphere.ResourceProperties.EC2SsmAssociationParameters as X-import Stratosphere.ResourceProperties.EC2SsmAssociations as X-import Stratosphere.ResourceProperties.ELBPolicy as X-import Stratosphere.ResourceProperties.HealthCheck as X-import Stratosphere.ResourceProperties.IAMPolicies as X-import Stratosphere.ResourceProperties.KinesisFirehoseBufferingHints as X-import Stratosphere.ResourceProperties.KinesisFirehoseCloudWatchLoggingOptions as X-import Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchDestinationConfiguration as X-import Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchRetryOptions as X-import Stratosphere.ResourceProperties.KinesisFirehoseRedshiftCopyCommand as X-import Stratosphere.ResourceProperties.KinesisFirehoseRedshiftDestinationConfiguration as X-import Stratosphere.ResourceProperties.KinesisFirehoseS3DestinationConfiguration as X-import Stratosphere.ResourceProperties.KinesisFirehoseS3EncryptionConfiguration as X-import Stratosphere.ResourceProperties.KinesisFirehoseS3KMSEncryptionConfig as X-import Stratosphere.ResourceProperties.LBCookieStickinessPolicy as X-import Stratosphere.ResourceProperties.LambdaFunctionCode as X-import Stratosphere.ResourceProperties.LambdaFunctionVPCConfig as X-import Stratosphere.ResourceProperties.ListenerProperty as X-import Stratosphere.ResourceProperties.NameValuePair as X-import Stratosphere.ResourceProperties.NetworkInterface as X-import Stratosphere.ResourceProperties.PrivateIpAddressSpecification as X-import Stratosphere.ResourceProperties.RDSSecurityGroupRule as X-import Stratosphere.ResourceProperties.RecordSetGeoLocation as X-import Stratosphere.ResourceProperties.ResourceTag as X-import Stratosphere.ResourceProperties.S3CorsConfiguration as X-import Stratosphere.ResourceProperties.S3CorsConfigurationRule as X-import Stratosphere.ResourceProperties.S3LifecycleConfiguration as X-import Stratosphere.ResourceProperties.S3LifecycleRule as X-import Stratosphere.ResourceProperties.S3LifecycleRuleNoncurrentVersionTransition as X-import Stratosphere.ResourceProperties.S3LifecycleRuleTransition as X-import Stratosphere.ResourceProperties.S3LoggingConfiguration as X-import Stratosphere.ResourceProperties.S3NotificationConfiguration as X-import Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilter as X-import Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3Key as X-import Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3KeyRules as X-import Stratosphere.ResourceProperties.S3NotificationConfigurationLambdaConfiguration as X-import Stratosphere.ResourceProperties.S3NotificationConfigurationQueueConfiguration as X-import Stratosphere.ResourceProperties.S3NotificationConfigurationTopicConfiguration as X-import Stratosphere.ResourceProperties.S3ReplicationConfiguration as X-import Stratosphere.ResourceProperties.S3ReplicationConfigurationRule as X-import Stratosphere.ResourceProperties.S3ReplicationConfigurationRulesDestination as X-import Stratosphere.ResourceProperties.S3VersioningConfiguration as X-import Stratosphere.ResourceProperties.S3WebsiteConfiguration as X-import Stratosphere.ResourceProperties.S3WebsiteRedirectAllRequestsTo as X-import Stratosphere.ResourceProperties.S3WebsiteRedirectRule as X-import Stratosphere.ResourceProperties.S3WebsiteRoutingRuleCondition as X-import Stratosphere.ResourceProperties.S3WebsiteRoutingRules as X-import Stratosphere.ResourceProperties.SNSTopicSubscription as X-import Stratosphere.ResourceProperties.SQSRedrivePolicy as X-import Stratosphere.ResourceProperties.SecurityGroupEgressRule as X-import Stratosphere.ResourceProperties.SecurityGroupIngressRule as X-import Stratosphere.ResourceProperties.StepAdjustments as X-import Stratosphere.ResourceProperties.UserLoginProfile as X--import Stratosphere.ResourceAttributes.AutoScalingReplacingUpdate as X-import Stratosphere.ResourceAttributes.AutoScalingRollingUpdate as X-import Stratosphere.ResourceAttributes.AutoScalingScheduledAction as X-import Stratosphere.ResourceAttributes.CreationPolicy as X-import Stratosphere.ResourceAttributes.ResourceSignal as X-import Stratosphere.ResourceAttributes.UpdatePolicy as X--import Stratosphere.Helpers-import Stratosphere.Values--data ResourceProperties-  = AccessKeyProperties AccessKey-  | ApiGatewayAccountProperties ApiGatewayAccount-  | ApiGatewayDeploymentProperties ApiGatewayDeployment-  | ApiGatewayMethodProperties ApiGatewayMethod-  | ApiGatewayModelProperties ApiGatewayModel-  | ApiGatewayResourceProperties ApiGatewayResource-  | ApiGatewayRestApiProperties ApiGatewayRestApi-  | ApiGatewayStageProperties ApiGatewayStage-  | ApiGatewayUsagePlanProperties ApiGatewayUsagePlan-  | AutoScalingGroupProperties AutoScalingGroup-  | BucketProperties Bucket-  | CacheClusterProperties CacheCluster-  | CacheSubnetGroupProperties CacheSubnetGroup-  | DBInstanceProperties DBInstance-  | DBParameterGroupProperties DBParameterGroup-  | DBSecurityGroupProperties DBSecurityGroup-  | DBSecurityGroupIngressProperties DBSecurityGroupIngress-  | DBSubnetGroupProperties DBSubnetGroup-  | DeliveryStreamProperties DeliveryStream-  | DynamoDBTableProperties DynamoDBTable-  | EC2InstanceProperties EC2Instance-  | EIPProperties EIP-  | EIPAssociationProperties EIPAssociation-  | EventsRuleProperties EventsRule-  | GroupProperties Group-  | IAMRoleProperties IAMRole-  | InstanceProfileProperties InstanceProfile-  | InternetGatewayProperties InternetGateway-  | KinesisStreamProperties KinesisStream-  | LambdaAliasProperties LambdaAlias-  | LambdaFunctionProperties LambdaFunction-  | LambdaPermissionProperties LambdaPermission-  | LambdaVersionProperties LambdaVersion-  | LaunchConfigurationProperties LaunchConfiguration-  | LifecycleHookProperties LifecycleHook-  | LoadBalancerProperties LoadBalancer-  | LogGroupProperties LogGroup-  | LogStreamProperties LogStream-  | ManagedPolicyProperties ManagedPolicy-  | NatGatewayProperties NatGateway-  | PolicyProperties Policy-  | RecordSetProperties RecordSet-  | RecordSetGroupProperties RecordSetGroup-  | RouteProperties Route-  | RouteTableProperties RouteTable-  | S3BucketPolicyProperties S3BucketPolicy-  | SNSSubscriptionProperties SNSSubscription-  | SNSTopicProperties SNSTopic-  | SNSTopicPolicyProperties SNSTopicPolicy-  | SQSQueueProperties SQSQueue-  | SQSQueuePolicyProperties SQSQueuePolicy-  | ScalingPolicyProperties ScalingPolicy-  | ScheduledActionProperties ScheduledAction-  | SecurityGroupProperties SecurityGroup-  | SecurityGroupEgressProperties SecurityGroupEgress-  | SecurityGroupIngressProperties SecurityGroupIngress-  | StackProperties Stack-  | SubnetProperties Subnet-  | SubnetRouteTableAssociationProperties SubnetRouteTableAssociation-  | TrailProperties Trail-  | UserProperties User-  | UserToGroupAdditionProperties UserToGroupAddition-  | VPCProperties VPC-  | VPCEndpointProperties VPCEndpoint-  | VPCGatewayAttachmentProperties VPCGatewayAttachment-  | VolumeProperties Volume-  | VolumeAttachmentProperties VolumeAttachment--  deriving (Show)--data DeletionPolicy-  = Delete-  | Retain-  | Snapshot-  deriving (Show, Generic)--instance ToJSON DeletionPolicy where-instance FromJSON DeletionPolicy where--data Resource =-  Resource-  { resourceResName :: T.Text-  , resourceProperties :: ResourceProperties-  , resourceDeletionPolicy :: Maybe DeletionPolicy-  , resourceResCreationPolicy :: Maybe CreationPolicy-  , resourceResUpdatePolicy :: Maybe UpdatePolicy-  , resourceDependsOn :: Maybe [T.Text]-  } deriving (Show)--instance ToRef Resource b where-  toRef r = Ref (resourceResName r)---- | Convenient constructor for 'Resource' with required arguments.-resource-  :: T.Text -- ^ Logical name-  -> ResourceProperties-  -> Resource-resource rn rp =-  Resource-  { resourceResName = rn-  , resourceProperties = rp-  , resourceDeletionPolicy = Nothing-  , resourceResCreationPolicy = Nothing-  , resourceResUpdatePolicy = Nothing-  , resourceDependsOn = Nothing-  }--$(makeFields ''Resource)--resourceToJSON :: Resource -> Value-resourceToJSON (Resource _ props dp cp up deps) =-    object $ resourcePropertiesJSON props ++ catMaybes-    [ maybeField "DeletionPolicy" dp-    , maybeField "CreationPolicy" cp-    , maybeField "UpdatePolicy" up-    , maybeField "DependsOn" deps-    ]--resourcePropertiesJSON :: ResourceProperties -> [Pair]-resourcePropertiesJSON (AccessKeyProperties x) =-  [ "Type" .= ("AWS::IAM::AccessKey" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (ApiGatewayAccountProperties x) =-  [ "Type" .= ("Api::Gateway::Account" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (ApiGatewayDeploymentProperties x) =-  [ "Type" .= ("AWS::ApiGateway::Deployment" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (ApiGatewayMethodProperties x) =-  [ "Type" .= ("AWS::ApiGateway::Method" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (ApiGatewayModelProperties x) =-  [ "Type" .= ("AWS::ApiGateway::Model" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (ApiGatewayResourceProperties x) =-  [ "Type" .= ("AWS::ApiGateway::Resource" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (ApiGatewayRestApiProperties x) =-  [ "Type" .= ("AWS::ApiGateway::RestApi" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (ApiGatewayStageProperties x) =-  [ "Type" .= ("AWS::ApiGateway::Stage" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (ApiGatewayUsagePlanProperties x) =-  [ "Type" .= ("AWS::ApiGateway::UsagePlan" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (AutoScalingGroupProperties x) =-  [ "Type" .= ("AWS::AutoScaling::AutoScalingGroup" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (BucketProperties x) =-  [ "Type" .= ("AWS::S3::Bucket" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (CacheClusterProperties x) =-  [ "Type" .= ("AWS::ElastiCache::CacheCluster" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (CacheSubnetGroupProperties x) =-  [ "Type" .= ("AWS::ElastiCache::SubnetGroup" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (DBInstanceProperties x) =-  [ "Type" .= ("AWS::RDS::DBInstance" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (DBParameterGroupProperties x) =-  [ "Type" .= ("AWS::RDS::DBParameterGroup" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (DBSecurityGroupProperties x) =-  [ "Type" .= ("AWS::RDS::DBSecurityGroup" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (DBSecurityGroupIngressProperties x) =-  [ "Type" .= ("AWS::RDS::DBSecurityGroupIngress" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (DBSubnetGroupProperties x) =-  [ "Type" .= ("AWS::RDS::DBSubnetGroup" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (DeliveryStreamProperties x) =-  [ "Type" .= ("AWS::KinesisFirehose::DeliveryStream" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (DynamoDBTableProperties x) =-  [ "Type" .= ("AWS::DynamoDB::Table" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (EC2InstanceProperties x) =-  [ "Type" .= ("AWS::EC2::Instance" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (EIPProperties x) =-  [ "Type" .= ("AWS::EC2::EIP" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (EIPAssociationProperties x) =-  [ "Type" .= ("AWS::EC2::EIPAssociation" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (EventsRuleProperties x) =-  [ "Type" .= ("AWS::Events::Rule" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (GroupProperties x) =-  [ "Type" .= ("AWS::IAM::Group" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (IAMRoleProperties x) =-  [ "Type" .= ("AWS::IAM::Role" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (InstanceProfileProperties x) =-  [ "Type" .= ("AWS::IAM::InstanceProfile" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (InternetGatewayProperties x) =-  [ "Type" .= ("AWS::EC2::InternetGateway" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (KinesisStreamProperties x) =-  [ "Type" .= ("AWS::Kinesis::Stream" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (LambdaAliasProperties x) =-  [ "Type" .= ("AWS::Lambda::Alias" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (LambdaFunctionProperties x) =-  [ "Type" .= ("AWS::Lambda::Function" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (LambdaPermissionProperties x) =-  [ "Type" .= ("AWS::Lambda::Permission" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (LambdaVersionProperties x) =-  [ "Type" .= ("AWS::Lambda::Version" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (LaunchConfigurationProperties x) =-  [ "Type" .= ("AWS::AutoScaling::LaunchConfiguration" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (LifecycleHookProperties x) =-  [ "Type" .= ("AWS::AutoScaling::LifecycleHook" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (LoadBalancerProperties x) =-  [ "Type" .= ("AWS::ElasticLoadBalancing::LoadBalancer" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (LogGroupProperties x) =-  [ "Type" .= ("AWS::Logs::LogGroup" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (LogStreamProperties x) =-  [ "Type" .= ("AWS::Logs::LogStream" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (ManagedPolicyProperties x) =-  [ "Type" .= ("AWS::IAM::ManagedPolicy" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (NatGatewayProperties x) =-  [ "Type" .= ("AWS::EC2::NatGateway" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (PolicyProperties x) =-  [ "Type" .= ("AWS::IAM::Policy" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (RecordSetProperties x) =-  [ "Type" .= ("AWS::Route53::RecordSet" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (RecordSetGroupProperties x) =-  [ "Type" .= ("AWS::Route53::RecordSetGroup" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (RouteProperties x) =-  [ "Type" .= ("AWS::EC2::Route" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (RouteTableProperties x) =-  [ "Type" .= ("AWS::EC2::RouteTable" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (S3BucketPolicyProperties x) =-  [ "Type" .= ("AWS::S3::BucketPolicy" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (SNSSubscriptionProperties x) =-  [ "Type" .= ("AWS::SNS::Subscription" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (SNSTopicProperties x) =-  [ "Type" .= ("AWS::SNS::Topic" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (SNSTopicPolicyProperties x) =-  [ "Type" .= ("AWS::SNS::TopicPolicy" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (SQSQueueProperties x) =-  [ "Type" .= ("AWS::SQS::Queue" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (SQSQueuePolicyProperties x) =-  [ "Type" .= ("AWS::SQS::QueuePolicy" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (ScalingPolicyProperties x) =-  [ "Type" .= ("AWS::AutoScaling::ScalingPolicy" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (ScheduledActionProperties x) =-  [ "Type" .= ("AWS::AutoScaling::ScheduledAction" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (SecurityGroupProperties x) =-  [ "Type" .= ("AWS::EC2::SecurityGroup" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (SecurityGroupEgressProperties x) =-  [ "Type" .= ("AWS::EC2::SecurityGroupEgress" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (SecurityGroupIngressProperties x) =-  [ "Type" .= ("AWS::EC2::SecurityGroupIngress" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (StackProperties x) =-  [ "Type" .= ("AWS::CloudFormation::Stack" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (SubnetProperties x) =-  [ "Type" .= ("AWS::EC2::Subnet" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (SubnetRouteTableAssociationProperties x) =-  [ "Type" .= ("AWS::EC2::SubnetRouteTableAssociation" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (TrailProperties x) =-  [ "Type" .= ("AWS::CloudTrail::Trail" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (UserProperties x) =-  [ "Type" .= ("AWS::IAM::User" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (UserToGroupAdditionProperties x) =-  [ "Type" .= ("AWS::IAM::UserToGroupAddition" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (VPCProperties x) =-  [ "Type" .= ("AWS::EC2::VPC" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (VPCEndpointProperties x) =-  [ "Type" .= ("AWS::EC2::VPCEndpoint" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (VPCGatewayAttachmentProperties x) =-  [ "Type" .= ("AWS::EC2::VPCGatewayAttachment" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (VolumeProperties x) =-  [ "Type" .= ("AWS::EC2::Volume" :: String), "Properties" .= toJSON x]-resourcePropertiesJSON (VolumeAttachmentProperties x) =-  [ "Type" .= ("AWS::EC2::VolumeAttachment" :: String), "Properties" .= toJSON x]---resourceFromJSON :: T.Text -> Object -> Parser Resource-resourceFromJSON n o =-    do type' <- o .: "Type" :: Parser String-       props <- case type' of-         "AWS::IAM::AccessKey" -> AccessKeyProperties <$> (o .: "Properties")-         "Api::Gateway::Account" -> ApiGatewayAccountProperties <$> (o .: "Properties")-         "AWS::ApiGateway::Deployment" -> ApiGatewayDeploymentProperties <$> (o .: "Properties")-         "AWS::ApiGateway::Method" -> ApiGatewayMethodProperties <$> (o .: "Properties")-         "AWS::ApiGateway::Model" -> ApiGatewayModelProperties <$> (o .: "Properties")-         "AWS::ApiGateway::Resource" -> ApiGatewayResourceProperties <$> (o .: "Properties")-         "AWS::ApiGateway::RestApi" -> ApiGatewayRestApiProperties <$> (o .: "Properties")-         "AWS::ApiGateway::Stage" -> ApiGatewayStageProperties <$> (o .: "Properties")-         "AWS::ApiGateway::UsagePlan" -> ApiGatewayUsagePlanProperties <$> (o .: "Properties")-         "AWS::AutoScaling::AutoScalingGroup" -> AutoScalingGroupProperties <$> (o .: "Properties")-         "AWS::S3::Bucket" -> BucketProperties <$> (o .: "Properties")-         "AWS::ElastiCache::CacheCluster" -> CacheClusterProperties <$> (o .: "Properties")-         "AWS::ElastiCache::SubnetGroup" -> CacheSubnetGroupProperties <$> (o .: "Properties")-         "AWS::RDS::DBInstance" -> DBInstanceProperties <$> (o .: "Properties")-         "AWS::RDS::DBParameterGroup" -> DBParameterGroupProperties <$> (o .: "Properties")-         "AWS::RDS::DBSecurityGroup" -> DBSecurityGroupProperties <$> (o .: "Properties")-         "AWS::RDS::DBSecurityGroupIngress" -> DBSecurityGroupIngressProperties <$> (o .: "Properties")-         "AWS::RDS::DBSubnetGroup" -> DBSubnetGroupProperties <$> (o .: "Properties")-         "AWS::KinesisFirehose::DeliveryStream" -> DeliveryStreamProperties <$> (o .: "Properties")-         "AWS::DynamoDB::Table" -> DynamoDBTableProperties <$> (o .: "Properties")-         "AWS::EC2::Instance" -> EC2InstanceProperties <$> (o .: "Properties")-         "AWS::EC2::EIP" -> EIPProperties <$> (o .: "Properties")-         "AWS::EC2::EIPAssociation" -> EIPAssociationProperties <$> (o .: "Properties")-         "AWS::Events::Rule" -> EventsRuleProperties <$> (o .: "Properties")-         "AWS::IAM::Group" -> GroupProperties <$> (o .: "Properties")-         "AWS::IAM::Role" -> IAMRoleProperties <$> (o .: "Properties")-         "AWS::IAM::InstanceProfile" -> InstanceProfileProperties <$> (o .: "Properties")-         "AWS::EC2::InternetGateway" -> InternetGatewayProperties <$> (o .: "Properties")-         "AWS::Kinesis::Stream" -> KinesisStreamProperties <$> (o .: "Properties")-         "AWS::Lambda::Alias" -> LambdaAliasProperties <$> (o .: "Properties")-         "AWS::Lambda::Function" -> LambdaFunctionProperties <$> (o .: "Properties")-         "AWS::Lambda::Permission" -> LambdaPermissionProperties <$> (o .: "Properties")-         "AWS::Lambda::Version" -> LambdaVersionProperties <$> (o .: "Properties")-         "AWS::AutoScaling::LaunchConfiguration" -> LaunchConfigurationProperties <$> (o .: "Properties")-         "AWS::AutoScaling::LifecycleHook" -> LifecycleHookProperties <$> (o .: "Properties")-         "AWS::ElasticLoadBalancing::LoadBalancer" -> LoadBalancerProperties <$> (o .: "Properties")-         "AWS::Logs::LogGroup" -> LogGroupProperties <$> (o .: "Properties")-         "AWS::Logs::LogStream" -> LogStreamProperties <$> (o .: "Properties")-         "AWS::IAM::ManagedPolicy" -> ManagedPolicyProperties <$> (o .: "Properties")-         "AWS::EC2::NatGateway" -> NatGatewayProperties <$> (o .: "Properties")-         "AWS::IAM::Policy" -> PolicyProperties <$> (o .: "Properties")-         "AWS::Route53::RecordSet" -> RecordSetProperties <$> (o .: "Properties")-         "AWS::Route53::RecordSetGroup" -> RecordSetGroupProperties <$> (o .: "Properties")-         "AWS::EC2::Route" -> RouteProperties <$> (o .: "Properties")-         "AWS::EC2::RouteTable" -> RouteTableProperties <$> (o .: "Properties")-         "AWS::S3::BucketPolicy" -> S3BucketPolicyProperties <$> (o .: "Properties")-         "AWS::SNS::Subscription" -> SNSSubscriptionProperties <$> (o .: "Properties")-         "AWS::SNS::Topic" -> SNSTopicProperties <$> (o .: "Properties")-         "AWS::SNS::TopicPolicy" -> SNSTopicPolicyProperties <$> (o .: "Properties")-         "AWS::SQS::Queue" -> SQSQueueProperties <$> (o .: "Properties")-         "AWS::SQS::QueuePolicy" -> SQSQueuePolicyProperties <$> (o .: "Properties")-         "AWS::AutoScaling::ScalingPolicy" -> ScalingPolicyProperties <$> (o .: "Properties")-         "AWS::AutoScaling::ScheduledAction" -> ScheduledActionProperties <$> (o .: "Properties")-         "AWS::EC2::SecurityGroup" -> SecurityGroupProperties <$> (o .: "Properties")-         "AWS::EC2::SecurityGroupEgress" -> SecurityGroupEgressProperties <$> (o .: "Properties")-         "AWS::EC2::SecurityGroupIngress" -> SecurityGroupIngressProperties <$> (o .: "Properties")-         "AWS::CloudFormation::Stack" -> StackProperties <$> (o .: "Properties")-         "AWS::EC2::Subnet" -> SubnetProperties <$> (o .: "Properties")-         "AWS::EC2::SubnetRouteTableAssociation" -> SubnetRouteTableAssociationProperties <$> (o .: "Properties")-         "AWS::CloudTrail::Trail" -> TrailProperties <$> (o .: "Properties")-         "AWS::IAM::User" -> UserProperties <$> (o .: "Properties")-         "AWS::IAM::UserToGroupAddition" -> UserToGroupAdditionProperties <$> (o .: "Properties")-         "AWS::EC2::VPC" -> VPCProperties <$> (o .: "Properties")-         "AWS::EC2::VPCEndpoint" -> VPCEndpointProperties <$> (o .: "Properties")-         "AWS::EC2::VPCGatewayAttachment" -> VPCGatewayAttachmentProperties <$> (o .: "Properties")-         "AWS::EC2::Volume" -> VolumeProperties <$> (o .: "Properties")-         "AWS::EC2::VolumeAttachment" -> VolumeAttachmentProperties <$> (o .: "Properties")+{-# LANGUAGE CPP #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE ExistentialQuantification #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE FunctionalDependencies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TemplateHaskell #-}+{-# LANGUAGE TypeFamilies #-}++#if MIN_VERSION_GLASGOW_HASKELL(8,0,1,0)+{-# OPTIONS_GHC -fmax-pmcheck-iterations=10000000 #-}+#endif++-- | See:+-- http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/resources-section-structure.html+--+-- The required Resources section declare the AWS resources that you want as+-- part of your stack, such as an Amazon EC2 instance or an Amazon S3 bucket.+-- You must declare each resource separately; however, you can specify multiple+-- resources of the same type. If you declare multiple resources, separate them+-- with commas.++module Stratosphere.Resources+     ( module X+     , Resource (..)+     , resource+     , resName+     , properties+     , deletionPolicy+     , resCreationPolicy+     , resUpdatePolicy+     , dependsOn+     , ResourceProperties (..)+     , DeletionPolicy (..)+     , Resources (..)+     ) where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Aeson.Types+import Data.Maybe (catMaybes)+import qualified Data.Text as T+import GHC.Exts (IsList(..))+import GHC.Generics (Generic)++import Stratosphere.Resources.ApiGatewayAccount as X+import Stratosphere.Resources.ApiGatewayApiKey as X+import Stratosphere.Resources.ApiGatewayAuthorizer as X+import Stratosphere.Resources.ApiGatewayBasePathMapping as X+import Stratosphere.Resources.ApiGatewayClientCertificate as X+import Stratosphere.Resources.ApiGatewayDeployment as X+import Stratosphere.Resources.ApiGatewayMethod as X+import Stratosphere.Resources.ApiGatewayModel as X+import Stratosphere.Resources.ApiGatewayResource as X+import Stratosphere.Resources.ApiGatewayRestApi as X+import Stratosphere.Resources.ApiGatewayStage as X+import Stratosphere.Resources.ApiGatewayUsagePlan as X+import Stratosphere.Resources.ApplicationAutoScalingScalableTarget as X+import Stratosphere.Resources.ApplicationAutoScalingScalingPolicy as X+import Stratosphere.Resources.AutoScalingAutoScalingGroup as X+import Stratosphere.Resources.AutoScalingLaunchConfiguration as X+import Stratosphere.Resources.AutoScalingLifecycleHook as X+import Stratosphere.Resources.AutoScalingScalingPolicy as X+import Stratosphere.Resources.AutoScalingScheduledAction as X+import Stratosphere.Resources.CertificateManagerCertificate as X+import Stratosphere.Resources.CloudFormationCustomResource as X+import Stratosphere.Resources.CloudFormationStack as X+import Stratosphere.Resources.CloudFormationWaitCondition as X+import Stratosphere.Resources.CloudFormationWaitConditionHandle as X+import Stratosphere.Resources.CloudFrontDistribution as X+import Stratosphere.Resources.CloudTrailTrail as X+import Stratosphere.Resources.CloudWatchAlarm as X+import Stratosphere.Resources.CodeBuildProject as X+import Stratosphere.Resources.CodeCommitRepository as X+import Stratosphere.Resources.CodeDeployApplication as X+import Stratosphere.Resources.CodeDeployDeploymentConfig as X+import Stratosphere.Resources.CodeDeployDeploymentGroup as X+import Stratosphere.Resources.CodePipelineCustomActionType as X+import Stratosphere.Resources.CodePipelinePipeline as X+import Stratosphere.Resources.ConfigConfigRule as X+import Stratosphere.Resources.ConfigConfigurationRecorder as X+import Stratosphere.Resources.ConfigDeliveryChannel as X+import Stratosphere.Resources.DataPipelinePipeline as X+import Stratosphere.Resources.DirectoryServiceMicrosoftAD as X+import Stratosphere.Resources.DirectoryServiceSimpleAD as X+import Stratosphere.Resources.DynamoDBTable as X+import Stratosphere.Resources.EC2CustomerGateway as X+import Stratosphere.Resources.EC2DHCPOptions as X+import Stratosphere.Resources.EC2EIP as X+import Stratosphere.Resources.EC2EIPAssociation as X+import Stratosphere.Resources.EC2FlowLog as X+import Stratosphere.Resources.EC2Host as X+import Stratosphere.Resources.EC2Instance as X+import Stratosphere.Resources.EC2InternetGateway as X+import Stratosphere.Resources.EC2NatGateway as X+import Stratosphere.Resources.EC2NetworkAcl as X+import Stratosphere.Resources.EC2NetworkAclEntry as X+import Stratosphere.Resources.EC2NetworkInterface as X+import Stratosphere.Resources.EC2NetworkInterfaceAttachment as X+import Stratosphere.Resources.EC2PlacementGroup as X+import Stratosphere.Resources.EC2Route as X+import Stratosphere.Resources.EC2RouteTable as X+import Stratosphere.Resources.EC2SecurityGroup as X+import Stratosphere.Resources.EC2SecurityGroupEgress as X+import Stratosphere.Resources.EC2SecurityGroupIngress as X+import Stratosphere.Resources.EC2SpotFleet as X+import Stratosphere.Resources.EC2Subnet as X+import Stratosphere.Resources.EC2SubnetCidrBlock as X+import Stratosphere.Resources.EC2SubnetNetworkAclAssociation as X+import Stratosphere.Resources.EC2SubnetRouteTableAssociation as X+import Stratosphere.Resources.EC2VPC as X+import Stratosphere.Resources.EC2VPCCidrBlock as X+import Stratosphere.Resources.EC2VPCDHCPOptionsAssociation as X+import Stratosphere.Resources.EC2VPCEndpoint as X+import Stratosphere.Resources.EC2VPCGatewayAttachment as X+import Stratosphere.Resources.EC2VPCPeeringConnection as X+import Stratosphere.Resources.EC2VPNConnection as X+import Stratosphere.Resources.EC2VPNConnectionRoute as X+import Stratosphere.Resources.EC2VPNGateway as X+import Stratosphere.Resources.EC2VPNGatewayRoutePropagation as X+import Stratosphere.Resources.EC2Volume as X+import Stratosphere.Resources.EC2VolumeAttachment as X+import Stratosphere.Resources.ECRRepository as X+import Stratosphere.Resources.ECSCluster as X+import Stratosphere.Resources.ECSService as X+import Stratosphere.Resources.ECSTaskDefinition as X+import Stratosphere.Resources.EFSFileSystem as X+import Stratosphere.Resources.EFSMountTarget as X+import Stratosphere.Resources.EMRCluster as X+import Stratosphere.Resources.EMRInstanceGroupConfig as X+import Stratosphere.Resources.EMRStep as X+import Stratosphere.Resources.ElastiCacheCacheCluster as X+import Stratosphere.Resources.ElastiCacheParameterGroup as X+import Stratosphere.Resources.ElastiCacheReplicationGroup as X+import Stratosphere.Resources.ElastiCacheSecurityGroup as X+import Stratosphere.Resources.ElastiCacheSecurityGroupIngress as X+import Stratosphere.Resources.ElastiCacheSubnetGroup as X+import Stratosphere.Resources.ElasticBeanstalkApplication as X+import Stratosphere.Resources.ElasticBeanstalkApplicationVersion as X+import Stratosphere.Resources.ElasticBeanstalkConfigurationTemplate as X+import Stratosphere.Resources.ElasticBeanstalkEnvironment as X+import Stratosphere.Resources.ElasticLoadBalancingLoadBalancer as X+import Stratosphere.Resources.ElasticLoadBalancingV2Listener as X+import Stratosphere.Resources.ElasticLoadBalancingV2ListenerRule as X+import Stratosphere.Resources.ElasticLoadBalancingV2LoadBalancer as X+import Stratosphere.Resources.ElasticLoadBalancingV2TargetGroup as X+import Stratosphere.Resources.ElasticsearchDomain as X+import Stratosphere.Resources.EventsRule as X+import Stratosphere.Resources.GameLiftAlias as X+import Stratosphere.Resources.GameLiftBuild as X+import Stratosphere.Resources.GameLiftFleet as X+import Stratosphere.Resources.IAMAccessKey as X+import Stratosphere.Resources.IAMGroup as X+import Stratosphere.Resources.IAMInstanceProfile as X+import Stratosphere.Resources.IAMManagedPolicy as X+import Stratosphere.Resources.IAMPolicy as X+import Stratosphere.Resources.IAMRole as X+import Stratosphere.Resources.IAMUser as X+import Stratosphere.Resources.IAMUserToGroupAddition as X+import Stratosphere.Resources.IoTCertificate as X+import Stratosphere.Resources.IoTPolicy as X+import Stratosphere.Resources.IoTPolicyPrincipalAttachment as X+import Stratosphere.Resources.IoTThing as X+import Stratosphere.Resources.IoTThingPrincipalAttachment as X+import Stratosphere.Resources.IoTTopicRule as X+import Stratosphere.Resources.KMSAlias as X+import Stratosphere.Resources.KMSKey as X+import Stratosphere.Resources.KinesisStream as X+import Stratosphere.Resources.KinesisFirehoseDeliveryStream as X+import Stratosphere.Resources.LambdaAlias as X+import Stratosphere.Resources.LambdaEventSourceMapping as X+import Stratosphere.Resources.LambdaFunction as X+import Stratosphere.Resources.LambdaPermission as X+import Stratosphere.Resources.LambdaVersion as X+import Stratosphere.Resources.LogsDestination as X+import Stratosphere.Resources.LogsLogGroup as X+import Stratosphere.Resources.LogsLogStream as X+import Stratosphere.Resources.LogsMetricFilter as X+import Stratosphere.Resources.LogsSubscriptionFilter as X+import Stratosphere.Resources.OpsWorksApp as X+import Stratosphere.Resources.OpsWorksElasticLoadBalancerAttachment as X+import Stratosphere.Resources.OpsWorksInstance as X+import Stratosphere.Resources.OpsWorksLayer as X+import Stratosphere.Resources.OpsWorksStack as X+import Stratosphere.Resources.OpsWorksUserProfile as X+import Stratosphere.Resources.OpsWorksVolume as X+import Stratosphere.Resources.RDSDBCluster as X+import Stratosphere.Resources.RDSDBClusterParameterGroup as X+import Stratosphere.Resources.RDSDBInstance as X+import Stratosphere.Resources.RDSDBParameterGroup as X+import Stratosphere.Resources.RDSDBSecurityGroup as X+import Stratosphere.Resources.RDSDBSecurityGroupIngress as X+import Stratosphere.Resources.RDSDBSubnetGroup as X+import Stratosphere.Resources.RDSEventSubscription as X+import Stratosphere.Resources.RDSOptionGroup as X+import Stratosphere.Resources.RedshiftCluster as X+import Stratosphere.Resources.RedshiftClusterParameterGroup as X+import Stratosphere.Resources.RedshiftClusterSecurityGroup as X+import Stratosphere.Resources.RedshiftClusterSecurityGroupIngress as X+import Stratosphere.Resources.RedshiftClusterSubnetGroup as X+import Stratosphere.Resources.Route53HealthCheck as X+import Stratosphere.Resources.Route53HostedZone as X+import Stratosphere.Resources.Route53RecordSet as X+import Stratosphere.Resources.Route53RecordSetGroup as X+import Stratosphere.Resources.S3Bucket as X+import Stratosphere.Resources.S3BucketPolicy as X+import Stratosphere.Resources.SDBDomain as X+import Stratosphere.Resources.SNSSubscription as X+import Stratosphere.Resources.SNSTopic as X+import Stratosphere.Resources.SNSTopicPolicy as X+import Stratosphere.Resources.SQSQueue as X+import Stratosphere.Resources.SQSQueuePolicy as X+import Stratosphere.Resources.SSMAssociation as X+import Stratosphere.Resources.SSMDocument as X+import Stratosphere.Resources.WAFByteMatchSet as X+import Stratosphere.Resources.WAFIPSet as X+import Stratosphere.Resources.WAFRule as X+import Stratosphere.Resources.WAFSizeConstraintSet as X+import Stratosphere.Resources.WAFSqlInjectionMatchSet as X+import Stratosphere.Resources.WAFWebACL as X+import Stratosphere.Resources.WAFXssMatchSet as X+import Stratosphere.Resources.WorkSpacesWorkspace as X+import Stratosphere.ResourceProperties.ApiGatewayApiKeyStageKey as X+import Stratosphere.ResourceProperties.ApiGatewayDeploymentMethodSetting as X+import Stratosphere.ResourceProperties.ApiGatewayDeploymentStageDescription as X+import Stratosphere.ResourceProperties.ApiGatewayMethodIntegration as X+import Stratosphere.ResourceProperties.ApiGatewayMethodIntegrationResponse as X+import Stratosphere.ResourceProperties.ApiGatewayMethodMethodResponse as X+import Stratosphere.ResourceProperties.ApiGatewayRestApiS3Location as X+import Stratosphere.ResourceProperties.ApiGatewayStageMethodSetting as X+import Stratosphere.ResourceProperties.ApiGatewayUsagePlanApiStage as X+import Stratosphere.ResourceProperties.ApiGatewayUsagePlanQuotaSettings as X+import Stratosphere.ResourceProperties.ApiGatewayUsagePlanThrottleSettings as X+import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepAdjustment as X+import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration as X+import Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupMetricsCollection as X+import Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupNotificationConfigurations as X+import Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupTagProperty as X+import Stratosphere.ResourceProperties.AutoScalingLaunchConfigurationBlockDevice as X+import Stratosphere.ResourceProperties.AutoScalingLaunchConfigurationBlockDeviceMapping as X+import Stratosphere.ResourceProperties.AutoScalingScalingPolicyStepAdjustment as X+import Stratosphere.ResourceProperties.CertificateManagerCertificateDomainValidationOption as X+import Stratosphere.ResourceProperties.CloudFrontDistributionCacheBehavior as X+import Stratosphere.ResourceProperties.CloudFrontDistributionCookies as X+import Stratosphere.ResourceProperties.CloudFrontDistributionCustomErrorResponse as X+import Stratosphere.ResourceProperties.CloudFrontDistributionCustomOriginConfig as X+import Stratosphere.ResourceProperties.CloudFrontDistributionDefaultCacheBehavior as X+import Stratosphere.ResourceProperties.CloudFrontDistributionDistributionConfig as X+import Stratosphere.ResourceProperties.CloudFrontDistributionForwardedValues as X+import Stratosphere.ResourceProperties.CloudFrontDistributionGeoRestriction as X+import Stratosphere.ResourceProperties.CloudFrontDistributionLogging as X+import Stratosphere.ResourceProperties.CloudFrontDistributionOrigin as X+import Stratosphere.ResourceProperties.CloudFrontDistributionOriginCustomHeader as X+import Stratosphere.ResourceProperties.CloudFrontDistributionRestrictions as X+import Stratosphere.ResourceProperties.CloudFrontDistributionS3OriginConfig as X+import Stratosphere.ResourceProperties.CloudFrontDistributionViewerCertificate as X+import Stratosphere.ResourceProperties.CloudWatchAlarmDimension as X+import Stratosphere.ResourceProperties.CodeBuildProjectArtifacts as X+import Stratosphere.ResourceProperties.CodeBuildProjectEnvironment as X+import Stratosphere.ResourceProperties.CodeBuildProjectEnvironmentVariable as X+import Stratosphere.ResourceProperties.CodeBuildProjectSource as X+import Stratosphere.ResourceProperties.CodeBuildProjectSourceAuth as X+import Stratosphere.ResourceProperties.CodeCommitRepositoryRepositoryTrigger as X+import Stratosphere.ResourceProperties.CodeDeployDeploymentConfigMinimumHealthyHosts as X+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupDeployment as X+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupEc2TagFilter as X+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupGitHubLocation as X+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupOnPremisesInstanceTagFilter as X+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupRevision as X+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupS3Location as X+import Stratosphere.ResourceProperties.CodePipelineCustomActionTypeArtifactDetails as X+import Stratosphere.ResourceProperties.CodePipelineCustomActionTypeConfigurationProperties as X+import Stratosphere.ResourceProperties.CodePipelineCustomActionTypeSettings as X+import Stratosphere.ResourceProperties.CodePipelinePipelineActionDeclaration as X+import Stratosphere.ResourceProperties.CodePipelinePipelineActionTypeId as X+import Stratosphere.ResourceProperties.CodePipelinePipelineArtifactStore as X+import Stratosphere.ResourceProperties.CodePipelinePipelineBlockerDeclaration as X+import Stratosphere.ResourceProperties.CodePipelinePipelineEncryptionKey as X+import Stratosphere.ResourceProperties.CodePipelinePipelineInputArtifact as X+import Stratosphere.ResourceProperties.CodePipelinePipelineOutputArtifact as X+import Stratosphere.ResourceProperties.CodePipelinePipelineStageDeclaration as X+import Stratosphere.ResourceProperties.CodePipelinePipelineStageTransition as X+import Stratosphere.ResourceProperties.ConfigConfigRuleScope as X+import Stratosphere.ResourceProperties.ConfigConfigRuleSource as X+import Stratosphere.ResourceProperties.ConfigConfigRuleSourceDetail as X+import Stratosphere.ResourceProperties.ConfigConfigurationRecorderRecordingGroup as X+import Stratosphere.ResourceProperties.ConfigDeliveryChannelConfigSnapshotDeliveryProperties as X+import Stratosphere.ResourceProperties.DataPipelinePipelineField as X+import Stratosphere.ResourceProperties.DataPipelinePipelineParameterAttribute as X+import Stratosphere.ResourceProperties.DataPipelinePipelineParameterObject as X+import Stratosphere.ResourceProperties.DataPipelinePipelineParameterValue as X+import Stratosphere.ResourceProperties.DataPipelinePipelinePipelineObject as X+import Stratosphere.ResourceProperties.DataPipelinePipelinePipelineTag as X+import Stratosphere.ResourceProperties.DirectoryServiceMicrosoftADVpcSettings as X+import Stratosphere.ResourceProperties.DirectoryServiceSimpleADVpcSettings as X+import Stratosphere.ResourceProperties.DynamoDBTableAttributeDefinition as X+import Stratosphere.ResourceProperties.DynamoDBTableGlobalSecondaryIndex as X+import Stratosphere.ResourceProperties.DynamoDBTableKeySchema as X+import Stratosphere.ResourceProperties.DynamoDBTableLocalSecondaryIndex as X+import Stratosphere.ResourceProperties.DynamoDBTableProjection as X+import Stratosphere.ResourceProperties.DynamoDBTableProvisionedThroughput as X+import Stratosphere.ResourceProperties.DynamoDBTableStreamSpecification as X+import Stratosphere.ResourceProperties.EC2DHCPOptionsTag as X+import Stratosphere.ResourceProperties.EC2InstanceAssociationParameter as X+import Stratosphere.ResourceProperties.EC2InstanceBlockDeviceMapping as X+import Stratosphere.ResourceProperties.EC2InstanceEbs as X+import Stratosphere.ResourceProperties.EC2InstanceInstanceIpv6Address as X+import Stratosphere.ResourceProperties.EC2InstanceNetworkInterface as X+import Stratosphere.ResourceProperties.EC2InstanceNoDevice as X+import Stratosphere.ResourceProperties.EC2InstancePrivateIpAddressSpecification as X+import Stratosphere.ResourceProperties.EC2InstanceSsmAssociation as X+import Stratosphere.ResourceProperties.EC2InstanceVolume as X+import Stratosphere.ResourceProperties.EC2NetworkAclEntryIcmp as X+import Stratosphere.ResourceProperties.EC2NetworkAclEntryPortRange as X+import Stratosphere.ResourceProperties.EC2NetworkInterfaceInstanceIpv6Address as X+import Stratosphere.ResourceProperties.EC2NetworkInterfacePrivateIpAddressSpecification as X+import Stratosphere.ResourceProperties.EC2SecurityGroupRule as X+import Stratosphere.ResourceProperties.EC2SpotFleetBlockDeviceMappings as X+import Stratosphere.ResourceProperties.EC2SpotFleetEbs as X+import Stratosphere.ResourceProperties.EC2SpotFleetIamInstanceProfile as X+import Stratosphere.ResourceProperties.EC2SpotFleetInstanceIpv6Address as X+import Stratosphere.ResourceProperties.EC2SpotFleetLaunchSpecifications as X+import Stratosphere.ResourceProperties.EC2SpotFleetMonitoring as X+import Stratosphere.ResourceProperties.EC2SpotFleetNetworkInterfaces as X+import Stratosphere.ResourceProperties.EC2SpotFleetPlacement as X+import Stratosphere.ResourceProperties.EC2SpotFleetPrivateIpAddresses as X+import Stratosphere.ResourceProperties.EC2SpotFleetSecurityGroups as X+import Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetRequestConfigData as X+import Stratosphere.ResourceProperties.ECSServiceDeploymentConfiguration as X+import Stratosphere.ResourceProperties.ECSServiceLoadBalancer as X+import Stratosphere.ResourceProperties.ECSTaskDefinitionContainerDefinition as X+import Stratosphere.ResourceProperties.ECSTaskDefinitionHostEntry as X+import Stratosphere.ResourceProperties.ECSTaskDefinitionHostVolumeProperties as X+import Stratosphere.ResourceProperties.ECSTaskDefinitionKeyValuePair as X+import Stratosphere.ResourceProperties.ECSTaskDefinitionLogConfiguration as X+import Stratosphere.ResourceProperties.ECSTaskDefinitionMountPoint as X+import Stratosphere.ResourceProperties.ECSTaskDefinitionPortMapping as X+import Stratosphere.ResourceProperties.ECSTaskDefinitionUlimit as X+import Stratosphere.ResourceProperties.ECSTaskDefinitionVolume as X+import Stratosphere.ResourceProperties.ECSTaskDefinitionVolumeFrom as X+import Stratosphere.ResourceProperties.EFSFileSystemElasticFileSystemTag as X+import Stratosphere.ResourceProperties.EMRClusterApplication as X+import Stratosphere.ResourceProperties.EMRClusterBootstrapActionConfig as X+import Stratosphere.ResourceProperties.EMRClusterConfiguration as X+import Stratosphere.ResourceProperties.EMRClusterEbsBlockDeviceConfig as X+import Stratosphere.ResourceProperties.EMRClusterEbsConfiguration as X+import Stratosphere.ResourceProperties.EMRClusterInstanceGroupConfig as X+import Stratosphere.ResourceProperties.EMRClusterJobFlowInstancesConfig as X+import Stratosphere.ResourceProperties.EMRClusterPlacementType as X+import Stratosphere.ResourceProperties.EMRClusterScriptBootstrapActionConfig as X+import Stratosphere.ResourceProperties.EMRClusterVolumeSpecification as X+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigConfiguration as X+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigEbsBlockDeviceConfig as X+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigEbsConfiguration as X+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigVolumeSpecification as X+import Stratosphere.ResourceProperties.EMRStepHadoopJarStepConfig as X+import Stratosphere.ResourceProperties.EMRStepKeyValue as X+import Stratosphere.ResourceProperties.ElastiCacheReplicationGroupNodeGroupConfiguration as X+import Stratosphere.ResourceProperties.ElasticBeanstalkApplicationVersionSourceBundle as X+import Stratosphere.ResourceProperties.ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting as X+import Stratosphere.ResourceProperties.ElasticBeanstalkConfigurationTemplateSourceConfiguration as X+import Stratosphere.ResourceProperties.ElasticBeanstalkEnvironmentOptionSettings as X+import Stratosphere.ResourceProperties.ElasticBeanstalkEnvironmentTier as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerAccessLoggingPolicy as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerConnectionSettings as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerHealthCheck as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerListeners as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerPolicies as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerAction as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerCertificate as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerRuleAction as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerRuleRuleCondition as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupMatcher as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupTargetDescription as X+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupTargetGroupAttribute as X+import Stratosphere.ResourceProperties.ElasticsearchDomainEBSOptions as X+import Stratosphere.ResourceProperties.ElasticsearchDomainElasticsearchClusterConfig as X+import Stratosphere.ResourceProperties.ElasticsearchDomainSnapshotOptions as X+import Stratosphere.ResourceProperties.EventsRuleTarget as X+import Stratosphere.ResourceProperties.GameLiftAliasRoutingStrategy as X+import Stratosphere.ResourceProperties.GameLiftBuildS3Location as X+import Stratosphere.ResourceProperties.GameLiftFleetIpPermission as X+import Stratosphere.ResourceProperties.IAMGroupPolicy as X+import Stratosphere.ResourceProperties.IAMRolePolicy as X+import Stratosphere.ResourceProperties.IAMUserLoginProfile as X+import Stratosphere.ResourceProperties.IAMUserPolicy as X+import Stratosphere.ResourceProperties.IoTThingAttributePayload as X+import Stratosphere.ResourceProperties.IoTTopicRuleAction as X+import Stratosphere.ResourceProperties.IoTTopicRuleCloudwatchAlarmAction as X+import Stratosphere.ResourceProperties.IoTTopicRuleCloudwatchMetricAction as X+import Stratosphere.ResourceProperties.IoTTopicRuleDynamoDBAction as X+import Stratosphere.ResourceProperties.IoTTopicRuleElasticsearchAction as X+import Stratosphere.ResourceProperties.IoTTopicRuleFirehoseAction as X+import Stratosphere.ResourceProperties.IoTTopicRuleKinesisAction as X+import Stratosphere.ResourceProperties.IoTTopicRuleLambdaAction as X+import Stratosphere.ResourceProperties.IoTTopicRuleRepublishAction as X+import Stratosphere.ResourceProperties.IoTTopicRuleS3Action as X+import Stratosphere.ResourceProperties.IoTTopicRuleSnsAction as X+import Stratosphere.ResourceProperties.IoTTopicRuleSqsAction as X+import Stratosphere.ResourceProperties.IoTTopicRuleTopicRulePayload as X+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamBufferingHints as X+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions as X+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamCopyCommand as X+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamElasticsearchBufferingHints as X+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration as X+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamElasticsearchRetryOptions as X+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamEncryptionConfiguration as X+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamKMSEncryptionConfig as X+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration as X+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamS3DestinationConfiguration as X+import Stratosphere.ResourceProperties.LambdaFunctionCode as X+import Stratosphere.ResourceProperties.LambdaFunctionEnvironment as X+import Stratosphere.ResourceProperties.LambdaFunctionVpcConfig as X+import Stratosphere.ResourceProperties.LogsMetricFilterMetricTransformation as X+import Stratosphere.ResourceProperties.OpsWorksAppDataSource as X+import Stratosphere.ResourceProperties.OpsWorksAppEnvironmentVariable as X+import Stratosphere.ResourceProperties.OpsWorksAppSource as X+import Stratosphere.ResourceProperties.OpsWorksAppSslConfiguration as X+import Stratosphere.ResourceProperties.OpsWorksInstanceBlockDeviceMapping as X+import Stratosphere.ResourceProperties.OpsWorksInstanceEbsBlockDevice as X+import Stratosphere.ResourceProperties.OpsWorksInstanceTimeBasedAutoScaling as X+import Stratosphere.ResourceProperties.OpsWorksLayerAutoScalingThresholds as X+import Stratosphere.ResourceProperties.OpsWorksLayerLifecycleEventConfiguration as X+import Stratosphere.ResourceProperties.OpsWorksLayerLoadBasedAutoScaling as X+import Stratosphere.ResourceProperties.OpsWorksLayerRecipes as X+import Stratosphere.ResourceProperties.OpsWorksLayerShutdownEventConfiguration as X+import Stratosphere.ResourceProperties.OpsWorksLayerVolumeConfiguration as X+import Stratosphere.ResourceProperties.OpsWorksStackChefConfiguration as X+import Stratosphere.ResourceProperties.OpsWorksStackElasticIp as X+import Stratosphere.ResourceProperties.OpsWorksStackRdsDbInstance as X+import Stratosphere.ResourceProperties.OpsWorksStackSource as X+import Stratosphere.ResourceProperties.OpsWorksStackStackConfigurationManager as X+import Stratosphere.ResourceProperties.RDSDBSecurityGroupIngressProperty as X+import Stratosphere.ResourceProperties.RDSOptionGroupOptionConfiguration as X+import Stratosphere.ResourceProperties.RDSOptionGroupOptionSetting as X+import Stratosphere.ResourceProperties.RedshiftClusterParameterGroupParameter as X+import Stratosphere.ResourceProperties.Route53HealthCheckHealthCheckConfig as X+import Stratosphere.ResourceProperties.Route53HealthCheckHealthCheckTag as X+import Stratosphere.ResourceProperties.Route53HostedZoneHostedZoneConfig as X+import Stratosphere.ResourceProperties.Route53HostedZoneHostedZoneTag as X+import Stratosphere.ResourceProperties.Route53HostedZoneVPC as X+import Stratosphere.ResourceProperties.Route53RecordSetAliasTarget as X+import Stratosphere.ResourceProperties.Route53RecordSetGeoLocation as X+import Stratosphere.ResourceProperties.Route53RecordSetGroupAliasTarget as X+import Stratosphere.ResourceProperties.Route53RecordSetGroupGeoLocation as X+import Stratosphere.ResourceProperties.Route53RecordSetGroupRecordSet as X+import Stratosphere.ResourceProperties.S3BucketCorsConfiguration as X+import Stratosphere.ResourceProperties.S3BucketCorsRule as X+import Stratosphere.ResourceProperties.S3BucketFilterRule as X+import Stratosphere.ResourceProperties.S3BucketLambdaConfiguration as X+import Stratosphere.ResourceProperties.S3BucketLifecycleConfiguration as X+import Stratosphere.ResourceProperties.S3BucketLoggingConfiguration as X+import Stratosphere.ResourceProperties.S3BucketNoncurrentVersionTransition as X+import Stratosphere.ResourceProperties.S3BucketNotificationConfiguration as X+import Stratosphere.ResourceProperties.S3BucketNotificationFilter as X+import Stratosphere.ResourceProperties.S3BucketQueueConfiguration as X+import Stratosphere.ResourceProperties.S3BucketRedirectAllRequestsTo as X+import Stratosphere.ResourceProperties.S3BucketRedirectRule as X+import Stratosphere.ResourceProperties.S3BucketReplicationConfiguration as X+import Stratosphere.ResourceProperties.S3BucketReplicationDestination as X+import Stratosphere.ResourceProperties.S3BucketReplicationRule as X+import Stratosphere.ResourceProperties.S3BucketRoutingRule as X+import Stratosphere.ResourceProperties.S3BucketRoutingRuleCondition as X+import Stratosphere.ResourceProperties.S3BucketRule as X+import Stratosphere.ResourceProperties.S3BucketS3KeyFilter as X+import Stratosphere.ResourceProperties.S3BucketTopicConfiguration as X+import Stratosphere.ResourceProperties.S3BucketTransition as X+import Stratosphere.ResourceProperties.S3BucketVersioningConfiguration as X+import Stratosphere.ResourceProperties.S3BucketWebsiteConfiguration as X+import Stratosphere.ResourceProperties.SNSTopicSubscription as X+import Stratosphere.ResourceProperties.SSMAssociationParameterValues as X+import Stratosphere.ResourceProperties.SSMAssociationTarget as X+import Stratosphere.ResourceProperties.WAFByteMatchSetByteMatchTuple as X+import Stratosphere.ResourceProperties.WAFByteMatchSetFieldToMatch as X+import Stratosphere.ResourceProperties.WAFIPSetIPSetDescriptor as X+import Stratosphere.ResourceProperties.WAFRulePredicate as X+import Stratosphere.ResourceProperties.WAFSizeConstraintSetFieldToMatch as X+import Stratosphere.ResourceProperties.WAFSizeConstraintSetSizeConstraint as X+import Stratosphere.ResourceProperties.WAFSqlInjectionMatchSetFieldToMatch as X+import Stratosphere.ResourceProperties.WAFSqlInjectionMatchSetSqlInjectionMatchTuple as X+import Stratosphere.ResourceProperties.WAFWebACLActivatedRule as X+import Stratosphere.ResourceProperties.WAFWebACLWafAction as X+import Stratosphere.ResourceProperties.WAFXssMatchSetFieldToMatch as X+import Stratosphere.ResourceProperties.WAFXssMatchSetXssMatchTuple as X+import Stratosphere.ResourceProperties.Tag as X++import Stratosphere.ResourceAttributes.AutoScalingReplacingUpdatePolicy as X+import Stratosphere.ResourceAttributes.AutoScalingRollingUpdatePolicy as X+import Stratosphere.ResourceAttributes.AutoScalingScheduledActionPolicy as X+import Stratosphere.ResourceAttributes.CreationPolicy as X+import Stratosphere.ResourceAttributes.ResourceSignal as X+import Stratosphere.ResourceAttributes.UpdatePolicy as X+import Stratosphere.Helpers+import Stratosphere.Values++data ResourceProperties+  = ApiGatewayAccountProperties ApiGatewayAccount+  | ApiGatewayApiKeyProperties ApiGatewayApiKey+  | ApiGatewayAuthorizerProperties ApiGatewayAuthorizer+  | ApiGatewayBasePathMappingProperties ApiGatewayBasePathMapping+  | ApiGatewayClientCertificateProperties ApiGatewayClientCertificate+  | ApiGatewayDeploymentProperties ApiGatewayDeployment+  | ApiGatewayMethodProperties ApiGatewayMethod+  | ApiGatewayModelProperties ApiGatewayModel+  | ApiGatewayResourceProperties ApiGatewayResource+  | ApiGatewayRestApiProperties ApiGatewayRestApi+  | ApiGatewayStageProperties ApiGatewayStage+  | ApiGatewayUsagePlanProperties ApiGatewayUsagePlan+  | ApplicationAutoScalingScalableTargetProperties ApplicationAutoScalingScalableTarget+  | ApplicationAutoScalingScalingPolicyProperties ApplicationAutoScalingScalingPolicy+  | AutoScalingAutoScalingGroupProperties AutoScalingAutoScalingGroup+  | AutoScalingLaunchConfigurationProperties AutoScalingLaunchConfiguration+  | AutoScalingLifecycleHookProperties AutoScalingLifecycleHook+  | AutoScalingScalingPolicyProperties AutoScalingScalingPolicy+  | AutoScalingScheduledActionProperties AutoScalingScheduledAction+  | CertificateManagerCertificateProperties CertificateManagerCertificate+  | CloudFormationCustomResourceProperties CloudFormationCustomResource+  | CloudFormationStackProperties CloudFormationStack+  | CloudFormationWaitConditionProperties CloudFormationWaitCondition+  | CloudFormationWaitConditionHandleProperties CloudFormationWaitConditionHandle+  | CloudFrontDistributionProperties CloudFrontDistribution+  | CloudTrailTrailProperties CloudTrailTrail+  | CloudWatchAlarmProperties CloudWatchAlarm+  | CodeBuildProjectProperties CodeBuildProject+  | CodeCommitRepositoryProperties CodeCommitRepository+  | CodeDeployApplicationProperties CodeDeployApplication+  | CodeDeployDeploymentConfigProperties CodeDeployDeploymentConfig+  | CodeDeployDeploymentGroupProperties CodeDeployDeploymentGroup+  | CodePipelineCustomActionTypeProperties CodePipelineCustomActionType+  | CodePipelinePipelineProperties CodePipelinePipeline+  | ConfigConfigRuleProperties ConfigConfigRule+  | ConfigConfigurationRecorderProperties ConfigConfigurationRecorder+  | ConfigDeliveryChannelProperties ConfigDeliveryChannel+  | DataPipelinePipelineProperties DataPipelinePipeline+  | DirectoryServiceMicrosoftADProperties DirectoryServiceMicrosoftAD+  | DirectoryServiceSimpleADProperties DirectoryServiceSimpleAD+  | DynamoDBTableProperties DynamoDBTable+  | EC2CustomerGatewayProperties EC2CustomerGateway+  | EC2DHCPOptionsProperties EC2DHCPOptions+  | EC2EIPProperties EC2EIP+  | EC2EIPAssociationProperties EC2EIPAssociation+  | EC2FlowLogProperties EC2FlowLog+  | EC2HostProperties EC2Host+  | EC2InstanceProperties EC2Instance+  | EC2InternetGatewayProperties EC2InternetGateway+  | EC2NatGatewayProperties EC2NatGateway+  | EC2NetworkAclProperties EC2NetworkAcl+  | EC2NetworkAclEntryProperties EC2NetworkAclEntry+  | EC2NetworkInterfaceProperties EC2NetworkInterface+  | EC2NetworkInterfaceAttachmentProperties EC2NetworkInterfaceAttachment+  | EC2PlacementGroupProperties EC2PlacementGroup+  | EC2RouteProperties EC2Route+  | EC2RouteTableProperties EC2RouteTable+  | EC2SecurityGroupProperties EC2SecurityGroup+  | EC2SecurityGroupEgressProperties EC2SecurityGroupEgress+  | EC2SecurityGroupIngressProperties EC2SecurityGroupIngress+  | EC2SpotFleetProperties EC2SpotFleet+  | EC2SubnetProperties EC2Subnet+  | EC2SubnetCidrBlockProperties EC2SubnetCidrBlock+  | EC2SubnetNetworkAclAssociationProperties EC2SubnetNetworkAclAssociation+  | EC2SubnetRouteTableAssociationProperties EC2SubnetRouteTableAssociation+  | EC2VPCProperties EC2VPC+  | EC2VPCCidrBlockProperties EC2VPCCidrBlock+  | EC2VPCDHCPOptionsAssociationProperties EC2VPCDHCPOptionsAssociation+  | EC2VPCEndpointProperties EC2VPCEndpoint+  | EC2VPCGatewayAttachmentProperties EC2VPCGatewayAttachment+  | EC2VPCPeeringConnectionProperties EC2VPCPeeringConnection+  | EC2VPNConnectionProperties EC2VPNConnection+  | EC2VPNConnectionRouteProperties EC2VPNConnectionRoute+  | EC2VPNGatewayProperties EC2VPNGateway+  | EC2VPNGatewayRoutePropagationProperties EC2VPNGatewayRoutePropagation+  | EC2VolumeProperties EC2Volume+  | EC2VolumeAttachmentProperties EC2VolumeAttachment+  | ECRRepositoryProperties ECRRepository+  | ECSClusterProperties ECSCluster+  | ECSServiceProperties ECSService+  | ECSTaskDefinitionProperties ECSTaskDefinition+  | EFSFileSystemProperties EFSFileSystem+  | EFSMountTargetProperties EFSMountTarget+  | EMRClusterProperties EMRCluster+  | EMRInstanceGroupConfigProperties EMRInstanceGroupConfig+  | EMRStepProperties EMRStep+  | ElastiCacheCacheClusterProperties ElastiCacheCacheCluster+  | ElastiCacheParameterGroupProperties ElastiCacheParameterGroup+  | ElastiCacheReplicationGroupProperties ElastiCacheReplicationGroup+  | ElastiCacheSecurityGroupProperties ElastiCacheSecurityGroup+  | ElastiCacheSecurityGroupIngressProperties ElastiCacheSecurityGroupIngress+  | ElastiCacheSubnetGroupProperties ElastiCacheSubnetGroup+  | ElasticBeanstalkApplicationProperties ElasticBeanstalkApplication+  | ElasticBeanstalkApplicationVersionProperties ElasticBeanstalkApplicationVersion+  | ElasticBeanstalkConfigurationTemplateProperties ElasticBeanstalkConfigurationTemplate+  | ElasticBeanstalkEnvironmentProperties ElasticBeanstalkEnvironment+  | ElasticLoadBalancingLoadBalancerProperties ElasticLoadBalancingLoadBalancer+  | ElasticLoadBalancingV2ListenerProperties ElasticLoadBalancingV2Listener+  | ElasticLoadBalancingV2ListenerRuleProperties ElasticLoadBalancingV2ListenerRule+  | ElasticLoadBalancingV2LoadBalancerProperties ElasticLoadBalancingV2LoadBalancer+  | ElasticLoadBalancingV2TargetGroupProperties ElasticLoadBalancingV2TargetGroup+  | ElasticsearchDomainProperties ElasticsearchDomain+  | EventsRuleProperties EventsRule+  | GameLiftAliasProperties GameLiftAlias+  | GameLiftBuildProperties GameLiftBuild+  | GameLiftFleetProperties GameLiftFleet+  | IAMAccessKeyProperties IAMAccessKey+  | IAMGroupProperties IAMGroup+  | IAMInstanceProfileProperties IAMInstanceProfile+  | IAMManagedPolicyProperties IAMManagedPolicy+  | IAMPolicyProperties IAMPolicy+  | IAMRoleProperties IAMRole+  | IAMUserProperties IAMUser+  | IAMUserToGroupAdditionProperties IAMUserToGroupAddition+  | IoTCertificateProperties IoTCertificate+  | IoTPolicyProperties IoTPolicy+  | IoTPolicyPrincipalAttachmentProperties IoTPolicyPrincipalAttachment+  | IoTThingProperties IoTThing+  | IoTThingPrincipalAttachmentProperties IoTThingPrincipalAttachment+  | IoTTopicRuleProperties IoTTopicRule+  | KMSAliasProperties KMSAlias+  | KMSKeyProperties KMSKey+  | KinesisStreamProperties KinesisStream+  | KinesisFirehoseDeliveryStreamProperties KinesisFirehoseDeliveryStream+  | LambdaAliasProperties LambdaAlias+  | LambdaEventSourceMappingProperties LambdaEventSourceMapping+  | LambdaFunctionProperties LambdaFunction+  | LambdaPermissionProperties LambdaPermission+  | LambdaVersionProperties LambdaVersion+  | LogsDestinationProperties LogsDestination+  | LogsLogGroupProperties LogsLogGroup+  | LogsLogStreamProperties LogsLogStream+  | LogsMetricFilterProperties LogsMetricFilter+  | LogsSubscriptionFilterProperties LogsSubscriptionFilter+  | OpsWorksAppProperties OpsWorksApp+  | OpsWorksElasticLoadBalancerAttachmentProperties OpsWorksElasticLoadBalancerAttachment+  | OpsWorksInstanceProperties OpsWorksInstance+  | OpsWorksLayerProperties OpsWorksLayer+  | OpsWorksStackProperties OpsWorksStack+  | OpsWorksUserProfileProperties OpsWorksUserProfile+  | OpsWorksVolumeProperties OpsWorksVolume+  | RDSDBClusterProperties RDSDBCluster+  | RDSDBClusterParameterGroupProperties RDSDBClusterParameterGroup+  | RDSDBInstanceProperties RDSDBInstance+  | RDSDBParameterGroupProperties RDSDBParameterGroup+  | RDSDBSecurityGroupProperties RDSDBSecurityGroup+  | RDSDBSecurityGroupIngressProperties RDSDBSecurityGroupIngress+  | RDSDBSubnetGroupProperties RDSDBSubnetGroup+  | RDSEventSubscriptionProperties RDSEventSubscription+  | RDSOptionGroupProperties RDSOptionGroup+  | RedshiftClusterProperties RedshiftCluster+  | RedshiftClusterParameterGroupProperties RedshiftClusterParameterGroup+  | RedshiftClusterSecurityGroupProperties RedshiftClusterSecurityGroup+  | RedshiftClusterSecurityGroupIngressProperties RedshiftClusterSecurityGroupIngress+  | RedshiftClusterSubnetGroupProperties RedshiftClusterSubnetGroup+  | Route53HealthCheckProperties Route53HealthCheck+  | Route53HostedZoneProperties Route53HostedZone+  | Route53RecordSetProperties Route53RecordSet+  | Route53RecordSetGroupProperties Route53RecordSetGroup+  | S3BucketProperties S3Bucket+  | S3BucketPolicyProperties S3BucketPolicy+  | SDBDomainProperties SDBDomain+  | SNSSubscriptionProperties SNSSubscription+  | SNSTopicProperties SNSTopic+  | SNSTopicPolicyProperties SNSTopicPolicy+  | SQSQueueProperties SQSQueue+  | SQSQueuePolicyProperties SQSQueuePolicy+  | SSMAssociationProperties SSMAssociation+  | SSMDocumentProperties SSMDocument+  | WAFByteMatchSetProperties WAFByteMatchSet+  | WAFIPSetProperties WAFIPSet+  | WAFRuleProperties WAFRule+  | WAFSizeConstraintSetProperties WAFSizeConstraintSet+  | WAFSqlInjectionMatchSetProperties WAFSqlInjectionMatchSet+  | WAFWebACLProperties WAFWebACL+  | WAFXssMatchSetProperties WAFXssMatchSet+  | WorkSpacesWorkspaceProperties WorkSpacesWorkspace++  deriving (Show)++data DeletionPolicy+  = Delete+  | Retain+  | Snapshot+  deriving (Show, Generic)++instance ToJSON DeletionPolicy where+instance FromJSON DeletionPolicy where++data Resource =+  Resource+  { resourceResName :: T.Text+  , resourceProperties :: ResourceProperties+  , resourceDeletionPolicy :: Maybe DeletionPolicy+  , resourceResCreationPolicy :: Maybe CreationPolicy+  , resourceResUpdatePolicy :: Maybe UpdatePolicy+  , resourceDependsOn :: Maybe [T.Text]+  } deriving (Show)++instance ToRef Resource b where+  toRef r = Ref (resourceResName r)++-- | Convenient constructor for 'Resource' with required arguments.+resource+  :: T.Text -- ^ Logical name+  -> ResourceProperties+  -> Resource+resource rn rp =+  Resource+  { resourceResName = rn+  , resourceProperties = rp+  , resourceDeletionPolicy = Nothing+  , resourceResCreationPolicy = Nothing+  , resourceResUpdatePolicy = Nothing+  , resourceDependsOn = Nothing+  }++$(makeFields ''Resource)++resourceToJSON :: Resource -> Value+resourceToJSON (Resource _ props dp cp up deps) =+    object $ resourcePropertiesJSON props ++ catMaybes+    [ maybeField "DeletionPolicy" dp+    , maybeField "CreationPolicy" cp+    , maybeField "UpdatePolicy" up+    , maybeField "DependsOn" deps+    ]++resourcePropertiesJSON :: ResourceProperties -> [Pair]+resourcePropertiesJSON (ApiGatewayAccountProperties x) =+  [ "Type" .= ("AWS::ApiGateway::Account" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ApiGatewayApiKeyProperties x) =+  [ "Type" .= ("AWS::ApiGateway::ApiKey" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ApiGatewayAuthorizerProperties x) =+  [ "Type" .= ("AWS::ApiGateway::Authorizer" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ApiGatewayBasePathMappingProperties x) =+  [ "Type" .= ("AWS::ApiGateway::BasePathMapping" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ApiGatewayClientCertificateProperties x) =+  [ "Type" .= ("AWS::ApiGateway::ClientCertificate" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ApiGatewayDeploymentProperties x) =+  [ "Type" .= ("AWS::ApiGateway::Deployment" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ApiGatewayMethodProperties x) =+  [ "Type" .= ("AWS::ApiGateway::Method" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ApiGatewayModelProperties x) =+  [ "Type" .= ("AWS::ApiGateway::Model" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ApiGatewayResourceProperties x) =+  [ "Type" .= ("AWS::ApiGateway::Resource" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ApiGatewayRestApiProperties x) =+  [ "Type" .= ("AWS::ApiGateway::RestApi" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ApiGatewayStageProperties x) =+  [ "Type" .= ("AWS::ApiGateway::Stage" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ApiGatewayUsagePlanProperties x) =+  [ "Type" .= ("AWS::ApiGateway::UsagePlan" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ApplicationAutoScalingScalableTargetProperties x) =+  [ "Type" .= ("AWS::ApplicationAutoScaling::ScalableTarget" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ApplicationAutoScalingScalingPolicyProperties x) =+  [ "Type" .= ("AWS::ApplicationAutoScaling::ScalingPolicy" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (AutoScalingAutoScalingGroupProperties x) =+  [ "Type" .= ("AWS::AutoScaling::AutoScalingGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (AutoScalingLaunchConfigurationProperties x) =+  [ "Type" .= ("AWS::AutoScaling::LaunchConfiguration" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (AutoScalingLifecycleHookProperties x) =+  [ "Type" .= ("AWS::AutoScaling::LifecycleHook" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (AutoScalingScalingPolicyProperties x) =+  [ "Type" .= ("AWS::AutoScaling::ScalingPolicy" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (AutoScalingScheduledActionProperties x) =+  [ "Type" .= ("AWS::AutoScaling::ScheduledAction" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CertificateManagerCertificateProperties x) =+  [ "Type" .= ("AWS::CertificateManager::Certificate" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CloudFormationCustomResourceProperties x) =+  [ "Type" .= ("AWS::CloudFormation::CustomResource" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CloudFormationStackProperties x) =+  [ "Type" .= ("AWS::CloudFormation::Stack" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CloudFormationWaitConditionProperties x) =+  [ "Type" .= ("AWS::CloudFormation::WaitCondition" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CloudFormationWaitConditionHandleProperties x) =+  [ "Type" .= ("AWS::CloudFormation::WaitConditionHandle" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CloudFrontDistributionProperties x) =+  [ "Type" .= ("AWS::CloudFront::Distribution" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CloudTrailTrailProperties x) =+  [ "Type" .= ("AWS::CloudTrail::Trail" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CloudWatchAlarmProperties x) =+  [ "Type" .= ("AWS::CloudWatch::Alarm" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CodeBuildProjectProperties x) =+  [ "Type" .= ("AWS::CodeBuild::Project" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CodeCommitRepositoryProperties x) =+  [ "Type" .= ("AWS::CodeCommit::Repository" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CodeDeployApplicationProperties x) =+  [ "Type" .= ("AWS::CodeDeploy::Application" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CodeDeployDeploymentConfigProperties x) =+  [ "Type" .= ("AWS::CodeDeploy::DeploymentConfig" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CodeDeployDeploymentGroupProperties x) =+  [ "Type" .= ("AWS::CodeDeploy::DeploymentGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CodePipelineCustomActionTypeProperties x) =+  [ "Type" .= ("AWS::CodePipeline::CustomActionType" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CodePipelinePipelineProperties x) =+  [ "Type" .= ("AWS::CodePipeline::Pipeline" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ConfigConfigRuleProperties x) =+  [ "Type" .= ("AWS::Config::ConfigRule" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ConfigConfigurationRecorderProperties x) =+  [ "Type" .= ("AWS::Config::ConfigurationRecorder" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ConfigDeliveryChannelProperties x) =+  [ "Type" .= ("AWS::Config::DeliveryChannel" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (DataPipelinePipelineProperties x) =+  [ "Type" .= ("AWS::DataPipeline::Pipeline" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (DirectoryServiceMicrosoftADProperties x) =+  [ "Type" .= ("AWS::DirectoryService::MicrosoftAD" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (DirectoryServiceSimpleADProperties x) =+  [ "Type" .= ("AWS::DirectoryService::SimpleAD" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (DynamoDBTableProperties x) =+  [ "Type" .= ("AWS::DynamoDB::Table" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2CustomerGatewayProperties x) =+  [ "Type" .= ("AWS::EC2::CustomerGateway" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2DHCPOptionsProperties x) =+  [ "Type" .= ("AWS::EC2::DHCPOptions" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2EIPProperties x) =+  [ "Type" .= ("AWS::EC2::EIP" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2EIPAssociationProperties x) =+  [ "Type" .= ("AWS::EC2::EIPAssociation" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2FlowLogProperties x) =+  [ "Type" .= ("AWS::EC2::FlowLog" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2HostProperties x) =+  [ "Type" .= ("AWS::EC2::Host" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2InstanceProperties x) =+  [ "Type" .= ("AWS::EC2::Instance" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2InternetGatewayProperties x) =+  [ "Type" .= ("AWS::EC2::InternetGateway" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2NatGatewayProperties x) =+  [ "Type" .= ("AWS::EC2::NatGateway" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2NetworkAclProperties x) =+  [ "Type" .= ("AWS::EC2::NetworkAcl" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2NetworkAclEntryProperties x) =+  [ "Type" .= ("AWS::EC2::NetworkAclEntry" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2NetworkInterfaceProperties x) =+  [ "Type" .= ("AWS::EC2::NetworkInterface" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2NetworkInterfaceAttachmentProperties x) =+  [ "Type" .= ("AWS::EC2::NetworkInterfaceAttachment" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2PlacementGroupProperties x) =+  [ "Type" .= ("AWS::EC2::PlacementGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2RouteProperties x) =+  [ "Type" .= ("AWS::EC2::Route" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2RouteTableProperties x) =+  [ "Type" .= ("AWS::EC2::RouteTable" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2SecurityGroupProperties x) =+  [ "Type" .= ("AWS::EC2::SecurityGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2SecurityGroupEgressProperties x) =+  [ "Type" .= ("AWS::EC2::SecurityGroupEgress" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2SecurityGroupIngressProperties x) =+  [ "Type" .= ("AWS::EC2::SecurityGroupIngress" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2SpotFleetProperties x) =+  [ "Type" .= ("AWS::EC2::SpotFleet" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2SubnetProperties x) =+  [ "Type" .= ("AWS::EC2::Subnet" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2SubnetCidrBlockProperties x) =+  [ "Type" .= ("AWS::EC2::SubnetCidrBlock" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2SubnetNetworkAclAssociationProperties x) =+  [ "Type" .= ("AWS::EC2::SubnetNetworkAclAssociation" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2SubnetRouteTableAssociationProperties x) =+  [ "Type" .= ("AWS::EC2::SubnetRouteTableAssociation" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2VPCProperties x) =+  [ "Type" .= ("AWS::EC2::VPC" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2VPCCidrBlockProperties x) =+  [ "Type" .= ("AWS::EC2::VPCCidrBlock" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2VPCDHCPOptionsAssociationProperties x) =+  [ "Type" .= ("AWS::EC2::VPCDHCPOptionsAssociation" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2VPCEndpointProperties x) =+  [ "Type" .= ("AWS::EC2::VPCEndpoint" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2VPCGatewayAttachmentProperties x) =+  [ "Type" .= ("AWS::EC2::VPCGatewayAttachment" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2VPCPeeringConnectionProperties x) =+  [ "Type" .= ("AWS::EC2::VPCPeeringConnection" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2VPNConnectionProperties x) =+  [ "Type" .= ("AWS::EC2::VPNConnection" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2VPNConnectionRouteProperties x) =+  [ "Type" .= ("AWS::EC2::VPNConnectionRoute" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2VPNGatewayProperties x) =+  [ "Type" .= ("AWS::EC2::VPNGateway" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2VPNGatewayRoutePropagationProperties x) =+  [ "Type" .= ("AWS::EC2::VPNGatewayRoutePropagation" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2VolumeProperties x) =+  [ "Type" .= ("AWS::EC2::Volume" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EC2VolumeAttachmentProperties x) =+  [ "Type" .= ("AWS::EC2::VolumeAttachment" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ECRRepositoryProperties x) =+  [ "Type" .= ("AWS::ECR::Repository" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ECSClusterProperties x) =+  [ "Type" .= ("AWS::ECS::Cluster" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ECSServiceProperties x) =+  [ "Type" .= ("AWS::ECS::Service" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ECSTaskDefinitionProperties x) =+  [ "Type" .= ("AWS::ECS::TaskDefinition" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EFSFileSystemProperties x) =+  [ "Type" .= ("AWS::EFS::FileSystem" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EFSMountTargetProperties x) =+  [ "Type" .= ("AWS::EFS::MountTarget" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EMRClusterProperties x) =+  [ "Type" .= ("AWS::EMR::Cluster" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EMRInstanceGroupConfigProperties x) =+  [ "Type" .= ("AWS::EMR::InstanceGroupConfig" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EMRStepProperties x) =+  [ "Type" .= ("AWS::EMR::Step" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElastiCacheCacheClusterProperties x) =+  [ "Type" .= ("AWS::ElastiCache::CacheCluster" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElastiCacheParameterGroupProperties x) =+  [ "Type" .= ("AWS::ElastiCache::ParameterGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElastiCacheReplicationGroupProperties x) =+  [ "Type" .= ("AWS::ElastiCache::ReplicationGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElastiCacheSecurityGroupProperties x) =+  [ "Type" .= ("AWS::ElastiCache::SecurityGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElastiCacheSecurityGroupIngressProperties x) =+  [ "Type" .= ("AWS::ElastiCache::SecurityGroupIngress" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElastiCacheSubnetGroupProperties x) =+  [ "Type" .= ("AWS::ElastiCache::SubnetGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElasticBeanstalkApplicationProperties x) =+  [ "Type" .= ("AWS::ElasticBeanstalk::Application" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElasticBeanstalkApplicationVersionProperties x) =+  [ "Type" .= ("AWS::ElasticBeanstalk::ApplicationVersion" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElasticBeanstalkConfigurationTemplateProperties x) =+  [ "Type" .= ("AWS::ElasticBeanstalk::ConfigurationTemplate" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElasticBeanstalkEnvironmentProperties x) =+  [ "Type" .= ("AWS::ElasticBeanstalk::Environment" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElasticLoadBalancingLoadBalancerProperties x) =+  [ "Type" .= ("AWS::ElasticLoadBalancing::LoadBalancer" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElasticLoadBalancingV2ListenerProperties x) =+  [ "Type" .= ("AWS::ElasticLoadBalancingV2::Listener" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElasticLoadBalancingV2ListenerRuleProperties x) =+  [ "Type" .= ("AWS::ElasticLoadBalancingV2::ListenerRule" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElasticLoadBalancingV2LoadBalancerProperties x) =+  [ "Type" .= ("AWS::ElasticLoadBalancingV2::LoadBalancer" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElasticLoadBalancingV2TargetGroupProperties x) =+  [ "Type" .= ("AWS::ElasticLoadBalancingV2::TargetGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (ElasticsearchDomainProperties x) =+  [ "Type" .= ("AWS::Elasticsearch::Domain" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EventsRuleProperties x) =+  [ "Type" .= ("AWS::Events::Rule" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (GameLiftAliasProperties x) =+  [ "Type" .= ("AWS::GameLift::Alias" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (GameLiftBuildProperties x) =+  [ "Type" .= ("AWS::GameLift::Build" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (GameLiftFleetProperties x) =+  [ "Type" .= ("AWS::GameLift::Fleet" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (IAMAccessKeyProperties x) =+  [ "Type" .= ("AWS::IAM::AccessKey" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (IAMGroupProperties x) =+  [ "Type" .= ("AWS::IAM::Group" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (IAMInstanceProfileProperties x) =+  [ "Type" .= ("AWS::IAM::InstanceProfile" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (IAMManagedPolicyProperties x) =+  [ "Type" .= ("AWS::IAM::ManagedPolicy" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (IAMPolicyProperties x) =+  [ "Type" .= ("AWS::IAM::Policy" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (IAMRoleProperties x) =+  [ "Type" .= ("AWS::IAM::Role" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (IAMUserProperties x) =+  [ "Type" .= ("AWS::IAM::User" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (IAMUserToGroupAdditionProperties x) =+  [ "Type" .= ("AWS::IAM::UserToGroupAddition" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (IoTCertificateProperties x) =+  [ "Type" .= ("AWS::IoT::Certificate" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (IoTPolicyProperties x) =+  [ "Type" .= ("AWS::IoT::Policy" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (IoTPolicyPrincipalAttachmentProperties x) =+  [ "Type" .= ("AWS::IoT::PolicyPrincipalAttachment" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (IoTThingProperties x) =+  [ "Type" .= ("AWS::IoT::Thing" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (IoTThingPrincipalAttachmentProperties x) =+  [ "Type" .= ("AWS::IoT::ThingPrincipalAttachment" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (IoTTopicRuleProperties x) =+  [ "Type" .= ("AWS::IoT::TopicRule" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (KMSAliasProperties x) =+  [ "Type" .= ("AWS::KMS::Alias" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (KMSKeyProperties x) =+  [ "Type" .= ("AWS::KMS::Key" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (KinesisStreamProperties x) =+  [ "Type" .= ("AWS::Kinesis::Stream" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (KinesisFirehoseDeliveryStreamProperties x) =+  [ "Type" .= ("AWS::KinesisFirehose::DeliveryStream" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (LambdaAliasProperties x) =+  [ "Type" .= ("AWS::Lambda::Alias" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (LambdaEventSourceMappingProperties x) =+  [ "Type" .= ("AWS::Lambda::EventSourceMapping" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (LambdaFunctionProperties x) =+  [ "Type" .= ("AWS::Lambda::Function" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (LambdaPermissionProperties x) =+  [ "Type" .= ("AWS::Lambda::Permission" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (LambdaVersionProperties x) =+  [ "Type" .= ("AWS::Lambda::Version" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (LogsDestinationProperties x) =+  [ "Type" .= ("AWS::Logs::Destination" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (LogsLogGroupProperties x) =+  [ "Type" .= ("AWS::Logs::LogGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (LogsLogStreamProperties x) =+  [ "Type" .= ("AWS::Logs::LogStream" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (LogsMetricFilterProperties x) =+  [ "Type" .= ("AWS::Logs::MetricFilter" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (LogsSubscriptionFilterProperties x) =+  [ "Type" .= ("AWS::Logs::SubscriptionFilter" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (OpsWorksAppProperties x) =+  [ "Type" .= ("AWS::OpsWorks::App" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (OpsWorksElasticLoadBalancerAttachmentProperties x) =+  [ "Type" .= ("AWS::OpsWorks::ElasticLoadBalancerAttachment" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (OpsWorksInstanceProperties x) =+  [ "Type" .= ("AWS::OpsWorks::Instance" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (OpsWorksLayerProperties x) =+  [ "Type" .= ("AWS::OpsWorks::Layer" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (OpsWorksStackProperties x) =+  [ "Type" .= ("AWS::OpsWorks::Stack" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (OpsWorksUserProfileProperties x) =+  [ "Type" .= ("AWS::OpsWorks::UserProfile" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (OpsWorksVolumeProperties x) =+  [ "Type" .= ("AWS::OpsWorks::Volume" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (RDSDBClusterProperties x) =+  [ "Type" .= ("AWS::RDS::DBCluster" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (RDSDBClusterParameterGroupProperties x) =+  [ "Type" .= ("AWS::RDS::DBClusterParameterGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (RDSDBInstanceProperties x) =+  [ "Type" .= ("AWS::RDS::DBInstance" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (RDSDBParameterGroupProperties x) =+  [ "Type" .= ("AWS::RDS::DBParameterGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (RDSDBSecurityGroupProperties x) =+  [ "Type" .= ("AWS::RDS::DBSecurityGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (RDSDBSecurityGroupIngressProperties x) =+  [ "Type" .= ("AWS::RDS::DBSecurityGroupIngress" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (RDSDBSubnetGroupProperties x) =+  [ "Type" .= ("AWS::RDS::DBSubnetGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (RDSEventSubscriptionProperties x) =+  [ "Type" .= ("AWS::RDS::EventSubscription" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (RDSOptionGroupProperties x) =+  [ "Type" .= ("AWS::RDS::OptionGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (RedshiftClusterProperties x) =+  [ "Type" .= ("AWS::Redshift::Cluster" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (RedshiftClusterParameterGroupProperties x) =+  [ "Type" .= ("AWS::Redshift::ClusterParameterGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (RedshiftClusterSecurityGroupProperties x) =+  [ "Type" .= ("AWS::Redshift::ClusterSecurityGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (RedshiftClusterSecurityGroupIngressProperties x) =+  [ "Type" .= ("AWS::Redshift::ClusterSecurityGroupIngress" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (RedshiftClusterSubnetGroupProperties x) =+  [ "Type" .= ("AWS::Redshift::ClusterSubnetGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (Route53HealthCheckProperties x) =+  [ "Type" .= ("AWS::Route53::HealthCheck" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (Route53HostedZoneProperties x) =+  [ "Type" .= ("AWS::Route53::HostedZone" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (Route53RecordSetProperties x) =+  [ "Type" .= ("AWS::Route53::RecordSet" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (Route53RecordSetGroupProperties x) =+  [ "Type" .= ("AWS::Route53::RecordSetGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (S3BucketProperties x) =+  [ "Type" .= ("AWS::S3::Bucket" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (S3BucketPolicyProperties x) =+  [ "Type" .= ("AWS::S3::BucketPolicy" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (SDBDomainProperties x) =+  [ "Type" .= ("AWS::SDB::Domain" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (SNSSubscriptionProperties x) =+  [ "Type" .= ("AWS::SNS::Subscription" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (SNSTopicProperties x) =+  [ "Type" .= ("AWS::SNS::Topic" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (SNSTopicPolicyProperties x) =+  [ "Type" .= ("AWS::SNS::TopicPolicy" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (SQSQueueProperties x) =+  [ "Type" .= ("AWS::SQS::Queue" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (SQSQueuePolicyProperties x) =+  [ "Type" .= ("AWS::SQS::QueuePolicy" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (SSMAssociationProperties x) =+  [ "Type" .= ("AWS::SSM::Association" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (SSMDocumentProperties x) =+  [ "Type" .= ("AWS::SSM::Document" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WAFByteMatchSetProperties x) =+  [ "Type" .= ("AWS::WAF::ByteMatchSet" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WAFIPSetProperties x) =+  [ "Type" .= ("AWS::WAF::IPSet" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WAFRuleProperties x) =+  [ "Type" .= ("AWS::WAF::Rule" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WAFSizeConstraintSetProperties x) =+  [ "Type" .= ("AWS::WAF::SizeConstraintSet" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WAFSqlInjectionMatchSetProperties x) =+  [ "Type" .= ("AWS::WAF::SqlInjectionMatchSet" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WAFWebACLProperties x) =+  [ "Type" .= ("AWS::WAF::WebACL" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WAFXssMatchSetProperties x) =+  [ "Type" .= ("AWS::WAF::XssMatchSet" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WorkSpacesWorkspaceProperties x) =+  [ "Type" .= ("AWS::WorkSpaces::Workspace" :: String), "Properties" .= toJSON x]+++resourceFromJSON :: T.Text -> Object -> Parser Resource+resourceFromJSON n o =+    do type' <- o .: "Type" :: Parser String+       props <- case type' of+         "AWS::ApiGateway::Account" -> ApiGatewayAccountProperties <$> (o .: "Properties")+         "AWS::ApiGateway::ApiKey" -> ApiGatewayApiKeyProperties <$> (o .: "Properties")+         "AWS::ApiGateway::Authorizer" -> ApiGatewayAuthorizerProperties <$> (o .: "Properties")+         "AWS::ApiGateway::BasePathMapping" -> ApiGatewayBasePathMappingProperties <$> (o .: "Properties")+         "AWS::ApiGateway::ClientCertificate" -> ApiGatewayClientCertificateProperties <$> (o .: "Properties")+         "AWS::ApiGateway::Deployment" -> ApiGatewayDeploymentProperties <$> (o .: "Properties")+         "AWS::ApiGateway::Method" -> ApiGatewayMethodProperties <$> (o .: "Properties")+         "AWS::ApiGateway::Model" -> ApiGatewayModelProperties <$> (o .: "Properties")+         "AWS::ApiGateway::Resource" -> ApiGatewayResourceProperties <$> (o .: "Properties")+         "AWS::ApiGateway::RestApi" -> ApiGatewayRestApiProperties <$> (o .: "Properties")+         "AWS::ApiGateway::Stage" -> ApiGatewayStageProperties <$> (o .: "Properties")+         "AWS::ApiGateway::UsagePlan" -> ApiGatewayUsagePlanProperties <$> (o .: "Properties")+         "AWS::ApplicationAutoScaling::ScalableTarget" -> ApplicationAutoScalingScalableTargetProperties <$> (o .: "Properties")+         "AWS::ApplicationAutoScaling::ScalingPolicy" -> ApplicationAutoScalingScalingPolicyProperties <$> (o .: "Properties")+         "AWS::AutoScaling::AutoScalingGroup" -> AutoScalingAutoScalingGroupProperties <$> (o .: "Properties")+         "AWS::AutoScaling::LaunchConfiguration" -> AutoScalingLaunchConfigurationProperties <$> (o .: "Properties")+         "AWS::AutoScaling::LifecycleHook" -> AutoScalingLifecycleHookProperties <$> (o .: "Properties")+         "AWS::AutoScaling::ScalingPolicy" -> AutoScalingScalingPolicyProperties <$> (o .: "Properties")+         "AWS::AutoScaling::ScheduledAction" -> AutoScalingScheduledActionProperties <$> (o .: "Properties")+         "AWS::CertificateManager::Certificate" -> CertificateManagerCertificateProperties <$> (o .: "Properties")+         "AWS::CloudFormation::CustomResource" -> CloudFormationCustomResourceProperties <$> (o .: "Properties")+         "AWS::CloudFormation::Stack" -> CloudFormationStackProperties <$> (o .: "Properties")+         "AWS::CloudFormation::WaitCondition" -> CloudFormationWaitConditionProperties <$> (o .: "Properties")+         "AWS::CloudFormation::WaitConditionHandle" -> CloudFormationWaitConditionHandleProperties <$> (o .: "Properties")+         "AWS::CloudFront::Distribution" -> CloudFrontDistributionProperties <$> (o .: "Properties")+         "AWS::CloudTrail::Trail" -> CloudTrailTrailProperties <$> (o .: "Properties")+         "AWS::CloudWatch::Alarm" -> CloudWatchAlarmProperties <$> (o .: "Properties")+         "AWS::CodeBuild::Project" -> CodeBuildProjectProperties <$> (o .: "Properties")+         "AWS::CodeCommit::Repository" -> CodeCommitRepositoryProperties <$> (o .: "Properties")+         "AWS::CodeDeploy::Application" -> CodeDeployApplicationProperties <$> (o .: "Properties")+         "AWS::CodeDeploy::DeploymentConfig" -> CodeDeployDeploymentConfigProperties <$> (o .: "Properties")+         "AWS::CodeDeploy::DeploymentGroup" -> CodeDeployDeploymentGroupProperties <$> (o .: "Properties")+         "AWS::CodePipeline::CustomActionType" -> CodePipelineCustomActionTypeProperties <$> (o .: "Properties")+         "AWS::CodePipeline::Pipeline" -> CodePipelinePipelineProperties <$> (o .: "Properties")+         "AWS::Config::ConfigRule" -> ConfigConfigRuleProperties <$> (o .: "Properties")+         "AWS::Config::ConfigurationRecorder" -> ConfigConfigurationRecorderProperties <$> (o .: "Properties")+         "AWS::Config::DeliveryChannel" -> ConfigDeliveryChannelProperties <$> (o .: "Properties")+         "AWS::DataPipeline::Pipeline" -> DataPipelinePipelineProperties <$> (o .: "Properties")+         "AWS::DirectoryService::MicrosoftAD" -> DirectoryServiceMicrosoftADProperties <$> (o .: "Properties")+         "AWS::DirectoryService::SimpleAD" -> DirectoryServiceSimpleADProperties <$> (o .: "Properties")+         "AWS::DynamoDB::Table" -> DynamoDBTableProperties <$> (o .: "Properties")+         "AWS::EC2::CustomerGateway" -> EC2CustomerGatewayProperties <$> (o .: "Properties")+         "AWS::EC2::DHCPOptions" -> EC2DHCPOptionsProperties <$> (o .: "Properties")+         "AWS::EC2::EIP" -> EC2EIPProperties <$> (o .: "Properties")+         "AWS::EC2::EIPAssociation" -> EC2EIPAssociationProperties <$> (o .: "Properties")+         "AWS::EC2::FlowLog" -> EC2FlowLogProperties <$> (o .: "Properties")+         "AWS::EC2::Host" -> EC2HostProperties <$> (o .: "Properties")+         "AWS::EC2::Instance" -> EC2InstanceProperties <$> (o .: "Properties")+         "AWS::EC2::InternetGateway" -> EC2InternetGatewayProperties <$> (o .: "Properties")+         "AWS::EC2::NatGateway" -> EC2NatGatewayProperties <$> (o .: "Properties")+         "AWS::EC2::NetworkAcl" -> EC2NetworkAclProperties <$> (o .: "Properties")+         "AWS::EC2::NetworkAclEntry" -> EC2NetworkAclEntryProperties <$> (o .: "Properties")+         "AWS::EC2::NetworkInterface" -> EC2NetworkInterfaceProperties <$> (o .: "Properties")+         "AWS::EC2::NetworkInterfaceAttachment" -> EC2NetworkInterfaceAttachmentProperties <$> (o .: "Properties")+         "AWS::EC2::PlacementGroup" -> EC2PlacementGroupProperties <$> (o .: "Properties")+         "AWS::EC2::Route" -> EC2RouteProperties <$> (o .: "Properties")+         "AWS::EC2::RouteTable" -> EC2RouteTableProperties <$> (o .: "Properties")+         "AWS::EC2::SecurityGroup" -> EC2SecurityGroupProperties <$> (o .: "Properties")+         "AWS::EC2::SecurityGroupEgress" -> EC2SecurityGroupEgressProperties <$> (o .: "Properties")+         "AWS::EC2::SecurityGroupIngress" -> EC2SecurityGroupIngressProperties <$> (o .: "Properties")+         "AWS::EC2::SpotFleet" -> EC2SpotFleetProperties <$> (o .: "Properties")+         "AWS::EC2::Subnet" -> EC2SubnetProperties <$> (o .: "Properties")+         "AWS::EC2::SubnetCidrBlock" -> EC2SubnetCidrBlockProperties <$> (o .: "Properties")+         "AWS::EC2::SubnetNetworkAclAssociation" -> EC2SubnetNetworkAclAssociationProperties <$> (o .: "Properties")+         "AWS::EC2::SubnetRouteTableAssociation" -> EC2SubnetRouteTableAssociationProperties <$> (o .: "Properties")+         "AWS::EC2::VPC" -> EC2VPCProperties <$> (o .: "Properties")+         "AWS::EC2::VPCCidrBlock" -> EC2VPCCidrBlockProperties <$> (o .: "Properties")+         "AWS::EC2::VPCDHCPOptionsAssociation" -> EC2VPCDHCPOptionsAssociationProperties <$> (o .: "Properties")+         "AWS::EC2::VPCEndpoint" -> EC2VPCEndpointProperties <$> (o .: "Properties")+         "AWS::EC2::VPCGatewayAttachment" -> EC2VPCGatewayAttachmentProperties <$> (o .: "Properties")+         "AWS::EC2::VPCPeeringConnection" -> EC2VPCPeeringConnectionProperties <$> (o .: "Properties")+         "AWS::EC2::VPNConnection" -> EC2VPNConnectionProperties <$> (o .: "Properties")+         "AWS::EC2::VPNConnectionRoute" -> EC2VPNConnectionRouteProperties <$> (o .: "Properties")+         "AWS::EC2::VPNGateway" -> EC2VPNGatewayProperties <$> (o .: "Properties")+         "AWS::EC2::VPNGatewayRoutePropagation" -> EC2VPNGatewayRoutePropagationProperties <$> (o .: "Properties")+         "AWS::EC2::Volume" -> EC2VolumeProperties <$> (o .: "Properties")+         "AWS::EC2::VolumeAttachment" -> EC2VolumeAttachmentProperties <$> (o .: "Properties")+         "AWS::ECR::Repository" -> ECRRepositoryProperties <$> (o .: "Properties")+         "AWS::ECS::Cluster" -> ECSClusterProperties <$> (o .: "Properties")+         "AWS::ECS::Service" -> ECSServiceProperties <$> (o .: "Properties")+         "AWS::ECS::TaskDefinition" -> ECSTaskDefinitionProperties <$> (o .: "Properties")+         "AWS::EFS::FileSystem" -> EFSFileSystemProperties <$> (o .: "Properties")+         "AWS::EFS::MountTarget" -> EFSMountTargetProperties <$> (o .: "Properties")+         "AWS::EMR::Cluster" -> EMRClusterProperties <$> (o .: "Properties")+         "AWS::EMR::InstanceGroupConfig" -> EMRInstanceGroupConfigProperties <$> (o .: "Properties")+         "AWS::EMR::Step" -> EMRStepProperties <$> (o .: "Properties")+         "AWS::ElastiCache::CacheCluster" -> ElastiCacheCacheClusterProperties <$> (o .: "Properties")+         "AWS::ElastiCache::ParameterGroup" -> ElastiCacheParameterGroupProperties <$> (o .: "Properties")+         "AWS::ElastiCache::ReplicationGroup" -> ElastiCacheReplicationGroupProperties <$> (o .: "Properties")+         "AWS::ElastiCache::SecurityGroup" -> ElastiCacheSecurityGroupProperties <$> (o .: "Properties")+         "AWS::ElastiCache::SecurityGroupIngress" -> ElastiCacheSecurityGroupIngressProperties <$> (o .: "Properties")+         "AWS::ElastiCache::SubnetGroup" -> ElastiCacheSubnetGroupProperties <$> (o .: "Properties")+         "AWS::ElasticBeanstalk::Application" -> ElasticBeanstalkApplicationProperties <$> (o .: "Properties")+         "AWS::ElasticBeanstalk::ApplicationVersion" -> ElasticBeanstalkApplicationVersionProperties <$> (o .: "Properties")+         "AWS::ElasticBeanstalk::ConfigurationTemplate" -> ElasticBeanstalkConfigurationTemplateProperties <$> (o .: "Properties")+         "AWS::ElasticBeanstalk::Environment" -> ElasticBeanstalkEnvironmentProperties <$> (o .: "Properties")+         "AWS::ElasticLoadBalancing::LoadBalancer" -> ElasticLoadBalancingLoadBalancerProperties <$> (o .: "Properties")+         "AWS::ElasticLoadBalancingV2::Listener" -> ElasticLoadBalancingV2ListenerProperties <$> (o .: "Properties")+         "AWS::ElasticLoadBalancingV2::ListenerRule" -> ElasticLoadBalancingV2ListenerRuleProperties <$> (o .: "Properties")+         "AWS::ElasticLoadBalancingV2::LoadBalancer" -> ElasticLoadBalancingV2LoadBalancerProperties <$> (o .: "Properties")+         "AWS::ElasticLoadBalancingV2::TargetGroup" -> ElasticLoadBalancingV2TargetGroupProperties <$> (o .: "Properties")+         "AWS::Elasticsearch::Domain" -> ElasticsearchDomainProperties <$> (o .: "Properties")+         "AWS::Events::Rule" -> EventsRuleProperties <$> (o .: "Properties")+         "AWS::GameLift::Alias" -> GameLiftAliasProperties <$> (o .: "Properties")+         "AWS::GameLift::Build" -> GameLiftBuildProperties <$> (o .: "Properties")+         "AWS::GameLift::Fleet" -> GameLiftFleetProperties <$> (o .: "Properties")+         "AWS::IAM::AccessKey" -> IAMAccessKeyProperties <$> (o .: "Properties")+         "AWS::IAM::Group" -> IAMGroupProperties <$> (o .: "Properties")+         "AWS::IAM::InstanceProfile" -> IAMInstanceProfileProperties <$> (o .: "Properties")+         "AWS::IAM::ManagedPolicy" -> IAMManagedPolicyProperties <$> (o .: "Properties")+         "AWS::IAM::Policy" -> IAMPolicyProperties <$> (o .: "Properties")+         "AWS::IAM::Role" -> IAMRoleProperties <$> (o .: "Properties")+         "AWS::IAM::User" -> IAMUserProperties <$> (o .: "Properties")+         "AWS::IAM::UserToGroupAddition" -> IAMUserToGroupAdditionProperties <$> (o .: "Properties")+         "AWS::IoT::Certificate" -> IoTCertificateProperties <$> (o .: "Properties")+         "AWS::IoT::Policy" -> IoTPolicyProperties <$> (o .: "Properties")+         "AWS::IoT::PolicyPrincipalAttachment" -> IoTPolicyPrincipalAttachmentProperties <$> (o .: "Properties")+         "AWS::IoT::Thing" -> IoTThingProperties <$> (o .: "Properties")+         "AWS::IoT::ThingPrincipalAttachment" -> IoTThingPrincipalAttachmentProperties <$> (o .: "Properties")+         "AWS::IoT::TopicRule" -> IoTTopicRuleProperties <$> (o .: "Properties")+         "AWS::KMS::Alias" -> KMSAliasProperties <$> (o .: "Properties")+         "AWS::KMS::Key" -> KMSKeyProperties <$> (o .: "Properties")+         "AWS::Kinesis::Stream" -> KinesisStreamProperties <$> (o .: "Properties")+         "AWS::KinesisFirehose::DeliveryStream" -> KinesisFirehoseDeliveryStreamProperties <$> (o .: "Properties")+         "AWS::Lambda::Alias" -> LambdaAliasProperties <$> (o .: "Properties")+         "AWS::Lambda::EventSourceMapping" -> LambdaEventSourceMappingProperties <$> (o .: "Properties")+         "AWS::Lambda::Function" -> LambdaFunctionProperties <$> (o .: "Properties")+         "AWS::Lambda::Permission" -> LambdaPermissionProperties <$> (o .: "Properties")+         "AWS::Lambda::Version" -> LambdaVersionProperties <$> (o .: "Properties")+         "AWS::Logs::Destination" -> LogsDestinationProperties <$> (o .: "Properties")+         "AWS::Logs::LogGroup" -> LogsLogGroupProperties <$> (o .: "Properties")+         "AWS::Logs::LogStream" -> LogsLogStreamProperties <$> (o .: "Properties")+         "AWS::Logs::MetricFilter" -> LogsMetricFilterProperties <$> (o .: "Properties")+         "AWS::Logs::SubscriptionFilter" -> LogsSubscriptionFilterProperties <$> (o .: "Properties")+         "AWS::OpsWorks::App" -> OpsWorksAppProperties <$> (o .: "Properties")+         "AWS::OpsWorks::ElasticLoadBalancerAttachment" -> OpsWorksElasticLoadBalancerAttachmentProperties <$> (o .: "Properties")+         "AWS::OpsWorks::Instance" -> OpsWorksInstanceProperties <$> (o .: "Properties")+         "AWS::OpsWorks::Layer" -> OpsWorksLayerProperties <$> (o .: "Properties")+         "AWS::OpsWorks::Stack" -> OpsWorksStackProperties <$> (o .: "Properties")+         "AWS::OpsWorks::UserProfile" -> OpsWorksUserProfileProperties <$> (o .: "Properties")+         "AWS::OpsWorks::Volume" -> OpsWorksVolumeProperties <$> (o .: "Properties")+         "AWS::RDS::DBCluster" -> RDSDBClusterProperties <$> (o .: "Properties")+         "AWS::RDS::DBClusterParameterGroup" -> RDSDBClusterParameterGroupProperties <$> (o .: "Properties")+         "AWS::RDS::DBInstance" -> RDSDBInstanceProperties <$> (o .: "Properties")+         "AWS::RDS::DBParameterGroup" -> RDSDBParameterGroupProperties <$> (o .: "Properties")+         "AWS::RDS::DBSecurityGroup" -> RDSDBSecurityGroupProperties <$> (o .: "Properties")+         "AWS::RDS::DBSecurityGroupIngress" -> RDSDBSecurityGroupIngressProperties <$> (o .: "Properties")+         "AWS::RDS::DBSubnetGroup" -> RDSDBSubnetGroupProperties <$> (o .: "Properties")+         "AWS::RDS::EventSubscription" -> RDSEventSubscriptionProperties <$> (o .: "Properties")+         "AWS::RDS::OptionGroup" -> RDSOptionGroupProperties <$> (o .: "Properties")+         "AWS::Redshift::Cluster" -> RedshiftClusterProperties <$> (o .: "Properties")+         "AWS::Redshift::ClusterParameterGroup" -> RedshiftClusterParameterGroupProperties <$> (o .: "Properties")+         "AWS::Redshift::ClusterSecurityGroup" -> RedshiftClusterSecurityGroupProperties <$> (o .: "Properties")+         "AWS::Redshift::ClusterSecurityGroupIngress" -> RedshiftClusterSecurityGroupIngressProperties <$> (o .: "Properties")+         "AWS::Redshift::ClusterSubnetGroup" -> RedshiftClusterSubnetGroupProperties <$> (o .: "Properties")+         "AWS::Route53::HealthCheck" -> Route53HealthCheckProperties <$> (o .: "Properties")+         "AWS::Route53::HostedZone" -> Route53HostedZoneProperties <$> (o .: "Properties")+         "AWS::Route53::RecordSet" -> Route53RecordSetProperties <$> (o .: "Properties")+         "AWS::Route53::RecordSetGroup" -> Route53RecordSetGroupProperties <$> (o .: "Properties")+         "AWS::S3::Bucket" -> S3BucketProperties <$> (o .: "Properties")+         "AWS::S3::BucketPolicy" -> S3BucketPolicyProperties <$> (o .: "Properties")+         "AWS::SDB::Domain" -> SDBDomainProperties <$> (o .: "Properties")+         "AWS::SNS::Subscription" -> SNSSubscriptionProperties <$> (o .: "Properties")+         "AWS::SNS::Topic" -> SNSTopicProperties <$> (o .: "Properties")+         "AWS::SNS::TopicPolicy" -> SNSTopicPolicyProperties <$> (o .: "Properties")+         "AWS::SQS::Queue" -> SQSQueueProperties <$> (o .: "Properties")+         "AWS::SQS::QueuePolicy" -> SQSQueuePolicyProperties <$> (o .: "Properties")+         "AWS::SSM::Association" -> SSMAssociationProperties <$> (o .: "Properties")+         "AWS::SSM::Document" -> SSMDocumentProperties <$> (o .: "Properties")+         "AWS::WAF::ByteMatchSet" -> WAFByteMatchSetProperties <$> (o .: "Properties")+         "AWS::WAF::IPSet" -> WAFIPSetProperties <$> (o .: "Properties")+         "AWS::WAF::Rule" -> WAFRuleProperties <$> (o .: "Properties")+         "AWS::WAF::SizeConstraintSet" -> WAFSizeConstraintSetProperties <$> (o .: "Properties")+         "AWS::WAF::SqlInjectionMatchSet" -> WAFSqlInjectionMatchSetProperties <$> (o .: "Properties")+         "AWS::WAF::WebACL" -> WAFWebACLProperties <$> (o .: "Properties")+         "AWS::WAF::XssMatchSet" -> WAFXssMatchSetProperties <$> (o .: "Properties")+         "AWS::WorkSpaces::Workspace" -> WorkSpacesWorkspaceProperties <$> (o .: "Properties")           _ -> fail $ "Unknown resource type: " ++ type'        dp <- o .:? "DeletionPolicy"
− library-gen/Stratosphere/Resources/AccessKey.hs
@@ -1,60 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::IAM::AccessKey resource type generates a secret access key and--- assigns it to an IAM user or AWS account. This type supports updates. For--- more information about updating stacks, see AWS CloudFormation Stacks--- Updates.--module Stratosphere.Resources.AccessKey where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for AccessKey. See 'accessKey' for a more--- convenient constructor.-data AccessKey =-  AccessKey-  { _accessKeySerial :: Maybe (Val Integer')-  , _accessKeyStatus :: Maybe (Val Text)-  , _accessKeyUserName :: Val Text-  } deriving (Show, Generic)--instance ToJSON AccessKey where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }--instance FromJSON AccessKey where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }---- | Constructor for 'AccessKey' containing required fields as arguments.-accessKey-  :: Val Text -- ^ 'akUserName'-  -> AccessKey-accessKey userNamearg =-  AccessKey-  { _accessKeySerial = Nothing-  , _accessKeyStatus = Nothing-  , _accessKeyUserName = userNamearg-  }---- | This value is specific to AWS CloudFormation and can only be incremented.--- Incrementing this value notifies AWS CloudFormation that you want to rotate--- your access key. When you update your stack, AWS CloudFormation will--- replace the existing access key with a new key.-akSerial :: Lens' AccessKey (Maybe (Val Integer'))-akSerial = lens _accessKeySerial (\s a -> s { _accessKeySerial = a })---- | The status of the access key. By default, AWS CloudFormation sets this--- property value to Active.-akStatus :: Lens' AccessKey (Maybe (Val Text))-akStatus = lens _accessKeyStatus (\s a -> s { _accessKeyStatus = a })---- | The name of the user that the new key will belong to.-akUserName :: Lens' AccessKey (Val Text)-akUserName = lens _accessKeyUserName (\s a -> s { _accessKeyUserName = a })
library-gen/Stratosphere/Resources/ApiGatewayAccount.hs view
@@ -1,9 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::ApiGateway::Account resource specifies the AWS Identity and--- Access Management (IAM) role that Amazon API Gateway (API Gateway) uses to--- write API logs to Amazon CloudWatch Logs (CloudWatch Logs).+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html  module Stratosphere.Resources.ApiGatewayAccount where @@ -17,7 +15,7 @@   -- | Full data type definition for ApiGatewayAccount. See 'apiGatewayAccount'--- for a more convenient constructor.+-- | for a more convenient constructor. data ApiGatewayAccount =   ApiGatewayAccount   { _apiGatewayAccountCloudWatchRoleArn :: Maybe (Val Text)@@ -30,7 +28,7 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }  -- | Constructor for 'ApiGatewayAccount' containing required fields as--- arguments.+-- | arguments. apiGatewayAccount   :: ApiGatewayAccount apiGatewayAccount  =@@ -38,7 +36,6 @@   { _apiGatewayAccountCloudWatchRoleArn = Nothing   } --- | The Amazon Resource Name (ARN) of an IAM role that has write access to--- CloudWatch Logs in your account.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-account.html#cfn-apigateway-account-cloudwatchrolearn agaCloudWatchRoleArn :: Lens' ApiGatewayAccount (Maybe (Val Text)) agaCloudWatchRoleArn = lens _apiGatewayAccountCloudWatchRoleArn (\s a -> s { _apiGatewayAccountCloudWatchRoleArn = a })
+ library-gen/Stratosphere/Resources/ApiGatewayApiKey.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html++module Stratosphere.Resources.ApiGatewayApiKey where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ApiGatewayApiKeyStageKey++-- | Full data type definition for ApiGatewayApiKey. See 'apiGatewayApiKey'+-- | for a more convenient constructor.+data ApiGatewayApiKey =+  ApiGatewayApiKey+  { _apiGatewayApiKeyDescription :: Maybe (Val Text)+  , _apiGatewayApiKeyEnabled :: Maybe (Val Bool')+  , _apiGatewayApiKeyName :: Maybe (Val Text)+  , _apiGatewayApiKeyStageKeys :: Maybe [ApiGatewayApiKeyStageKey]+  } deriving (Show, Generic)++instance ToJSON ApiGatewayApiKey where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++instance FromJSON ApiGatewayApiKey where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++-- | Constructor for 'ApiGatewayApiKey' containing required fields as+-- | arguments.+apiGatewayApiKey+  :: ApiGatewayApiKey+apiGatewayApiKey  =+  ApiGatewayApiKey+  { _apiGatewayApiKeyDescription = Nothing+  , _apiGatewayApiKeyEnabled = Nothing+  , _apiGatewayApiKeyName = Nothing+  , _apiGatewayApiKeyStageKeys = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apigateway-apikey-description+agakDescription :: Lens' ApiGatewayApiKey (Maybe (Val Text))+agakDescription = lens _apiGatewayApiKeyDescription (\s a -> s { _apiGatewayApiKeyDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apigateway-apikey-enabled+agakEnabled :: Lens' ApiGatewayApiKey (Maybe (Val Bool'))+agakEnabled = lens _apiGatewayApiKeyEnabled (\s a -> s { _apiGatewayApiKeyEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apigateway-apikey-name+agakName :: Lens' ApiGatewayApiKey (Maybe (Val Text))+agakName = lens _apiGatewayApiKeyName (\s a -> s { _apiGatewayApiKeyName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-apikey.html#cfn-apigateway-apigateway-apikey-stagekeys+agakStageKeys :: Lens' ApiGatewayApiKey (Maybe [ApiGatewayApiKeyStageKey])+agakStageKeys = lens _apiGatewayApiKeyStageKeys (\s a -> s { _apiGatewayApiKeyStageKeys = a })
+ library-gen/Stratosphere/Resources/ApiGatewayAuthorizer.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html++module Stratosphere.Resources.ApiGatewayAuthorizer where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ApiGatewayAuthorizer. See+-- | 'apiGatewayAuthorizer' for a more convenient constructor.+data ApiGatewayAuthorizer =+  ApiGatewayAuthorizer+  { _apiGatewayAuthorizerAuthorizerCredentials :: Maybe (Val Text)+  , _apiGatewayAuthorizerAuthorizerResultTtlInSeconds :: Maybe (Val Integer')+  , _apiGatewayAuthorizerAuthorizerUri :: Maybe (Val Text)+  , _apiGatewayAuthorizerIdentitySource :: Maybe (Val Text)+  , _apiGatewayAuthorizerIdentityValidationExpression :: Maybe (Val Text)+  , _apiGatewayAuthorizerName :: Maybe (Val Text)+  , _apiGatewayAuthorizerProviderARNs :: Maybe [Val Text]+  , _apiGatewayAuthorizerRestApiId :: Maybe (Val Text)+  , _apiGatewayAuthorizerType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ApiGatewayAuthorizer where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++instance FromJSON ApiGatewayAuthorizer where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++-- | Constructor for 'ApiGatewayAuthorizer' containing required fields as+-- | arguments.+apiGatewayAuthorizer+  :: ApiGatewayAuthorizer+apiGatewayAuthorizer  =+  ApiGatewayAuthorizer+  { _apiGatewayAuthorizerAuthorizerCredentials = Nothing+  , _apiGatewayAuthorizerAuthorizerResultTtlInSeconds = Nothing+  , _apiGatewayAuthorizerAuthorizerUri = Nothing+  , _apiGatewayAuthorizerIdentitySource = Nothing+  , _apiGatewayAuthorizerIdentityValidationExpression = Nothing+  , _apiGatewayAuthorizerName = Nothing+  , _apiGatewayAuthorizerProviderARNs = Nothing+  , _apiGatewayAuthorizerRestApiId = Nothing+  , _apiGatewayAuthorizerType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-authorizercredentials+agaAuthorizerCredentials :: Lens' ApiGatewayAuthorizer (Maybe (Val Text))+agaAuthorizerCredentials = lens _apiGatewayAuthorizerAuthorizerCredentials (\s a -> s { _apiGatewayAuthorizerAuthorizerCredentials = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-authorizerresultttlinseconds+agaAuthorizerResultTtlInSeconds :: Lens' ApiGatewayAuthorizer (Maybe (Val Integer'))+agaAuthorizerResultTtlInSeconds = lens _apiGatewayAuthorizerAuthorizerResultTtlInSeconds (\s a -> s { _apiGatewayAuthorizerAuthorizerResultTtlInSeconds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-authorizeruri+agaAuthorizerUri :: Lens' ApiGatewayAuthorizer (Maybe (Val Text))+agaAuthorizerUri = lens _apiGatewayAuthorizerAuthorizerUri (\s a -> s { _apiGatewayAuthorizerAuthorizerUri = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-identitysource+agaIdentitySource :: Lens' ApiGatewayAuthorizer (Maybe (Val Text))+agaIdentitySource = lens _apiGatewayAuthorizerIdentitySource (\s a -> s { _apiGatewayAuthorizerIdentitySource = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-identityvalidationexpression+agaIdentityValidationExpression :: Lens' ApiGatewayAuthorizer (Maybe (Val Text))+agaIdentityValidationExpression = lens _apiGatewayAuthorizerIdentityValidationExpression (\s a -> s { _apiGatewayAuthorizerIdentityValidationExpression = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-name+agaName :: Lens' ApiGatewayAuthorizer (Maybe (Val Text))+agaName = lens _apiGatewayAuthorizerName (\s a -> s { _apiGatewayAuthorizerName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-providerarns+agaProviderARNs :: Lens' ApiGatewayAuthorizer (Maybe [Val Text])+agaProviderARNs = lens _apiGatewayAuthorizerProviderARNs (\s a -> s { _apiGatewayAuthorizerProviderARNs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-restapiid+agaRestApiId :: Lens' ApiGatewayAuthorizer (Maybe (Val Text))+agaRestApiId = lens _apiGatewayAuthorizerRestApiId (\s a -> s { _apiGatewayAuthorizerRestApiId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-authorizer.html#cfn-apigateway-authorizer-type+agaType :: Lens' ApiGatewayAuthorizer (Maybe (Val Text))+agaType = lens _apiGatewayAuthorizerType (\s a -> s { _apiGatewayAuthorizerType = a })
+ library-gen/Stratosphere/Resources/ApiGatewayBasePathMapping.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html++module Stratosphere.Resources.ApiGatewayBasePathMapping where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ApiGatewayBasePathMapping. See+-- | 'apiGatewayBasePathMapping' for a more convenient constructor.+data ApiGatewayBasePathMapping =+  ApiGatewayBasePathMapping+  { _apiGatewayBasePathMappingBasePath :: Maybe (Val Text)+  , _apiGatewayBasePathMappingDomainName :: Maybe (Val Text)+  , _apiGatewayBasePathMappingRestApiId :: Maybe (Val Text)+  , _apiGatewayBasePathMappingStage :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ApiGatewayBasePathMapping where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++instance FromJSON ApiGatewayBasePathMapping where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++-- | Constructor for 'ApiGatewayBasePathMapping' containing required fields as+-- | arguments.+apiGatewayBasePathMapping+  :: ApiGatewayBasePathMapping+apiGatewayBasePathMapping  =+  ApiGatewayBasePathMapping+  { _apiGatewayBasePathMappingBasePath = Nothing+  , _apiGatewayBasePathMappingDomainName = Nothing+  , _apiGatewayBasePathMappingRestApiId = Nothing+  , _apiGatewayBasePathMappingStage = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-basepath+agbpmBasePath :: Lens' ApiGatewayBasePathMapping (Maybe (Val Text))+agbpmBasePath = lens _apiGatewayBasePathMappingBasePath (\s a -> s { _apiGatewayBasePathMappingBasePath = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-domainname+agbpmDomainName :: Lens' ApiGatewayBasePathMapping (Maybe (Val Text))+agbpmDomainName = lens _apiGatewayBasePathMappingDomainName (\s a -> s { _apiGatewayBasePathMappingDomainName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-restapiid+agbpmRestApiId :: Lens' ApiGatewayBasePathMapping (Maybe (Val Text))+agbpmRestApiId = lens _apiGatewayBasePathMappingRestApiId (\s a -> s { _apiGatewayBasePathMappingRestApiId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-basepathmapping.html#cfn-apigateway-basepathmapping-stage+agbpmStage :: Lens' ApiGatewayBasePathMapping (Maybe (Val Text))+agbpmStage = lens _apiGatewayBasePathMappingStage (\s a -> s { _apiGatewayBasePathMappingStage = a })
+ library-gen/Stratosphere/Resources/ApiGatewayClientCertificate.hs view
@@ -0,0 +1,41 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html++module Stratosphere.Resources.ApiGatewayClientCertificate where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ApiGatewayClientCertificate. See+-- | 'apiGatewayClientCertificate' for a more convenient constructor.+data ApiGatewayClientCertificate =+  ApiGatewayClientCertificate+  { _apiGatewayClientCertificateDescription :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ApiGatewayClientCertificate where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON ApiGatewayClientCertificate where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'ApiGatewayClientCertificate' containing required fields+-- | as arguments.+apiGatewayClientCertificate+  :: ApiGatewayClientCertificate+apiGatewayClientCertificate  =+  ApiGatewayClientCertificate+  { _apiGatewayClientCertificateDescription = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-clientcertificate.html#cfn-apigateway-clientcertificate-description+agccDescription :: Lens' ApiGatewayClientCertificate (Maybe (Val Text))+agccDescription = lens _apiGatewayClientCertificateDescription (\s a -> s { _apiGatewayClientCertificateDescription = a })
library-gen/Stratosphere/Resources/ApiGatewayDeployment.hs view
@@ -1,9 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::ApiGateway::Deployment resource deploys an Amazon API Gateway--- (API Gateway) RestApi resource to a stage so that clients can call the API--- over the Internet. The stage acts as an environment.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html  module Stratosphere.Resources.ApiGatewayDeployment where @@ -14,15 +12,15 @@ import GHC.Generics  import Stratosphere.Values-import Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescription+import Stratosphere.ResourceProperties.ApiGatewayDeploymentStageDescription  -- | Full data type definition for ApiGatewayDeployment. See--- 'apiGatewayDeployment' for a more convenient constructor.+-- | 'apiGatewayDeployment' for a more convenient constructor. data ApiGatewayDeployment =   ApiGatewayDeployment   { _apiGatewayDeploymentDescription :: Maybe (Val Text)   , _apiGatewayDeploymentRestApiId :: Val Text-  , _apiGatewayDeploymentStageDescription :: Maybe APIGatewayDeploymentStageDescription+  , _apiGatewayDeploymentStageDescription :: Maybe ApiGatewayDeploymentStageDescription   , _apiGatewayDeploymentStageName :: Maybe (Val Text)   } deriving (Show, Generic) @@ -33,7 +31,7 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }  -- | Constructor for 'ApiGatewayDeployment' containing required fields as--- arguments.+-- | arguments. apiGatewayDeployment   :: Val Text -- ^ 'agdRestApiId'   -> ApiGatewayDeployment@@ -45,19 +43,18 @@   , _apiGatewayDeploymentStageName = Nothing   } --- | A description of the purpose of the API Gateway deployment.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-description agdDescription :: Lens' ApiGatewayDeployment (Maybe (Val Text)) agdDescription = lens _apiGatewayDeploymentDescription (\s a -> s { _apiGatewayDeploymentDescription = a }) --- | The ID of the RestApi resource to deploy.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-restapiid agdRestApiId :: Lens' ApiGatewayDeployment (Val Text) agdRestApiId = lens _apiGatewayDeploymentRestApiId (\s a -> s { _apiGatewayDeploymentRestApiId = a }) --- | Configures the stage that API Gateway creates with this deployment.-agdStageDescription :: Lens' ApiGatewayDeployment (Maybe APIGatewayDeploymentStageDescription)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-stagedescription+agdStageDescription :: Lens' ApiGatewayDeployment (Maybe ApiGatewayDeploymentStageDescription) agdStageDescription = lens _apiGatewayDeploymentStageDescription (\s a -> s { _apiGatewayDeploymentStageDescription = a }) --- | A name for the stage that API Gateway creates with this deployment. Use--- only alphanumeric characters.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-deployment.html#cfn-apigateway-deployment-stagename agdStageName :: Lens' ApiGatewayDeployment (Maybe (Val Text)) agdStageName = lens _apiGatewayDeploymentStageName (\s a -> s { _apiGatewayDeploymentStageName = a })
library-gen/Stratosphere/Resources/ApiGatewayMethod.hs view
@@ -1,9 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::ApiGateway::Method resource creates Amazon API Gateway (API--- Gateway) methods that define the parameters and body that clients must send--- in their requests.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html  module Stratosphere.Resources.ApiGatewayMethod where @@ -14,24 +12,24 @@ import GHC.Generics  import Stratosphere.Values-import Stratosphere.ResourceProperties.ApiGatewayIntegration-import Stratosphere.ResourceProperties.ApiGatewayMethodResponse import Stratosphere.Types+import Stratosphere.ResourceProperties.ApiGatewayMethodIntegration+import Stratosphere.ResourceProperties.ApiGatewayMethodMethodResponse  -- | Full data type definition for ApiGatewayMethod. See 'apiGatewayMethod'--- for a more convenient constructor.+-- | for a more convenient constructor. data ApiGatewayMethod =   ApiGatewayMethod   { _apiGatewayMethodApiKeyRequired :: Maybe (Val Bool')-  , _apiGatewayMethodAuthorizationType :: AuthorizationType+  , _apiGatewayMethodAuthorizationType :: Maybe (Val AuthorizationType)   , _apiGatewayMethodAuthorizerId :: Maybe (Val Text)-  , _apiGatewayMethodHttpMethod :: HttpMethod-  , _apiGatewayMethodIntegration :: Maybe ApiGatewayIntegration-  , _apiGatewayMethodMethodResponses :: Maybe [ApiGatewayMethodResponse]+  , _apiGatewayMethodHttpMethod :: Val HttpMethod+  , _apiGatewayMethodIntegration :: Maybe ApiGatewayMethodIntegration+  , _apiGatewayMethodMethodResponses :: Maybe [ApiGatewayMethodMethodResponse]   , _apiGatewayMethodRequestModels :: Maybe Object   , _apiGatewayMethodRequestParameters :: Maybe Object-  , _apiGatewayMethodResourceId :: Val Text-  , _apiGatewayMethodRestApiId :: Val Text+  , _apiGatewayMethodResourceId :: Maybe (Val Text)+  , _apiGatewayMethodRestApiId :: Maybe (Val Text)   } deriving (Show, Generic)  instance ToJSON ApiGatewayMethod where@@ -41,73 +39,60 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }  -- | Constructor for 'ApiGatewayMethod' containing required fields as--- arguments.+-- | arguments. apiGatewayMethod-  :: AuthorizationType -- ^ 'agmeAuthorizationType'-  -> HttpMethod -- ^ 'agmeHttpMethod'-  -> Val Text -- ^ 'agmeResourceId'-  -> Val Text -- ^ 'agmeRestApiId'+  :: Val HttpMethod -- ^ 'agmeHttpMethod'   -> ApiGatewayMethod-apiGatewayMethod authorizationTypearg httpMethodarg resourceIdarg restApiIdarg =+apiGatewayMethod httpMethodarg =   ApiGatewayMethod   { _apiGatewayMethodApiKeyRequired = Nothing-  , _apiGatewayMethodAuthorizationType = authorizationTypearg+  , _apiGatewayMethodAuthorizationType = Nothing   , _apiGatewayMethodAuthorizerId = Nothing   , _apiGatewayMethodHttpMethod = httpMethodarg   , _apiGatewayMethodIntegration = Nothing   , _apiGatewayMethodMethodResponses = Nothing   , _apiGatewayMethodRequestModels = Nothing   , _apiGatewayMethodRequestParameters = Nothing-  , _apiGatewayMethodResourceId = resourceIdarg-  , _apiGatewayMethodRestApiId = restApiIdarg+  , _apiGatewayMethodResourceId = Nothing+  , _apiGatewayMethodRestApiId = Nothing   } --- | Indicates whether the method requires clients to submit a valid API key.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-apikeyrequired agmeApiKeyRequired :: Lens' ApiGatewayMethod (Maybe (Val Bool')) agmeApiKeyRequired = lens _apiGatewayMethodApiKeyRequired (\s a -> s { _apiGatewayMethodApiKeyRequired = a }) --- | The method's authorization type.-agmeAuthorizationType :: Lens' ApiGatewayMethod AuthorizationType+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-authorizationtype+agmeAuthorizationType :: Lens' ApiGatewayMethod (Maybe (Val AuthorizationType)) agmeAuthorizationType = lens _apiGatewayMethodAuthorizationType (\s a -> s { _apiGatewayMethodAuthorizationType = a }) --- | The identifier of the authorizer to use on this method. If you specify--- this property, specify CUSTOM for the AuthorizationType property.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-authorizerid agmeAuthorizerId :: Lens' ApiGatewayMethod (Maybe (Val Text)) agmeAuthorizerId = lens _apiGatewayMethodAuthorizerId (\s a -> s { _apiGatewayMethodAuthorizerId = a }) --- | The HTTP method that clients will use to call this method.-agmeHttpMethod :: Lens' ApiGatewayMethod HttpMethod+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-httpmethod+agmeHttpMethod :: Lens' ApiGatewayMethod (Val HttpMethod) agmeHttpMethod = lens _apiGatewayMethodHttpMethod (\s a -> s { _apiGatewayMethodHttpMethod = a }) --- | The back-end system that the method calls when it receives a request.-agmeIntegration :: Lens' ApiGatewayMethod (Maybe ApiGatewayIntegration)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-integration+agmeIntegration :: Lens' ApiGatewayMethod (Maybe ApiGatewayMethodIntegration) agmeIntegration = lens _apiGatewayMethodIntegration (\s a -> s { _apiGatewayMethodIntegration = a }) --- | The responses that can be sent to the client who calls the method.-agmeMethodResponses :: Lens' ApiGatewayMethod (Maybe [ApiGatewayMethodResponse])+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-methodresponses+agmeMethodResponses :: Lens' ApiGatewayMethod (Maybe [ApiGatewayMethodMethodResponse]) agmeMethodResponses = lens _apiGatewayMethodMethodResponses (\s a -> s { _apiGatewayMethodMethodResponses = a }) --- | The resources used for the response's content type. Specify response--- models as key-value pairs (string-to-string map), with a content type as--- the key and a Model resource name as the value.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-requestmodels agmeRequestModels :: Lens' ApiGatewayMethod (Maybe Object) agmeRequestModels = lens _apiGatewayMethodRequestModels (\s a -> s { _apiGatewayMethodRequestModels = a }) --- | Request parameters that API Gateway accepts. Specify request parameters--- as key-value pairs (string-to-Boolean map), with a source as the key and a--- Boolean as the value. The Boolean specifies whether a parameter is--- required. A source must match the following format--- method.request.location.name, where the location is querystring, path, or--- header, and name is a valid, unique parameter name.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-requestparameters agmeRequestParameters :: Lens' ApiGatewayMethod (Maybe Object) agmeRequestParameters = lens _apiGatewayMethodRequestParameters (\s a -> s { _apiGatewayMethodRequestParameters = a }) --- | The ID of an API Gateway resource. For root resource methods, specify the--- RestApi root resource ID, such as { "Fn::GetAtt": ["MyRestApi",--- "RootResourceId"] }.-agmeResourceId :: Lens' ApiGatewayMethod (Val Text)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-resourceid+agmeResourceId :: Lens' ApiGatewayMethod (Maybe (Val Text)) agmeResourceId = lens _apiGatewayMethodResourceId (\s a -> s { _apiGatewayMethodResourceId = a }) --- | The ID of the RestApi resource in which API Gateway creates the method.-agmeRestApiId :: Lens' ApiGatewayMethod (Val Text)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-method.html#cfn-apigateway-method-restapiid+agmeRestApiId :: Lens' ApiGatewayMethod (Maybe (Val Text)) agmeRestApiId = lens _apiGatewayMethodRestApiId (\s a -> s { _apiGatewayMethodRestApiId = a })
library-gen/Stratosphere/Resources/ApiGatewayModel.hs view
@@ -1,8 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::ApiGateway::Model resource defines the structure of a request or--- response payload for an Amazon API Gateway (API Gateway) method.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html  module Stratosphere.Resources.ApiGatewayModel where @@ -16,7 +15,7 @@   -- | Full data type definition for ApiGatewayModel. See 'apiGatewayModel' for--- a more convenient constructor.+-- | a more convenient constructor. data ApiGatewayModel =   ApiGatewayModel   { _apiGatewayModelContentType :: Maybe (Val Text)@@ -33,9 +32,9 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }  -- | Constructor for 'ApiGatewayModel' containing required fields as--- arguments.+-- | arguments. apiGatewayModel-  :: Val Text -- ^ 'agmRestApiId'+  :: Val Text -- ^ 'agmoRestApiId'   -> ApiGatewayModel apiGatewayModel restApiIdarg =   ApiGatewayModel@@ -46,27 +45,22 @@   , _apiGatewayModelSchema = Nothing   } --- | The content type for the model.-agmContentType :: Lens' ApiGatewayModel (Maybe (Val Text))-agmContentType = lens _apiGatewayModelContentType (\s a -> s { _apiGatewayModelContentType = a })+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html#cfn-apigateway-model-contenttype+agmoContentType :: Lens' ApiGatewayModel (Maybe (Val Text))+agmoContentType = lens _apiGatewayModelContentType (\s a -> s { _apiGatewayModelContentType = a }) --- | A description that identifies this model.-agmDescription :: Lens' ApiGatewayModel (Maybe (Val Text))-agmDescription = lens _apiGatewayModelDescription (\s a -> s { _apiGatewayModelDescription = a })+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html#cfn-apigateway-model-description+agmoDescription :: Lens' ApiGatewayModel (Maybe (Val Text))+agmoDescription = lens _apiGatewayModelDescription (\s a -> s { _apiGatewayModelDescription = a }) --- | A name for the mode. If you don't specify a name, AWS CloudFormation--- generates a unique physical ID and uses that ID for the model name. For--- more information, see Name Type. Important If you specify a name, you--- cannot do updates that require this resource to be replaced. You can still--- do updates that require no or some interruption. If you must replace the--- resource, specify a new name.-agmName :: Lens' ApiGatewayModel (Maybe (Val Text))-agmName = lens _apiGatewayModelName (\s a -> s { _apiGatewayModelName = a })+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html#cfn-apigateway-model-name+agmoName :: Lens' ApiGatewayModel (Maybe (Val Text))+agmoName = lens _apiGatewayModelName (\s a -> s { _apiGatewayModelName = a }) --- | The ID of a REST API with which to associate this model.-agmRestApiId :: Lens' ApiGatewayModel (Val Text)-agmRestApiId = lens _apiGatewayModelRestApiId (\s a -> s { _apiGatewayModelRestApiId = a })+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html#cfn-apigateway-model-restapiid+agmoRestApiId :: Lens' ApiGatewayModel (Val Text)+agmoRestApiId = lens _apiGatewayModelRestApiId (\s a -> s { _apiGatewayModelRestApiId = a }) --- | The schema to use to transform data to one or more output formats.-agmSchema :: Lens' ApiGatewayModel (Maybe Object)-agmSchema = lens _apiGatewayModelSchema (\s a -> s { _apiGatewayModelSchema = a })+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-model.html#cfn-apigateway-model-schema+agmoSchema :: Lens' ApiGatewayModel (Maybe Object)+agmoSchema = lens _apiGatewayModelSchema (\s a -> s { _apiGatewayModelSchema = a })
library-gen/Stratosphere/Resources/ApiGatewayResource.hs view
@@ -1,8 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::ApiGateway::Resource resource creates a resource in an Amazon--- API Gateway (API Gateway) API.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html  module Stratosphere.Resources.ApiGatewayResource where @@ -16,7 +15,7 @@   -- | Full data type definition for ApiGatewayResource. See--- 'apiGatewayResource' for a more convenient constructor.+-- | 'apiGatewayResource' for a more convenient constructor. data ApiGatewayResource =   ApiGatewayResource   { _apiGatewayResourceParentId :: Val Text@@ -31,7 +30,7 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }  -- | Constructor for 'ApiGatewayResource' containing required fields as--- arguments.+-- | arguments. apiGatewayResource   :: Val Text -- ^ 'agrParentId'   -> Val Text -- ^ 'agrPathPart'@@ -44,16 +43,14 @@   , _apiGatewayResourceRestApiId = restApiIdarg   } --- | If you want to create a child resource, the ID of the parent resource.--- For resources without a parent, specify the RestApi root resource ID, such--- as { "Fn::GetAtt": ["MyRestApi", "RootResourceId"] }.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html#cfn-apigateway-resource-parentid agrParentId :: Lens' ApiGatewayResource (Val Text) agrParentId = lens _apiGatewayResourceParentId (\s a -> s { _apiGatewayResourceParentId = a }) --- | A path name for the resource.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html#cfn-apigateway-resource-pathpart agrPathPart :: Lens' ApiGatewayResource (Val Text) agrPathPart = lens _apiGatewayResourcePathPart (\s a -> s { _apiGatewayResourcePathPart = a }) --- | The ID of the RestApi resource in which you want to create this resource.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-resource.html#cfn-apigateway-resource-restapiid agrRestApiId :: Lens' ApiGatewayResource (Val Text) agrRestApiId = lens _apiGatewayResourceRestApiId (\s a -> s { _apiGatewayResourceRestApiId = a })
library-gen/Stratosphere/Resources/ApiGatewayRestApi.hs view
@@ -1,9 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::ApiGateway::RestApi resource contains a collection of Amazon API--- Gateway (API Gateway) resources and methods that can be invoked through--- HTTPS endpoints.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html  module Stratosphere.Resources.ApiGatewayRestApi where @@ -17,7 +15,7 @@ import Stratosphere.ResourceProperties.ApiGatewayRestApiS3Location  -- | Full data type definition for ApiGatewayRestApi. See 'apiGatewayRestApi'--- for a more convenient constructor.+-- | for a more convenient constructor. data ApiGatewayRestApi =   ApiGatewayRestApi   { _apiGatewayRestApiBody :: Maybe Object@@ -25,8 +23,9 @@   , _apiGatewayRestApiCloneFrom :: Maybe (Val Text)   , _apiGatewayRestApiDescription :: Maybe (Val Text)   , _apiGatewayRestApiFailOnWarnings :: Maybe (Val Bool')-  , _apiGatewayRestApiName :: Val Text-  , _apiGatewayRestApiParameters :: Maybe [Val Text]+  , _apiGatewayRestApiMode :: Maybe (Val Text)+  , _apiGatewayRestApiName :: Maybe (Val Text)+  , _apiGatewayRestApiParameters :: Maybe Object   } deriving (Show, Generic)  instance ToJSON ApiGatewayRestApi where@@ -36,48 +35,49 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }  -- | Constructor for 'ApiGatewayRestApi' containing required fields as--- arguments.+-- | arguments. apiGatewayRestApi-  :: Val Text -- ^ 'agraName'-  -> ApiGatewayRestApi-apiGatewayRestApi namearg =+  :: ApiGatewayRestApi+apiGatewayRestApi  =   ApiGatewayRestApi   { _apiGatewayRestApiBody = Nothing   , _apiGatewayRestApiBodyS3Location = Nothing   , _apiGatewayRestApiCloneFrom = Nothing   , _apiGatewayRestApiDescription = Nothing   , _apiGatewayRestApiFailOnWarnings = Nothing-  , _apiGatewayRestApiName = namearg+  , _apiGatewayRestApiMode = Nothing+  , _apiGatewayRestApiName = Nothing   , _apiGatewayRestApiParameters = Nothing   } --- | A Swagger specification that defines a set of RESTful APIs in the JSON--- format.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-body agraBody :: Lens' ApiGatewayRestApi (Maybe Object) agraBody = lens _apiGatewayRestApiBody (\s a -> s { _apiGatewayRestApiBody = a }) --- | The Amazon Simple Storage Service (Amazon S3) location that points to a--- Swagger file, which defines a set of RESTful APIs in JSON or YAML format.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-bodys3location agraBodyS3Location :: Lens' ApiGatewayRestApi (Maybe ApiGatewayRestApiS3Location) agraBodyS3Location = lens _apiGatewayRestApiBodyS3Location (\s a -> s { _apiGatewayRestApiBodyS3Location = a }) --- | The ID of the API Gateway RestApi resource that you want to clone.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-clonefrom agraCloneFrom :: Lens' ApiGatewayRestApi (Maybe (Val Text)) agraCloneFrom = lens _apiGatewayRestApiCloneFrom (\s a -> s { _apiGatewayRestApiCloneFrom = a }) --- | A description of the purpose of this API Gateway RestApi resource.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-description agraDescription :: Lens' ApiGatewayRestApi (Maybe (Val Text)) agraDescription = lens _apiGatewayRestApiDescription (\s a -> s { _apiGatewayRestApiDescription = a }) --- | If a warning occurs while API Gateway is creating the RestApi resource,--- indicates whether to roll back the resource.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-failonwarnings agraFailOnWarnings :: Lens' ApiGatewayRestApi (Maybe (Val Bool')) agraFailOnWarnings = lens _apiGatewayRestApiFailOnWarnings (\s a -> s { _apiGatewayRestApiFailOnWarnings = a }) --- | A name for the API Gateway RestApi resource.-agraName :: Lens' ApiGatewayRestApi (Val Text)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-mode+agraMode :: Lens' ApiGatewayRestApi (Maybe (Val Text))+agraMode = lens _apiGatewayRestApiMode (\s a -> s { _apiGatewayRestApiMode = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-name+agraName :: Lens' ApiGatewayRestApi (Maybe (Val Text)) agraName = lens _apiGatewayRestApiName (\s a -> s { _apiGatewayRestApiName = a }) --- | Custom header parameters for the request.-agraParameters :: Lens' ApiGatewayRestApi (Maybe [Val Text])+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-restapi.html#cfn-apigateway-restapi-parameters+agraParameters :: Lens' ApiGatewayRestApi (Maybe Object) agraParameters = lens _apiGatewayRestApiParameters (\s a -> s { _apiGatewayRestApiParameters = a })
library-gen/Stratosphere/Resources/ApiGatewayStage.hs view
@@ -1,8 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::ApiGateway::Stage resource creates a stage for an Amazon API--- Gateway (API Gateway) deployment.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html  module Stratosphere.Resources.ApiGatewayStage where @@ -16,17 +15,17 @@ import Stratosphere.ResourceProperties.ApiGatewayStageMethodSetting  -- | Full data type definition for ApiGatewayStage. See 'apiGatewayStage' for--- a more convenient constructor.+-- | a more convenient constructor. data ApiGatewayStage =   ApiGatewayStage   { _apiGatewayStageCacheClusterEnabled :: Maybe (Val Bool')   , _apiGatewayStageCacheClusterSize :: Maybe (Val Text)   , _apiGatewayStageClientCertificateId :: Maybe (Val Text)-  , _apiGatewayStageDeploymentId :: Val Text+  , _apiGatewayStageDeploymentId :: Maybe (Val Text)   , _apiGatewayStageDescription :: Maybe (Val Text)   , _apiGatewayStageMethodSettings :: Maybe [ApiGatewayStageMethodSetting]-  , _apiGatewayStageRestApiId :: Val Text-  , _apiGatewayStageStageName :: Val Text+  , _apiGatewayStageRestApiId :: Maybe (Val Text)+  , _apiGatewayStageStageName :: Maybe (Val Text)   , _apiGatewayStageVariables :: Maybe Object   } deriving (Show, Generic) @@ -37,62 +36,54 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }  -- | Constructor for 'ApiGatewayStage' containing required fields as--- arguments.+-- | arguments. apiGatewayStage-  :: Val Text -- ^ 'agsDeploymentId'-  -> Val Text -- ^ 'agsRestApiId'-  -> Val Text -- ^ 'agsStageName'-  -> ApiGatewayStage-apiGatewayStage deploymentIdarg restApiIdarg stageNamearg =+  :: ApiGatewayStage+apiGatewayStage  =   ApiGatewayStage   { _apiGatewayStageCacheClusterEnabled = Nothing   , _apiGatewayStageCacheClusterSize = Nothing   , _apiGatewayStageClientCertificateId = Nothing-  , _apiGatewayStageDeploymentId = deploymentIdarg+  , _apiGatewayStageDeploymentId = Nothing   , _apiGatewayStageDescription = Nothing   , _apiGatewayStageMethodSettings = Nothing-  , _apiGatewayStageRestApiId = restApiIdarg-  , _apiGatewayStageStageName = stageNamearg+  , _apiGatewayStageRestApiId = Nothing+  , _apiGatewayStageStageName = Nothing   , _apiGatewayStageVariables = Nothing   } --- | Indicates whether cache clustering is enabled for the stage.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclusterenabled agsCacheClusterEnabled :: Lens' ApiGatewayStage (Maybe (Val Bool')) agsCacheClusterEnabled = lens _apiGatewayStageCacheClusterEnabled (\s a -> s { _apiGatewayStageCacheClusterEnabled = a }) --- | The stage's cache cluster size.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-cacheclustersize agsCacheClusterSize :: Lens' ApiGatewayStage (Maybe (Val Text)) agsCacheClusterSize = lens _apiGatewayStageCacheClusterSize (\s a -> s { _apiGatewayStageCacheClusterSize = a }) --- | The identifier of the client certificate that API Gateway uses to call--- your integration endpoints in the stage.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-clientcertificateid agsClientCertificateId :: Lens' ApiGatewayStage (Maybe (Val Text)) agsClientCertificateId = lens _apiGatewayStageClientCertificateId (\s a -> s { _apiGatewayStageClientCertificateId = a }) --- | The ID of the deployment that the stage points to.-agsDeploymentId :: Lens' ApiGatewayStage (Val Text)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-deploymentid+agsDeploymentId :: Lens' ApiGatewayStage (Maybe (Val Text)) agsDeploymentId = lens _apiGatewayStageDeploymentId (\s a -> s { _apiGatewayStageDeploymentId = a }) --- | A description of the stage's purpose.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-description agsDescription :: Lens' ApiGatewayStage (Maybe (Val Text)) agsDescription = lens _apiGatewayStageDescription (\s a -> s { _apiGatewayStageDescription = a }) --- | Settings for all methods in the stage.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-methodsettings agsMethodSettings :: Lens' ApiGatewayStage (Maybe [ApiGatewayStageMethodSetting]) agsMethodSettings = lens _apiGatewayStageMethodSettings (\s a -> s { _apiGatewayStageMethodSettings = a }) --- | The ID of the RestApi resource that you're deploying with this stage.-agsRestApiId :: Lens' ApiGatewayStage (Val Text)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-restapiid+agsRestApiId :: Lens' ApiGatewayStage (Maybe (Val Text)) agsRestApiId = lens _apiGatewayStageRestApiId (\s a -> s { _apiGatewayStageRestApiId = a }) --- | The name of the stage, which API Gateway uses as the first path segment--- in the invoke Uniform Resource Identifier (URI).-agsStageName :: Lens' ApiGatewayStage (Val Text)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-stagename+agsStageName :: Lens' ApiGatewayStage (Maybe (Val Text)) agsStageName = lens _apiGatewayStageStageName (\s a -> s { _apiGatewayStageStageName = a }) --- | A map (string to string map) that defines the stage variables, where the--- variable name is the key and the variable value is the value. Variable--- names are limited to alphanumeric characters. Values must match the--- following regular expression: [A-Za-z0-9-._~:/?#&amp;=,]+.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-stage.html#cfn-apigateway-stage-variables agsVariables :: Lens' ApiGatewayStage (Maybe Object) agsVariables = lens _apiGatewayStageVariables (\s a -> s { _apiGatewayStageVariables = a })
library-gen/Stratosphere/Resources/ApiGatewayUsagePlan.hs view
@@ -1,11 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::ApiGateway::UsagePlan resource specifies a usage plan for--- deployed Amazon API Gateway (API Gateway) APIs. A usage plan enforces--- throttling and quota limits on individual client API keys. For more--- information, see Creating and Using API Usage Plans in Amazon API Gateway--- in the API Gateway Developer Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html  module Stratosphere.Resources.ApiGatewayUsagePlan where @@ -21,7 +17,7 @@ import Stratosphere.ResourceProperties.ApiGatewayUsagePlanThrottleSettings  -- | Full data type definition for ApiGatewayUsagePlan. See--- 'apiGatewayUsagePlan' for a more convenient constructor.+-- | 'apiGatewayUsagePlan' for a more convenient constructor. data ApiGatewayUsagePlan =   ApiGatewayUsagePlan   { _apiGatewayUsagePlanApiStages :: Maybe [ApiGatewayUsagePlanApiStage]@@ -38,7 +34,7 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }  -- | Constructor for 'ApiGatewayUsagePlan' containing required fields as--- arguments.+-- | arguments. apiGatewayUsagePlan   :: ApiGatewayUsagePlan apiGatewayUsagePlan  =@@ -50,24 +46,22 @@   , _apiGatewayUsagePlanUsagePlanName = Nothing   } --- | The APIs and API stages to associate with this usage plan.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-apistages agupApiStages :: Lens' ApiGatewayUsagePlan (Maybe [ApiGatewayUsagePlanApiStage]) agupApiStages = lens _apiGatewayUsagePlanApiStages (\s a -> s { _apiGatewayUsagePlanApiStages = a }) --- | The purpose of this usage plan.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-description agupDescription :: Lens' ApiGatewayUsagePlan (Maybe (Val Text)) agupDescription = lens _apiGatewayUsagePlanDescription (\s a -> s { _apiGatewayUsagePlanDescription = a }) --- | Configures the number of requests that users can make within a given--- interval.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-quota agupQuota :: Lens' ApiGatewayUsagePlan (Maybe ApiGatewayUsagePlanQuotaSettings) agupQuota = lens _apiGatewayUsagePlanQuota (\s a -> s { _apiGatewayUsagePlanQuota = a }) --- | Configures the overall request rate (average requests per second) and--- burst capacity.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-throttle agupThrottle :: Lens' ApiGatewayUsagePlan (Maybe ApiGatewayUsagePlanThrottleSettings) agupThrottle = lens _apiGatewayUsagePlanThrottle (\s a -> s { _apiGatewayUsagePlanThrottle = a }) --- | A name for this usage plan.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-apigateway-usageplan.html#cfn-apigateway-usageplan-usageplanname agupUsagePlanName :: Lens' ApiGatewayUsagePlan (Maybe (Val Text)) agupUsagePlanName = lens _apiGatewayUsagePlanUsagePlanName (\s a -> s { _apiGatewayUsagePlanUsagePlanName = a })
+ library-gen/Stratosphere/Resources/ApplicationAutoScalingScalableTarget.hs view
@@ -0,0 +1,77 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html++module Stratosphere.Resources.ApplicationAutoScalingScalableTarget where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ApplicationAutoScalingScalableTarget. See+-- | 'applicationAutoScalingScalableTarget' for a more convenient constructor.+data ApplicationAutoScalingScalableTarget =+  ApplicationAutoScalingScalableTarget+  { _applicationAutoScalingScalableTargetMaxCapacity :: Val Integer'+  , _applicationAutoScalingScalableTargetMinCapacity :: Val Integer'+  , _applicationAutoScalingScalableTargetResourceId :: Val Text+  , _applicationAutoScalingScalableTargetRoleARN :: Val Text+  , _applicationAutoScalingScalableTargetScalableDimension :: Val Text+  , _applicationAutoScalingScalableTargetServiceNamespace :: Val Text+  } deriving (Show, Generic)++instance ToJSON ApplicationAutoScalingScalableTarget where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++instance FromJSON ApplicationAutoScalingScalableTarget where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 37, omitNothingFields = True }++-- | Constructor for 'ApplicationAutoScalingScalableTarget' containing+-- | required fields as arguments.+applicationAutoScalingScalableTarget+  :: Val Integer' -- ^ 'aasstMaxCapacity'+  -> Val Integer' -- ^ 'aasstMinCapacity'+  -> Val Text -- ^ 'aasstResourceId'+  -> Val Text -- ^ 'aasstRoleARN'+  -> Val Text -- ^ 'aasstScalableDimension'+  -> Val Text -- ^ 'aasstServiceNamespace'+  -> ApplicationAutoScalingScalableTarget+applicationAutoScalingScalableTarget maxCapacityarg minCapacityarg resourceIdarg roleARNarg scalableDimensionarg serviceNamespacearg =+  ApplicationAutoScalingScalableTarget+  { _applicationAutoScalingScalableTargetMaxCapacity = maxCapacityarg+  , _applicationAutoScalingScalableTargetMinCapacity = minCapacityarg+  , _applicationAutoScalingScalableTargetResourceId = resourceIdarg+  , _applicationAutoScalingScalableTargetRoleARN = roleARNarg+  , _applicationAutoScalingScalableTargetScalableDimension = scalableDimensionarg+  , _applicationAutoScalingScalableTargetServiceNamespace = serviceNamespacearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-maxcapacity+aasstMaxCapacity :: Lens' ApplicationAutoScalingScalableTarget (Val Integer')+aasstMaxCapacity = lens _applicationAutoScalingScalableTargetMaxCapacity (\s a -> s { _applicationAutoScalingScalableTargetMaxCapacity = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-mincapacity+aasstMinCapacity :: Lens' ApplicationAutoScalingScalableTarget (Val Integer')+aasstMinCapacity = lens _applicationAutoScalingScalableTargetMinCapacity (\s a -> s { _applicationAutoScalingScalableTargetMinCapacity = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-resourceid+aasstResourceId :: Lens' ApplicationAutoScalingScalableTarget (Val Text)+aasstResourceId = lens _applicationAutoScalingScalableTargetResourceId (\s a -> s { _applicationAutoScalingScalableTargetResourceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-rolearn+aasstRoleARN :: Lens' ApplicationAutoScalingScalableTarget (Val Text)+aasstRoleARN = lens _applicationAutoScalingScalableTargetRoleARN (\s a -> s { _applicationAutoScalingScalableTargetRoleARN = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-scalabledimension+aasstScalableDimension :: Lens' ApplicationAutoScalingScalableTarget (Val Text)+aasstScalableDimension = lens _applicationAutoScalingScalableTargetScalableDimension (\s a -> s { _applicationAutoScalingScalableTargetScalableDimension = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html#cfn-applicationautoscaling-scalabletarget-servicenamespace+aasstServiceNamespace :: Lens' ApplicationAutoScalingScalableTarget (Val Text)+aasstServiceNamespace = lens _applicationAutoScalingScalableTargetServiceNamespace (\s a -> s { _applicationAutoScalingScalableTargetServiceNamespace = a })
+ library-gen/Stratosphere/Resources/ApplicationAutoScalingScalingPolicy.hs view
@@ -0,0 +1,79 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html++module Stratosphere.Resources.ApplicationAutoScalingScalingPolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration++-- | Full data type definition for ApplicationAutoScalingScalingPolicy. See+-- | 'applicationAutoScalingScalingPolicy' for a more convenient constructor.+data ApplicationAutoScalingScalingPolicy =+  ApplicationAutoScalingScalingPolicy+  { _applicationAutoScalingScalingPolicyPolicyName :: Val Text+  , _applicationAutoScalingScalingPolicyPolicyType :: Val Text+  , _applicationAutoScalingScalingPolicyResourceId :: Maybe (Val Text)+  , _applicationAutoScalingScalingPolicyScalableDimension :: Maybe (Val Text)+  , _applicationAutoScalingScalingPolicyScalingTargetId :: Maybe (Val Text)+  , _applicationAutoScalingScalingPolicyServiceNamespace :: Maybe (Val Text)+  , _applicationAutoScalingScalingPolicyStepScalingPolicyConfiguration :: Maybe ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration+  } deriving (Show, Generic)++instance ToJSON ApplicationAutoScalingScalingPolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++instance FromJSON ApplicationAutoScalingScalingPolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++-- | Constructor for 'ApplicationAutoScalingScalingPolicy' containing required+-- | fields as arguments.+applicationAutoScalingScalingPolicy+  :: Val Text -- ^ 'aasspPolicyName'+  -> Val Text -- ^ 'aasspPolicyType'+  -> ApplicationAutoScalingScalingPolicy+applicationAutoScalingScalingPolicy policyNamearg policyTypearg =+  ApplicationAutoScalingScalingPolicy+  { _applicationAutoScalingScalingPolicyPolicyName = policyNamearg+  , _applicationAutoScalingScalingPolicyPolicyType = policyTypearg+  , _applicationAutoScalingScalingPolicyResourceId = Nothing+  , _applicationAutoScalingScalingPolicyScalableDimension = Nothing+  , _applicationAutoScalingScalingPolicyScalingTargetId = Nothing+  , _applicationAutoScalingScalingPolicyServiceNamespace = Nothing+  , _applicationAutoScalingScalingPolicyStepScalingPolicyConfiguration = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-policyname+aasspPolicyName :: Lens' ApplicationAutoScalingScalingPolicy (Val Text)+aasspPolicyName = lens _applicationAutoScalingScalingPolicyPolicyName (\s a -> s { _applicationAutoScalingScalingPolicyPolicyName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-policytype+aasspPolicyType :: Lens' ApplicationAutoScalingScalingPolicy (Val Text)+aasspPolicyType = lens _applicationAutoScalingScalingPolicyPolicyType (\s a -> s { _applicationAutoScalingScalingPolicyPolicyType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-resourceid+aasspResourceId :: Lens' ApplicationAutoScalingScalingPolicy (Maybe (Val Text))+aasspResourceId = lens _applicationAutoScalingScalingPolicyResourceId (\s a -> s { _applicationAutoScalingScalingPolicyResourceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-scalabledimension+aasspScalableDimension :: Lens' ApplicationAutoScalingScalingPolicy (Maybe (Val Text))+aasspScalableDimension = lens _applicationAutoScalingScalingPolicyScalableDimension (\s a -> s { _applicationAutoScalingScalingPolicyScalableDimension = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-scalingtargetid+aasspScalingTargetId :: Lens' ApplicationAutoScalingScalingPolicy (Maybe (Val Text))+aasspScalingTargetId = lens _applicationAutoScalingScalingPolicyScalingTargetId (\s a -> s { _applicationAutoScalingScalingPolicyScalingTargetId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-servicenamespace+aasspServiceNamespace :: Lens' ApplicationAutoScalingScalingPolicy (Maybe (Val Text))+aasspServiceNamespace = lens _applicationAutoScalingScalingPolicyServiceNamespace (\s a -> s { _applicationAutoScalingScalingPolicyServiceNamespace = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html#cfn-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration+aasspStepScalingPolicyConfiguration :: Lens' ApplicationAutoScalingScalingPolicy (Maybe ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration)+aasspStepScalingPolicyConfiguration = lens _applicationAutoScalingScalingPolicyStepScalingPolicyConfiguration (\s a -> s { _applicationAutoScalingScalingPolicyStepScalingPolicyConfiguration = a })
+ library-gen/Stratosphere/Resources/AutoScalingAutoScalingGroup.hs view
@@ -0,0 +1,141 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html++module Stratosphere.Resources.AutoScalingAutoScalingGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupTagProperty+import Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupMetricsCollection+import Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupNotificationConfigurations++-- | Full data type definition for AutoScalingAutoScalingGroup. See+-- | 'autoScalingAutoScalingGroup' for a more convenient constructor.+data AutoScalingAutoScalingGroup =+  AutoScalingAutoScalingGroup+  { _autoScalingAutoScalingGroupAsTags :: Maybe [AutoScalingAutoScalingGroupTagProperty]+  , _autoScalingAutoScalingGroupAvailabilityZones :: Maybe [Val Text]+  , _autoScalingAutoScalingGroupCooldown :: Maybe (Val Text)+  , _autoScalingAutoScalingGroupDesiredCapacity :: Maybe (Val Text)+  , _autoScalingAutoScalingGroupHealthCheckGracePeriod :: Maybe (Val Integer')+  , _autoScalingAutoScalingGroupHealthCheckType :: Maybe (Val Text)+  , _autoScalingAutoScalingGroupInstanceId :: Maybe (Val Text)+  , _autoScalingAutoScalingGroupLaunchConfigurationName :: Maybe (Val Text)+  , _autoScalingAutoScalingGroupLoadBalancerNames :: Maybe [Val Text]+  , _autoScalingAutoScalingGroupMaxSize :: Val Text+  , _autoScalingAutoScalingGroupMetricsCollection :: Maybe AutoScalingAutoScalingGroupMetricsCollection+  , _autoScalingAutoScalingGroupMinSize :: Val Text+  , _autoScalingAutoScalingGroupNotificationConfigurations :: Maybe AutoScalingAutoScalingGroupNotificationConfigurations+  , _autoScalingAutoScalingGroupPlacementGroup :: Maybe (Val Text)+  , _autoScalingAutoScalingGroupTargetGroupARNs :: Maybe [Val Text]+  , _autoScalingAutoScalingGroupTerminationPolicies :: Maybe [Val Text]+  , _autoScalingAutoScalingGroupVPCZoneIdentifier :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON AutoScalingAutoScalingGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON AutoScalingAutoScalingGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'AutoScalingAutoScalingGroup' containing required fields+-- | as arguments.+autoScalingAutoScalingGroup+  :: Val Text -- ^ 'asasgMaxSize'+  -> Val Text -- ^ 'asasgMinSize'+  -> AutoScalingAutoScalingGroup+autoScalingAutoScalingGroup maxSizearg minSizearg =+  AutoScalingAutoScalingGroup+  { _autoScalingAutoScalingGroupAsTags = Nothing+  , _autoScalingAutoScalingGroupAvailabilityZones = Nothing+  , _autoScalingAutoScalingGroupCooldown = Nothing+  , _autoScalingAutoScalingGroupDesiredCapacity = Nothing+  , _autoScalingAutoScalingGroupHealthCheckGracePeriod = Nothing+  , _autoScalingAutoScalingGroupHealthCheckType = Nothing+  , _autoScalingAutoScalingGroupInstanceId = Nothing+  , _autoScalingAutoScalingGroupLaunchConfigurationName = Nothing+  , _autoScalingAutoScalingGroupLoadBalancerNames = Nothing+  , _autoScalingAutoScalingGroupMaxSize = maxSizearg+  , _autoScalingAutoScalingGroupMetricsCollection = Nothing+  , _autoScalingAutoScalingGroupMinSize = minSizearg+  , _autoScalingAutoScalingGroupNotificationConfigurations = Nothing+  , _autoScalingAutoScalingGroupPlacementGroup = Nothing+  , _autoScalingAutoScalingGroupTargetGroupARNs = Nothing+  , _autoScalingAutoScalingGroupTerminationPolicies = Nothing+  , _autoScalingAutoScalingGroupVPCZoneIdentifier = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-tags+asasgAsTags :: Lens' AutoScalingAutoScalingGroup (Maybe [AutoScalingAutoScalingGroupTagProperty])+asasgAsTags = lens _autoScalingAutoScalingGroupAsTags (\s a -> s { _autoScalingAutoScalingGroupAsTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-availabilityzones+asasgAvailabilityZones :: Lens' AutoScalingAutoScalingGroup (Maybe [Val Text])+asasgAvailabilityZones = lens _autoScalingAutoScalingGroupAvailabilityZones (\s a -> s { _autoScalingAutoScalingGroupAvailabilityZones = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-cooldown+asasgCooldown :: Lens' AutoScalingAutoScalingGroup (Maybe (Val Text))+asasgCooldown = lens _autoScalingAutoScalingGroupCooldown (\s a -> s { _autoScalingAutoScalingGroupCooldown = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-desiredcapacity+asasgDesiredCapacity :: Lens' AutoScalingAutoScalingGroup (Maybe (Val Text))+asasgDesiredCapacity = lens _autoScalingAutoScalingGroupDesiredCapacity (\s a -> s { _autoScalingAutoScalingGroupDesiredCapacity = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-healthcheckgraceperiod+asasgHealthCheckGracePeriod :: Lens' AutoScalingAutoScalingGroup (Maybe (Val Integer'))+asasgHealthCheckGracePeriod = lens _autoScalingAutoScalingGroupHealthCheckGracePeriod (\s a -> s { _autoScalingAutoScalingGroupHealthCheckGracePeriod = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-healthchecktype+asasgHealthCheckType :: Lens' AutoScalingAutoScalingGroup (Maybe (Val Text))+asasgHealthCheckType = lens _autoScalingAutoScalingGroupHealthCheckType (\s a -> s { _autoScalingAutoScalingGroupHealthCheckType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-instanceid+asasgInstanceId :: Lens' AutoScalingAutoScalingGroup (Maybe (Val Text))+asasgInstanceId = lens _autoScalingAutoScalingGroupInstanceId (\s a -> s { _autoScalingAutoScalingGroupInstanceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-launchconfigurationname+asasgLaunchConfigurationName :: Lens' AutoScalingAutoScalingGroup (Maybe (Val Text))+asasgLaunchConfigurationName = lens _autoScalingAutoScalingGroupLaunchConfigurationName (\s a -> s { _autoScalingAutoScalingGroupLaunchConfigurationName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-loadbalancernames+asasgLoadBalancerNames :: Lens' AutoScalingAutoScalingGroup (Maybe [Val Text])+asasgLoadBalancerNames = lens _autoScalingAutoScalingGroupLoadBalancerNames (\s a -> s { _autoScalingAutoScalingGroupLoadBalancerNames = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-maxsize+asasgMaxSize :: Lens' AutoScalingAutoScalingGroup (Val Text)+asasgMaxSize = lens _autoScalingAutoScalingGroupMaxSize (\s a -> s { _autoScalingAutoScalingGroupMaxSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-metricscollection+asasgMetricsCollection :: Lens' AutoScalingAutoScalingGroup (Maybe AutoScalingAutoScalingGroupMetricsCollection)+asasgMetricsCollection = lens _autoScalingAutoScalingGroupMetricsCollection (\s a -> s { _autoScalingAutoScalingGroupMetricsCollection = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-minsize+asasgMinSize :: Lens' AutoScalingAutoScalingGroup (Val Text)+asasgMinSize = lens _autoScalingAutoScalingGroupMinSize (\s a -> s { _autoScalingAutoScalingGroupMinSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-notificationconfigurations+asasgNotificationConfigurations :: Lens' AutoScalingAutoScalingGroup (Maybe AutoScalingAutoScalingGroupNotificationConfigurations)+asasgNotificationConfigurations = lens _autoScalingAutoScalingGroupNotificationConfigurations (\s a -> s { _autoScalingAutoScalingGroupNotificationConfigurations = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-placementgroup+asasgPlacementGroup :: Lens' AutoScalingAutoScalingGroup (Maybe (Val Text))+asasgPlacementGroup = lens _autoScalingAutoScalingGroupPlacementGroup (\s a -> s { _autoScalingAutoScalingGroupPlacementGroup = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-targetgrouparns+asasgTargetGroupARNs :: Lens' AutoScalingAutoScalingGroup (Maybe [Val Text])+asasgTargetGroupARNs = lens _autoScalingAutoScalingGroupTargetGroupARNs (\s a -> s { _autoScalingAutoScalingGroupTargetGroupARNs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-termpolicy+asasgTerminationPolicies :: Lens' AutoScalingAutoScalingGroup (Maybe [Val Text])+asasgTerminationPolicies = lens _autoScalingAutoScalingGroupTerminationPolicies (\s a -> s { _autoScalingAutoScalingGroupTerminationPolicies = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-vpczoneidentifier+asasgVPCZoneIdentifier :: Lens' AutoScalingAutoScalingGroup (Maybe [Val Text])+asasgVPCZoneIdentifier = lens _autoScalingAutoScalingGroupVPCZoneIdentifier (\s a -> s { _autoScalingAutoScalingGroupVPCZoneIdentifier = a })
− library-gen/Stratosphere/Resources/AutoScalingGroup.hs
@@ -1,175 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::AutoScaling::AutoScalingGroup type creates an Auto Scaling--- group. You can add an UpdatePolicy attribute to your Auto Scaling group to--- control how rolling updates are performed when a change has been made to--- the Auto Scaling group's launch configuration or subnet group membership.--module Stratosphere.Resources.AutoScalingGroup where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.AutoScalingMetricsCollection-import Stratosphere.ResourceProperties.AutoScalingNotificationConfigurations-import Stratosphere.ResourceProperties.AutoScalingTags---- | Full data type definition for AutoScalingGroup. See 'autoScalingGroup'--- for a more convenient constructor.-data AutoScalingGroup =-  AutoScalingGroup-  { _autoScalingGroupAvailabilityZones :: Maybe [Val Text]-  , _autoScalingGroupCooldown :: Maybe (Val Text)-  , _autoScalingGroupDesiredCapacity :: Maybe (Val Text)-  , _autoScalingGroupHealthCheckGracePeriod :: Maybe (Val Integer')-  , _autoScalingGroupHealthCheckType :: Maybe (Val Text)-  , _autoScalingGroupInstanceId :: Maybe (Val Text)-  , _autoScalingGroupLaunchConfigurationName :: Maybe (Val Text)-  , _autoScalingGroupLoadBalancerNames :: Maybe [Val Text]-  , _autoScalingGroupMaxSize :: Val Text-  , _autoScalingGroupMetricsCollection :: Maybe [AutoScalingMetricsCollection]-  , _autoScalingGroupMinSize :: Val Text-  , _autoScalingGroupNotificationConfigurations :: Maybe [AutoScalingNotificationConfigurations]-  , _autoScalingGroupPlacementGroup :: Maybe (Val Text)-  , _autoScalingGroupTags :: Maybe [AutoScalingTags]-  , _autoScalingGroupTerminationPolicies :: Maybe [Val Text]-  , _autoScalingGroupVPCZoneIdentifier :: Maybe [Val Text]-  } deriving (Show, Generic)--instance ToJSON AutoScalingGroup where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }--instance FromJSON AutoScalingGroup where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }---- | Constructor for 'AutoScalingGroup' containing required fields as--- arguments.-autoScalingGroup-  :: Val Text -- ^ 'asgMaxSize'-  -> Val Text -- ^ 'asgMinSize'-  -> AutoScalingGroup-autoScalingGroup maxSizearg minSizearg =-  AutoScalingGroup-  { _autoScalingGroupAvailabilityZones = Nothing-  , _autoScalingGroupCooldown = Nothing-  , _autoScalingGroupDesiredCapacity = Nothing-  , _autoScalingGroupHealthCheckGracePeriod = Nothing-  , _autoScalingGroupHealthCheckType = Nothing-  , _autoScalingGroupInstanceId = Nothing-  , _autoScalingGroupLaunchConfigurationName = Nothing-  , _autoScalingGroupLoadBalancerNames = Nothing-  , _autoScalingGroupMaxSize = maxSizearg-  , _autoScalingGroupMetricsCollection = Nothing-  , _autoScalingGroupMinSize = minSizearg-  , _autoScalingGroupNotificationConfigurations = Nothing-  , _autoScalingGroupPlacementGroup = Nothing-  , _autoScalingGroupTags = Nothing-  , _autoScalingGroupTerminationPolicies = Nothing-  , _autoScalingGroupVPCZoneIdentifier = Nothing-  }---- | Contains a list of availability zones for the group.-asgAvailabilityZones :: Lens' AutoScalingGroup (Maybe [Val Text])-asgAvailabilityZones = lens _autoScalingGroupAvailabilityZones (\s a -> s { _autoScalingGroupAvailabilityZones = a })---- | The number of seconds after a scaling activity is completed before any--- further scaling activities can start.-asgCooldown :: Lens' AutoScalingGroup (Maybe (Val Text))-asgCooldown = lens _autoScalingGroupCooldown (\s a -> s { _autoScalingGroupCooldown = a })---- | Specifies the desired capacity for the Auto Scaling group. If SpotPrice--- is not set in the AWS::AutoScaling::LaunchConfiguration for this Auto--- Scaling group, then Auto Scaling will begin to bring instances online based--- on DesiredCapacity. CloudFormation will not mark the Auto Scaling group as--- successful (by setting its status to CREATE_COMPLETE) until the desired--- capacity is reached. If SpotPrice is set, then DesiredCapacity will not be--- used as a criteria for success, since instances will only be started when--- the spot price has been matched. After the spot price has been matched,--- however, Auto Scaling uses DesiredCapacity as the target capacity for the--- group.-asgDesiredCapacity :: Lens' AutoScalingGroup (Maybe (Val Text))-asgDesiredCapacity = lens _autoScalingGroupDesiredCapacity (\s a -> s { _autoScalingGroupDesiredCapacity = a })---- | The length of time in seconds after a new EC2 instance comes into service--- that Auto Scaling starts checking its health.-asgHealthCheckGracePeriod :: Lens' AutoScalingGroup (Maybe (Val Integer'))-asgHealthCheckGracePeriod = lens _autoScalingGroupHealthCheckGracePeriod (\s a -> s { _autoScalingGroupHealthCheckGracePeriod = a })---- | The service you want the health status from, Amazon EC2 or Elastic Load--- Balancer. Valid values are EC2 or ELB.-asgHealthCheckType :: Lens' AutoScalingGroup (Maybe (Val Text))-asgHealthCheckType = lens _autoScalingGroupHealthCheckType (\s a -> s { _autoScalingGroupHealthCheckType = a })---- | The ID of the Amazon EC2 instance you want to use to create the Auto--- Scaling group. Use this property if you want to create an Auto Scaling--- group that uses an existing Amazon EC2 instance instead of a launch--- configuration. When you use an Amazon EC2 instance to create an Auto--- Scaling group, a new launch configuration is first created and then--- associated with the Auto Scaling group. The new launch configuration--- derives all its properties from the instance, with the exception of--- BlockDeviceMapping and AssociatePublicIpAddress.-asgInstanceId :: Lens' AutoScalingGroup (Maybe (Val Text))-asgInstanceId = lens _autoScalingGroupInstanceId (\s a -> s { _autoScalingGroupInstanceId = a })---- | Specifies the name of the associated--- AWS::AutoScaling::LaunchConfiguration. Note If this resource has a public--- IP address and is also in a VPC that is defined in the same template, you--- must use the DependsOn attribute to declare a dependency on the VPC-gateway--- attachment. For more information, see DependsOn Attribute.-asgLaunchConfigurationName :: Lens' AutoScalingGroup (Maybe (Val Text))-asgLaunchConfigurationName = lens _autoScalingGroupLaunchConfigurationName (\s a -> s { _autoScalingGroupLaunchConfigurationName = a })---- | A list of load balancers associated with this Auto Scaling group.-asgLoadBalancerNames :: Lens' AutoScalingGroup (Maybe [Val Text])-asgLoadBalancerNames = lens _autoScalingGroupLoadBalancerNames (\s a -> s { _autoScalingGroupLoadBalancerNames = a })---- | The maximum size of the Auto Scaling group.-asgMaxSize :: Lens' AutoScalingGroup (Val Text)-asgMaxSize = lens _autoScalingGroupMaxSize (\s a -> s { _autoScalingGroupMaxSize = a })---- | Enables the monitoring of group metrics of an Auto Scaling group.-asgMetricsCollection :: Lens' AutoScalingGroup (Maybe [AutoScalingMetricsCollection])-asgMetricsCollection = lens _autoScalingGroupMetricsCollection (\s a -> s { _autoScalingGroupMetricsCollection = a })---- | The minimum size of the Auto Scaling group.-asgMinSize :: Lens' AutoScalingGroup (Val Text)-asgMinSize = lens _autoScalingGroupMinSize (\s a -> s { _autoScalingGroupMinSize = a })---- | An embedded property that configures an Auto Scaling group to send--- notifications when specified events take place.-asgNotificationConfigurations :: Lens' AutoScalingGroup (Maybe [AutoScalingNotificationConfigurations])-asgNotificationConfigurations = lens _autoScalingGroupNotificationConfigurations (\s a -> s { _autoScalingGroupNotificationConfigurations = a })---- | The name of an existing cluster placement group into which you want to--- launch your instances. A placement group is a logical grouping of instances--- within a single Availability Zone. You cannot specify multiple Availability--- Zones and a placement group.-asgPlacementGroup :: Lens' AutoScalingGroup (Maybe (Val Text))-asgPlacementGroup = lens _autoScalingGroupPlacementGroup (\s a -> s { _autoScalingGroupPlacementGroup = a })---- | The tags you want to attach to this resource. For more information about--- tags, go to Tagging Auto Scaling Groups and Amazon EC2 Instances in the--- Auto Scaling User Guide.-asgTags :: Lens' AutoScalingGroup (Maybe [AutoScalingTags])-asgTags = lens _autoScalingGroupTags (\s a -> s { _autoScalingGroupTags = a })---- | A policy or a list of policies that are used to select the instances to--- terminate. The policies are executed in the order that you list them. For--- more information on configuring a termination policy for your Auto Scaling--- group, see Instance Termination Policy for Your Auto Scaling Group in the--- Auto Scaling User Guide.-asgTerminationPolicies :: Lens' AutoScalingGroup (Maybe [Val Text])-asgTerminationPolicies = lens _autoScalingGroupTerminationPolicies (\s a -> s { _autoScalingGroupTerminationPolicies = a })---- | A list of subnet identifiers of Amazon Virtual Private Cloud (Amazon--- VPCs). If you specify the AvailabilityZones property, the subnets that you--- specify for this property must reside in those Availability Zones. For more--- information, go to Using EC2 Dedicated Instances Within Your VPC in the--- Auto Scaling User Guide.-asgVPCZoneIdentifier :: Lens' AutoScalingGroup (Maybe [Val Text])-asgVPCZoneIdentifier = lens _autoScalingGroupVPCZoneIdentifier (\s a -> s { _autoScalingGroupVPCZoneIdentifier = a })
+ library-gen/Stratosphere/Resources/AutoScalingLaunchConfiguration.hs view
@@ -0,0 +1,139 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html++module Stratosphere.Resources.AutoScalingLaunchConfiguration where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.AutoScalingLaunchConfigurationBlockDeviceMapping++-- | Full data type definition for AutoScalingLaunchConfiguration. See+-- | 'autoScalingLaunchConfiguration' for a more convenient constructor.+data AutoScalingLaunchConfiguration =+  AutoScalingLaunchConfiguration+  { _autoScalingLaunchConfigurationAssociatePublicIpAddress :: Maybe (Val Bool')+  , _autoScalingLaunchConfigurationBlockDeviceMappings :: Maybe [AutoScalingLaunchConfigurationBlockDeviceMapping]+  , _autoScalingLaunchConfigurationClassicLinkVPCId :: Maybe (Val Text)+  , _autoScalingLaunchConfigurationClassicLinkVPCSecurityGroups :: Maybe [Val Text]+  , _autoScalingLaunchConfigurationEbsOptimized :: Maybe (Val Bool')+  , _autoScalingLaunchConfigurationIamInstanceProfile :: Maybe (Val Text)+  , _autoScalingLaunchConfigurationImageId :: Val Text+  , _autoScalingLaunchConfigurationInstanceId :: Maybe (Val Text)+  , _autoScalingLaunchConfigurationInstanceMonitoring :: Maybe (Val Bool')+  , _autoScalingLaunchConfigurationInstanceType :: Val Text+  , _autoScalingLaunchConfigurationKernelId :: Maybe (Val Text)+  , _autoScalingLaunchConfigurationKeyName :: Maybe (Val Text)+  , _autoScalingLaunchConfigurationPlacementTenancy :: Maybe (Val Text)+  , _autoScalingLaunchConfigurationRamDiskId :: Maybe (Val Text)+  , _autoScalingLaunchConfigurationSecurityGroups :: Maybe [Val Text]+  , _autoScalingLaunchConfigurationSpotPrice :: Maybe (Val Text)+  , _autoScalingLaunchConfigurationUserData :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON AutoScalingLaunchConfiguration where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON AutoScalingLaunchConfiguration where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'AutoScalingLaunchConfiguration' containing required+-- | fields as arguments.+autoScalingLaunchConfiguration+  :: Val Text -- ^ 'aslcImageId'+  -> Val Text -- ^ 'aslcInstanceType'+  -> AutoScalingLaunchConfiguration+autoScalingLaunchConfiguration imageIdarg instanceTypearg =+  AutoScalingLaunchConfiguration+  { _autoScalingLaunchConfigurationAssociatePublicIpAddress = Nothing+  , _autoScalingLaunchConfigurationBlockDeviceMappings = Nothing+  , _autoScalingLaunchConfigurationClassicLinkVPCId = Nothing+  , _autoScalingLaunchConfigurationClassicLinkVPCSecurityGroups = Nothing+  , _autoScalingLaunchConfigurationEbsOptimized = Nothing+  , _autoScalingLaunchConfigurationIamInstanceProfile = Nothing+  , _autoScalingLaunchConfigurationImageId = imageIdarg+  , _autoScalingLaunchConfigurationInstanceId = Nothing+  , _autoScalingLaunchConfigurationInstanceMonitoring = Nothing+  , _autoScalingLaunchConfigurationInstanceType = instanceTypearg+  , _autoScalingLaunchConfigurationKernelId = Nothing+  , _autoScalingLaunchConfigurationKeyName = Nothing+  , _autoScalingLaunchConfigurationPlacementTenancy = Nothing+  , _autoScalingLaunchConfigurationRamDiskId = Nothing+  , _autoScalingLaunchConfigurationSecurityGroups = Nothing+  , _autoScalingLaunchConfigurationSpotPrice = Nothing+  , _autoScalingLaunchConfigurationUserData = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cf-as-launchconfig-associatepubip+aslcAssociatePublicIpAddress :: Lens' AutoScalingLaunchConfiguration (Maybe (Val Bool'))+aslcAssociatePublicIpAddress = lens _autoScalingLaunchConfigurationAssociatePublicIpAddress (\s a -> s { _autoScalingLaunchConfigurationAssociatePublicIpAddress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-blockdevicemappings+aslcBlockDeviceMappings :: Lens' AutoScalingLaunchConfiguration (Maybe [AutoScalingLaunchConfigurationBlockDeviceMapping])+aslcBlockDeviceMappings = lens _autoScalingLaunchConfigurationBlockDeviceMappings (\s a -> s { _autoScalingLaunchConfigurationBlockDeviceMappings = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-classiclinkvpcid+aslcClassicLinkVPCId :: Lens' AutoScalingLaunchConfiguration (Maybe (Val Text))+aslcClassicLinkVPCId = lens _autoScalingLaunchConfigurationClassicLinkVPCId (\s a -> s { _autoScalingLaunchConfigurationClassicLinkVPCId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-classiclinkvpcsecuritygroups+aslcClassicLinkVPCSecurityGroups :: Lens' AutoScalingLaunchConfiguration (Maybe [Val Text])+aslcClassicLinkVPCSecurityGroups = lens _autoScalingLaunchConfigurationClassicLinkVPCSecurityGroups (\s a -> s { _autoScalingLaunchConfigurationClassicLinkVPCSecurityGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-ebsoptimized+aslcEbsOptimized :: Lens' AutoScalingLaunchConfiguration (Maybe (Val Bool'))+aslcEbsOptimized = lens _autoScalingLaunchConfigurationEbsOptimized (\s a -> s { _autoScalingLaunchConfigurationEbsOptimized = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-iaminstanceprofile+aslcIamInstanceProfile :: Lens' AutoScalingLaunchConfiguration (Maybe (Val Text))+aslcIamInstanceProfile = lens _autoScalingLaunchConfigurationIamInstanceProfile (\s a -> s { _autoScalingLaunchConfigurationIamInstanceProfile = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-imageid+aslcImageId :: Lens' AutoScalingLaunchConfiguration (Val Text)+aslcImageId = lens _autoScalingLaunchConfigurationImageId (\s a -> s { _autoScalingLaunchConfigurationImageId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-instanceid+aslcInstanceId :: Lens' AutoScalingLaunchConfiguration (Maybe (Val Text))+aslcInstanceId = lens _autoScalingLaunchConfigurationInstanceId (\s a -> s { _autoScalingLaunchConfigurationInstanceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-instancemonitoring+aslcInstanceMonitoring :: Lens' AutoScalingLaunchConfiguration (Maybe (Val Bool'))+aslcInstanceMonitoring = lens _autoScalingLaunchConfigurationInstanceMonitoring (\s a -> s { _autoScalingLaunchConfigurationInstanceMonitoring = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-instancetype+aslcInstanceType :: Lens' AutoScalingLaunchConfiguration (Val Text)+aslcInstanceType = lens _autoScalingLaunchConfigurationInstanceType (\s a -> s { _autoScalingLaunchConfigurationInstanceType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-kernelid+aslcKernelId :: Lens' AutoScalingLaunchConfiguration (Maybe (Val Text))+aslcKernelId = lens _autoScalingLaunchConfigurationKernelId (\s a -> s { _autoScalingLaunchConfigurationKernelId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-keyname+aslcKeyName :: Lens' AutoScalingLaunchConfiguration (Maybe (Val Text))+aslcKeyName = lens _autoScalingLaunchConfigurationKeyName (\s a -> s { _autoScalingLaunchConfigurationKeyName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-placementtenancy+aslcPlacementTenancy :: Lens' AutoScalingLaunchConfiguration (Maybe (Val Text))+aslcPlacementTenancy = lens _autoScalingLaunchConfigurationPlacementTenancy (\s a -> s { _autoScalingLaunchConfigurationPlacementTenancy = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-ramdiskid+aslcRamDiskId :: Lens' AutoScalingLaunchConfiguration (Maybe (Val Text))+aslcRamDiskId = lens _autoScalingLaunchConfigurationRamDiskId (\s a -> s { _autoScalingLaunchConfigurationRamDiskId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-securitygroups+aslcSecurityGroups :: Lens' AutoScalingLaunchConfiguration (Maybe [Val Text])+aslcSecurityGroups = lens _autoScalingLaunchConfigurationSecurityGroups (\s a -> s { _autoScalingLaunchConfigurationSecurityGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-spotprice+aslcSpotPrice :: Lens' AutoScalingLaunchConfiguration (Maybe (Val Text))+aslcSpotPrice = lens _autoScalingLaunchConfigurationSpotPrice (\s a -> s { _autoScalingLaunchConfigurationSpotPrice = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-launchconfig.html#cfn-as-launchconfig-userdata+aslcUserData :: Lens' AutoScalingLaunchConfiguration (Maybe (Val Text))+aslcUserData = lens _autoScalingLaunchConfigurationUserData (\s a -> s { _autoScalingLaunchConfigurationUserData = a })
+ library-gen/Stratosphere/Resources/AutoScalingLifecycleHook.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html++module Stratosphere.Resources.AutoScalingLifecycleHook where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for AutoScalingLifecycleHook. See+-- | 'autoScalingLifecycleHook' for a more convenient constructor.+data AutoScalingLifecycleHook =+  AutoScalingLifecycleHook+  { _autoScalingLifecycleHookAutoScalingGroupName :: Val Text+  , _autoScalingLifecycleHookDefaultResult :: Maybe (Val Text)+  , _autoScalingLifecycleHookHeartbeatTimeout :: Maybe (Val Integer')+  , _autoScalingLifecycleHookLifecycleTransition :: Val Text+  , _autoScalingLifecycleHookNotificationMetadata :: Maybe (Val Text)+  , _autoScalingLifecycleHookNotificationTargetARN :: Val Text+  , _autoScalingLifecycleHookRoleARN :: Val Text+  } deriving (Show, Generic)++instance ToJSON AutoScalingLifecycleHook where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++instance FromJSON AutoScalingLifecycleHook where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++-- | Constructor for 'AutoScalingLifecycleHook' containing required fields as+-- | arguments.+autoScalingLifecycleHook+  :: Val Text -- ^ 'aslhAutoScalingGroupName'+  -> Val Text -- ^ 'aslhLifecycleTransition'+  -> Val Text -- ^ 'aslhNotificationTargetARN'+  -> Val Text -- ^ 'aslhRoleARN'+  -> AutoScalingLifecycleHook+autoScalingLifecycleHook autoScalingGroupNamearg lifecycleTransitionarg notificationTargetARNarg roleARNarg =+  AutoScalingLifecycleHook+  { _autoScalingLifecycleHookAutoScalingGroupName = autoScalingGroupNamearg+  , _autoScalingLifecycleHookDefaultResult = Nothing+  , _autoScalingLifecycleHookHeartbeatTimeout = Nothing+  , _autoScalingLifecycleHookLifecycleTransition = lifecycleTransitionarg+  , _autoScalingLifecycleHookNotificationMetadata = Nothing+  , _autoScalingLifecycleHookNotificationTargetARN = notificationTargetARNarg+  , _autoScalingLifecycleHookRoleARN = roleARNarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-autoscalinggroupname+aslhAutoScalingGroupName :: Lens' AutoScalingLifecycleHook (Val Text)+aslhAutoScalingGroupName = lens _autoScalingLifecycleHookAutoScalingGroupName (\s a -> s { _autoScalingLifecycleHookAutoScalingGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-defaultresult+aslhDefaultResult :: Lens' AutoScalingLifecycleHook (Maybe (Val Text))+aslhDefaultResult = lens _autoScalingLifecycleHookDefaultResult (\s a -> s { _autoScalingLifecycleHookDefaultResult = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-heartbeattimeout+aslhHeartbeatTimeout :: Lens' AutoScalingLifecycleHook (Maybe (Val Integer'))+aslhHeartbeatTimeout = lens _autoScalingLifecycleHookHeartbeatTimeout (\s a -> s { _autoScalingLifecycleHookHeartbeatTimeout = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-lifecycletransition+aslhLifecycleTransition :: Lens' AutoScalingLifecycleHook (Val Text)+aslhLifecycleTransition = lens _autoScalingLifecycleHookLifecycleTransition (\s a -> s { _autoScalingLifecycleHookLifecycleTransition = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-notificationmetadata+aslhNotificationMetadata :: Lens' AutoScalingLifecycleHook (Maybe (Val Text))+aslhNotificationMetadata = lens _autoScalingLifecycleHookNotificationMetadata (\s a -> s { _autoScalingLifecycleHookNotificationMetadata = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-notificationtargetarn+aslhNotificationTargetARN :: Lens' AutoScalingLifecycleHook (Val Text)+aslhNotificationTargetARN = lens _autoScalingLifecycleHookNotificationTargetARN (\s a -> s { _autoScalingLifecycleHookNotificationTargetARN = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-rolearn+aslhRoleARN :: Lens' AutoScalingLifecycleHook (Val Text)+aslhRoleARN = lens _autoScalingLifecycleHookRoleARN (\s a -> s { _autoScalingLifecycleHookRoleARN = a })
+ library-gen/Stratosphere/Resources/AutoScalingScalingPolicy.hs view
@@ -0,0 +1,91 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html++module Stratosphere.Resources.AutoScalingScalingPolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.AutoScalingScalingPolicyStepAdjustment++-- | Full data type definition for AutoScalingScalingPolicy. See+-- | 'autoScalingScalingPolicy' for a more convenient constructor.+data AutoScalingScalingPolicy =+  AutoScalingScalingPolicy+  { _autoScalingScalingPolicyAdjustmentType :: Val Text+  , _autoScalingScalingPolicyAutoScalingGroupName :: Val Text+  , _autoScalingScalingPolicyCooldown :: Maybe (Val Text)+  , _autoScalingScalingPolicyEstimatedInstanceWarmup :: Maybe (Val Integer')+  , _autoScalingScalingPolicyMetricAggregationType :: Maybe (Val Text)+  , _autoScalingScalingPolicyMinAdjustmentMagnitude :: Maybe (Val Integer')+  , _autoScalingScalingPolicyPolicyType :: Maybe (Val Text)+  , _autoScalingScalingPolicyScalingAdjustment :: Maybe (Val Integer')+  , _autoScalingScalingPolicyStepAdjustments :: Maybe [AutoScalingScalingPolicyStepAdjustment]+  } deriving (Show, Generic)++instance ToJSON AutoScalingScalingPolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++instance FromJSON AutoScalingScalingPolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++-- | Constructor for 'AutoScalingScalingPolicy' containing required fields as+-- | arguments.+autoScalingScalingPolicy+  :: Val Text -- ^ 'asspAdjustmentType'+  -> Val Text -- ^ 'asspAutoScalingGroupName'+  -> AutoScalingScalingPolicy+autoScalingScalingPolicy adjustmentTypearg autoScalingGroupNamearg =+  AutoScalingScalingPolicy+  { _autoScalingScalingPolicyAdjustmentType = adjustmentTypearg+  , _autoScalingScalingPolicyAutoScalingGroupName = autoScalingGroupNamearg+  , _autoScalingScalingPolicyCooldown = Nothing+  , _autoScalingScalingPolicyEstimatedInstanceWarmup = Nothing+  , _autoScalingScalingPolicyMetricAggregationType = Nothing+  , _autoScalingScalingPolicyMinAdjustmentMagnitude = Nothing+  , _autoScalingScalingPolicyPolicyType = Nothing+  , _autoScalingScalingPolicyScalingAdjustment = Nothing+  , _autoScalingScalingPolicyStepAdjustments = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-adjustmenttype+asspAdjustmentType :: Lens' AutoScalingScalingPolicy (Val Text)+asspAdjustmentType = lens _autoScalingScalingPolicyAdjustmentType (\s a -> s { _autoScalingScalingPolicyAdjustmentType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-autoscalinggroupname+asspAutoScalingGroupName :: Lens' AutoScalingScalingPolicy (Val Text)+asspAutoScalingGroupName = lens _autoScalingScalingPolicyAutoScalingGroupName (\s a -> s { _autoScalingScalingPolicyAutoScalingGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-cooldown+asspCooldown :: Lens' AutoScalingScalingPolicy (Maybe (Val Text))+asspCooldown = lens _autoScalingScalingPolicyCooldown (\s a -> s { _autoScalingScalingPolicyCooldown = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-estimatedinstancewarmup+asspEstimatedInstanceWarmup :: Lens' AutoScalingScalingPolicy (Maybe (Val Integer'))+asspEstimatedInstanceWarmup = lens _autoScalingScalingPolicyEstimatedInstanceWarmup (\s a -> s { _autoScalingScalingPolicyEstimatedInstanceWarmup = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-metricaggregationtype+asspMetricAggregationType :: Lens' AutoScalingScalingPolicy (Maybe (Val Text))+asspMetricAggregationType = lens _autoScalingScalingPolicyMetricAggregationType (\s a -> s { _autoScalingScalingPolicyMetricAggregationType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-minadjustmentmagnitude+asspMinAdjustmentMagnitude :: Lens' AutoScalingScalingPolicy (Maybe (Val Integer'))+asspMinAdjustmentMagnitude = lens _autoScalingScalingPolicyMinAdjustmentMagnitude (\s a -> s { _autoScalingScalingPolicyMinAdjustmentMagnitude = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-policytype+asspPolicyType :: Lens' AutoScalingScalingPolicy (Maybe (Val Text))+asspPolicyType = lens _autoScalingScalingPolicyPolicyType (\s a -> s { _autoScalingScalingPolicyPolicyType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-scalingadjustment+asspScalingAdjustment :: Lens' AutoScalingScalingPolicy (Maybe (Val Integer'))+asspScalingAdjustment = lens _autoScalingScalingPolicyScalingAdjustment (\s a -> s { _autoScalingScalingPolicyScalingAdjustment = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-policy.html#cfn-as-scalingpolicy-stepadjustments+asspStepAdjustments :: Lens' AutoScalingScalingPolicy (Maybe [AutoScalingScalingPolicyStepAdjustment])+asspStepAdjustments = lens _autoScalingScalingPolicyStepAdjustments (\s a -> s { _autoScalingScalingPolicyStepAdjustments = a })
+ library-gen/Stratosphere/Resources/AutoScalingScheduledAction.hs view
@@ -0,0 +1,78 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html++module Stratosphere.Resources.AutoScalingScheduledAction where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for AutoScalingScheduledAction. See+-- | 'autoScalingScheduledAction' for a more convenient constructor.+data AutoScalingScheduledAction =+  AutoScalingScheduledAction+  { _autoScalingScheduledActionAutoScalingGroupName :: Val Text+  , _autoScalingScheduledActionDesiredCapacity :: Maybe (Val Integer')+  , _autoScalingScheduledActionEndTime :: Maybe (Val Text)+  , _autoScalingScheduledActionMaxSize :: Maybe (Val Integer')+  , _autoScalingScheduledActionMinSize :: Maybe (Val Integer')+  , _autoScalingScheduledActionRecurrence :: Maybe (Val Text)+  , _autoScalingScheduledActionStartTime :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON AutoScalingScheduledAction where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON AutoScalingScheduledAction where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'AutoScalingScheduledAction' containing required fields+-- | as arguments.+autoScalingScheduledAction+  :: Val Text -- ^ 'assaAutoScalingGroupName'+  -> AutoScalingScheduledAction+autoScalingScheduledAction autoScalingGroupNamearg =+  AutoScalingScheduledAction+  { _autoScalingScheduledActionAutoScalingGroupName = autoScalingGroupNamearg+  , _autoScalingScheduledActionDesiredCapacity = Nothing+  , _autoScalingScheduledActionEndTime = Nothing+  , _autoScalingScheduledActionMaxSize = Nothing+  , _autoScalingScheduledActionMinSize = Nothing+  , _autoScalingScheduledActionRecurrence = Nothing+  , _autoScalingScheduledActionStartTime = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-asgname+assaAutoScalingGroupName :: Lens' AutoScalingScheduledAction (Val Text)+assaAutoScalingGroupName = lens _autoScalingScheduledActionAutoScalingGroupName (\s a -> s { _autoScalingScheduledActionAutoScalingGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-desiredcapacity+assaDesiredCapacity :: Lens' AutoScalingScheduledAction (Maybe (Val Integer'))+assaDesiredCapacity = lens _autoScalingScheduledActionDesiredCapacity (\s a -> s { _autoScalingScheduledActionDesiredCapacity = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-endtime+assaEndTime :: Lens' AutoScalingScheduledAction (Maybe (Val Text))+assaEndTime = lens _autoScalingScheduledActionEndTime (\s a -> s { _autoScalingScheduledActionEndTime = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-maxsize+assaMaxSize :: Lens' AutoScalingScheduledAction (Maybe (Val Integer'))+assaMaxSize = lens _autoScalingScheduledActionMaxSize (\s a -> s { _autoScalingScheduledActionMaxSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-minsize+assaMinSize :: Lens' AutoScalingScheduledAction (Maybe (Val Integer'))+assaMinSize = lens _autoScalingScheduledActionMinSize (\s a -> s { _autoScalingScheduledActionMinSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-recurrence+assaRecurrence :: Lens' AutoScalingScheduledAction (Maybe (Val Text))+assaRecurrence = lens _autoScalingScheduledActionRecurrence (\s a -> s { _autoScalingScheduledActionRecurrence = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-starttime+assaStartTime :: Lens' AutoScalingScheduledAction (Maybe (Val Text))+assaStartTime = lens _autoScalingScheduledActionStartTime (\s a -> s { _autoScalingScheduledActionStartTime = a })
− library-gen/Stratosphere/Resources/Bucket.hs
@@ -1,125 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::S3::Bucket type creates an Amazon S3 bucket. You can set a--- deletion policy for your bucket to control how AWS CloudFormation handles--- the bucket when the stack is deleted. For Amazon S3 buckets, you can choose--- to retain the bucket or to delete the bucket. For more information, see--- DeletionPolicy Attribute.--module Stratosphere.Resources.Bucket where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.ResourceTag-import Stratosphere.ResourceProperties.S3CorsConfiguration-import Stratosphere.ResourceProperties.S3LifecycleConfiguration-import Stratosphere.ResourceProperties.S3LoggingConfiguration-import Stratosphere.ResourceProperties.S3NotificationConfiguration-import Stratosphere.ResourceProperties.S3ReplicationConfiguration-import Stratosphere.ResourceProperties.S3VersioningConfiguration-import Stratosphere.ResourceProperties.S3WebsiteConfiguration-import Stratosphere.Types---- | Full data type definition for Bucket. See 'bucket' for a more convenient--- constructor.-data Bucket =-  Bucket-  { _bucketAccessControl :: Maybe CannedACL-  , _bucketBucketName :: Maybe (Val Text)-  , _bucketCorsConfiguration :: Maybe S3CorsConfiguration-  , _bucketLifecycleConfiguration :: Maybe S3LifecycleConfiguration-  , _bucketLoggingConfiguration :: Maybe S3LoggingConfiguration-  , _bucketNotificationConfiguration :: Maybe S3NotificationConfiguration-  , _bucketReplicationConfiguration :: Maybe S3ReplicationConfiguration-  , _bucketTags :: Maybe [ResourceTag]-  , _bucketVersioningConfiguration :: Maybe S3VersioningConfiguration-  , _bucketWebsiteConfiguration :: Maybe S3WebsiteConfiguration-  } deriving (Show, Generic)--instance ToJSON Bucket where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 7, omitNothingFields = True }--instance FromJSON Bucket where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 7, omitNothingFields = True }---- | Constructor for 'Bucket' containing required fields as arguments.-bucket-  :: Bucket-bucket  =-  Bucket-  { _bucketAccessControl = Nothing-  , _bucketBucketName = Nothing-  , _bucketCorsConfiguration = Nothing-  , _bucketLifecycleConfiguration = Nothing-  , _bucketLoggingConfiguration = Nothing-  , _bucketNotificationConfiguration = Nothing-  , _bucketReplicationConfiguration = Nothing-  , _bucketTags = Nothing-  , _bucketVersioningConfiguration = Nothing-  , _bucketWebsiteConfiguration = Nothing-  }---- | A canned access control list (ACL) that grants predefined permissions to--- the bucket. For more information about canned ACLs, see Canned ACLs in the--- Amazon S3 documentation.-bAccessControl :: Lens' Bucket (Maybe CannedACL)-bAccessControl = lens _bucketAccessControl (\s a -> s { _bucketAccessControl = a })---- | A name for the bucket. If you don't specify a name, AWS CloudFormation--- generates a unique physical ID and uses that ID for the bucket name. For--- more information, see Name Type. The bucket name must contain only--- lowercase letters, numbers, periods (.), and dashes (-). Important If you--- specify a name, you cannot do updates that require this resource to be--- replaced. You can still do updates that require no or some interruption. If--- you must replace the resource, specify a new name.-bBucketName :: Lens' Bucket (Maybe (Val Text))-bBucketName = lens _bucketBucketName (\s a -> s { _bucketBucketName = a })---- | Rules that define cross-origin resource sharing of objects in this--- bucket. For more information, see Enabling Cross-Origin Resource Sharing in--- the Amazon Simple Storage Service Developer Guide.-bCorsConfiguration :: Lens' Bucket (Maybe S3CorsConfiguration)-bCorsConfiguration = lens _bucketCorsConfiguration (\s a -> s { _bucketCorsConfiguration = a })---- | Rules that define how Amazon S3 manages objects during their lifetime.--- For more information, see Object Lifecycle Management in the Amazon Simple--- Storage Service Developer Guide.-bLifecycleConfiguration :: Lens' Bucket (Maybe S3LifecycleConfiguration)-bLifecycleConfiguration = lens _bucketLifecycleConfiguration (\s a -> s { _bucketLifecycleConfiguration = a })---- | Settings that defines where logs are stored.-bLoggingConfiguration :: Lens' Bucket (Maybe S3LoggingConfiguration)-bLoggingConfiguration = lens _bucketLoggingConfiguration (\s a -> s { _bucketLoggingConfiguration = a })---- | Configuration that defines how Amazon S3 handles bucket notifications.-bNotificationConfiguration :: Lens' Bucket (Maybe S3NotificationConfiguration)-bNotificationConfiguration = lens _bucketNotificationConfiguration (\s a -> s { _bucketNotificationConfiguration = a })---- | Configuration for replicating objects in an S3 bucket. To enable--- replication, you must also enable versioning by using the--- VersioningConfiguration property. Amazon S3 can store replicated objects in--- only one destination (S3 bucket). You cannot send replicated objects to--- multiple S3 buckets.-bReplicationConfiguration :: Lens' Bucket (Maybe S3ReplicationConfiguration)-bReplicationConfiguration = lens _bucketReplicationConfiguration (\s a -> s { _bucketReplicationConfiguration = a })---- | An arbitrary set of tags (key-value pairs) for this Amazon S3 bucket.-bTags :: Lens' Bucket (Maybe [ResourceTag])-bTags = lens _bucketTags (\s a -> s { _bucketTags = a })---- | Enables multiple variants of all objects in this bucket. You might enable--- versioning to prevent objects from being deleted or overwritten by mistake--- or to archive objects so that you can retrieve previous versions of them.-bVersioningConfiguration :: Lens' Bucket (Maybe S3VersioningConfiguration)-bVersioningConfiguration = lens _bucketVersioningConfiguration (\s a -> s { _bucketVersioningConfiguration = a })---- | Information used to configure the bucket as a static website. For more--- information, see Hosting Websites on Amazon S3.-bWebsiteConfiguration :: Lens' Bucket (Maybe S3WebsiteConfiguration)-bWebsiteConfiguration = lens _bucketWebsiteConfiguration (\s a -> s { _bucketWebsiteConfiguration = a })
− library-gen/Stratosphere/Resources/CacheCluster.hs
@@ -1,206 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::ElastiCache::CacheCluster type creates an Amazon ElastiCache--- cache cluster.--module Stratosphere.Resources.CacheCluster where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.ResourceTag---- | Full data type definition for CacheCluster. See 'cacheCluster' for a more--- convenient constructor.-data CacheCluster =-  CacheCluster-  { _cacheClusterAutoMinorVersionUpgrade :: Maybe (Val Bool')-  , _cacheClusterAZMode :: Maybe (Val Text)-  , _cacheClusterCacheNodeType :: Val Text-  , _cacheClusterCacheParameterGroupName :: Maybe (Val Text)-  , _cacheClusterCacheSecurityGroupNames :: Maybe [Val Text]-  , _cacheClusterCacheSubnetGroupName :: Maybe (Val Text)-  , _cacheClusterClusterName :: Maybe (Val Text)-  , _cacheClusterEngine :: Val Text-  , _cacheClusterEngineVersion :: Maybe (Val Text)-  , _cacheClusterNotificationTopicArn :: Maybe (Val Text)-  , _cacheClusterNumCacheNodes :: Val Integer'-  , _cacheClusterPort :: Maybe (Val Integer')-  , _cacheClusterPreferredAvailabilityZone :: Maybe (Val Text)-  , _cacheClusterPreferredAvailabilityZones :: Maybe [Val Text]-  , _cacheClusterPreferredMaintenanceWindow :: Maybe (Val Text)-  , _cacheClusterSnapshotArns :: Maybe [Val Text]-  , _cacheClusterSnapshotName :: Maybe (Val Text)-  , _cacheClusterSnapshotRetentionLimit :: Maybe (Val Integer')-  , _cacheClusterSnapshotWindow :: Maybe (Val Text)-  , _cacheClusterTags :: Maybe [ResourceTag]-  , _cacheClusterVpcSecurityGroupIds :: Maybe [Val Text]-  } deriving (Show, Generic)--instance ToJSON CacheCluster where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }--instance FromJSON CacheCluster where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }---- | Constructor for 'CacheCluster' containing required fields as arguments.-cacheCluster-  :: Val Text -- ^ 'ccCacheNodeType'-  -> Val Text -- ^ 'ccEngine'-  -> Val Integer' -- ^ 'ccNumCacheNodes'-  -> CacheCluster-cacheCluster cacheNodeTypearg enginearg numCacheNodesarg =-  CacheCluster-  { _cacheClusterAutoMinorVersionUpgrade = Nothing-  , _cacheClusterAZMode = Nothing-  , _cacheClusterCacheNodeType = cacheNodeTypearg-  , _cacheClusterCacheParameterGroupName = Nothing-  , _cacheClusterCacheSecurityGroupNames = Nothing-  , _cacheClusterCacheSubnetGroupName = Nothing-  , _cacheClusterClusterName = Nothing-  , _cacheClusterEngine = enginearg-  , _cacheClusterEngineVersion = Nothing-  , _cacheClusterNotificationTopicArn = Nothing-  , _cacheClusterNumCacheNodes = numCacheNodesarg-  , _cacheClusterPort = Nothing-  , _cacheClusterPreferredAvailabilityZone = Nothing-  , _cacheClusterPreferredAvailabilityZones = Nothing-  , _cacheClusterPreferredMaintenanceWindow = Nothing-  , _cacheClusterSnapshotArns = Nothing-  , _cacheClusterSnapshotName = Nothing-  , _cacheClusterSnapshotRetentionLimit = Nothing-  , _cacheClusterSnapshotWindow = Nothing-  , _cacheClusterTags = Nothing-  , _cacheClusterVpcSecurityGroupIds = Nothing-  }---- | Indicates that minor engine upgrades will be applied automatically to the--- cache cluster during the maintenance window.-ccAutoMinorVersionUpgrade :: Lens' CacheCluster (Maybe (Val Bool'))-ccAutoMinorVersionUpgrade = lens _cacheClusterAutoMinorVersionUpgrade (\s a -> s { _cacheClusterAutoMinorVersionUpgrade = a })---- | For Memcached cache clusters, indicates whether the nodes are created in--- a single Availability Zone or across multiple Availability Zones in the--- cluster's region. For valid values, see CreateCacheCluster in the Amazon--- ElastiCache API Reference.-ccAZMode :: Lens' CacheCluster (Maybe (Val Text))-ccAZMode = lens _cacheClusterAZMode (\s a -> s { _cacheClusterAZMode = a })---- | The compute and memory capacity of nodes in a cache cluster.-ccCacheNodeType :: Lens' CacheCluster (Val Text)-ccCacheNodeType = lens _cacheClusterCacheNodeType (\s a -> s { _cacheClusterCacheNodeType = a })---- | The name of the cache parameter group that is associated with this cache--- cluster.-ccCacheParameterGroupName :: Lens' CacheCluster (Maybe (Val Text))-ccCacheParameterGroupName = lens _cacheClusterCacheParameterGroupName (\s a -> s { _cacheClusterCacheParameterGroupName = a })---- | A list of cache security group names that are associated with this cache--- cluster. If your cache cluster is in a VPC, specify the VpcSecurityGroupIds--- property instead.-ccCacheSecurityGroupNames :: Lens' CacheCluster (Maybe [Val Text])-ccCacheSecurityGroupNames = lens _cacheClusterCacheSecurityGroupNames (\s a -> s { _cacheClusterCacheSecurityGroupNames = a })---- | The cache subnet group that you associate with a cache cluster.-ccCacheSubnetGroupName :: Lens' CacheCluster (Maybe (Val Text))-ccCacheSubnetGroupName = lens _cacheClusterCacheSubnetGroupName (\s a -> s { _cacheClusterCacheSubnetGroupName = a })---- | A name for the cache cluster. If you don't specify a name, AWS--- CloudFormation generates a unique physical ID and uses that ID for the--- cache cluster. For more information, see Name Type. Important If you--- specify a name, you cannot do updates that require this resource to be--- replaced. You can still do updates that require no or some interruption. If--- you must replace the resource, specify a new name. The name must contain 1--- to 20 alphanumeric characters or hyphens. The name must start with a letter--- and cannot end with a hyphen or contain two consecutive hyphens.-ccClusterName :: Lens' CacheCluster (Maybe (Val Text))-ccClusterName = lens _cacheClusterClusterName (\s a -> s { _cacheClusterClusterName = a })---- | The name of the cache engine to be used for this cache cluster, such as--- memcached or redis.-ccEngine :: Lens' CacheCluster (Val Text)-ccEngine = lens _cacheClusterEngine (\s a -> s { _cacheClusterEngine = a })---- | The version of the cache engine to be used for this cluster.-ccEngineVersion :: Lens' CacheCluster (Maybe (Val Text))-ccEngineVersion = lens _cacheClusterEngineVersion (\s a -> s { _cacheClusterEngineVersion = a })---- | The Amazon Resource Name (ARN) of the Amazon Simple Notification Service--- (SNS) topic to which notifications will be sent.-ccNotificationTopicArn :: Lens' CacheCluster (Maybe (Val Text))-ccNotificationTopicArn = lens _cacheClusterNotificationTopicArn (\s a -> s { _cacheClusterNotificationTopicArn = a })---- | The number of cache nodes that the cache cluster should have.-ccNumCacheNodes :: Lens' CacheCluster (Val Integer')-ccNumCacheNodes = lens _cacheClusterNumCacheNodes (\s a -> s { _cacheClusterNumCacheNodes = a })---- | The port number on which each of the cache nodes will accept connections.-ccPort :: Lens' CacheCluster (Maybe (Val Integer'))-ccPort = lens _cacheClusterPort (\s a -> s { _cacheClusterPort = a })---- | The Amazon EC2 Availability Zone in which the cache cluster is created.-ccPreferredAvailabilityZone :: Lens' CacheCluster (Maybe (Val Text))-ccPreferredAvailabilityZone = lens _cacheClusterPreferredAvailabilityZone (\s a -> s { _cacheClusterPreferredAvailabilityZone = a })---- | For Memcached cache clusters, the list of Availability Zones in which--- cache nodes are created. The number of Availability Zones listed must equal--- the number of cache nodes. For example, if you want to create three nodes--- in two different Availability Zones, you can specify ["us-east-1a",--- "us-east-1a", "us-east-1b"], which would create two nodes in us-east-1a and--- one node in us-east-1b. If you specify a subnet group and you're creating--- your cache cluster in a VPC, you must specify Availability Zones that are--- associated with the subnets in the subnet group that you've chosen. If you--- want all the nodes in the same Availability Zone, use the--- PreferredAvailabilityZone property or repeat the Availability Zone multiple--- times in the list.-ccPreferredAvailabilityZones :: Lens' CacheCluster (Maybe [Val Text])-ccPreferredAvailabilityZones = lens _cacheClusterPreferredAvailabilityZones (\s a -> s { _cacheClusterPreferredAvailabilityZones = a })---- | The weekly time range (in UTC) during which system maintenance can occur.-ccPreferredMaintenanceWindow :: Lens' CacheCluster (Maybe (Val Text))-ccPreferredMaintenanceWindow = lens _cacheClusterPreferredMaintenanceWindow (\s a -> s { _cacheClusterPreferredMaintenanceWindow = a })---- | The ARN of the snapshot file that you want to use to seed a new Redis--- cache cluster. If you manage a Redis instance outside of Amazon--- ElastiCache, you can create a new cache cluster in ElastiCache by using a--- snapshot file that is stored in an Amazon S3 bucket.-ccSnapshotArns :: Lens' CacheCluster (Maybe [Val Text])-ccSnapshotArns = lens _cacheClusterSnapshotArns (\s a -> s { _cacheClusterSnapshotArns = a })---- | The name of a snapshot from which to restore data into a new Redis cache--- cluster.-ccSnapshotName :: Lens' CacheCluster (Maybe (Val Text))-ccSnapshotName = lens _cacheClusterSnapshotName (\s a -> s { _cacheClusterSnapshotName = a })---- | For Redis cache clusters, the number of days for which ElastiCache--- retains automatic snapshots before deleting them. For example, if you set--- the value to 5, a snapshot that was taken today will be retained for 5 days--- before being deleted.-ccSnapshotRetentionLimit :: Lens' CacheCluster (Maybe (Val Integer'))-ccSnapshotRetentionLimit = lens _cacheClusterSnapshotRetentionLimit (\s a -> s { _cacheClusterSnapshotRetentionLimit = a })---- | For Redis cache clusters, the daily time range (in UTC) during which--- ElastiCache will begin taking a daily snapshot of your node group. For--- example, you can specify 05:00-09:00.-ccSnapshotWindow :: Lens' CacheCluster (Maybe (Val Text))-ccSnapshotWindow = lens _cacheClusterSnapshotWindow (\s a -> s { _cacheClusterSnapshotWindow = a })---- | An arbitrary set of tags (key–value pairs) for this cache cluster.-ccTags :: Lens' CacheCluster (Maybe [ResourceTag])-ccTags = lens _cacheClusterTags (\s a -> s { _cacheClusterTags = a })---- | A list of VPC security group IDs. If your cache cluster isn't in a VPC,--- specify the CacheSecurityGroupNames property instead. Note You must use the--- AWS::EC2::SecurityGroup resource instead of the--- AWS::ElastiCache::SecurityGroup resource in order to specify an ElastiCache--- security group that is in a VPC. In addition, if you use the default VPC--- for your AWS account, you must use the Fn::GetAtt function and the GroupId--- attribute to retrieve security group IDs (instead of the Ref function). To--- see a sample template, see the Template Snippet section.-ccVpcSecurityGroupIds :: Lens' CacheCluster (Maybe [Val Text])-ccVpcSecurityGroupIds = lens _cacheClusterVpcSecurityGroupIds (\s a -> s { _cacheClusterVpcSecurityGroupIds = a })
− library-gen/Stratosphere/Resources/CacheSubnetGroup.hs
@@ -1,54 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Creates a cache subnet group. For more information about cache subnet--- groups, go to Cache Subnet Groups in the Amazon ElastiCache User Guide or--- go to CreateCacheSubnetGroup in the Amazon ElastiCache API Reference Guide.--- When you specify an AWS::ElastiCache::SubnetGroup type as an argument to--- the Ref function, AWS CloudFormation returns the name of the cache subnet--- group.--module Stratosphere.Resources.CacheSubnetGroup where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for CacheSubnetGroup. See 'cacheSubnetGroup'--- for a more convenient constructor.-data CacheSubnetGroup =-  CacheSubnetGroup-  { _cacheSubnetGroupDescription :: Val Text-  , _cacheSubnetGroupSubnetIds :: [Val Text]-  } deriving (Show, Generic)--instance ToJSON CacheSubnetGroup where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }--instance FromJSON CacheSubnetGroup where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }---- | Constructor for 'CacheSubnetGroup' containing required fields as--- arguments.-cacheSubnetGroup-  :: Val Text -- ^ 'csgDescription'-  -> [Val Text] -- ^ 'csgSubnetIds'-  -> CacheSubnetGroup-cacheSubnetGroup descriptionarg subnetIdsarg =-  CacheSubnetGroup-  { _cacheSubnetGroupDescription = descriptionarg-  , _cacheSubnetGroupSubnetIds = subnetIdsarg-  }---- | The description for the cache subnet group.-csgDescription :: Lens' CacheSubnetGroup (Val Text)-csgDescription = lens _cacheSubnetGroupDescription (\s a -> s { _cacheSubnetGroupDescription = a })---- | The Amazon EC2 subnet IDs for the cache subnet group.-csgSubnetIds :: Lens' CacheSubnetGroup [Val Text]-csgSubnetIds = lens _cacheSubnetGroupSubnetIds (\s a -> s { _cacheSubnetGroupSubnetIds = a })
+ library-gen/Stratosphere/Resources/CertificateManagerCertificate.hs view
@@ -0,0 +1,61 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html++module Stratosphere.Resources.CertificateManagerCertificate where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CertificateManagerCertificateDomainValidationOption+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for CertificateManagerCertificate. See+-- | 'certificateManagerCertificate' for a more convenient constructor.+data CertificateManagerCertificate =+  CertificateManagerCertificate+  { _certificateManagerCertificateDomainName :: Val Text+  , _certificateManagerCertificateDomainValidationOptions :: Maybe [CertificateManagerCertificateDomainValidationOption]+  , _certificateManagerCertificateSubjectAlternativeNames :: Maybe [Val Text]+  , _certificateManagerCertificateTags :: Maybe [Tag]+  } deriving (Show, Generic)++instance ToJSON CertificateManagerCertificate where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON CertificateManagerCertificate where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'CertificateManagerCertificate' containing required+-- | fields as arguments.+certificateManagerCertificate+  :: Val Text -- ^ 'cmcDomainName'+  -> CertificateManagerCertificate+certificateManagerCertificate domainNamearg =+  CertificateManagerCertificate+  { _certificateManagerCertificateDomainName = domainNamearg+  , _certificateManagerCertificateDomainValidationOptions = Nothing+  , _certificateManagerCertificateSubjectAlternativeNames = Nothing+  , _certificateManagerCertificateTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-domainname+cmcDomainName :: Lens' CertificateManagerCertificate (Val Text)+cmcDomainName = lens _certificateManagerCertificateDomainName (\s a -> s { _certificateManagerCertificateDomainName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-domainvalidationoptions+cmcDomainValidationOptions :: Lens' CertificateManagerCertificate (Maybe [CertificateManagerCertificateDomainValidationOption])+cmcDomainValidationOptions = lens _certificateManagerCertificateDomainValidationOptions (\s a -> s { _certificateManagerCertificateDomainValidationOptions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-subjectalternativenames+cmcSubjectAlternativeNames :: Lens' CertificateManagerCertificate (Maybe [Val Text])+cmcSubjectAlternativeNames = lens _certificateManagerCertificateSubjectAlternativeNames (\s a -> s { _certificateManagerCertificateSubjectAlternativeNames = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-certificatemanager-certificate.html#cfn-certificatemanager-certificate-tags+cmcTags :: Lens' CertificateManagerCertificate (Maybe [Tag])+cmcTags = lens _certificateManagerCertificateTags (\s a -> s { _certificateManagerCertificateTags = a })
+ library-gen/Stratosphere/Resources/CloudFormationCustomResource.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html++module Stratosphere.Resources.CloudFormationCustomResource where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CloudFormationCustomResource. See+-- | 'cloudFormationCustomResource' for a more convenient constructor.+data CloudFormationCustomResource =+  CloudFormationCustomResource+  { _cloudFormationCustomResourceServiceToken :: Val Text+  } deriving (Show, Generic)++instance ToJSON CloudFormationCustomResource where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++instance FromJSON CloudFormationCustomResource where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++-- | Constructor for 'CloudFormationCustomResource' containing required fields+-- | as arguments.+cloudFormationCustomResource+  :: Val Text -- ^ 'cfcrServiceToken'+  -> CloudFormationCustomResource+cloudFormationCustomResource serviceTokenarg =+  CloudFormationCustomResource+  { _cloudFormationCustomResourceServiceToken = serviceTokenarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cfn-customresource.html#cfn-customresource-servicetoken+cfcrServiceToken :: Lens' CloudFormationCustomResource (Val Text)+cfcrServiceToken = lens _cloudFormationCustomResourceServiceToken (\s a -> s { _cloudFormationCustomResourceServiceToken = a })
+ library-gen/Stratosphere/Resources/CloudFormationStack.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html++module Stratosphere.Resources.CloudFormationStack where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for CloudFormationStack. See+-- | 'cloudFormationStack' for a more convenient constructor.+data CloudFormationStack =+  CloudFormationStack+  { _cloudFormationStackNotificationARNs :: Maybe [Val Text]+  , _cloudFormationStackParameters :: Maybe Object+  , _cloudFormationStackTags :: Maybe [Tag]+  , _cloudFormationStackTemplateURL :: Val Text+  , _cloudFormationStackTimeoutInMinutes :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON CloudFormationStack where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++instance FromJSON CloudFormationStack where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++-- | Constructor for 'CloudFormationStack' containing required fields as+-- | arguments.+cloudFormationStack+  :: Val Text -- ^ 'cfsTemplateURL'+  -> CloudFormationStack+cloudFormationStack templateURLarg =+  CloudFormationStack+  { _cloudFormationStackNotificationARNs = Nothing+  , _cloudFormationStackParameters = Nothing+  , _cloudFormationStackTags = Nothing+  , _cloudFormationStackTemplateURL = templateURLarg+  , _cloudFormationStackTimeoutInMinutes = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-notificationarns+cfsNotificationARNs :: Lens' CloudFormationStack (Maybe [Val Text])+cfsNotificationARNs = lens _cloudFormationStackNotificationARNs (\s a -> s { _cloudFormationStackNotificationARNs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-parameters+cfsParameters :: Lens' CloudFormationStack (Maybe Object)+cfsParameters = lens _cloudFormationStackParameters (\s a -> s { _cloudFormationStackParameters = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-tags+cfsTags :: Lens' CloudFormationStack (Maybe [Tag])+cfsTags = lens _cloudFormationStackTags (\s a -> s { _cloudFormationStackTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-templateurl+cfsTemplateURL :: Lens' CloudFormationStack (Val Text)+cfsTemplateURL = lens _cloudFormationStackTemplateURL (\s a -> s { _cloudFormationStackTemplateURL = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-stack.html#cfn-cloudformation-stack-timeoutinminutes+cfsTimeoutInMinutes :: Lens' CloudFormationStack (Maybe (Val Integer'))+cfsTimeoutInMinutes = lens _cloudFormationStackTimeoutInMinutes (\s a -> s { _cloudFormationStackTimeoutInMinutes = a })
+ library-gen/Stratosphere/Resources/CloudFormationWaitCondition.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html++module Stratosphere.Resources.CloudFormationWaitCondition where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CloudFormationWaitCondition. See+-- | 'cloudFormationWaitCondition' for a more convenient constructor.+data CloudFormationWaitCondition =+  CloudFormationWaitCondition+  { _cloudFormationWaitConditionCount :: Maybe (Val Integer')+  , _cloudFormationWaitConditionHandle :: Val Text+  , _cloudFormationWaitConditionTimeout :: Val Text+  } deriving (Show, Generic)++instance ToJSON CloudFormationWaitCondition where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON CloudFormationWaitCondition where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'CloudFormationWaitCondition' containing required fields+-- | as arguments.+cloudFormationWaitCondition+  :: Val Text -- ^ 'cfwcHandle'+  -> Val Text -- ^ 'cfwcTimeout'+  -> CloudFormationWaitCondition+cloudFormationWaitCondition handlearg timeoutarg =+  CloudFormationWaitCondition+  { _cloudFormationWaitConditionCount = Nothing+  , _cloudFormationWaitConditionHandle = handlearg+  , _cloudFormationWaitConditionTimeout = timeoutarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-count+cfwcCount :: Lens' CloudFormationWaitCondition (Maybe (Val Integer'))+cfwcCount = lens _cloudFormationWaitConditionCount (\s a -> s { _cloudFormationWaitConditionCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-handle+cfwcHandle :: Lens' CloudFormationWaitCondition (Val Text)+cfwcHandle = lens _cloudFormationWaitConditionHandle (\s a -> s { _cloudFormationWaitConditionHandle = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html#cfn-waitcondition-timeout+cfwcTimeout :: Lens' CloudFormationWaitCondition (Val Text)+cfwcTimeout = lens _cloudFormationWaitConditionTimeout (\s a -> s { _cloudFormationWaitConditionTimeout = a })
+ library-gen/Stratosphere/Resources/CloudFormationWaitConditionHandle.hs view
@@ -0,0 +1,39 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitconditionhandle.html++module Stratosphere.Resources.CloudFormationWaitConditionHandle where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CloudFormationWaitConditionHandle. See+-- | 'cloudFormationWaitConditionHandle' for a more convenient constructor.+data CloudFormationWaitConditionHandle =+  CloudFormationWaitConditionHandle+  { +  } deriving (Show, Generic)++instance ToJSON CloudFormationWaitConditionHandle where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON CloudFormationWaitConditionHandle where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'CloudFormationWaitConditionHandle' containing required+-- | fields as arguments.+cloudFormationWaitConditionHandle+  :: CloudFormationWaitConditionHandle+cloudFormationWaitConditionHandle  =+  CloudFormationWaitConditionHandle+  { +  }++
+ library-gen/Stratosphere/Resources/CloudFrontDistribution.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution.html++module Stratosphere.Resources.CloudFrontDistribution where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CloudFrontDistributionDistributionConfig++-- | Full data type definition for CloudFrontDistribution. See+-- | 'cloudFrontDistribution' for a more convenient constructor.+data CloudFrontDistribution =+  CloudFrontDistribution+  { _cloudFrontDistributionDistributionConfig :: CloudFrontDistributionDistributionConfig+  } deriving (Show, Generic)++instance ToJSON CloudFrontDistribution where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++instance FromJSON CloudFrontDistribution where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++-- | Constructor for 'CloudFrontDistribution' containing required fields as+-- | arguments.+cloudFrontDistribution+  :: CloudFrontDistributionDistributionConfig -- ^ 'cfdDistributionConfig'+  -> CloudFrontDistribution+cloudFrontDistribution distributionConfigarg =+  CloudFrontDistribution+  { _cloudFrontDistributionDistributionConfig = distributionConfigarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution.html#cfn-cloudfront-distribution-distributionconfig+cfdDistributionConfig :: Lens' CloudFrontDistribution CloudFrontDistributionDistributionConfig+cfdDistributionConfig = lens _cloudFrontDistributionDistributionConfig (\s a -> s { _cloudFrontDistributionDistributionConfig = a })
+ library-gen/Stratosphere/Resources/CloudTrailTrail.hs view
@@ -0,0 +1,97 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html++module Stratosphere.Resources.CloudTrailTrail where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CloudTrailTrail. See 'cloudTrailTrail' for+-- | a more convenient constructor.+data CloudTrailTrail =+  CloudTrailTrail+  { _cloudTrailTrailCloudWatchLogsLogGroupArn :: Maybe (Val Text)+  , _cloudTrailTrailCloudWatchLogsRoleArn :: Maybe (Val Text)+  , _cloudTrailTrailEnableLogFileValidation :: Maybe (Val Bool')+  , _cloudTrailTrailIncludeGlobalServiceEvents :: Maybe (Val Bool')+  , _cloudTrailTrailIsLogging :: Val Bool'+  , _cloudTrailTrailIsMultiRegionTrail :: Maybe (Val Bool')+  , _cloudTrailTrailKMSKeyId :: Maybe (Val Text)+  , _cloudTrailTrailS3BucketName :: Val Text+  , _cloudTrailTrailS3KeyPrefix :: Maybe (Val Text)+  , _cloudTrailTrailSnsTopicName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CloudTrailTrail where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++instance FromJSON CloudTrailTrail where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++-- | Constructor for 'CloudTrailTrail' containing required fields as+-- | arguments.+cloudTrailTrail+  :: Val Bool' -- ^ 'cttIsLogging'+  -> Val Text -- ^ 'cttS3BucketName'+  -> CloudTrailTrail+cloudTrailTrail isLoggingarg s3BucketNamearg =+  CloudTrailTrail+  { _cloudTrailTrailCloudWatchLogsLogGroupArn = Nothing+  , _cloudTrailTrailCloudWatchLogsRoleArn = Nothing+  , _cloudTrailTrailEnableLogFileValidation = Nothing+  , _cloudTrailTrailIncludeGlobalServiceEvents = Nothing+  , _cloudTrailTrailIsLogging = isLoggingarg+  , _cloudTrailTrailIsMultiRegionTrail = Nothing+  , _cloudTrailTrailKMSKeyId = Nothing+  , _cloudTrailTrailS3BucketName = s3BucketNamearg+  , _cloudTrailTrailS3KeyPrefix = Nothing+  , _cloudTrailTrailSnsTopicName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-cloudwatchlogsloggrouparn+cttCloudWatchLogsLogGroupArn :: Lens' CloudTrailTrail (Maybe (Val Text))+cttCloudWatchLogsLogGroupArn = lens _cloudTrailTrailCloudWatchLogsLogGroupArn (\s a -> s { _cloudTrailTrailCloudWatchLogsLogGroupArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-cloudwatchlogsrolearn+cttCloudWatchLogsRoleArn :: Lens' CloudTrailTrail (Maybe (Val Text))+cttCloudWatchLogsRoleArn = lens _cloudTrailTrailCloudWatchLogsRoleArn (\s a -> s { _cloudTrailTrailCloudWatchLogsRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-enablelogfilevalidation+cttEnableLogFileValidation :: Lens' CloudTrailTrail (Maybe (Val Bool'))+cttEnableLogFileValidation = lens _cloudTrailTrailEnableLogFileValidation (\s a -> s { _cloudTrailTrailEnableLogFileValidation = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-includeglobalserviceevents+cttIncludeGlobalServiceEvents :: Lens' CloudTrailTrail (Maybe (Val Bool'))+cttIncludeGlobalServiceEvents = lens _cloudTrailTrailIncludeGlobalServiceEvents (\s a -> s { _cloudTrailTrailIncludeGlobalServiceEvents = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-islogging+cttIsLogging :: Lens' CloudTrailTrail (Val Bool')+cttIsLogging = lens _cloudTrailTrailIsLogging (\s a -> s { _cloudTrailTrailIsLogging = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-ismultiregiontrail+cttIsMultiRegionTrail :: Lens' CloudTrailTrail (Maybe (Val Bool'))+cttIsMultiRegionTrail = lens _cloudTrailTrailIsMultiRegionTrail (\s a -> s { _cloudTrailTrailIsMultiRegionTrail = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-kmskeyid+cttKMSKeyId :: Lens' CloudTrailTrail (Maybe (Val Text))+cttKMSKeyId = lens _cloudTrailTrailKMSKeyId (\s a -> s { _cloudTrailTrailKMSKeyId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-s3bucketname+cttS3BucketName :: Lens' CloudTrailTrail (Val Text)+cttS3BucketName = lens _cloudTrailTrailS3BucketName (\s a -> s { _cloudTrailTrailS3BucketName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-s3keyprefix+cttS3KeyPrefix :: Lens' CloudTrailTrail (Maybe (Val Text))+cttS3KeyPrefix = lens _cloudTrailTrailS3KeyPrefix (\s a -> s { _cloudTrailTrailS3KeyPrefix = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-trail.html#cfn-cloudtrail-trail-snstopicname+cttSnsTopicName :: Lens' CloudTrailTrail (Maybe (Val Text))+cttSnsTopicName = lens _cloudTrailTrailSnsTopicName (\s a -> s { _cloudTrailTrailSnsTopicName = a })
+ library-gen/Stratosphere/Resources/CloudWatchAlarm.hs view
@@ -0,0 +1,132 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html++module Stratosphere.Resources.CloudWatchAlarm where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CloudWatchAlarmDimension++-- | Full data type definition for CloudWatchAlarm. See 'cloudWatchAlarm' for+-- | a more convenient constructor.+data CloudWatchAlarm =+  CloudWatchAlarm+  { _cloudWatchAlarmActionsEnabled :: Maybe (Val Bool')+  , _cloudWatchAlarmAlarmActions :: Maybe [Val Text]+  , _cloudWatchAlarmAlarmDescription :: Maybe (Val Text)+  , _cloudWatchAlarmAlarmName :: Maybe (Val Text)+  , _cloudWatchAlarmComparisonOperator :: Val Text+  , _cloudWatchAlarmDimensions :: Maybe [CloudWatchAlarmDimension]+  , _cloudWatchAlarmEvaluationPeriods :: Val Double'+  , _cloudWatchAlarmInsufficientDataActions :: Maybe [Val Text]+  , _cloudWatchAlarmMetricName :: Val Text+  , _cloudWatchAlarmNamespace :: Val Text+  , _cloudWatchAlarmOKActions :: Maybe [Val Text]+  , _cloudWatchAlarmPeriod :: Val Integer'+  , _cloudWatchAlarmStatistic :: Val Text+  , _cloudWatchAlarmThreshold :: Val Double'+  , _cloudWatchAlarmUnit :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CloudWatchAlarm where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++instance FromJSON CloudWatchAlarm where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++-- | Constructor for 'CloudWatchAlarm' containing required fields as+-- | arguments.+cloudWatchAlarm+  :: Val Text -- ^ 'cwaComparisonOperator'+  -> Val Double' -- ^ 'cwaEvaluationPeriods'+  -> Val Text -- ^ 'cwaMetricName'+  -> Val Text -- ^ 'cwaNamespace'+  -> Val Integer' -- ^ 'cwaPeriod'+  -> Val Text -- ^ 'cwaStatistic'+  -> Val Double' -- ^ 'cwaThreshold'+  -> CloudWatchAlarm+cloudWatchAlarm comparisonOperatorarg evaluationPeriodsarg metricNamearg namespacearg periodarg statisticarg thresholdarg =+  CloudWatchAlarm+  { _cloudWatchAlarmActionsEnabled = Nothing+  , _cloudWatchAlarmAlarmActions = Nothing+  , _cloudWatchAlarmAlarmDescription = Nothing+  , _cloudWatchAlarmAlarmName = Nothing+  , _cloudWatchAlarmComparisonOperator = comparisonOperatorarg+  , _cloudWatchAlarmDimensions = Nothing+  , _cloudWatchAlarmEvaluationPeriods = evaluationPeriodsarg+  , _cloudWatchAlarmInsufficientDataActions = Nothing+  , _cloudWatchAlarmMetricName = metricNamearg+  , _cloudWatchAlarmNamespace = namespacearg+  , _cloudWatchAlarmOKActions = Nothing+  , _cloudWatchAlarmPeriod = periodarg+  , _cloudWatchAlarmStatistic = statisticarg+  , _cloudWatchAlarmThreshold = thresholdarg+  , _cloudWatchAlarmUnit = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-actionsenabled+cwaActionsEnabled :: Lens' CloudWatchAlarm (Maybe (Val Bool'))+cwaActionsEnabled = lens _cloudWatchAlarmActionsEnabled (\s a -> s { _cloudWatchAlarmActionsEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-alarmactions+cwaAlarmActions :: Lens' CloudWatchAlarm (Maybe [Val Text])+cwaAlarmActions = lens _cloudWatchAlarmAlarmActions (\s a -> s { _cloudWatchAlarmAlarmActions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-alarmdescription+cwaAlarmDescription :: Lens' CloudWatchAlarm (Maybe (Val Text))+cwaAlarmDescription = lens _cloudWatchAlarmAlarmDescription (\s a -> s { _cloudWatchAlarmAlarmDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-alarmname+cwaAlarmName :: Lens' CloudWatchAlarm (Maybe (Val Text))+cwaAlarmName = lens _cloudWatchAlarmAlarmName (\s a -> s { _cloudWatchAlarmAlarmName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-comparisonoperator+cwaComparisonOperator :: Lens' CloudWatchAlarm (Val Text)+cwaComparisonOperator = lens _cloudWatchAlarmComparisonOperator (\s a -> s { _cloudWatchAlarmComparisonOperator = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-dimension+cwaDimensions :: Lens' CloudWatchAlarm (Maybe [CloudWatchAlarmDimension])+cwaDimensions = lens _cloudWatchAlarmDimensions (\s a -> s { _cloudWatchAlarmDimensions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-evaluationperiods+cwaEvaluationPeriods :: Lens' CloudWatchAlarm (Val Double')+cwaEvaluationPeriods = lens _cloudWatchAlarmEvaluationPeriods (\s a -> s { _cloudWatchAlarmEvaluationPeriods = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-insufficientdataactions+cwaInsufficientDataActions :: Lens' CloudWatchAlarm (Maybe [Val Text])+cwaInsufficientDataActions = lens _cloudWatchAlarmInsufficientDataActions (\s a -> s { _cloudWatchAlarmInsufficientDataActions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-metricname+cwaMetricName :: Lens' CloudWatchAlarm (Val Text)+cwaMetricName = lens _cloudWatchAlarmMetricName (\s a -> s { _cloudWatchAlarmMetricName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-namespace+cwaNamespace :: Lens' CloudWatchAlarm (Val Text)+cwaNamespace = lens _cloudWatchAlarmNamespace (\s a -> s { _cloudWatchAlarmNamespace = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-okactions+cwaOKActions :: Lens' CloudWatchAlarm (Maybe [Val Text])+cwaOKActions = lens _cloudWatchAlarmOKActions (\s a -> s { _cloudWatchAlarmOKActions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-period+cwaPeriod :: Lens' CloudWatchAlarm (Val Integer')+cwaPeriod = lens _cloudWatchAlarmPeriod (\s a -> s { _cloudWatchAlarmPeriod = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-statistic+cwaStatistic :: Lens' CloudWatchAlarm (Val Text)+cwaStatistic = lens _cloudWatchAlarmStatistic (\s a -> s { _cloudWatchAlarmStatistic = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-threshold+cwaThreshold :: Lens' CloudWatchAlarm (Val Double')+cwaThreshold = lens _cloudWatchAlarmThreshold (\s a -> s { _cloudWatchAlarmThreshold = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-unit+cwaUnit :: Lens' CloudWatchAlarm (Maybe (Val Text))+cwaUnit = lens _cloudWatchAlarmUnit (\s a -> s { _cloudWatchAlarmUnit = a })
+ library-gen/Stratosphere/Resources/CodeBuildProject.hs view
@@ -0,0 +1,92 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html++module Stratosphere.Resources.CodeBuildProject where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CodeBuildProjectArtifacts+import Stratosphere.ResourceProperties.CodeBuildProjectEnvironment+import Stratosphere.ResourceProperties.CodeBuildProjectSource+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for CodeBuildProject. See 'codeBuildProject'+-- | for a more convenient constructor.+data CodeBuildProject =+  CodeBuildProject+  { _codeBuildProjectArtifacts :: Maybe CodeBuildProjectArtifacts+  , _codeBuildProjectDescription :: Maybe (Val Text)+  , _codeBuildProjectEncryptionKey :: Maybe (Val Text)+  , _codeBuildProjectEnvironment :: Maybe CodeBuildProjectEnvironment+  , _codeBuildProjectName :: Maybe (Val Text)+  , _codeBuildProjectServiceRole :: Maybe (Val Text)+  , _codeBuildProjectSource :: Maybe CodeBuildProjectSource+  , _codeBuildProjectTags :: Maybe [Tag]+  , _codeBuildProjectTimeoutInMinutes :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON CodeBuildProject where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++instance FromJSON CodeBuildProject where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++-- | Constructor for 'CodeBuildProject' containing required fields as+-- | arguments.+codeBuildProject+  :: CodeBuildProject+codeBuildProject  =+  CodeBuildProject+  { _codeBuildProjectArtifacts = Nothing+  , _codeBuildProjectDescription = Nothing+  , _codeBuildProjectEncryptionKey = Nothing+  , _codeBuildProjectEnvironment = Nothing+  , _codeBuildProjectName = Nothing+  , _codeBuildProjectServiceRole = Nothing+  , _codeBuildProjectSource = Nothing+  , _codeBuildProjectTags = Nothing+  , _codeBuildProjectTimeoutInMinutes = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-artifacts+cbpArtifacts :: Lens' CodeBuildProject (Maybe CodeBuildProjectArtifacts)+cbpArtifacts = lens _codeBuildProjectArtifacts (\s a -> s { _codeBuildProjectArtifacts = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-description+cbpDescription :: Lens' CodeBuildProject (Maybe (Val Text))+cbpDescription = lens _codeBuildProjectDescription (\s a -> s { _codeBuildProjectDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-encryptionkey+cbpEncryptionKey :: Lens' CodeBuildProject (Maybe (Val Text))+cbpEncryptionKey = lens _codeBuildProjectEncryptionKey (\s a -> s { _codeBuildProjectEncryptionKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-environment+cbpEnvironment :: Lens' CodeBuildProject (Maybe CodeBuildProjectEnvironment)+cbpEnvironment = lens _codeBuildProjectEnvironment (\s a -> s { _codeBuildProjectEnvironment = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-name+cbpName :: Lens' CodeBuildProject (Maybe (Val Text))+cbpName = lens _codeBuildProjectName (\s a -> s { _codeBuildProjectName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-servicerole+cbpServiceRole :: Lens' CodeBuildProject (Maybe (Val Text))+cbpServiceRole = lens _codeBuildProjectServiceRole (\s a -> s { _codeBuildProjectServiceRole = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-source+cbpSource :: Lens' CodeBuildProject (Maybe CodeBuildProjectSource)+cbpSource = lens _codeBuildProjectSource (\s a -> s { _codeBuildProjectSource = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-tags+cbpTags :: Lens' CodeBuildProject (Maybe [Tag])+cbpTags = lens _codeBuildProjectTags (\s a -> s { _codeBuildProjectTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html#cfn-codebuild-project-timeoutinminutes+cbpTimeoutInMinutes :: Lens' CodeBuildProject (Maybe (Val Integer'))+cbpTimeoutInMinutes = lens _codeBuildProjectTimeoutInMinutes (\s a -> s { _codeBuildProjectTimeoutInMinutes = a })
+ library-gen/Stratosphere/Resources/CodeCommitRepository.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html++module Stratosphere.Resources.CodeCommitRepository where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CodeCommitRepositoryRepositoryTrigger++-- | Full data type definition for CodeCommitRepository. See+-- | 'codeCommitRepository' for a more convenient constructor.+data CodeCommitRepository =+  CodeCommitRepository+  { _codeCommitRepositoryRepositoryDescription :: Maybe (Val Text)+  , _codeCommitRepositoryRepositoryName :: Val Text+  , _codeCommitRepositoryTriggers :: Maybe [CodeCommitRepositoryRepositoryTrigger]+  } deriving (Show, Generic)++instance ToJSON CodeCommitRepository where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++instance FromJSON CodeCommitRepository where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++-- | Constructor for 'CodeCommitRepository' containing required fields as+-- | arguments.+codeCommitRepository+  :: Val Text -- ^ 'ccrRepositoryName'+  -> CodeCommitRepository+codeCommitRepository repositoryNamearg =+  CodeCommitRepository+  { _codeCommitRepositoryRepositoryDescription = Nothing+  , _codeCommitRepositoryRepositoryName = repositoryNamearg+  , _codeCommitRepositoryTriggers = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-repositorydescription+ccrRepositoryDescription :: Lens' CodeCommitRepository (Maybe (Val Text))+ccrRepositoryDescription = lens _codeCommitRepositoryRepositoryDescription (\s a -> s { _codeCommitRepositoryRepositoryDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-repositoryname+ccrRepositoryName :: Lens' CodeCommitRepository (Val Text)+ccrRepositoryName = lens _codeCommitRepositoryRepositoryName (\s a -> s { _codeCommitRepositoryRepositoryName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html#cfn-codecommit-repository-triggers+ccrTriggers :: Lens' CodeCommitRepository (Maybe [CodeCommitRepositoryRepositoryTrigger])+ccrTriggers = lens _codeCommitRepositoryTriggers (\s a -> s { _codeCommitRepositoryTriggers = a })
+ library-gen/Stratosphere/Resources/CodeDeployApplication.hs view
@@ -0,0 +1,41 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html++module Stratosphere.Resources.CodeDeployApplication where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodeDeployApplication. See+-- | 'codeDeployApplication' for a more convenient constructor.+data CodeDeployApplication =+  CodeDeployApplication+  { _codeDeployApplicationApplicationName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CodeDeployApplication where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++instance FromJSON CodeDeployApplication where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++-- | Constructor for 'CodeDeployApplication' containing required fields as+-- | arguments.+codeDeployApplication+  :: CodeDeployApplication+codeDeployApplication  =+  CodeDeployApplication+  { _codeDeployApplicationApplicationName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html#cfn-codedeploy-application-applicationname+cdaApplicationName :: Lens' CodeDeployApplication (Maybe (Val Text))+cdaApplicationName = lens _codeDeployApplicationApplicationName (\s a -> s { _codeDeployApplicationApplicationName = a })
+ library-gen/Stratosphere/Resources/CodeDeployDeploymentConfig.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentconfig.html++module Stratosphere.Resources.CodeDeployDeploymentConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for CodeDeployDeploymentConfig. See+-- | 'codeDeployDeploymentConfig' for a more convenient constructor.+data CodeDeployDeploymentConfig =+  CodeDeployDeploymentConfig+  { _codeDeployDeploymentConfigDeploymentConfigName :: Maybe (Val Text)+  , _codeDeployDeploymentConfigMinimumHealthyHosts :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CodeDeployDeploymentConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON CodeDeployDeploymentConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'CodeDeployDeploymentConfig' containing required fields+-- | as arguments.+codeDeployDeploymentConfig+  :: CodeDeployDeploymentConfig+codeDeployDeploymentConfig  =+  CodeDeployDeploymentConfig+  { _codeDeployDeploymentConfigDeploymentConfigName = Nothing+  , _codeDeployDeploymentConfigMinimumHealthyHosts = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentconfig.html#cfn-codedeploy-deploymentconfig-deploymentconfigname+cddcDeploymentConfigName :: Lens' CodeDeployDeploymentConfig (Maybe (Val Text))+cddcDeploymentConfigName = lens _codeDeployDeploymentConfigDeploymentConfigName (\s a -> s { _codeDeployDeploymentConfigDeploymentConfigName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentconfig.html#cfn-codedeploy-deploymentconfig-minimumhealthyhosts+cddcMinimumHealthyHosts :: Lens' CodeDeployDeploymentConfig (Maybe (Val Text))+cddcMinimumHealthyHosts = lens _codeDeployDeploymentConfigMinimumHealthyHosts (\s a -> s { _codeDeployDeploymentConfigMinimumHealthyHosts = a })
+ library-gen/Stratosphere/Resources/CodeDeployDeploymentGroup.hs view
@@ -0,0 +1,87 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html++module Stratosphere.Resources.CodeDeployDeploymentGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupDeployment+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupEc2TagFilter+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupOnPremisesInstanceTagFilter++-- | Full data type definition for CodeDeployDeploymentGroup. See+-- | 'codeDeployDeploymentGroup' for a more convenient constructor.+data CodeDeployDeploymentGroup =+  CodeDeployDeploymentGroup+  { _codeDeployDeploymentGroupApplicationName :: Val Text+  , _codeDeployDeploymentGroupAutoScalingGroups :: Maybe [Val Text]+  , _codeDeployDeploymentGroupDeployment :: Maybe CodeDeployDeploymentGroupDeployment+  , _codeDeployDeploymentGroupDeploymentConfigName :: Maybe (Val Text)+  , _codeDeployDeploymentGroupDeploymentGroupName :: Maybe (Val Text)+  , _codeDeployDeploymentGroupEc2TagFilters :: Maybe [CodeDeployDeploymentGroupEc2TagFilter]+  , _codeDeployDeploymentGroupOnPremisesInstanceTagFilters :: Maybe [CodeDeployDeploymentGroupOnPremisesInstanceTagFilter]+  , _codeDeployDeploymentGroupServiceRoleArn :: Val Text+  } deriving (Show, Generic)++instance ToJSON CodeDeployDeploymentGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++instance FromJSON CodeDeployDeploymentGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++-- | Constructor for 'CodeDeployDeploymentGroup' containing required fields as+-- | arguments.+codeDeployDeploymentGroup+  :: Val Text -- ^ 'cddgApplicationName'+  -> Val Text -- ^ 'cddgServiceRoleArn'+  -> CodeDeployDeploymentGroup+codeDeployDeploymentGroup applicationNamearg serviceRoleArnarg =+  CodeDeployDeploymentGroup+  { _codeDeployDeploymentGroupApplicationName = applicationNamearg+  , _codeDeployDeploymentGroupAutoScalingGroups = Nothing+  , _codeDeployDeploymentGroupDeployment = Nothing+  , _codeDeployDeploymentGroupDeploymentConfigName = Nothing+  , _codeDeployDeploymentGroupDeploymentGroupName = Nothing+  , _codeDeployDeploymentGroupEc2TagFilters = Nothing+  , _codeDeployDeploymentGroupOnPremisesInstanceTagFilters = Nothing+  , _codeDeployDeploymentGroupServiceRoleArn = serviceRoleArnarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-applicationname+cddgApplicationName :: Lens' CodeDeployDeploymentGroup (Val Text)+cddgApplicationName = lens _codeDeployDeploymentGroupApplicationName (\s a -> s { _codeDeployDeploymentGroupApplicationName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-autoscalinggroups+cddgAutoScalingGroups :: Lens' CodeDeployDeploymentGroup (Maybe [Val Text])+cddgAutoScalingGroups = lens _codeDeployDeploymentGroupAutoScalingGroups (\s a -> s { _codeDeployDeploymentGroupAutoScalingGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-deployment+cddgDeployment :: Lens' CodeDeployDeploymentGroup (Maybe CodeDeployDeploymentGroupDeployment)+cddgDeployment = lens _codeDeployDeploymentGroupDeployment (\s a -> s { _codeDeployDeploymentGroupDeployment = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-deploymentconfigname+cddgDeploymentConfigName :: Lens' CodeDeployDeploymentGroup (Maybe (Val Text))+cddgDeploymentConfigName = lens _codeDeployDeploymentGroupDeploymentConfigName (\s a -> s { _codeDeployDeploymentGroupDeploymentConfigName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-deploymentgroupname+cddgDeploymentGroupName :: Lens' CodeDeployDeploymentGroup (Maybe (Val Text))+cddgDeploymentGroupName = lens _codeDeployDeploymentGroupDeploymentGroupName (\s a -> s { _codeDeployDeploymentGroupDeploymentGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-ec2tagfilters+cddgEc2TagFilters :: Lens' CodeDeployDeploymentGroup (Maybe [CodeDeployDeploymentGroupEc2TagFilter])+cddgEc2TagFilters = lens _codeDeployDeploymentGroupEc2TagFilters (\s a -> s { _codeDeployDeploymentGroupEc2TagFilters = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-onpremisesinstancetagfilters+cddgOnPremisesInstanceTagFilters :: Lens' CodeDeployDeploymentGroup (Maybe [CodeDeployDeploymentGroupOnPremisesInstanceTagFilter])+cddgOnPremisesInstanceTagFilters = lens _codeDeployDeploymentGroupOnPremisesInstanceTagFilters (\s a -> s { _codeDeployDeploymentGroupOnPremisesInstanceTagFilters = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-servicerolearn+cddgServiceRoleArn :: Lens' CodeDeployDeploymentGroup (Val Text)+cddgServiceRoleArn = lens _codeDeployDeploymentGroupServiceRoleArn (\s a -> s { _codeDeployDeploymentGroupServiceRoleArn = a })
+ library-gen/Stratosphere/Resources/CodePipelineCustomActionType.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html++module Stratosphere.Resources.CodePipelineCustomActionType where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CodePipelineCustomActionTypeConfigurationProperties+import Stratosphere.ResourceProperties.CodePipelineCustomActionTypeArtifactDetails+import Stratosphere.ResourceProperties.CodePipelineCustomActionTypeSettings++-- | Full data type definition for CodePipelineCustomActionType. See+-- | 'codePipelineCustomActionType' for a more convenient constructor.+data CodePipelineCustomActionType =+  CodePipelineCustomActionType+  { _codePipelineCustomActionTypeCategory :: Val Text+  , _codePipelineCustomActionTypeConfigurationProperties :: Maybe [CodePipelineCustomActionTypeConfigurationProperties]+  , _codePipelineCustomActionTypeInputArtifactDetails :: CodePipelineCustomActionTypeArtifactDetails+  , _codePipelineCustomActionTypeOutputArtifactDetails :: CodePipelineCustomActionTypeArtifactDetails+  , _codePipelineCustomActionTypeProvider :: Val Text+  , _codePipelineCustomActionTypeSettings :: Maybe CodePipelineCustomActionTypeSettings+  , _codePipelineCustomActionTypeVersion :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON CodePipelineCustomActionType where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++instance FromJSON CodePipelineCustomActionType where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++-- | Constructor for 'CodePipelineCustomActionType' containing required fields+-- | as arguments.+codePipelineCustomActionType+  :: Val Text -- ^ 'cpcatCategory'+  -> CodePipelineCustomActionTypeArtifactDetails -- ^ 'cpcatInputArtifactDetails'+  -> CodePipelineCustomActionTypeArtifactDetails -- ^ 'cpcatOutputArtifactDetails'+  -> Val Text -- ^ 'cpcatProvider'+  -> CodePipelineCustomActionType+codePipelineCustomActionType categoryarg inputArtifactDetailsarg outputArtifactDetailsarg providerarg =+  CodePipelineCustomActionType+  { _codePipelineCustomActionTypeCategory = categoryarg+  , _codePipelineCustomActionTypeConfigurationProperties = Nothing+  , _codePipelineCustomActionTypeInputArtifactDetails = inputArtifactDetailsarg+  , _codePipelineCustomActionTypeOutputArtifactDetails = outputArtifactDetailsarg+  , _codePipelineCustomActionTypeProvider = providerarg+  , _codePipelineCustomActionTypeSettings = Nothing+  , _codePipelineCustomActionTypeVersion = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-category+cpcatCategory :: Lens' CodePipelineCustomActionType (Val Text)+cpcatCategory = lens _codePipelineCustomActionTypeCategory (\s a -> s { _codePipelineCustomActionTypeCategory = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-configurationproperties+cpcatConfigurationProperties :: Lens' CodePipelineCustomActionType (Maybe [CodePipelineCustomActionTypeConfigurationProperties])+cpcatConfigurationProperties = lens _codePipelineCustomActionTypeConfigurationProperties (\s a -> s { _codePipelineCustomActionTypeConfigurationProperties = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-inputartifactdetails+cpcatInputArtifactDetails :: Lens' CodePipelineCustomActionType CodePipelineCustomActionTypeArtifactDetails+cpcatInputArtifactDetails = lens _codePipelineCustomActionTypeInputArtifactDetails (\s a -> s { _codePipelineCustomActionTypeInputArtifactDetails = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-outputartifactdetails+cpcatOutputArtifactDetails :: Lens' CodePipelineCustomActionType CodePipelineCustomActionTypeArtifactDetails+cpcatOutputArtifactDetails = lens _codePipelineCustomActionTypeOutputArtifactDetails (\s a -> s { _codePipelineCustomActionTypeOutputArtifactDetails = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-provider+cpcatProvider :: Lens' CodePipelineCustomActionType (Val Text)+cpcatProvider = lens _codePipelineCustomActionTypeProvider (\s a -> s { _codePipelineCustomActionTypeProvider = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-settings+cpcatSettings :: Lens' CodePipelineCustomActionType (Maybe CodePipelineCustomActionTypeSettings)+cpcatSettings = lens _codePipelineCustomActionTypeSettings (\s a -> s { _codePipelineCustomActionTypeSettings = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-customactiontype.html#cfn-codepipeline-customactiontype-version+cpcatVersion :: Lens' CodePipelineCustomActionType (Maybe (Val Text))+cpcatVersion = lens _codePipelineCustomActionTypeVersion (\s a -> s { _codePipelineCustomActionTypeVersion = a })
+ library-gen/Stratosphere/Resources/CodePipelinePipeline.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html++module Stratosphere.Resources.CodePipelinePipeline where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.CodePipelinePipelineArtifactStore+import Stratosphere.ResourceProperties.CodePipelinePipelineStageTransition+import Stratosphere.ResourceProperties.CodePipelinePipelineStageDeclaration++-- | Full data type definition for CodePipelinePipeline. See+-- | 'codePipelinePipeline' for a more convenient constructor.+data CodePipelinePipeline =+  CodePipelinePipeline+  { _codePipelinePipelineArtifactStore :: CodePipelinePipelineArtifactStore+  , _codePipelinePipelineDisableInboundStageTransitions :: Maybe [CodePipelinePipelineStageTransition]+  , _codePipelinePipelineName :: Maybe (Val Text)+  , _codePipelinePipelineRestartExecutionOnUpdate :: Maybe (Val Bool')+  , _codePipelinePipelineRoleArn :: Val Text+  , _codePipelinePipelineStages :: [CodePipelinePipelineStageDeclaration]+  } deriving (Show, Generic)++instance ToJSON CodePipelinePipeline where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++instance FromJSON CodePipelinePipeline where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++-- | Constructor for 'CodePipelinePipeline' containing required fields as+-- | arguments.+codePipelinePipeline+  :: CodePipelinePipelineArtifactStore -- ^ 'cppArtifactStore'+  -> Val Text -- ^ 'cppRoleArn'+  -> [CodePipelinePipelineStageDeclaration] -- ^ 'cppStages'+  -> CodePipelinePipeline+codePipelinePipeline artifactStorearg roleArnarg stagesarg =+  CodePipelinePipeline+  { _codePipelinePipelineArtifactStore = artifactStorearg+  , _codePipelinePipelineDisableInboundStageTransitions = Nothing+  , _codePipelinePipelineName = Nothing+  , _codePipelinePipelineRestartExecutionOnUpdate = Nothing+  , _codePipelinePipelineRoleArn = roleArnarg+  , _codePipelinePipelineStages = stagesarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-artifactstore+cppArtifactStore :: Lens' CodePipelinePipeline CodePipelinePipelineArtifactStore+cppArtifactStore = lens _codePipelinePipelineArtifactStore (\s a -> s { _codePipelinePipelineArtifactStore = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-disableinboundstagetransitions+cppDisableInboundStageTransitions :: Lens' CodePipelinePipeline (Maybe [CodePipelinePipelineStageTransition])+cppDisableInboundStageTransitions = lens _codePipelinePipelineDisableInboundStageTransitions (\s a -> s { _codePipelinePipelineDisableInboundStageTransitions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-name+cppName :: Lens' CodePipelinePipeline (Maybe (Val Text))+cppName = lens _codePipelinePipelineName (\s a -> s { _codePipelinePipelineName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-restartexecutiononupdate+cppRestartExecutionOnUpdate :: Lens' CodePipelinePipeline (Maybe (Val Bool'))+cppRestartExecutionOnUpdate = lens _codePipelinePipelineRestartExecutionOnUpdate (\s a -> s { _codePipelinePipelineRestartExecutionOnUpdate = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-rolearn+cppRoleArn :: Lens' CodePipelinePipeline (Val Text)+cppRoleArn = lens _codePipelinePipelineRoleArn (\s a -> s { _codePipelinePipelineRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html#cfn-codepipeline-pipeline-stages+cppStages :: Lens' CodePipelinePipeline [CodePipelinePipelineStageDeclaration]+cppStages = lens _codePipelinePipelineStages (\s a -> s { _codePipelinePipelineStages = a })
+ library-gen/Stratosphere/Resources/ConfigConfigRule.hs view
@@ -0,0 +1,73 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html++module Stratosphere.Resources.ConfigConfigRule where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ConfigConfigRuleScope+import Stratosphere.ResourceProperties.ConfigConfigRuleSource++-- | Full data type definition for ConfigConfigRule. See 'configConfigRule'+-- | for a more convenient constructor.+data ConfigConfigRule =+  ConfigConfigRule+  { _configConfigRuleConfigRuleName :: Maybe (Val Text)+  , _configConfigRuleDescription :: Maybe (Val Text)+  , _configConfigRuleInputParameters :: Maybe Object+  , _configConfigRuleMaximumExecutionFrequency :: Maybe (Val Text)+  , _configConfigRuleScope :: Maybe ConfigConfigRuleScope+  , _configConfigRuleSource :: ConfigConfigRuleSource+  } deriving (Show, Generic)++instance ToJSON ConfigConfigRule where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++instance FromJSON ConfigConfigRule where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++-- | Constructor for 'ConfigConfigRule' containing required fields as+-- | arguments.+configConfigRule+  :: ConfigConfigRuleSource -- ^ 'ccrSource'+  -> ConfigConfigRule+configConfigRule sourcearg =+  ConfigConfigRule+  { _configConfigRuleConfigRuleName = Nothing+  , _configConfigRuleDescription = Nothing+  , _configConfigRuleInputParameters = Nothing+  , _configConfigRuleMaximumExecutionFrequency = Nothing+  , _configConfigRuleScope = Nothing+  , _configConfigRuleSource = sourcearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-configrulename+ccrConfigRuleName :: Lens' ConfigConfigRule (Maybe (Val Text))+ccrConfigRuleName = lens _configConfigRuleConfigRuleName (\s a -> s { _configConfigRuleConfigRuleName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-description+ccrDescription :: Lens' ConfigConfigRule (Maybe (Val Text))+ccrDescription = lens _configConfigRuleDescription (\s a -> s { _configConfigRuleDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-inputparameters+ccrInputParameters :: Lens' ConfigConfigRule (Maybe Object)+ccrInputParameters = lens _configConfigRuleInputParameters (\s a -> s { _configConfigRuleInputParameters = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-maximumexecutionfrequency+ccrMaximumExecutionFrequency :: Lens' ConfigConfigRule (Maybe (Val Text))+ccrMaximumExecutionFrequency = lens _configConfigRuleMaximumExecutionFrequency (\s a -> s { _configConfigRuleMaximumExecutionFrequency = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-scope+ccrScope :: Lens' ConfigConfigRule (Maybe ConfigConfigRuleScope)+ccrScope = lens _configConfigRuleScope (\s a -> s { _configConfigRuleScope = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-source+ccrSource :: Lens' ConfigConfigRule ConfigConfigRuleSource+ccrSource = lens _configConfigRuleSource (\s a -> s { _configConfigRuleSource = a })
+ library-gen/Stratosphere/Resources/ConfigConfigurationRecorder.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html++module Stratosphere.Resources.ConfigConfigurationRecorder where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ConfigConfigurationRecorderRecordingGroup++-- | Full data type definition for ConfigConfigurationRecorder. See+-- | 'configConfigurationRecorder' for a more convenient constructor.+data ConfigConfigurationRecorder =+  ConfigConfigurationRecorder+  { _configConfigurationRecorderName :: Maybe (Val Text)+  , _configConfigurationRecorderRecordingGroup :: Maybe ConfigConfigurationRecorderRecordingGroup+  , _configConfigurationRecorderRoleArn :: Val Text+  } deriving (Show, Generic)++instance ToJSON ConfigConfigurationRecorder where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON ConfigConfigurationRecorder where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'ConfigConfigurationRecorder' containing required fields+-- | as arguments.+configConfigurationRecorder+  :: Val Text -- ^ 'ccrRoleArn'+  -> ConfigConfigurationRecorder+configConfigurationRecorder roleArnarg =+  ConfigConfigurationRecorder+  { _configConfigurationRecorderName = Nothing+  , _configConfigurationRecorderRecordingGroup = Nothing+  , _configConfigurationRecorderRoleArn = roleArnarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html#cfn-config-configurationrecorder-name+ccrName :: Lens' ConfigConfigurationRecorder (Maybe (Val Text))+ccrName = lens _configConfigurationRecorderName (\s a -> s { _configConfigurationRecorderName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html#cfn-config-configurationrecorder-recordinggroup+ccrRecordingGroup :: Lens' ConfigConfigurationRecorder (Maybe ConfigConfigurationRecorderRecordingGroup)+ccrRecordingGroup = lens _configConfigurationRecorderRecordingGroup (\s a -> s { _configConfigurationRecorderRecordingGroup = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configurationrecorder.html#cfn-config-configurationrecorder-rolearn+ccrRoleArn :: Lens' ConfigConfigurationRecorder (Val Text)+ccrRoleArn = lens _configConfigurationRecorderRoleArn (\s a -> s { _configConfigurationRecorderRoleArn = a })
+ library-gen/Stratosphere/Resources/ConfigDeliveryChannel.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html++module Stratosphere.Resources.ConfigDeliveryChannel where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ConfigDeliveryChannelConfigSnapshotDeliveryProperties++-- | Full data type definition for ConfigDeliveryChannel. See+-- | 'configDeliveryChannel' for a more convenient constructor.+data ConfigDeliveryChannel =+  ConfigDeliveryChannel+  { _configDeliveryChannelConfigSnapshotDeliveryProperties :: Maybe ConfigDeliveryChannelConfigSnapshotDeliveryProperties+  , _configDeliveryChannelName :: Maybe (Val Text)+  , _configDeliveryChannelS3BucketName :: Val Text+  , _configDeliveryChannelS3KeyPrefix :: Maybe (Val Text)+  , _configDeliveryChannelSnsTopicARN :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ConfigDeliveryChannel where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++instance FromJSON ConfigDeliveryChannel where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++-- | Constructor for 'ConfigDeliveryChannel' containing required fields as+-- | arguments.+configDeliveryChannel+  :: Val Text -- ^ 'cdcS3BucketName'+  -> ConfigDeliveryChannel+configDeliveryChannel s3BucketNamearg =+  ConfigDeliveryChannel+  { _configDeliveryChannelConfigSnapshotDeliveryProperties = Nothing+  , _configDeliveryChannelName = Nothing+  , _configDeliveryChannelS3BucketName = s3BucketNamearg+  , _configDeliveryChannelS3KeyPrefix = Nothing+  , _configDeliveryChannelSnsTopicARN = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-configsnapshotdeliveryproperties+cdcConfigSnapshotDeliveryProperties :: Lens' ConfigDeliveryChannel (Maybe ConfigDeliveryChannelConfigSnapshotDeliveryProperties)+cdcConfigSnapshotDeliveryProperties = lens _configDeliveryChannelConfigSnapshotDeliveryProperties (\s a -> s { _configDeliveryChannelConfigSnapshotDeliveryProperties = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-name+cdcName :: Lens' ConfigDeliveryChannel (Maybe (Val Text))+cdcName = lens _configDeliveryChannelName (\s a -> s { _configDeliveryChannelName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-s3bucketname+cdcS3BucketName :: Lens' ConfigDeliveryChannel (Val Text)+cdcS3BucketName = lens _configDeliveryChannelS3BucketName (\s a -> s { _configDeliveryChannelS3BucketName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-s3keyprefix+cdcS3KeyPrefix :: Lens' ConfigDeliveryChannel (Maybe (Val Text))+cdcS3KeyPrefix = lens _configDeliveryChannelS3KeyPrefix (\s a -> s { _configDeliveryChannelS3KeyPrefix = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-deliverychannel.html#cfn-config-deliverychannel-snstopicarn+cdcSnsTopicARN :: Lens' ConfigDeliveryChannel (Maybe (Val Text))+cdcSnsTopicARN = lens _configDeliveryChannelSnsTopicARN (\s a -> s { _configDeliveryChannelSnsTopicARN = a })
− library-gen/Stratosphere/Resources/DBInstance.hs
@@ -1,383 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::RDS::DBInstance type creates an Amazon RDS database instance.--- For detailed information about configuring RDS DB instances, see--- CreateDBInstance.--module Stratosphere.Resources.DBInstance where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.ResourceTag---- | Full data type definition for DBInstance. See 'dbInstance' for a more--- convenient constructor.-data DBInstance =-  DBInstance-  { _dBInstanceAllocatedStorage :: Maybe (Val Text)-  , _dBInstanceAllowMajorVersionUpgrade :: Maybe (Val Bool')-  , _dBInstanceAutoMinorVersionUpgrade :: Maybe (Val Bool')-  , _dBInstanceAvailabilityZone :: Maybe (Val Text)-  , _dBInstanceBackupRetentionPeriod :: Maybe (Val Text)-  , _dBInstanceCharacterSetName :: Maybe (Val Text)-  , _dBInstanceDBClusterIdentifier :: Maybe (Val Text)-  , _dBInstanceDBInstanceClass :: Val Text-  , _dBInstanceDBInstanceIdentifier :: Maybe (Val Text)-  , _dBInstanceDBName :: Maybe (Val Text)-  , _dBInstanceDBParameterGroupName :: Maybe (Val Text)-  , _dBInstanceDBSecurityGroups :: Maybe [Val Text]-  , _dBInstanceDBSnapshotIdentifier :: Maybe (Val Text)-  , _dBInstanceDBSubnetGroupName :: Maybe (Val Text)-  , _dBInstanceEngine :: Maybe (Val Text)-  , _dBInstanceEngineVersion :: Maybe (Val Text)-  , _dBInstanceIops :: Maybe (Val Integer')-  , _dBInstanceKmsKeyId :: Maybe (Val Text)-  , _dBInstanceLicenseModel :: Maybe (Val Text)-  , _dBInstanceMasterUsername :: Maybe (Val Text)-  , _dBInstanceMasterUserPassword :: Maybe (Val Text)-  , _dBInstanceMultiAZ :: Maybe (Val Bool')-  , _dBInstanceOptionGroupName :: Maybe (Val Text)-  , _dBInstancePort :: Maybe (Val Text)-  , _dBInstancePreferredBackupWindow :: Maybe (Val Text)-  , _dBInstancePreferredMaintenanceWindow :: Maybe (Val Text)-  , _dBInstancePubliclyAccessible :: Maybe (Val Bool')-  , _dBInstanceSourceDBInstanceIdentifier :: Maybe (Val Text)-  , _dBInstanceStorageEncrypted :: Maybe (Val Bool')-  , _dBInstanceStorageType :: Maybe (Val Text)-  , _dBInstanceTags :: Maybe [ResourceTag]-  , _dBInstanceVPCSecurityGroups :: Maybe [Val Text]-  } deriving (Show, Generic)--instance ToJSON DBInstance where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 11, omitNothingFields = True }--instance FromJSON DBInstance where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 11, omitNothingFields = True }---- | Constructor for 'DBInstance' containing required fields as arguments.-dbInstance-  :: Val Text -- ^ 'dbiDBInstanceClass'-  -> DBInstance-dbInstance dBInstanceClassarg =-  DBInstance-  { _dBInstanceAllocatedStorage = Nothing-  , _dBInstanceAllowMajorVersionUpgrade = Nothing-  , _dBInstanceAutoMinorVersionUpgrade = Nothing-  , _dBInstanceAvailabilityZone = Nothing-  , _dBInstanceBackupRetentionPeriod = Nothing-  , _dBInstanceCharacterSetName = Nothing-  , _dBInstanceDBClusterIdentifier = Nothing-  , _dBInstanceDBInstanceClass = dBInstanceClassarg-  , _dBInstanceDBInstanceIdentifier = Nothing-  , _dBInstanceDBName = Nothing-  , _dBInstanceDBParameterGroupName = Nothing-  , _dBInstanceDBSecurityGroups = Nothing-  , _dBInstanceDBSnapshotIdentifier = Nothing-  , _dBInstanceDBSubnetGroupName = Nothing-  , _dBInstanceEngine = Nothing-  , _dBInstanceEngineVersion = Nothing-  , _dBInstanceIops = Nothing-  , _dBInstanceKmsKeyId = Nothing-  , _dBInstanceLicenseModel = Nothing-  , _dBInstanceMasterUsername = Nothing-  , _dBInstanceMasterUserPassword = Nothing-  , _dBInstanceMultiAZ = Nothing-  , _dBInstanceOptionGroupName = Nothing-  , _dBInstancePort = Nothing-  , _dBInstancePreferredBackupWindow = Nothing-  , _dBInstancePreferredMaintenanceWindow = Nothing-  , _dBInstancePubliclyAccessible = Nothing-  , _dBInstanceSourceDBInstanceIdentifier = Nothing-  , _dBInstanceStorageEncrypted = Nothing-  , _dBInstanceStorageType = Nothing-  , _dBInstanceTags = Nothing-  , _dBInstanceVPCSecurityGroups = Nothing-  }---- | The allocated storage size specified in gigabytes (GB). If any value is--- used in the Iops parameter, AllocatedStorage must be at least 100 GB, which--- corresponds to the minimum Iops value of 1000. If Iops is increased (in--- 1000 IOPS increments), then AllocatedStorage must also be increased (in 100--- GB increments) correspondingly.-dbiAllocatedStorage :: Lens' DBInstance (Maybe (Val Text))-dbiAllocatedStorage = lens _dBInstanceAllocatedStorage (\s a -> s { _dBInstanceAllocatedStorage = a })---- | Indicates whether major version upgrades are allowed. Changing this--- parameter does not result in an outage, and the change is applied--- asynchronously as soon as possible. Constraints: This parameter must be set--- to true when you specify an EngineVersion that differs from the DB--- instance's current major version.-dbiAllowMajorVersionUpgrade :: Lens' DBInstance (Maybe (Val Bool'))-dbiAllowMajorVersionUpgrade = lens _dBInstanceAllowMajorVersionUpgrade (\s a -> s { _dBInstanceAllowMajorVersionUpgrade = a })---- | Indicates that minor engine upgrades will be applied automatically to the--- DB instance during the maintenance window. The default value is true.-dbiAutoMinorVersionUpgrade :: Lens' DBInstance (Maybe (Val Bool'))-dbiAutoMinorVersionUpgrade = lens _dBInstanceAutoMinorVersionUpgrade (\s a -> s { _dBInstanceAutoMinorVersionUpgrade = a })---- | The name of the Availability Zone where the DB instance is located. You--- cannot set the AvailabilityZone parameter if the MultiAZ parameter is set--- to true.-dbiAvailabilityZone :: Lens' DBInstance (Maybe (Val Text))-dbiAvailabilityZone = lens _dBInstanceAvailabilityZone (\s a -> s { _dBInstanceAvailabilityZone = a })---- | The number of days for which automatic DB snapshots are retained.--- Important If this DB instance is deleted or replaced during an update, all--- automated snapshots are deleted. However, manual DB snapshot are retained.-dbiBackupRetentionPeriod :: Lens' DBInstance (Maybe (Val Text))-dbiBackupRetentionPeriod = lens _dBInstanceBackupRetentionPeriod (\s a -> s { _dBInstanceBackupRetentionPeriod = a })---- | For supported engines, specifies the character set to associate with the--- database instance. For more information, see Appendix: Oracle Character--- Sets Supported in Amazon RDS in the Amazon Relational Database Service User--- Guide. If you specify the DBSnapshotIdentifier or--- SourceDBInstanceIdentifier property, do not specify this property. The--- value is inherited from the snapshot or source database instance.-dbiCharacterSetName :: Lens' DBInstance (Maybe (Val Text))-dbiCharacterSetName = lens _dBInstanceCharacterSetName (\s a -> s { _dBInstanceCharacterSetName = a })---- | The identifier of an existing DB cluster that this instance will be--- associated with. If you specify this property, specify aurora for the--- Engine property and do not specify any of the following properties:--- AllocatedStorage, CharacterSetName, DBSecurityGroups,--- SourceDBInstanceIdentifier, and StorageType. Amazon RDS assigns the first--- DB instance in the cluster as the primary and additional DB instances as--- replicas.-dbiDBClusterIdentifier :: Lens' DBInstance (Maybe (Val Text))-dbiDBClusterIdentifier = lens _dBInstanceDBClusterIdentifier (\s a -> s { _dBInstanceDBClusterIdentifier = a })---- | The name of the compute and memory capacity class of the DB instance.-dbiDBInstanceClass :: Lens' DBInstance (Val Text)-dbiDBInstanceClass = lens _dBInstanceDBInstanceClass (\s a -> s { _dBInstanceDBInstanceClass = a })---- | A name for the DB instance. If you specify a name, AWS CloudFormation--- converts it to lower case. If you don't specify a name, AWS CloudFormation--- generates a unique physical ID and uses that ID for the DB instance. For--- more information, see Name Type. Important If you specify a name, you--- cannot do updates that require this resource to be replaced. You can still--- do updates that require no or some interruption. If you must replace the--- resource, specify a new name.-dbiDBInstanceIdentifier :: Lens' DBInstance (Maybe (Val Text))-dbiDBInstanceIdentifier = lens _dBInstanceDBInstanceIdentifier (\s a -> s { _dBInstanceDBInstanceIdentifier = a })---- | The name of the initial database of this instance that was provided at--- create time, if one was specified. This same name is returned for the life--- of the DB instance. Note If you restore from a snapshot, do specify this--- property for the MySQL or MariaDB engines.-dbiDBName :: Lens' DBInstance (Maybe (Val Text))-dbiDBName = lens _dBInstanceDBName (\s a -> s { _dBInstanceDBName = a })---- | The name of an existing DB parameter group or a reference to an--- AWS::RDS::DBParameterGroup resource created in the template.-dbiDBParameterGroupName :: Lens' DBInstance (Maybe (Val Text))-dbiDBParameterGroupName = lens _dBInstanceDBParameterGroupName (\s a -> s { _dBInstanceDBParameterGroupName = a })---- | A list of the DB security groups to assign to the Amazon RDS instance.--- The list can include both the name of existing DB security groups or--- references to AWS::RDS::DBSecurityGroup resources created in the template.--- If you set DBSecurityGroups, you must not set VPCSecurityGroups, and--- vice-versa.-dbiDBSecurityGroups :: Lens' DBInstance (Maybe [Val Text])-dbiDBSecurityGroups = lens _dBInstanceDBSecurityGroups (\s a -> s { _dBInstanceDBSecurityGroups = a })---- | The identifier for the DB snapshot to restore from. By specifying this--- property, you can create a DB instance from the specified DB snapshot. If--- the DBSnapshotIdentifier property is an empty string or the--- AWS::RDS::DBInstance declaration has no DBSnapshotIdentifier property, the--- database is created as a new database. If the property contains a value--- (other than empty string), AWS CloudFormation creates a database from the--- specified snapshot. If a snapshot with the specified name does not exist,--- the database creation fails and the stack rolls back. Some DB instance--- properties are not valid when you restore from a snapshot, such as the--- MasterUsername and MasterUserPassword properties. For information about the--- properties that you can specify, see the RestoreDBInstanceFromDBSnapshot--- action in the Amazon Relational Database Service API Reference.-dbiDBSnapshotIdentifier :: Lens' DBInstance (Maybe (Val Text))-dbiDBSnapshotIdentifier = lens _dBInstanceDBSnapshotIdentifier (\s a -> s { _dBInstanceDBSnapshotIdentifier = a })---- | A DB subnet group to associate with the DB instance. If there is no DB--- subnet group, then it is a non-VPC DB instance. For more information about--- using Amazon RDS in a VPC, go to Using Amazon RDS with Amazon Virtual--- Private Cloud (VPC) in the Amazon Relational Database Service Developer--- Guide.-dbiDBSubnetGroupName :: Lens' DBInstance (Maybe (Val Text))-dbiDBSubnetGroupName = lens _dBInstanceDBSubnetGroupName (\s a -> s { _dBInstanceDBSubnetGroupName = a })---- | The name of the database engine that the DB instance uses. This property--- is optional when you specify the DBSnapshotIdentifier property to create DB--- instances. For valid values, see the Engine parameter of the--- CreateDBInstance action in the Amazon Relational Database Service API--- Reference.-dbiEngine :: Lens' DBInstance (Maybe (Val Text))-dbiEngine = lens _dBInstanceEngine (\s a -> s { _dBInstanceEngine = a })---- | The version number of the database engine to use.-dbiEngineVersion :: Lens' DBInstance (Maybe (Val Text))-dbiEngineVersion = lens _dBInstanceEngineVersion (\s a -> s { _dBInstanceEngineVersion = a })---- | The number of I/O operations per second (IOPS) that the database--- provisions. The value must be equal to or greater than 1000. If you specify--- this property, you must follow the range of allowed ratios of your--- requested IOPS rate to the amount of storage that you allocate (IOPS to--- allocated storage). For example, you can provision an Oracle database--- instance with 1000 IOPS and 200 GB of storage (a ratio of 5:1) or specify--- 2000 IOPS with 200 GB of storage (a ratio of 10:1). For more information,--- see Amazon RDS Provisioned IOPS Storage to Improve Performance in the--- Amazon Relational Database Service User Guide.-dbiIops :: Lens' DBInstance (Maybe (Val Integer'))-dbiIops = lens _dBInstanceIops (\s a -> s { _dBInstanceIops = a })---- | The Amazon Resource Name (ARN) of the AWS Key Management Service master--- key that is used to encrypt the database instance, such as--- arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef.--- If you enable the StorageEncrypted property but don't specify this--- property, the default master key is used. If you specify this property, you--- must set the StorageEncrypted property to true. If you specify the--- DBSnapshotIdentifier or SourceDBInstanceIdentifier property, do not specify--- this property. The value is inherited from the snapshot or source database--- instance. Note Currently, if you specify DBSecurityGroups, this property is--- ignored. If you want to specify a security group and this property, you--- must use a VPC security group. For more information about Amazon RDS and--- VPC, see Using Amazon RDS with Amazon VPC in the Amazon Relational Database--- Service User Guide.-dbiKmsKeyId :: Lens' DBInstance (Maybe (Val Text))-dbiKmsKeyId = lens _dBInstanceKmsKeyId (\s a -> s { _dBInstanceKmsKeyId = a })---- | The license model information for the DB instance.-dbiLicenseModel :: Lens' DBInstance (Maybe (Val Text))-dbiLicenseModel = lens _dBInstanceLicenseModel (\s a -> s { _dBInstanceLicenseModel = a })---- | The master user name for the database instance. This property is optional--- when you specify the DBSnapshotIdentifier or the DBClusterIdentifier--- property to create DB instances. Note If you specify the--- SourceDBInstanceIdentifier or DBSnapshotIdentifier property, do not specify--- this property. The value is inherited from the source database instance or--- snapshot.-dbiMasterUsername :: Lens' DBInstance (Maybe (Val Text))-dbiMasterUsername = lens _dBInstanceMasterUsername (\s a -> s { _dBInstanceMasterUsername = a })---- | The master password for the database instance. This property is optional--- when you specify the DBSnapshotIdentifier or the DBClusterIdentifier--- property to create DB instances. Note If you specify the--- SourceDBInstanceIdentifier property, do not specify this property. The--- value is inherited from the source database instance.-dbiMasterUserPassword :: Lens' DBInstance (Maybe (Val Text))-dbiMasterUserPassword = lens _dBInstanceMasterUserPassword (\s a -> s { _dBInstanceMasterUserPassword = a })---- | Specifies if the database instance is a multiple Availability Zone--- deployment. You cannot set the AvailabilityZone parameter if the MultiAZ--- parameter is set to true. Note Do not specify this property if you want a--- Multi-AZ deployment for a SQL Server database instance. Use the mirroring--- option in an option group to set Multi-AZ for a SQL Server database--- instance.-dbiMultiAZ :: Lens' DBInstance (Maybe (Val Bool'))-dbiMultiAZ = lens _dBInstanceMultiAZ (\s a -> s { _dBInstanceMultiAZ = a })---- | An option group that this database instance is associated with.-dbiOptionGroupName :: Lens' DBInstance (Maybe (Val Text))-dbiOptionGroupName = lens _dBInstanceOptionGroupName (\s a -> s { _dBInstanceOptionGroupName = a })---- | The port for the instance.-dbiPort :: Lens' DBInstance (Maybe (Val Text))-dbiPort = lens _dBInstancePort (\s a -> s { _dBInstancePort = a })---- | The daily time range during which automated backups are created if--- automated backups are enabled, as determined by the BackupRetentionPeriod.-dbiPreferredBackupWindow :: Lens' DBInstance (Maybe (Val Text))-dbiPreferredBackupWindow = lens _dBInstancePreferredBackupWindow (\s a -> s { _dBInstancePreferredBackupWindow = a })---- | The weekly time range (in UTC) during which system maintenance can occur.-dbiPreferredMaintenanceWindow :: Lens' DBInstance (Maybe (Val Text))-dbiPreferredMaintenanceWindow = lens _dBInstancePreferredMaintenanceWindow (\s a -> s { _dBInstancePreferredMaintenanceWindow = a })---- | Indicates whether the database instance is an Internet-facing instance.--- If you specify true, an instance is created with a publicly resolvable DNS--- name, which resolves to a public IP address. If you specify false, an--- internal instance is created with a DNS name that resolves to a private IP--- address. The default behavior value depends on your VPC setup and the--- database subnet group. For more information, see the PubliclyAccessible--- parameter in CreateDBInstance in the Amazon Relational Database Service API--- Reference. If this resource has a public IP address and is also in a VPC--- that is defined in the same template, you must use the DependsOn attribute--- to declare a dependency on the VPC-gateway attachment. For more--- information, see DependsOn Attribute. Note Currently, if you specify--- DBSecurityGroups, this property is ignored. If you want to specify a--- security group and this property, you must use a VPC security group. For--- more information about Amazon RDS and VPC, see Using Amazon RDS with Amazon--- VPC in the Amazon Relational Database Service User Guide.-dbiPubliclyAccessible :: Lens' DBInstance (Maybe (Val Bool'))-dbiPubliclyAccessible = lens _dBInstancePubliclyAccessible (\s a -> s { _dBInstancePubliclyAccessible = a })---- | If you want to create a read replica DB instance, specify the ID of the--- source database instance. Each database instance can have a certain number--- of read replicas. For more information, see Working with Read Replicas in--- the Amazon Relational Database Service Developer Guide. The--- SourceDBInstanceIdentifier property determines whether a database instance--- is a read replica. If you remove the SourceDBInstanceIdentifier property--- from your current template and then update your stack, the read replica is--- deleted and a new database instance (not a read replica) is created.--- Important Read replicas do not support deletion policies. Any deletion--- policy that's associated with a read replica is ignored. If you specify--- SourceDBInstanceIdentifier, do not set the MultiAZ property to true and do--- not specify the DBSnapshotIdentifier property. You cannot deploy read--- replicas in multiple Availability Zones, and you cannot create a read--- replica from a snapshot. Do not set the BackupRetentionPeriod, DBName,--- MasterUsername, MasterUserPassword, and PreferredBackupWindow properties.--- The database attributes are inherited from the source database instance,--- and backups are disabled for read replicas. If the source DB instance is in--- a different region than the read replica, specify a valid DB instance ARN.--- For more information, see Constructing a Amazon RDS Amazon Resource Name--- (ARN) in the Amazon Relational Database Service User Guide. For DB--- instances in an Amazon Aurora clusters, do not specify this property.--- Amazon RDS assigns automatically assigns a writer and reader DB instances.-dbiSourceDBInstanceIdentifier :: Lens' DBInstance (Maybe (Val Text))-dbiSourceDBInstanceIdentifier = lens _dBInstanceSourceDBInstanceIdentifier (\s a -> s { _dBInstanceSourceDBInstanceIdentifier = a })---- | Indicates whether the database instance is encrypted. If you specify the--- DBClusterIdentifier, DBSnapshotIdentifier, or SourceDBInstanceIdentifier--- property, do not specify this property. The value is inherited from the--- cluster, snapshot, or source database instance. Note Currently, if you--- specify DBSecurityGroups, this property is ignored. If you want to specify--- a security group and this property, you must use a VPC security group. For--- more information about Amazon RDS and VPC, see Using Amazon RDS with Amazon--- VPC in the Amazon Relational Database Service User Guide.-dbiStorageEncrypted :: Lens' DBInstance (Maybe (Val Bool'))-dbiStorageEncrypted = lens _dBInstanceStorageEncrypted (\s a -> s { _dBInstanceStorageEncrypted = a })---- | The storage type associated with this database instance. For the default--- and valid values, see the StorageType parameter of the CreateDBInstance--- action in the Amazon Relational Database Service API Reference. Note--- Currently, if you specify DBSecurityGroups, this property is ignored. If--- you want to specify a security group and this property, you must use a VPC--- security group. For more information about Amazon RDS and VPC, see Using--- Amazon RDS with Amazon VPC in the Amazon Relational Database Service User--- Guide.-dbiStorageType :: Lens' DBInstance (Maybe (Val Text))-dbiStorageType = lens _dBInstanceStorageType (\s a -> s { _dBInstanceStorageType = a })---- | An arbitrary set of tags (key–value pairs) for this database instance.-dbiTags :: Lens' DBInstance (Maybe [ResourceTag])-dbiTags = lens _dBInstanceTags (\s a -> s { _dBInstanceTags = a })---- | A list of the VPC security groups to assign to the Amazon RDS instance.--- The list can include both the physical IDs of existing VPC security groups--- or references to AWS::EC2::SecurityGroup resources created in the template.--- If you set VPCSecurityGroups, you must not set DBSecurityGroups, and--- vice-versa. Important You can migrate a database instance in your stack--- from an RDS DB security group to a VPC security group, but you should keep--- the following points in mind: You cannot revert to using an RDS security--- group once you have established a VPC security group membership. When you--- migrate your DB instance to VPC security groups, if your stack update rolls--- back because of another failure in the database instance update, or because--- of an update failure in another AWS CloudFormation resource, the rollback--- will fail because it cannot revert to an RDS security group. To avoid this--- situation, only migrate your DB instance to using VPC security groups when--- that is the only change in your stack template.-dbiVPCSecurityGroups :: Lens' DBInstance (Maybe [Val Text])-dbiVPCSecurityGroups = lens _dBInstanceVPCSecurityGroups (\s a -> s { _dBInstanceVPCSecurityGroups = a })
− library-gen/Stratosphere/Resources/DBParameterGroup.hs
@@ -1,69 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Creates a custom parameter group for an RDS database family. For more--- information about RDS parameter groups, see Working with DB Parameter--- Groups in the Amazon Relational Database Service User Guide. This type can--- be declared in a template and referenced in the DBParameterGroupName--- parameter of AWS::RDS::DBInstance.--module Stratosphere.Resources.DBParameterGroup where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.ResourceTag---- | Full data type definition for DBParameterGroup. See 'dbParameterGroup'--- for a more convenient constructor.-data DBParameterGroup =-  DBParameterGroup-  { _dBParameterGroupDescription :: Val Text-  , _dBParameterGroupFamily :: Val Text-  , _dBParameterGroupParameters :: Maybe Value-  , _dBParameterGroupTags :: Maybe [ResourceTag]-  } deriving (Show, Generic)--instance ToJSON DBParameterGroup where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }--instance FromJSON DBParameterGroup where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }---- | Constructor for 'DBParameterGroup' containing required fields as--- arguments.-dbParameterGroup-  :: Val Text -- ^ 'dbpgDescription'-  -> Val Text -- ^ 'dbpgFamily'-  -> DBParameterGroup-dbParameterGroup descriptionarg familyarg =-  DBParameterGroup-  { _dBParameterGroupDescription = descriptionarg-  , _dBParameterGroupFamily = familyarg-  , _dBParameterGroupParameters = Nothing-  , _dBParameterGroupTags = Nothing-  }---- | A friendly description of the RDS parameter group. For example, "My--- Parameter Group".-dbpgDescription :: Lens' DBParameterGroup (Val Text)-dbpgDescription = lens _dBParameterGroupDescription (\s a -> s { _dBParameterGroupDescription = a })---- | The database family of this RDS parameter group. For example, "MySQL5.1".-dbpgFamily :: Lens' DBParameterGroup (Val Text)-dbpgFamily = lens _dBParameterGroupFamily (\s a -> s { _dBParameterGroupFamily = a })---- | The parameters to set for this RDS parameter group. Changes to dynamic--- parameters are applied immediately. Changes to static parameters require a--- reboot without failover to the DB instance that is associated with the--- parameter group before the change can take effect.-dbpgParameters :: Lens' DBParameterGroup (Maybe Value)-dbpgParameters = lens _dBParameterGroupParameters (\s a -> s { _dBParameterGroupParameters = a })---- | The tags that you want to attach to the RDS parameter group.-dbpgTags :: Lens' DBParameterGroup (Maybe [ResourceTag])-dbpgTags = lens _dBParameterGroupTags (\s a -> s { _dBParameterGroupTags = a })
− library-gen/Stratosphere/Resources/DBSecurityGroup.hs
@@ -1,70 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::RDS::DBSecurityGroup type is used to create or update an Amazon--- RDS DB Security Group. For more information about DB Security Groups, see--- Working with DB Security Groups in the Amazon Relational Database Service--- Developer Guide. For details on the settings for DB security groups, see--- CreateDBSecurityGroup. When you specify an AWS::RDS::DBSecurityGroup as an--- argument to the Ref function, AWS CloudFormation returns the value of the--- DBSecurityGroupName.--module Stratosphere.Resources.DBSecurityGroup where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.ResourceTag-import Stratosphere.ResourceProperties.RDSSecurityGroupRule---- | Full data type definition for DBSecurityGroup. See 'dbSecurityGroup' for--- a more convenient constructor.-data DBSecurityGroup =-  DBSecurityGroup-  { _dBSecurityGroupEC2VpcId :: Maybe (Val Text)-  , _dBSecurityGroupDBSecurityGroupIngress :: [RDSSecurityGroupRule]-  , _dBSecurityGroupGroupDescription :: Val Text-  , _dBSecurityGroupResourceTags :: Maybe [ResourceTag]-  } deriving (Show, Generic)--instance ToJSON DBSecurityGroup where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }--instance FromJSON DBSecurityGroup where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }---- | Constructor for 'DBSecurityGroup' containing required fields as--- arguments.-dbSecurityGroup-  :: [RDSSecurityGroupRule] -- ^ 'dbsgDBSecurityGroupIngress'-  -> Val Text -- ^ 'dbsgGroupDescription'-  -> DBSecurityGroup-dbSecurityGroup dBSecurityGroupIngressarg groupDescriptionarg =-  DBSecurityGroup-  { _dBSecurityGroupEC2VpcId = Nothing-  , _dBSecurityGroupDBSecurityGroupIngress = dBSecurityGroupIngressarg-  , _dBSecurityGroupGroupDescription = groupDescriptionarg-  , _dBSecurityGroupResourceTags = Nothing-  }---- | The Id of VPC. Indicates which VPC this DB Security Group should belong--- to. Type: String-dbsgEC2VpcId :: Lens' DBSecurityGroup (Maybe (Val Text))-dbsgEC2VpcId = lens _dBSecurityGroupEC2VpcId (\s a -> s { _dBSecurityGroupEC2VpcId = a })---- | Network ingress authorization for an Amazon EC2 security group or an IP--- address range. Type: List of RDS Security Group Rules.-dbsgDBSecurityGroupIngress :: Lens' DBSecurityGroup [RDSSecurityGroupRule]-dbsgDBSecurityGroupIngress = lens _dBSecurityGroupDBSecurityGroupIngress (\s a -> s { _dBSecurityGroupDBSecurityGroupIngress = a })---- | Description of the security group. Type: String-dbsgGroupDescription :: Lens' DBSecurityGroup (Val Text)-dbsgGroupDescription = lens _dBSecurityGroupGroupDescription (\s a -> s { _dBSecurityGroupGroupDescription = a })---- | The tags that you want to attach to the Amazon RDS DB security group.-dbsgResourceTags :: Lens' DBSecurityGroup (Maybe [ResourceTag])-dbsgResourceTags = lens _dBSecurityGroupResourceTags (\s a -> s { _dBSecurityGroupResourceTags = a })
− library-gen/Stratosphere/Resources/DBSecurityGroupIngress.hs
@@ -1,87 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::RDS::DBSecurityGroupIngress type enables ingress to a--- DBSecurityGroup using one of two forms of authorization. First, EC2 or VPC--- security groups can be added to the DBSecurityGroup if the application--- using the database is running on EC2 or VPC instances. Second, IP ranges--- are available if the application accessing your database is running on the--- Internet. For more information about DB security groups, see Working with--- DB security groups This type supports updates. For more information about--- updating stacks, see AWS CloudFormation Stacks Updates. For details about--- the settings for DB security group ingress, see--- AuthorizeDBSecurityGroupIngress.--module Stratosphere.Resources.DBSecurityGroupIngress where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for DBSecurityGroupIngress. See--- 'dbSecurityGroupIngress' for a more convenient constructor.-data DBSecurityGroupIngress =-  DBSecurityGroupIngress-  { _dBSecurityGroupIngressCIDRIP :: Maybe (Val Text)-  , _dBSecurityGroupIngressDBSecurityGroupName :: Val Text-  , _dBSecurityGroupIngressEC2SecurityGroupId :: Maybe (Val Text)-  , _dBSecurityGroupIngressEC2SecurityGroupName :: Maybe (Val Text)-  , _dBSecurityGroupIngressEC2SecurityGroupOwnerId :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON DBSecurityGroupIngress where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }--instance FromJSON DBSecurityGroupIngress where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }---- | Constructor for 'DBSecurityGroupIngress' containing required fields as--- arguments.-dbSecurityGroupIngress-  :: Val Text -- ^ 'dbsgiDBSecurityGroupName'-  -> DBSecurityGroupIngress-dbSecurityGroupIngress dBSecurityGroupNamearg =-  DBSecurityGroupIngress-  { _dBSecurityGroupIngressCIDRIP = Nothing-  , _dBSecurityGroupIngressDBSecurityGroupName = dBSecurityGroupNamearg-  , _dBSecurityGroupIngressEC2SecurityGroupId = Nothing-  , _dBSecurityGroupIngressEC2SecurityGroupName = Nothing-  , _dBSecurityGroupIngressEC2SecurityGroupOwnerId = Nothing-  }---- | The IP range to authorize. For an overview of CIDR ranges, go to the--- Wikipedia Tutorial. Type: String Update requires: No interruption-dbsgiCIDRIP :: Lens' DBSecurityGroupIngress (Maybe (Val Text))-dbsgiCIDRIP = lens _dBSecurityGroupIngressCIDRIP (\s a -> s { _dBSecurityGroupIngressCIDRIP = a })---- | The name (ARN) of the AWS::RDS::DBSecurityGroup to which this ingress--- will be added. Type: String-dbsgiDBSecurityGroupName :: Lens' DBSecurityGroupIngress (Val Text)-dbsgiDBSecurityGroupName = lens _dBSecurityGroupIngressDBSecurityGroupName (\s a -> s { _dBSecurityGroupIngressDBSecurityGroupName = a })---- | The ID of the VPC or EC2 security group to authorize. For VPC DB security--- groups, use EC2SecurityGroupId. For EC2 security groups, use--- EC2SecurityGroupOwnerId and either EC2SecurityGroupName or--- EC2SecurityGroupId. Type: String-dbsgiEC2SecurityGroupId :: Lens' DBSecurityGroupIngress (Maybe (Val Text))-dbsgiEC2SecurityGroupId = lens _dBSecurityGroupIngressEC2SecurityGroupId (\s a -> s { _dBSecurityGroupIngressEC2SecurityGroupId = a })---- | The name of the EC2 security group to authorize. For VPC DB security--- groups, use EC2SecurityGroupId. For EC2 security groups, use--- EC2SecurityGroupOwnerId and either EC2SecurityGroupName or--- EC2SecurityGroupId. Type: String-dbsgiEC2SecurityGroupName :: Lens' DBSecurityGroupIngress (Maybe (Val Text))-dbsgiEC2SecurityGroupName = lens _dBSecurityGroupIngressEC2SecurityGroupName (\s a -> s { _dBSecurityGroupIngressEC2SecurityGroupName = a })---- | The AWS Account Number of the owner of the EC2 security group specified--- in the EC2SecurityGroupName parameter. The AWS Access Key ID is not an--- acceptable value. For VPC DB security groups, use EC2SecurityGroupId. For--- EC2 security groups, use EC2SecurityGroupOwnerId and either--- EC2SecurityGroupName or EC2SecurityGroupId. Type: String-dbsgiEC2SecurityGroupOwnerId :: Lens' DBSecurityGroupIngress (Maybe (Val Text))-dbsgiEC2SecurityGroupOwnerId = lens _dBSecurityGroupIngressEC2SecurityGroupOwnerId (\s a -> s { _dBSecurityGroupIngressEC2SecurityGroupOwnerId = a })
− library-gen/Stratosphere/Resources/DBSubnetGroup.hs
@@ -1,56 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::RDS::DBSubnetGroup type creates an RDS database subnet group.--- Subnet groups must contain at least two subnet in two different--- Availability Zones in the same region.--module Stratosphere.Resources.DBSubnetGroup where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.ResourceTag---- | Full data type definition for DBSubnetGroup. See 'dbSubnetGroup' for a--- more convenient constructor.-data DBSubnetGroup =-  DBSubnetGroup-  { _dBSubnetGroupDBSubnetGroupDescription :: Val Text-  , _dBSubnetGroupSubnetIds :: [Val Text]-  , _dBSubnetGroupTags :: Maybe [ResourceTag]-  } deriving (Show, Generic)--instance ToJSON DBSubnetGroup where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }--instance FromJSON DBSubnetGroup where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }---- | Constructor for 'DBSubnetGroup' containing required fields as arguments.-dbSubnetGroup-  :: Val Text -- ^ 'dbsgDBSubnetGroupDescription'-  -> [Val Text] -- ^ 'dbsgSubnetIds'-  -> DBSubnetGroup-dbSubnetGroup dBSubnetGroupDescriptionarg subnetIdsarg =-  DBSubnetGroup-  { _dBSubnetGroupDBSubnetGroupDescription = dBSubnetGroupDescriptionarg-  , _dBSubnetGroupSubnetIds = subnetIdsarg-  , _dBSubnetGroupTags = Nothing-  }---- | The description for the DB Subnet Group.-dbsgDBSubnetGroupDescription :: Lens' DBSubnetGroup (Val Text)-dbsgDBSubnetGroupDescription = lens _dBSubnetGroupDBSubnetGroupDescription (\s a -> s { _dBSubnetGroupDBSubnetGroupDescription = a })---- | The EC2 Subnet IDs for the DB Subnet Group.-dbsgSubnetIds :: Lens' DBSubnetGroup [Val Text]-dbsgSubnetIds = lens _dBSubnetGroupSubnetIds (\s a -> s { _dBSubnetGroupSubnetIds = a })---- | The tags that you want to attach to the RDS database subnet group.-dbsgTags :: Lens' DBSubnetGroup (Maybe [ResourceTag])-dbsgTags = lens _dBSubnetGroupTags (\s a -> s { _dBSubnetGroupTags = a })
+ library-gen/Stratosphere/Resources/DataPipelinePipeline.hs view
@@ -0,0 +1,82 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html++module Stratosphere.Resources.DataPipelinePipeline where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.DataPipelinePipelineParameterObject+import Stratosphere.ResourceProperties.DataPipelinePipelineParameterValue+import Stratosphere.ResourceProperties.DataPipelinePipelinePipelineObject+import Stratosphere.ResourceProperties.DataPipelinePipelinePipelineTag++-- | Full data type definition for DataPipelinePipeline. See+-- | 'dataPipelinePipeline' for a more convenient constructor.+data DataPipelinePipeline =+  DataPipelinePipeline+  { _dataPipelinePipelineActivate :: Maybe (Val Bool')+  , _dataPipelinePipelineDescription :: Maybe (Val Text)+  , _dataPipelinePipelineName :: Val Text+  , _dataPipelinePipelineParameterObjects :: [DataPipelinePipelineParameterObject]+  , _dataPipelinePipelineParameterValues :: Maybe [DataPipelinePipelineParameterValue]+  , _dataPipelinePipelinePipelineObjects :: Maybe [DataPipelinePipelinePipelineObject]+  , _dataPipelinePipelinePipelineTags :: Maybe [DataPipelinePipelinePipelineTag]+  } deriving (Show, Generic)++instance ToJSON DataPipelinePipeline where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++instance FromJSON DataPipelinePipeline where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++-- | Constructor for 'DataPipelinePipeline' containing required fields as+-- | arguments.+dataPipelinePipeline+  :: Val Text -- ^ 'dppName'+  -> [DataPipelinePipelineParameterObject] -- ^ 'dppParameterObjects'+  -> DataPipelinePipeline+dataPipelinePipeline namearg parameterObjectsarg =+  DataPipelinePipeline+  { _dataPipelinePipelineActivate = Nothing+  , _dataPipelinePipelineDescription = Nothing+  , _dataPipelinePipelineName = namearg+  , _dataPipelinePipelineParameterObjects = parameterObjectsarg+  , _dataPipelinePipelineParameterValues = Nothing+  , _dataPipelinePipelinePipelineObjects = Nothing+  , _dataPipelinePipelinePipelineTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-activate+dppActivate :: Lens' DataPipelinePipeline (Maybe (Val Bool'))+dppActivate = lens _dataPipelinePipelineActivate (\s a -> s { _dataPipelinePipelineActivate = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-description+dppDescription :: Lens' DataPipelinePipeline (Maybe (Val Text))+dppDescription = lens _dataPipelinePipelineDescription (\s a -> s { _dataPipelinePipelineDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-name+dppName :: Lens' DataPipelinePipeline (Val Text)+dppName = lens _dataPipelinePipelineName (\s a -> s { _dataPipelinePipelineName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-parameterobjects+dppParameterObjects :: Lens' DataPipelinePipeline [DataPipelinePipelineParameterObject]+dppParameterObjects = lens _dataPipelinePipelineParameterObjects (\s a -> s { _dataPipelinePipelineParameterObjects = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-parametervalues+dppParameterValues :: Lens' DataPipelinePipeline (Maybe [DataPipelinePipelineParameterValue])+dppParameterValues = lens _dataPipelinePipelineParameterValues (\s a -> s { _dataPipelinePipelineParameterValues = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-pipelineobjects+dppPipelineObjects :: Lens' DataPipelinePipeline (Maybe [DataPipelinePipelinePipelineObject])+dppPipelineObjects = lens _dataPipelinePipelinePipelineObjects (\s a -> s { _dataPipelinePipelinePipelineObjects = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datapipeline-pipeline.html#cfn-datapipeline-pipeline-pipelinetags+dppPipelineTags :: Lens' DataPipelinePipeline (Maybe [DataPipelinePipelinePipelineTag])+dppPipelineTags = lens _dataPipelinePipelinePipelineTags (\s a -> s { _dataPipelinePipelinePipelineTags = a })
− library-gen/Stratosphere/Resources/DeliveryStream.hs
@@ -1,65 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::KinesisFirehose::DeliveryStream resource creates an Amazon--- Kinesis Firehose (Firehose) delivery stream that delivers real-time--- streaming data to an Amazon Simple Storage Service (Amazon S3), Amazon--- Redshift, or Amazon Elasticsearch Service (Amazon ES) destination. For more--- information, see Creating an Amazon Kinesis Firehose Delivery Stream in the--- Amazon Kinesis Firehose Developer Guide.--module Stratosphere.Resources.DeliveryStream where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchDestinationConfiguration-import Stratosphere.ResourceProperties.KinesisFirehoseRedshiftDestinationConfiguration-import Stratosphere.ResourceProperties.KinesisFirehoseS3DestinationConfiguration---- | Full data type definition for DeliveryStream. See 'deliveryStream' for a--- more convenient constructor.-data DeliveryStream =-  DeliveryStream-  { _deliveryStreamDeliveryStreamName :: Maybe (Val Text)-  , _deliveryStreamElasticsearchDestinationConfiguration :: Maybe KinesisFirehoseElasticsearchDestinationConfiguration-  , _deliveryStreamRedshiftDestinationConfiguration :: Maybe KinesisFirehoseRedshiftDestinationConfiguration-  , _deliveryStreamS3DestinationConfiguration :: Maybe KinesisFirehoseS3DestinationConfiguration-  } deriving (Show, Generic)--instance ToJSON DeliveryStream where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }--instance FromJSON DeliveryStream where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }---- | Constructor for 'DeliveryStream' containing required fields as arguments.-deliveryStream-  :: DeliveryStream-deliveryStream  =-  DeliveryStream-  { _deliveryStreamDeliveryStreamName = Nothing-  , _deliveryStreamElasticsearchDestinationConfiguration = Nothing-  , _deliveryStreamRedshiftDestinationConfiguration = Nothing-  , _deliveryStreamS3DestinationConfiguration = Nothing-  }---- | A name for the delivery stream.-dsDeliveryStreamName :: Lens' DeliveryStream (Maybe (Val Text))-dsDeliveryStreamName = lens _deliveryStreamDeliveryStreamName (\s a -> s { _deliveryStreamDeliveryStreamName = a })---- | An Amazon ES destination for the delivery stream.-dsElasticsearchDestinationConfiguration :: Lens' DeliveryStream (Maybe KinesisFirehoseElasticsearchDestinationConfiguration)-dsElasticsearchDestinationConfiguration = lens _deliveryStreamElasticsearchDestinationConfiguration (\s a -> s { _deliveryStreamElasticsearchDestinationConfiguration = a })---- | An Amazon Redshift destination for the delivery stream.-dsRedshiftDestinationConfiguration :: Lens' DeliveryStream (Maybe KinesisFirehoseRedshiftDestinationConfiguration)-dsRedshiftDestinationConfiguration = lens _deliveryStreamRedshiftDestinationConfiguration (\s a -> s { _deliveryStreamRedshiftDestinationConfiguration = a })---- | An Amazon S3 destination for the delivery stream.-dsS3DestinationConfiguration :: Lens' DeliveryStream (Maybe KinesisFirehoseS3DestinationConfiguration)-dsS3DestinationConfiguration = lens _deliveryStreamS3DestinationConfiguration (\s a -> s { _deliveryStreamS3DestinationConfiguration = a })
+ library-gen/Stratosphere/Resources/DirectoryServiceMicrosoftAD.hs view
@@ -0,0 +1,74 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html++module Stratosphere.Resources.DirectoryServiceMicrosoftAD where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.DirectoryServiceMicrosoftADVpcSettings++-- | Full data type definition for DirectoryServiceMicrosoftAD. See+-- | 'directoryServiceMicrosoftAD' for a more convenient constructor.+data DirectoryServiceMicrosoftAD =+  DirectoryServiceMicrosoftAD+  { _directoryServiceMicrosoftADCreateAlias :: Maybe (Val Bool')+  , _directoryServiceMicrosoftADEnableSso :: Maybe (Val Bool')+  , _directoryServiceMicrosoftADName :: Val Text+  , _directoryServiceMicrosoftADPassword :: Val Text+  , _directoryServiceMicrosoftADShortName :: Maybe (Val Text)+  , _directoryServiceMicrosoftADVpcSettings :: DirectoryServiceMicrosoftADVpcSettings+  } deriving (Show, Generic)++instance ToJSON DirectoryServiceMicrosoftAD where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON DirectoryServiceMicrosoftAD where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'DirectoryServiceMicrosoftAD' containing required fields+-- | as arguments.+directoryServiceMicrosoftAD+  :: Val Text -- ^ 'dsmadName'+  -> Val Text -- ^ 'dsmadPassword'+  -> DirectoryServiceMicrosoftADVpcSettings -- ^ 'dsmadVpcSettings'+  -> DirectoryServiceMicrosoftAD+directoryServiceMicrosoftAD namearg passwordarg vpcSettingsarg =+  DirectoryServiceMicrosoftAD+  { _directoryServiceMicrosoftADCreateAlias = Nothing+  , _directoryServiceMicrosoftADEnableSso = Nothing+  , _directoryServiceMicrosoftADName = namearg+  , _directoryServiceMicrosoftADPassword = passwordarg+  , _directoryServiceMicrosoftADShortName = Nothing+  , _directoryServiceMicrosoftADVpcSettings = vpcSettingsarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-createalias+dsmadCreateAlias :: Lens' DirectoryServiceMicrosoftAD (Maybe (Val Bool'))+dsmadCreateAlias = lens _directoryServiceMicrosoftADCreateAlias (\s a -> s { _directoryServiceMicrosoftADCreateAlias = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-enablesso+dsmadEnableSso :: Lens' DirectoryServiceMicrosoftAD (Maybe (Val Bool'))+dsmadEnableSso = lens _directoryServiceMicrosoftADEnableSso (\s a -> s { _directoryServiceMicrosoftADEnableSso = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-name+dsmadName :: Lens' DirectoryServiceMicrosoftAD (Val Text)+dsmadName = lens _directoryServiceMicrosoftADName (\s a -> s { _directoryServiceMicrosoftADName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-password+dsmadPassword :: Lens' DirectoryServiceMicrosoftAD (Val Text)+dsmadPassword = lens _directoryServiceMicrosoftADPassword (\s a -> s { _directoryServiceMicrosoftADPassword = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-shortname+dsmadShortName :: Lens' DirectoryServiceMicrosoftAD (Maybe (Val Text))+dsmadShortName = lens _directoryServiceMicrosoftADShortName (\s a -> s { _directoryServiceMicrosoftADShortName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-microsoftad.html#cfn-directoryservice-microsoftad-vpcsettings+dsmadVpcSettings :: Lens' DirectoryServiceMicrosoftAD DirectoryServiceMicrosoftADVpcSettings+dsmadVpcSettings = lens _directoryServiceMicrosoftADVpcSettings (\s a -> s { _directoryServiceMicrosoftADVpcSettings = a })
+ library-gen/Stratosphere/Resources/DirectoryServiceSimpleAD.hs view
@@ -0,0 +1,87 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html++module Stratosphere.Resources.DirectoryServiceSimpleAD where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.DirectoryServiceSimpleADVpcSettings++-- | Full data type definition for DirectoryServiceSimpleAD. See+-- | 'directoryServiceSimpleAD' for a more convenient constructor.+data DirectoryServiceSimpleAD =+  DirectoryServiceSimpleAD+  { _directoryServiceSimpleADCreateAlias :: Maybe (Val Bool')+  , _directoryServiceSimpleADDescription :: Maybe (Val Text)+  , _directoryServiceSimpleADEnableSso :: Maybe (Val Bool')+  , _directoryServiceSimpleADName :: Val Text+  , _directoryServiceSimpleADPassword :: Val Text+  , _directoryServiceSimpleADShortName :: Maybe (Val Text)+  , _directoryServiceSimpleADSize :: Val Text+  , _directoryServiceSimpleADVpcSettings :: DirectoryServiceSimpleADVpcSettings+  } deriving (Show, Generic)++instance ToJSON DirectoryServiceSimpleAD where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++instance FromJSON DirectoryServiceSimpleAD where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++-- | Constructor for 'DirectoryServiceSimpleAD' containing required fields as+-- | arguments.+directoryServiceSimpleAD+  :: Val Text -- ^ 'dssadName'+  -> Val Text -- ^ 'dssadPassword'+  -> Val Text -- ^ 'dssadSize'+  -> DirectoryServiceSimpleADVpcSettings -- ^ 'dssadVpcSettings'+  -> DirectoryServiceSimpleAD+directoryServiceSimpleAD namearg passwordarg sizearg vpcSettingsarg =+  DirectoryServiceSimpleAD+  { _directoryServiceSimpleADCreateAlias = Nothing+  , _directoryServiceSimpleADDescription = Nothing+  , _directoryServiceSimpleADEnableSso = Nothing+  , _directoryServiceSimpleADName = namearg+  , _directoryServiceSimpleADPassword = passwordarg+  , _directoryServiceSimpleADShortName = Nothing+  , _directoryServiceSimpleADSize = sizearg+  , _directoryServiceSimpleADVpcSettings = vpcSettingsarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-createalias+dssadCreateAlias :: Lens' DirectoryServiceSimpleAD (Maybe (Val Bool'))+dssadCreateAlias = lens _directoryServiceSimpleADCreateAlias (\s a -> s { _directoryServiceSimpleADCreateAlias = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-description+dssadDescription :: Lens' DirectoryServiceSimpleAD (Maybe (Val Text))+dssadDescription = lens _directoryServiceSimpleADDescription (\s a -> s { _directoryServiceSimpleADDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-enablesso+dssadEnableSso :: Lens' DirectoryServiceSimpleAD (Maybe (Val Bool'))+dssadEnableSso = lens _directoryServiceSimpleADEnableSso (\s a -> s { _directoryServiceSimpleADEnableSso = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-name+dssadName :: Lens' DirectoryServiceSimpleAD (Val Text)+dssadName = lens _directoryServiceSimpleADName (\s a -> s { _directoryServiceSimpleADName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-password+dssadPassword :: Lens' DirectoryServiceSimpleAD (Val Text)+dssadPassword = lens _directoryServiceSimpleADPassword (\s a -> s { _directoryServiceSimpleADPassword = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-shortname+dssadShortName :: Lens' DirectoryServiceSimpleAD (Maybe (Val Text))+dssadShortName = lens _directoryServiceSimpleADShortName (\s a -> s { _directoryServiceSimpleADShortName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-size+dssadSize :: Lens' DirectoryServiceSimpleAD (Val Text)+dssadSize = lens _directoryServiceSimpleADSize (\s a -> s { _directoryServiceSimpleADSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-directoryservice-simplead.html#cfn-directoryservice-simplead-vpcsettings+dssadVpcSettings :: Lens' DirectoryServiceSimpleAD DirectoryServiceSimpleADVpcSettings+dssadVpcSettings = lens _directoryServiceSimpleADVpcSettings (\s a -> s { _directoryServiceSimpleADVpcSettings = a })
library-gen/Stratosphere/Resources/DynamoDBTable.hs view
@@ -1,7 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | Creates a DynamoDB table.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html  module Stratosphere.Resources.DynamoDBTable where @@ -12,23 +12,23 @@ import GHC.Generics  import Stratosphere.Values-import Stratosphere.ResourceProperties.DynamoDBAttributeDefinition-import Stratosphere.ResourceProperties.DynamoDBGlobalSecondaryIndex-import Stratosphere.ResourceProperties.DynamoDBKeySchema-import Stratosphere.ResourceProperties.DynamoDBLocalSecondaryIndex-import Stratosphere.ResourceProperties.DynamoDBProvisionedThroughput-import Stratosphere.ResourceProperties.DynamoDBStreamSpecification+import Stratosphere.ResourceProperties.DynamoDBTableAttributeDefinition+import Stratosphere.ResourceProperties.DynamoDBTableGlobalSecondaryIndex+import Stratosphere.ResourceProperties.DynamoDBTableKeySchema+import Stratosphere.ResourceProperties.DynamoDBTableLocalSecondaryIndex+import Stratosphere.ResourceProperties.DynamoDBTableProvisionedThroughput+import Stratosphere.ResourceProperties.DynamoDBTableStreamSpecification  -- | Full data type definition for DynamoDBTable. See 'dynamoDBTable' for a--- more convenient constructor.+-- | more convenient constructor. data DynamoDBTable =   DynamoDBTable-  { _dynamoDBTableAttributeDefinitions :: [DynamoDBAttributeDefinition]-  , _dynamoDBTableGlobalSecondaryIndexes :: Maybe [DynamoDBGlobalSecondaryIndex]-  , _dynamoDBTableKeySchema :: [DynamoDBKeySchema]-  , _dynamoDBTableLocalSecondaryIndexes :: Maybe [DynamoDBLocalSecondaryIndex]-  , _dynamoDBTableProvisionedThroughput :: DynamoDBProvisionedThroughput-  , _dynamoDBTableStreamSpecification :: Maybe DynamoDBStreamSpecification+  { _dynamoDBTableAttributeDefinitions :: [DynamoDBTableAttributeDefinition]+  , _dynamoDBTableGlobalSecondaryIndexes :: Maybe [DynamoDBTableGlobalSecondaryIndex]+  , _dynamoDBTableKeySchema :: [DynamoDBTableKeySchema]+  , _dynamoDBTableLocalSecondaryIndexes :: Maybe [DynamoDBTableLocalSecondaryIndex]+  , _dynamoDBTableProvisionedThroughput :: DynamoDBTableProvisionedThroughput+  , _dynamoDBTableStreamSpecification :: Maybe DynamoDBTableStreamSpecification   , _dynamoDBTableTableName :: Maybe (Val Text)   } deriving (Show, Generic) @@ -40,9 +40,9 @@  -- | Constructor for 'DynamoDBTable' containing required fields as arguments. dynamoDBTable-  :: [DynamoDBAttributeDefinition] -- ^ 'ddbtAttributeDefinitions'-  -> [DynamoDBKeySchema] -- ^ 'ddbtKeySchema'-  -> DynamoDBProvisionedThroughput -- ^ 'ddbtProvisionedThroughput'+  :: [DynamoDBTableAttributeDefinition] -- ^ 'ddbtAttributeDefinitions'+  -> [DynamoDBTableKeySchema] -- ^ 'ddbtKeySchema'+  -> DynamoDBTableProvisionedThroughput -- ^ 'ddbtProvisionedThroughput'   -> DynamoDBTable dynamoDBTable attributeDefinitionsarg keySchemaarg provisionedThroughputarg =   DynamoDBTable@@ -55,54 +55,30 @@   , _dynamoDBTableTableName = Nothing   } --- | A list of AttributeName and AttributeType objects that describe the key--- schema for the table and indexes.-ddbtAttributeDefinitions :: Lens' DynamoDBTable [DynamoDBAttributeDefinition]+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-attributedef+ddbtAttributeDefinitions :: Lens' DynamoDBTable [DynamoDBTableAttributeDefinition] ddbtAttributeDefinitions = lens _dynamoDBTableAttributeDefinitions (\s a -> s { _dynamoDBTableAttributeDefinitions = a }) --- | Global secondary indexes to be created on the table. You can create up to--- 5 global secondary indexes. Important If you update a table to include a--- new global secondary index, AWS CloudFormation initiates the index creation--- and then proceeds with the stack update. AWS CloudFormation doesn't wait--- for the index to complete creation because the backfilling phase can take a--- long time, depending on the size of the table. You cannot use the index or--- update the table until the index's status is ACTIVE. You can track its--- status by using the DynamoDB DescribeTable command. If you add or delete an--- index during an update, we recommend that you don't update any other--- resources. If your stack fails to update and is rolled back while adding a--- new index, you must manually delete the index.-ddbtGlobalSecondaryIndexes :: Lens' DynamoDBTable (Maybe [DynamoDBGlobalSecondaryIndex])+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-gsi+ddbtGlobalSecondaryIndexes :: Lens' DynamoDBTable (Maybe [DynamoDBTableGlobalSecondaryIndex]) ddbtGlobalSecondaryIndexes = lens _dynamoDBTableGlobalSecondaryIndexes (\s a -> s { _dynamoDBTableGlobalSecondaryIndexes = a }) --- | Specifies the attributes that make up the primary key for the table. The--- attributes in the KeySchema property must also be defined in the--- AttributeDefinitions property.-ddbtKeySchema :: Lens' DynamoDBTable [DynamoDBKeySchema]+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-keyschema+ddbtKeySchema :: Lens' DynamoDBTable [DynamoDBTableKeySchema] ddbtKeySchema = lens _dynamoDBTableKeySchema (\s a -> s { _dynamoDBTableKeySchema = a }) --- | Local secondary indexes to be created on the table. You can create up to--- 5 local secondary indexes. Each index is scoped to a given hash key value.--- The size of each hash key can be up to 10 gigabytes.-ddbtLocalSecondaryIndexes :: Lens' DynamoDBTable (Maybe [DynamoDBLocalSecondaryIndex])+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-lsi+ddbtLocalSecondaryIndexes :: Lens' DynamoDBTable (Maybe [DynamoDBTableLocalSecondaryIndex]) ddbtLocalSecondaryIndexes = lens _dynamoDBTableLocalSecondaryIndexes (\s a -> s { _dynamoDBTableLocalSecondaryIndexes = a }) --- | Throughput for the specified table, consisting of values for--- ReadCapacityUnits and WriteCapacityUnits. For more information about the--- contents of a provisioned throughput structure, see DynamoDB Provisioned--- Throughput.-ddbtProvisionedThroughput :: Lens' DynamoDBTable DynamoDBProvisionedThroughput+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-provisionedthroughput+ddbtProvisionedThroughput :: Lens' DynamoDBTable DynamoDBTableProvisionedThroughput ddbtProvisionedThroughput = lens _dynamoDBTableProvisionedThroughput (\s a -> s { _dynamoDBTableProvisionedThroughput = a }) --- | The settings for the DynamoDB table stream, which capture changes to--- items stored in the table.-ddbtStreamSpecification :: Lens' DynamoDBTable (Maybe DynamoDBStreamSpecification)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-streamspecification+ddbtStreamSpecification :: Lens' DynamoDBTable (Maybe DynamoDBTableStreamSpecification) ddbtStreamSpecification = lens _dynamoDBTableStreamSpecification (\s a -> s { _dynamoDBTableStreamSpecification = a }) --- | A name for the table. If you don't specify a name, AWS CloudFormation--- generates a unique physical ID and uses that ID for the table name. For--- more information, see Name Type. Important If you specify a name, you--- cannot do updates that require this resource to be replaced. You can still--- do updates that require no or some interruption. If you must replace the--- resource, specify a new name.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-tablename ddbtTableName :: Lens' DynamoDBTable (Maybe (Val Text)) ddbtTableName = lens _dynamoDBTableTableName (\s a -> s { _dynamoDBTableTableName = a })
+ library-gen/Stratosphere/Resources/EC2CustomerGateway.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html++module Stratosphere.Resources.EC2CustomerGateway where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for EC2CustomerGateway. See+-- | 'ec2CustomerGateway' for a more convenient constructor.+data EC2CustomerGateway =+  EC2CustomerGateway+  { _eC2CustomerGatewayBgpAsn :: Val Integer'+  , _eC2CustomerGatewayIpAddress :: Val Text+  , _eC2CustomerGatewayTags :: Maybe [Tag]+  , _eC2CustomerGatewayType :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2CustomerGateway where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++instance FromJSON EC2CustomerGateway where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++-- | Constructor for 'EC2CustomerGateway' containing required fields as+-- | arguments.+ec2CustomerGateway+  :: Val Integer' -- ^ 'eccgBgpAsn'+  -> Val Text -- ^ 'eccgIpAddress'+  -> Val Text -- ^ 'eccgType'+  -> EC2CustomerGateway+ec2CustomerGateway bgpAsnarg ipAddressarg typearg =+  EC2CustomerGateway+  { _eC2CustomerGatewayBgpAsn = bgpAsnarg+  , _eC2CustomerGatewayIpAddress = ipAddressarg+  , _eC2CustomerGatewayTags = Nothing+  , _eC2CustomerGatewayType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-bgpasn+eccgBgpAsn :: Lens' EC2CustomerGateway (Val Integer')+eccgBgpAsn = lens _eC2CustomerGatewayBgpAsn (\s a -> s { _eC2CustomerGatewayBgpAsn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-ipaddress+eccgIpAddress :: Lens' EC2CustomerGateway (Val Text)+eccgIpAddress = lens _eC2CustomerGatewayIpAddress (\s a -> s { _eC2CustomerGatewayIpAddress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-tags+eccgTags :: Lens' EC2CustomerGateway (Maybe [Tag])+eccgTags = lens _eC2CustomerGatewayTags (\s a -> s { _eC2CustomerGatewayTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-customer-gateway.html#cfn-ec2-customergateway-type+eccgType :: Lens' EC2CustomerGateway (Val Text)+eccgType = lens _eC2CustomerGatewayType (\s a -> s { _eC2CustomerGatewayType = a })
+ library-gen/Stratosphere/Resources/EC2DHCPOptions.hs view
@@ -0,0 +1,70 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html++module Stratosphere.Resources.EC2DHCPOptions where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for EC2DHCPOptions. See 'ec2DHCPOptions' for a+-- | more convenient constructor.+data EC2DHCPOptions =+  EC2DHCPOptions+  { _eC2DHCPOptionsDomainName :: Maybe (Val Text)+  , _eC2DHCPOptionsDomainNameServers :: Maybe [Val Text]+  , _eC2DHCPOptionsNetbiosNameServers :: Maybe [Val Text]+  , _eC2DHCPOptionsNetbiosNodeType :: Maybe (Val Integer')+  , _eC2DHCPOptionsNtpServers :: Maybe (Val Text)+  , _eC2DHCPOptionsTags :: Maybe Tag+  } deriving (Show, Generic)++instance ToJSON EC2DHCPOptions where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++instance FromJSON EC2DHCPOptions where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++-- | Constructor for 'EC2DHCPOptions' containing required fields as arguments.+ec2DHCPOptions+  :: EC2DHCPOptions+ec2DHCPOptions  =+  EC2DHCPOptions+  { _eC2DHCPOptionsDomainName = Nothing+  , _eC2DHCPOptionsDomainNameServers = Nothing+  , _eC2DHCPOptionsNetbiosNameServers = Nothing+  , _eC2DHCPOptionsNetbiosNodeType = Nothing+  , _eC2DHCPOptionsNtpServers = Nothing+  , _eC2DHCPOptionsTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-domainname+ecdhcpoDomainName :: Lens' EC2DHCPOptions (Maybe (Val Text))+ecdhcpoDomainName = lens _eC2DHCPOptionsDomainName (\s a -> s { _eC2DHCPOptionsDomainName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-domainnameservers+ecdhcpoDomainNameServers :: Lens' EC2DHCPOptions (Maybe [Val Text])+ecdhcpoDomainNameServers = lens _eC2DHCPOptionsDomainNameServers (\s a -> s { _eC2DHCPOptionsDomainNameServers = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-netbiosnameservers+ecdhcpoNetbiosNameServers :: Lens' EC2DHCPOptions (Maybe [Val Text])+ecdhcpoNetbiosNameServers = lens _eC2DHCPOptionsNetbiosNameServers (\s a -> s { _eC2DHCPOptionsNetbiosNameServers = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-netbiosnodetype+ecdhcpoNetbiosNodeType :: Lens' EC2DHCPOptions (Maybe (Val Integer'))+ecdhcpoNetbiosNodeType = lens _eC2DHCPOptionsNetbiosNodeType (\s a -> s { _eC2DHCPOptionsNetbiosNodeType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-ntpservers+ecdhcpoNtpServers :: Lens' EC2DHCPOptions (Maybe (Val Text))+ecdhcpoNtpServers = lens _eC2DHCPOptionsNtpServers (\s a -> s { _eC2DHCPOptionsNtpServers = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-dhcp-options.html#cfn-ec2-dhcpoptions-tags+ecdhcpoTags :: Lens' EC2DHCPOptions (Maybe Tag)+ecdhcpoTags = lens _eC2DHCPOptionsTags (\s a -> s { _eC2DHCPOptionsTags = a })
+ library-gen/Stratosphere/Resources/EC2EIP.hs view
@@ -0,0 +1,46 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip.html++module Stratosphere.Resources.EC2EIP where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2EIP. See 'ec2EIP' for a more convenient+-- | constructor.+data EC2EIP =+  EC2EIP+  { _eC2EIPDomain :: Maybe (Val Text)+  , _eC2EIPInstanceId :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2EIP where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 7, omitNothingFields = True }++instance FromJSON EC2EIP where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 7, omitNothingFields = True }++-- | Constructor for 'EC2EIP' containing required fields as arguments.+ec2EIP+  :: EC2EIP+ec2EIP  =+  EC2EIP+  { _eC2EIPDomain = Nothing+  , _eC2EIPInstanceId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip.html#cfn-ec2-eip-domain+eceipDomain :: Lens' EC2EIP (Maybe (Val Text))+eceipDomain = lens _eC2EIPDomain (\s a -> s { _eC2EIPDomain = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip.html#cfn-ec2-eip-instanceid+eceipInstanceId :: Lens' EC2EIP (Maybe (Val Text))+eceipInstanceId = lens _eC2EIPInstanceId (\s a -> s { _eC2EIPInstanceId = a })
+ library-gen/Stratosphere/Resources/EC2EIPAssociation.hs view
@@ -0,0 +1,65 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html++module Stratosphere.Resources.EC2EIPAssociation where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2EIPAssociation. See 'ec2EIPAssociation'+-- | for a more convenient constructor.+data EC2EIPAssociation =+  EC2EIPAssociation+  { _eC2EIPAssociationAllocationId :: Maybe (Val Text)+  , _eC2EIPAssociationEip :: Maybe (Val Text)+  , _eC2EIPAssociationInstanceId :: Maybe (Val Text)+  , _eC2EIPAssociationNetworkInterfaceId :: Maybe (Val Text)+  , _eC2EIPAssociationPrivateIpAddress :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2EIPAssociation where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }++instance FromJSON EC2EIPAssociation where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }++-- | Constructor for 'EC2EIPAssociation' containing required fields as+-- | arguments.+ec2EIPAssociation+  :: EC2EIPAssociation+ec2EIPAssociation  =+  EC2EIPAssociation+  { _eC2EIPAssociationAllocationId = Nothing+  , _eC2EIPAssociationEip = Nothing+  , _eC2EIPAssociationInstanceId = Nothing+  , _eC2EIPAssociationNetworkInterfaceId = Nothing+  , _eC2EIPAssociationPrivateIpAddress = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html#cfn-ec2-eipassociation-allocationid+eceipaAllocationId :: Lens' EC2EIPAssociation (Maybe (Val Text))+eceipaAllocationId = lens _eC2EIPAssociationAllocationId (\s a -> s { _eC2EIPAssociationAllocationId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html#cfn-ec2-eipassociation-eip+eceipaEip :: Lens' EC2EIPAssociation (Maybe (Val Text))+eceipaEip = lens _eC2EIPAssociationEip (\s a -> s { _eC2EIPAssociationEip = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html#cfn-ec2-eipassociation-instanceid+eceipaInstanceId :: Lens' EC2EIPAssociation (Maybe (Val Text))+eceipaInstanceId = lens _eC2EIPAssociationInstanceId (\s a -> s { _eC2EIPAssociationInstanceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html#cfn-ec2-eipassociation-networkinterfaceid+eceipaNetworkInterfaceId :: Lens' EC2EIPAssociation (Maybe (Val Text))+eceipaNetworkInterfaceId = lens _eC2EIPAssociationNetworkInterfaceId (\s a -> s { _eC2EIPAssociationNetworkInterfaceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-eip-association.html#cfn-ec2-eipassociation-PrivateIpAddress+eceipaPrivateIpAddress :: Lens' EC2EIPAssociation (Maybe (Val Text))+eceipaPrivateIpAddress = lens _eC2EIPAssociationPrivateIpAddress (\s a -> s { _eC2EIPAssociationPrivateIpAddress = a })
+ library-gen/Stratosphere/Resources/EC2FlowLog.hs view
@@ -0,0 +1,69 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html++module Stratosphere.Resources.EC2FlowLog where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2FlowLog. See 'ec2FlowLog' for a more+-- | convenient constructor.+data EC2FlowLog =+  EC2FlowLog+  { _eC2FlowLogDeliverLogsPermissionArn :: Val Text+  , _eC2FlowLogLogGroupName :: Val Text+  , _eC2FlowLogResourceId :: Val Text+  , _eC2FlowLogResourceType :: Val Text+  , _eC2FlowLogTrafficType :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2FlowLog where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 11, omitNothingFields = True }++instance FromJSON EC2FlowLog where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 11, omitNothingFields = True }++-- | Constructor for 'EC2FlowLog' containing required fields as arguments.+ec2FlowLog+  :: Val Text -- ^ 'ecflDeliverLogsPermissionArn'+  -> Val Text -- ^ 'ecflLogGroupName'+  -> Val Text -- ^ 'ecflResourceId'+  -> Val Text -- ^ 'ecflResourceType'+  -> Val Text -- ^ 'ecflTrafficType'+  -> EC2FlowLog+ec2FlowLog deliverLogsPermissionArnarg logGroupNamearg resourceIdarg resourceTypearg trafficTypearg =+  EC2FlowLog+  { _eC2FlowLogDeliverLogsPermissionArn = deliverLogsPermissionArnarg+  , _eC2FlowLogLogGroupName = logGroupNamearg+  , _eC2FlowLogResourceId = resourceIdarg+  , _eC2FlowLogResourceType = resourceTypearg+  , _eC2FlowLogTrafficType = trafficTypearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-deliverlogspermissionarn+ecflDeliverLogsPermissionArn :: Lens' EC2FlowLog (Val Text)+ecflDeliverLogsPermissionArn = lens _eC2FlowLogDeliverLogsPermissionArn (\s a -> s { _eC2FlowLogDeliverLogsPermissionArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-loggroupname+ecflLogGroupName :: Lens' EC2FlowLog (Val Text)+ecflLogGroupName = lens _eC2FlowLogLogGroupName (\s a -> s { _eC2FlowLogLogGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-resourceid+ecflResourceId :: Lens' EC2FlowLog (Val Text)+ecflResourceId = lens _eC2FlowLogResourceId (\s a -> s { _eC2FlowLogResourceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-resourcetype+ecflResourceType :: Lens' EC2FlowLog (Val Text)+ecflResourceType = lens _eC2FlowLogResourceType (\s a -> s { _eC2FlowLogResourceType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-flowlog.html#cfn-ec2-flowlog-traffictype+ecflTrafficType :: Lens' EC2FlowLog (Val Text)+ecflTrafficType = lens _eC2FlowLogTrafficType (\s a -> s { _eC2FlowLogTrafficType = a })
+ library-gen/Stratosphere/Resources/EC2Host.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html++module Stratosphere.Resources.EC2Host where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2Host. See 'ec2Host' for a more+-- | convenient constructor.+data EC2Host =+  EC2Host+  { _eC2HostAutoPlacement :: Maybe (Val Text)+  , _eC2HostAvailabilityZone :: Val Text+  , _eC2HostInstanceType :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2Host where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 8, omitNothingFields = True }++instance FromJSON EC2Host where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 8, omitNothingFields = True }++-- | Constructor for 'EC2Host' containing required fields as arguments.+ec2Host+  :: Val Text -- ^ 'echAvailabilityZone'+  -> Val Text -- ^ 'echInstanceType'+  -> EC2Host+ec2Host availabilityZonearg instanceTypearg =+  EC2Host+  { _eC2HostAutoPlacement = Nothing+  , _eC2HostAvailabilityZone = availabilityZonearg+  , _eC2HostInstanceType = instanceTypearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html#cfn-ec2-host-autoplacement+echAutoPlacement :: Lens' EC2Host (Maybe (Val Text))+echAutoPlacement = lens _eC2HostAutoPlacement (\s a -> s { _eC2HostAutoPlacement = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html#cfn-ec2-host-availabilityzone+echAvailabilityZone :: Lens' EC2Host (Val Text)+echAvailabilityZone = lens _eC2HostAvailabilityZone (\s a -> s { _eC2HostAvailabilityZone = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-host.html#cfn-ec2-host-instancetype+echInstanceType :: Lens' EC2Host (Val Text)+echInstanceType = lens _eC2HostInstanceType (\s a -> s { _eC2HostInstanceType = a })
library-gen/Stratosphere/Resources/EC2Instance.hs view
@@ -1,10 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::EC2::Instance type creates an Amazon EC2 instance. If an Elastic--- IP address is attached to your instance, AWS CloudFormation reattaches the--- Elastic IP address after it updates the instance. For more information--- about updating stacks, see AWS CloudFormation Stacks Updates.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html  module Stratosphere.Resources.EC2Instance where @@ -15,41 +12,46 @@ import GHC.Generics  import Stratosphere.Values-import Stratosphere.ResourceProperties.EC2BlockDeviceMapping-import Stratosphere.ResourceProperties.NetworkInterface-import Stratosphere.ResourceProperties.EC2SsmAssociations-import Stratosphere.ResourceProperties.ResourceTag-import Stratosphere.ResourceProperties.EC2MountPoint+import Stratosphere.ResourceProperties.EC2InstanceBlockDeviceMapping+import Stratosphere.ResourceProperties.EC2InstanceInstanceIpv6Address+import Stratosphere.ResourceProperties.EC2InstanceNetworkInterface+import Stratosphere.ResourceProperties.EC2InstanceSsmAssociation+import Stratosphere.ResourceProperties.Tag+import Stratosphere.ResourceProperties.EC2InstanceVolume  -- | Full data type definition for EC2Instance. See 'ec2Instance' for a more--- convenient constructor.+-- | convenient constructor. data EC2Instance =   EC2Instance-  { _eC2InstanceAvailabilityZone :: Maybe (Val Text)-  , _eC2InstanceBlockDeviceMappings :: Maybe [EC2BlockDeviceMapping]+  { _eC2InstanceAdditionalInfo :: Maybe (Val Text)+  , _eC2InstanceAffinity :: Maybe (Val Text)+  , _eC2InstanceAvailabilityZone :: Maybe (Val Text)+  , _eC2InstanceBlockDeviceMappings :: Maybe [EC2InstanceBlockDeviceMapping]   , _eC2InstanceDisableApiTermination :: Maybe (Val Bool')   , _eC2InstanceEbsOptimized :: Maybe (Val Bool')+  , _eC2InstanceHostId :: Maybe (Val Text)   , _eC2InstanceIamInstanceProfile :: Maybe (Val Text)   , _eC2InstanceImageId :: Val Text   , _eC2InstanceInstanceInitiatedShutdownBehavior :: Maybe (Val Text)   , _eC2InstanceInstanceType :: Maybe (Val Text)+  , _eC2InstanceIpv6AddressCount :: Maybe (Val Integer')+  , _eC2InstanceIpv6Addresses :: Maybe [EC2InstanceInstanceIpv6Address]   , _eC2InstanceKernelId :: Maybe (Val Text)   , _eC2InstanceKeyName :: Maybe (Val Text)   , _eC2InstanceMonitoring :: Maybe (Val Bool')-  , _eC2InstanceNetworkInterfaces :: Maybe [NetworkInterface]+  , _eC2InstanceNetworkInterfaces :: Maybe [EC2InstanceNetworkInterface]   , _eC2InstancePlacementGroupName :: Maybe (Val Text)   , _eC2InstancePrivateIpAddress :: Maybe (Val Text)   , _eC2InstanceRamdiskId :: Maybe (Val Text)   , _eC2InstanceSecurityGroupIds :: Maybe [Val Text]   , _eC2InstanceSecurityGroups :: Maybe [Val Text]   , _eC2InstanceSourceDestCheck :: Maybe (Val Bool')-  , _eC2InstanceSsmAssociations :: Maybe [EC2SsmAssociations]+  , _eC2InstanceSsmAssociations :: Maybe [EC2InstanceSsmAssociation]   , _eC2InstanceSubnetId :: Maybe (Val Text)-  , _eC2InstanceTags :: Maybe [ResourceTag]+  , _eC2InstanceTags :: Maybe [Tag]   , _eC2InstanceTenancy :: Maybe (Val Text)   , _eC2InstanceUserData :: Maybe (Val Text)-  , _eC2InstanceVolumes :: Maybe [EC2MountPoint]-  , _eC2InstanceAdditionalInfo :: Maybe (Val Text)+  , _eC2InstanceVolumes :: Maybe [EC2InstanceVolume]   } deriving (Show, Generic)  instance ToJSON EC2Instance where@@ -64,14 +66,19 @@   -> EC2Instance ec2Instance imageIdarg =   EC2Instance-  { _eC2InstanceAvailabilityZone = Nothing+  { _eC2InstanceAdditionalInfo = Nothing+  , _eC2InstanceAffinity = Nothing+  , _eC2InstanceAvailabilityZone = Nothing   , _eC2InstanceBlockDeviceMappings = Nothing   , _eC2InstanceDisableApiTermination = Nothing   , _eC2InstanceEbsOptimized = Nothing+  , _eC2InstanceHostId = Nothing   , _eC2InstanceIamInstanceProfile = Nothing   , _eC2InstanceImageId = imageIdarg   , _eC2InstanceInstanceInitiatedShutdownBehavior = Nothing   , _eC2InstanceInstanceType = Nothing+  , _eC2InstanceIpv6AddressCount = Nothing+  , _eC2InstanceIpv6Addresses = Nothing   , _eC2InstanceKernelId = Nothing   , _eC2InstanceKeyName = Nothing   , _eC2InstanceMonitoring = Nothing@@ -88,166 +95,120 @@   , _eC2InstanceTenancy = Nothing   , _eC2InstanceUserData = Nothing   , _eC2InstanceVolumes = Nothing-  , _eC2InstanceAdditionalInfo = Nothing   } --- | Specifies the name of the Availability Zone in which the instance is--- located. For more information about AWS regions and Availability Zones, see--- Regions and Availability Zones in the Amazon EC2 User Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-additionalinfo+eciAdditionalInfo :: Lens' EC2Instance (Maybe (Val Text))+eciAdditionalInfo = lens _eC2InstanceAdditionalInfo (\s a -> s { _eC2InstanceAdditionalInfo = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-affinity+eciAffinity :: Lens' EC2Instance (Maybe (Val Text))+eciAffinity = lens _eC2InstanceAffinity (\s a -> s { _eC2InstanceAffinity = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-availabilityzone eciAvailabilityZone :: Lens' EC2Instance (Maybe (Val Text)) eciAvailabilityZone = lens _eC2InstanceAvailabilityZone (\s a -> s { _eC2InstanceAvailabilityZone = a }) --- | Defines a set of Amazon Elastic Block Store block device mappings,--- ephemeral instance store block device mappings, or both. For more--- information, see Amazon Elastic Block Store or Amazon EC2 Instance Store in--- the Amazon EC2 User Guide for Linux Instances.-eciBlockDeviceMappings :: Lens' EC2Instance (Maybe [EC2BlockDeviceMapping])+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-blockdevicemappings+eciBlockDeviceMappings :: Lens' EC2Instance (Maybe [EC2InstanceBlockDeviceMapping]) eciBlockDeviceMappings = lens _eC2InstanceBlockDeviceMappings (\s a -> s { _eC2InstanceBlockDeviceMappings = a }) --- | Specifies whether the instance can be terminated through the API.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-disableapitermination eciDisableApiTermination :: Lens' EC2Instance (Maybe (Val Bool')) eciDisableApiTermination = lens _eC2InstanceDisableApiTermination (\s a -> s { _eC2InstanceDisableApiTermination = a }) --- | Specifies whether the instance is optimized for Amazon Elastic Block--- Store I/O. This optimization provides dedicated throughput to Amazon EBS--- and an optimized configuration stack to provide optimal EBS I/O--- performance. For more information about the instance types that can be--- launched as Amazon EBS optimized instances, see Amazon EBS-Optimized--- Instances in the Amazon Elastic Compute Cloud User Guide. Additional fees--- are incurred when using Amazon EBS-optimized instances.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ebsoptimized eciEbsOptimized :: Lens' EC2Instance (Maybe (Val Bool')) eciEbsOptimized = lens _eC2InstanceEbsOptimized (\s a -> s { _eC2InstanceEbsOptimized = a }) --- | The physical ID (resource name) of an instance profile or a reference to--- an AWS::IAM::InstanceProfile resource. For more information about IAM--- roles, see Working with Roles in the AWS Identity and Access Management--- User Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-hostid+eciHostId :: Lens' EC2Instance (Maybe (Val Text))+eciHostId = lens _eC2InstanceHostId (\s a -> s { _eC2InstanceHostId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-iaminstanceprofile eciIamInstanceProfile :: Lens' EC2Instance (Maybe (Val Text)) eciIamInstanceProfile = lens _eC2InstanceIamInstanceProfile (\s a -> s { _eC2InstanceIamInstanceProfile = a }) --- | Provides the unique ID of the Amazon Machine Image (AMI) that was--- assigned during registration.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-imageid eciImageId :: Lens' EC2Instance (Val Text) eciImageId = lens _eC2InstanceImageId (\s a -> s { _eC2InstanceImageId = a }) --- | Indicates whether an instance stops or terminates when you shut down the--- instance from the instance's operating system shutdown command. You can--- specify stop or terminate. For more information, see the RunInstances--- command in the Amazon EC2 API Reference.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-instanceinitiatedshutdownbehavior eciInstanceInitiatedShutdownBehavior :: Lens' EC2Instance (Maybe (Val Text)) eciInstanceInitiatedShutdownBehavior = lens _eC2InstanceInstanceInitiatedShutdownBehavior (\s a -> s { _eC2InstanceInstanceInitiatedShutdownBehavior = a }) --- | The instance type, such as t2.micro. The default type is "m1.small". For--- a list of instance types, see Instance Families and Types.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-instancetype eciInstanceType :: Lens' EC2Instance (Maybe (Val Text)) eciInstanceType = lens _eC2InstanceInstanceType (\s a -> s { _eC2InstanceInstanceType = a }) --- | The kernel ID.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ipv6addresscount+eciIpv6AddressCount :: Lens' EC2Instance (Maybe (Val Integer'))+eciIpv6AddressCount = lens _eC2InstanceIpv6AddressCount (\s a -> s { _eC2InstanceIpv6AddressCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ipv6addresses+eciIpv6Addresses :: Lens' EC2Instance (Maybe [EC2InstanceInstanceIpv6Address])+eciIpv6Addresses = lens _eC2InstanceIpv6Addresses (\s a -> s { _eC2InstanceIpv6Addresses = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-kernelid eciKernelId :: Lens' EC2Instance (Maybe (Val Text)) eciKernelId = lens _eC2InstanceKernelId (\s a -> s { _eC2InstanceKernelId = a }) --- | Provides the name of the Amazon EC2 key pair.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-keyname eciKeyName :: Lens' EC2Instance (Maybe (Val Text)) eciKeyName = lens _eC2InstanceKeyName (\s a -> s { _eC2InstanceKeyName = a }) --- | Specifies whether monitoring is enabled for the instance.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-monitoring eciMonitoring :: Lens' EC2Instance (Maybe (Val Bool')) eciMonitoring = lens _eC2InstanceMonitoring (\s a -> s { _eC2InstanceMonitoring = a }) --- | A list of embedded objects that describe the network interfaces to--- associate with this instance. Note If this resource has a public IP address--- and is also in a VPC that is defined in the same template, you must use the--- DependsOn attribute to declare a dependency on the VPC-gateway attachment.--- For more information, see DependsOn Attribute.-eciNetworkInterfaces :: Lens' EC2Instance (Maybe [NetworkInterface])+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-networkinterfaces+eciNetworkInterfaces :: Lens' EC2Instance (Maybe [EC2InstanceNetworkInterface]) eciNetworkInterfaces = lens _eC2InstanceNetworkInterfaces (\s a -> s { _eC2InstanceNetworkInterfaces = a }) --- | The name of an existing placement group that you want to launch the--- instance into (for cluster instances).+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-placementgroupname eciPlacementGroupName :: Lens' EC2Instance (Maybe (Val Text)) eciPlacementGroupName = lens _eC2InstancePlacementGroupName (\s a -> s { _eC2InstancePlacementGroupName = a }) --- | The private IP address for this instance. Important If you make an update--- to an instance that requires replacement, you must assign a new private IP--- address. During a replacement, AWS CloudFormation creates a new instance--- but doesn't delete the old instance until the stack has successfully--- updated. If the stack update fails, AWS CloudFormation uses the old--- instance in order to roll back the stack to the previous working state. The--- old and new instances cannot have the same private IP address. (Optional)--- If you're using Amazon VPC, you can use this parameter to assign the--- instance a specific available IP address from the subnet (for example,--- 10.0.0.25). By default, Amazon VPC selects an IP address from the subnet--- for the instance.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-privateipaddress eciPrivateIpAddress :: Lens' EC2Instance (Maybe (Val Text)) eciPrivateIpAddress = lens _eC2InstancePrivateIpAddress (\s a -> s { _eC2InstancePrivateIpAddress = a }) --- | The ID of the RAM disk to select. Some kernels require additional drivers--- at launch. Check the kernel requirements for information about whether you--- need to specify a RAM disk. To find kernel requirements, go to the AWS--- Resource Center and search for the kernel ID.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ramdiskid eciRamdiskId :: Lens' EC2Instance (Maybe (Val Text)) eciRamdiskId = lens _eC2InstanceRamdiskId (\s a -> s { _eC2InstanceRamdiskId = a }) --- | A list that contains the security group IDs for VPC security groups to--- assign to the Amazon EC2 instance. If you specified the NetworkInterfaces--- property, do not specify this property.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-securitygroupids eciSecurityGroupIds :: Lens' EC2Instance (Maybe [Val Text]) eciSecurityGroupIds = lens _eC2InstanceSecurityGroupIds (\s a -> s { _eC2InstanceSecurityGroupIds = a }) --- | Valid only for Amazon EC2 security groups. A list that contains the--- Amazon EC2 security groups to assign to the Amazon EC2 instance. The list--- can contain both the name of existing Amazon EC2 security groups or--- references to AWS::EC2::SecurityGroup resources created in the template.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-securitygroups eciSecurityGroups :: Lens' EC2Instance (Maybe [Val Text]) eciSecurityGroups = lens _eC2InstanceSecurityGroups (\s a -> s { _eC2InstanceSecurityGroups = a }) --- | Controls whether source/destination checking is enabled on the instance.--- Also determines if an instance in a VPC will perform network address--- translation (NAT). A value of "true" means that source/destination checking--- is enabled, and a value of "false" means that checking is disabled. For the--- instance to perform NAT, the value must be "false". For more information,--- see NAT Instances in the Amazon Virtual Private Cloud User Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-sourcedestcheck eciSourceDestCheck :: Lens' EC2Instance (Maybe (Val Bool')) eciSourceDestCheck = lens _eC2InstanceSourceDestCheck (\s a -> s { _eC2InstanceSourceDestCheck = a }) --- | The Amazon EC2 Simple Systems Manager (SSM) document and parameter values--- to associate with this instance. To use this property, you must specify an--- IAM role for the instance. For more information, see Prerequisites for--- Remotely Running Commands on EC2 Instances in the Amazon EC2 User Guide for--- Microsoft Windows Instances. Note You can currently associate only one--- document with an instance.-eciSsmAssociations :: Lens' EC2Instance (Maybe [EC2SsmAssociations])+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-ssmassociations+eciSsmAssociations :: Lens' EC2Instance (Maybe [EC2InstanceSsmAssociation]) eciSsmAssociations = lens _eC2InstanceSsmAssociations (\s a -> s { _eC2InstanceSsmAssociations = a }) --- | If you're using Amazon VPC, this property specifies the ID of the subnet--- that you want to launch the instance into. If you specified the--- NetworkInterfaces property, do not specify this property.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-subnetid eciSubnetId :: Lens' EC2Instance (Maybe (Val Text)) eciSubnetId = lens _eC2InstanceSubnetId (\s a -> s { _eC2InstanceSubnetId = a }) --- | An arbitrary set of tags (key–value pairs) for this instance.-eciTags :: Lens' EC2Instance (Maybe [ResourceTag])+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-tags+eciTags :: Lens' EC2Instance (Maybe [Tag]) eciTags = lens _eC2InstanceTags (\s a -> s { _eC2InstanceTags = a }) --- | The tenancy of the instance that you want to launch. This value can be--- either "default" or "dedicated". An instance that has a tenancy value of--- "dedicated" runs on single-tenant hardware and can be launched only into a--- VPC. For more information, see Using EC2 Dedicated Instances Within Your--- VPC in the Amazon VPC User Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-tenancy eciTenancy :: Lens' EC2Instance (Maybe (Val Text)) eciTenancy = lens _eC2InstanceTenancy (\s a -> s { _eC2InstanceTenancy = a }) --- | Base64-encoded MIME user data that is made available to the instances.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-userdata eciUserData :: Lens' EC2Instance (Maybe (Val Text)) eciUserData = lens _eC2InstanceUserData (\s a -> s { _eC2InstanceUserData = a }) --- | The Amazon EBS volumes to attach to the instance. Note Before detaching a--- volume, unmount any file systems on the device within your operating--- system. If you don't unmount the file system, a volume might get stuck in a--- busy state while detaching.-eciVolumes :: Lens' EC2Instance (Maybe [EC2MountPoint])+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html#cfn-ec2-instance-volumes+eciVolumes :: Lens' EC2Instance (Maybe [EC2InstanceVolume]) eciVolumes = lens _eC2InstanceVolumes (\s a -> s { _eC2InstanceVolumes = a })---- | Reserved.-eciAdditionalInfo :: Lens' EC2Instance (Maybe (Val Text))-eciAdditionalInfo = lens _eC2InstanceAdditionalInfo (\s a -> s { _eC2InstanceAdditionalInfo = a })
+ library-gen/Stratosphere/Resources/EC2InternetGateway.hs view
@@ -0,0 +1,41 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-internet-gateway.html++module Stratosphere.Resources.EC2InternetGateway where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for EC2InternetGateway. See+-- | 'ec2InternetGateway' for a more convenient constructor.+data EC2InternetGateway =+  EC2InternetGateway+  { _eC2InternetGatewayTags :: Maybe [Tag]+  } deriving (Show, Generic)++instance ToJSON EC2InternetGateway where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++instance FromJSON EC2InternetGateway where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++-- | Constructor for 'EC2InternetGateway' containing required fields as+-- | arguments.+ec2InternetGateway+  :: EC2InternetGateway+ec2InternetGateway  =+  EC2InternetGateway+  { _eC2InternetGatewayTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-internet-gateway.html#cfn-ec2-internetgateway-tags+ecigTags :: Lens' EC2InternetGateway (Maybe [Tag])+ecigTags = lens _eC2InternetGatewayTags (\s a -> s { _eC2InternetGatewayTags = a })
+ library-gen/Stratosphere/Resources/EC2NatGateway.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html++module Stratosphere.Resources.EC2NatGateway where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2NatGateway. See 'ec2NatGateway' for a+-- | more convenient constructor.+data EC2NatGateway =+  EC2NatGateway+  { _eC2NatGatewayAllocationId :: Val Text+  , _eC2NatGatewaySubnetId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2NatGateway where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++instance FromJSON EC2NatGateway where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++-- | Constructor for 'EC2NatGateway' containing required fields as arguments.+ec2NatGateway+  :: Val Text -- ^ 'ecngAllocationId'+  -> Val Text -- ^ 'ecngSubnetId'+  -> EC2NatGateway+ec2NatGateway allocationIdarg subnetIdarg =+  EC2NatGateway+  { _eC2NatGatewayAllocationId = allocationIdarg+  , _eC2NatGatewaySubnetId = subnetIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html#cfn-ec2-natgateway-allocationid+ecngAllocationId :: Lens' EC2NatGateway (Val Text)+ecngAllocationId = lens _eC2NatGatewayAllocationId (\s a -> s { _eC2NatGatewayAllocationId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-natgateway.html#cfn-ec2-natgateway-subnetid+ecngSubnetId :: Lens' EC2NatGateway (Val Text)+ecngSubnetId = lens _eC2NatGatewaySubnetId (\s a -> s { _eC2NatGatewaySubnetId = a })
+ library-gen/Stratosphere/Resources/EC2NetworkAcl.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl.html++module Stratosphere.Resources.EC2NetworkAcl where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for EC2NetworkAcl. See 'ec2NetworkAcl' for a+-- | more convenient constructor.+data EC2NetworkAcl =+  EC2NetworkAcl+  { _eC2NetworkAclTags :: Maybe [Tag]+  , _eC2NetworkAclVpcId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2NetworkAcl where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++instance FromJSON EC2NetworkAcl where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++-- | Constructor for 'EC2NetworkAcl' containing required fields as arguments.+ec2NetworkAcl+  :: Val Text -- ^ 'ecnaVpcId'+  -> EC2NetworkAcl+ec2NetworkAcl vpcIdarg =+  EC2NetworkAcl+  { _eC2NetworkAclTags = Nothing+  , _eC2NetworkAclVpcId = vpcIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl.html#cfn-ec2-networkacl-tags+ecnaTags :: Lens' EC2NetworkAcl (Maybe [Tag])+ecnaTags = lens _eC2NetworkAclTags (\s a -> s { _eC2NetworkAclTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl.html#cfn-ec2-networkacl-vpcid+ecnaVpcId :: Lens' EC2NetworkAcl (Val Text)+ecnaVpcId = lens _eC2NetworkAclVpcId (\s a -> s { _eC2NetworkAclVpcId = a })
+ library-gen/Stratosphere/Resources/EC2NetworkAclEntry.hs view
@@ -0,0 +1,95 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html++module Stratosphere.Resources.EC2NetworkAclEntry where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EC2NetworkAclEntryIcmp+import Stratosphere.ResourceProperties.EC2NetworkAclEntryPortRange++-- | Full data type definition for EC2NetworkAclEntry. See+-- | 'ec2NetworkAclEntry' for a more convenient constructor.+data EC2NetworkAclEntry =+  EC2NetworkAclEntry+  { _eC2NetworkAclEntryCidrBlock :: Val Text+  , _eC2NetworkAclEntryEgress :: Maybe (Val Bool')+  , _eC2NetworkAclEntryIcmp :: Maybe EC2NetworkAclEntryIcmp+  , _eC2NetworkAclEntryIpv6CidrBlock :: Maybe (Val Text)+  , _eC2NetworkAclEntryNetworkAclId :: Val Text+  , _eC2NetworkAclEntryPortRange :: Maybe EC2NetworkAclEntryPortRange+  , _eC2NetworkAclEntryProtocol :: Val Integer'+  , _eC2NetworkAclEntryRuleAction :: Val Text+  , _eC2NetworkAclEntryRuleNumber :: Val Integer'+  } deriving (Show, Generic)++instance ToJSON EC2NetworkAclEntry where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++instance FromJSON EC2NetworkAclEntry where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++-- | Constructor for 'EC2NetworkAclEntry' containing required fields as+-- | arguments.+ec2NetworkAclEntry+  :: Val Text -- ^ 'ecnaeCidrBlock'+  -> Val Text -- ^ 'ecnaeNetworkAclId'+  -> Val Integer' -- ^ 'ecnaeProtocol'+  -> Val Text -- ^ 'ecnaeRuleAction'+  -> Val Integer' -- ^ 'ecnaeRuleNumber'+  -> EC2NetworkAclEntry+ec2NetworkAclEntry cidrBlockarg networkAclIdarg protocolarg ruleActionarg ruleNumberarg =+  EC2NetworkAclEntry+  { _eC2NetworkAclEntryCidrBlock = cidrBlockarg+  , _eC2NetworkAclEntryEgress = Nothing+  , _eC2NetworkAclEntryIcmp = Nothing+  , _eC2NetworkAclEntryIpv6CidrBlock = Nothing+  , _eC2NetworkAclEntryNetworkAclId = networkAclIdarg+  , _eC2NetworkAclEntryPortRange = Nothing+  , _eC2NetworkAclEntryProtocol = protocolarg+  , _eC2NetworkAclEntryRuleAction = ruleActionarg+  , _eC2NetworkAclEntryRuleNumber = ruleNumberarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-cidrblock+ecnaeCidrBlock :: Lens' EC2NetworkAclEntry (Val Text)+ecnaeCidrBlock = lens _eC2NetworkAclEntryCidrBlock (\s a -> s { _eC2NetworkAclEntryCidrBlock = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-egress+ecnaeEgress :: Lens' EC2NetworkAclEntry (Maybe (Val Bool'))+ecnaeEgress = lens _eC2NetworkAclEntryEgress (\s a -> s { _eC2NetworkAclEntryEgress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-icmp+ecnaeIcmp :: Lens' EC2NetworkAclEntry (Maybe EC2NetworkAclEntryIcmp)+ecnaeIcmp = lens _eC2NetworkAclEntryIcmp (\s a -> s { _eC2NetworkAclEntryIcmp = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-ipv6cidrblock+ecnaeIpv6CidrBlock :: Lens' EC2NetworkAclEntry (Maybe (Val Text))+ecnaeIpv6CidrBlock = lens _eC2NetworkAclEntryIpv6CidrBlock (\s a -> s { _eC2NetworkAclEntryIpv6CidrBlock = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-networkaclid+ecnaeNetworkAclId :: Lens' EC2NetworkAclEntry (Val Text)+ecnaeNetworkAclId = lens _eC2NetworkAclEntryNetworkAclId (\s a -> s { _eC2NetworkAclEntryNetworkAclId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-portrange+ecnaePortRange :: Lens' EC2NetworkAclEntry (Maybe EC2NetworkAclEntryPortRange)+ecnaePortRange = lens _eC2NetworkAclEntryPortRange (\s a -> s { _eC2NetworkAclEntryPortRange = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-protocol+ecnaeProtocol :: Lens' EC2NetworkAclEntry (Val Integer')+ecnaeProtocol = lens _eC2NetworkAclEntryProtocol (\s a -> s { _eC2NetworkAclEntryProtocol = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-ruleaction+ecnaeRuleAction :: Lens' EC2NetworkAclEntry (Val Text)+ecnaeRuleAction = lens _eC2NetworkAclEntryRuleAction (\s a -> s { _eC2NetworkAclEntryRuleAction = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-acl-entry.html#cfn-ec2-networkaclentry-rulenumber+ecnaeRuleNumber :: Lens' EC2NetworkAclEntry (Val Integer')+ecnaeRuleNumber = lens _eC2NetworkAclEntryRuleNumber (\s a -> s { _eC2NetworkAclEntryRuleNumber = a })
+ library-gen/Stratosphere/Resources/EC2NetworkInterface.hs view
@@ -0,0 +1,98 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html++module Stratosphere.Resources.EC2NetworkInterface where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EC2NetworkInterfaceInstanceIpv6Address+import Stratosphere.ResourceProperties.EC2NetworkInterfacePrivateIpAddressSpecification+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for EC2NetworkInterface. See+-- | 'ec2NetworkInterface' for a more convenient constructor.+data EC2NetworkInterface =+  EC2NetworkInterface+  { _eC2NetworkInterfaceDescription :: Maybe (Val Text)+  , _eC2NetworkInterfaceGroupSet :: Maybe [Val Text]+  , _eC2NetworkInterfaceIpv6AddressCount :: Maybe (Val Integer')+  , _eC2NetworkInterfaceIpv6Addresses :: Maybe EC2NetworkInterfaceInstanceIpv6Address+  , _eC2NetworkInterfacePrivateIpAddress :: Maybe (Val Text)+  , _eC2NetworkInterfacePrivateIpAddresses :: Maybe [EC2NetworkInterfacePrivateIpAddressSpecification]+  , _eC2NetworkInterfaceSecondaryPrivateIpAddressCount :: Maybe (Val Integer')+  , _eC2NetworkInterfaceSourceDestCheck :: Maybe (Val Bool')+  , _eC2NetworkInterfaceSubnetId :: Val Text+  , _eC2NetworkInterfaceTags :: Maybe [Tag]+  } deriving (Show, Generic)++instance ToJSON EC2NetworkInterface where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++instance FromJSON EC2NetworkInterface where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++-- | Constructor for 'EC2NetworkInterface' containing required fields as+-- | arguments.+ec2NetworkInterface+  :: Val Text -- ^ 'ecniSubnetId'+  -> EC2NetworkInterface+ec2NetworkInterface subnetIdarg =+  EC2NetworkInterface+  { _eC2NetworkInterfaceDescription = Nothing+  , _eC2NetworkInterfaceGroupSet = Nothing+  , _eC2NetworkInterfaceIpv6AddressCount = Nothing+  , _eC2NetworkInterfaceIpv6Addresses = Nothing+  , _eC2NetworkInterfacePrivateIpAddress = Nothing+  , _eC2NetworkInterfacePrivateIpAddresses = Nothing+  , _eC2NetworkInterfaceSecondaryPrivateIpAddressCount = Nothing+  , _eC2NetworkInterfaceSourceDestCheck = Nothing+  , _eC2NetworkInterfaceSubnetId = subnetIdarg+  , _eC2NetworkInterfaceTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-description+ecniDescription :: Lens' EC2NetworkInterface (Maybe (Val Text))+ecniDescription = lens _eC2NetworkInterfaceDescription (\s a -> s { _eC2NetworkInterfaceDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-groupset+ecniGroupSet :: Lens' EC2NetworkInterface (Maybe [Val Text])+ecniGroupSet = lens _eC2NetworkInterfaceGroupSet (\s a -> s { _eC2NetworkInterfaceGroupSet = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-ec2-networkinterface-ipv6addresscount+ecniIpv6AddressCount :: Lens' EC2NetworkInterface (Maybe (Val Integer'))+ecniIpv6AddressCount = lens _eC2NetworkInterfaceIpv6AddressCount (\s a -> s { _eC2NetworkInterfaceIpv6AddressCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-ec2-networkinterface-ipv6addresses+ecniIpv6Addresses :: Lens' EC2NetworkInterface (Maybe EC2NetworkInterfaceInstanceIpv6Address)+ecniIpv6Addresses = lens _eC2NetworkInterfaceIpv6Addresses (\s a -> s { _eC2NetworkInterfaceIpv6Addresses = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-privateipaddress+ecniPrivateIpAddress :: Lens' EC2NetworkInterface (Maybe (Val Text))+ecniPrivateIpAddress = lens _eC2NetworkInterfacePrivateIpAddress (\s a -> s { _eC2NetworkInterfacePrivateIpAddress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-privateipaddresses+ecniPrivateIpAddresses :: Lens' EC2NetworkInterface (Maybe [EC2NetworkInterfacePrivateIpAddressSpecification])+ecniPrivateIpAddresses = lens _eC2NetworkInterfacePrivateIpAddresses (\s a -> s { _eC2NetworkInterfacePrivateIpAddresses = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-secondaryprivateipcount+ecniSecondaryPrivateIpAddressCount :: Lens' EC2NetworkInterface (Maybe (Val Integer'))+ecniSecondaryPrivateIpAddressCount = lens _eC2NetworkInterfaceSecondaryPrivateIpAddressCount (\s a -> s { _eC2NetworkInterfaceSecondaryPrivateIpAddressCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-sourcedestcheck+ecniSourceDestCheck :: Lens' EC2NetworkInterface (Maybe (Val Bool'))+ecniSourceDestCheck = lens _eC2NetworkInterfaceSourceDestCheck (\s a -> s { _eC2NetworkInterfaceSourceDestCheck = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-subnetid+ecniSubnetId :: Lens' EC2NetworkInterface (Val Text)+ecniSubnetId = lens _eC2NetworkInterfaceSubnetId (\s a -> s { _eC2NetworkInterfaceSubnetId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface.html#cfn-awsec2networkinterface-tags+ecniTags :: Lens' EC2NetworkInterface (Maybe [Tag])+ecniTags = lens _eC2NetworkInterfaceTags (\s a -> s { _eC2NetworkInterfaceTags = a })
+ library-gen/Stratosphere/Resources/EC2NetworkInterfaceAttachment.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html++module Stratosphere.Resources.EC2NetworkInterfaceAttachment where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2NetworkInterfaceAttachment. See+-- | 'ec2NetworkInterfaceAttachment' for a more convenient constructor.+data EC2NetworkInterfaceAttachment =+  EC2NetworkInterfaceAttachment+  { _eC2NetworkInterfaceAttachmentDeleteOnTermination :: Maybe (Val Bool')+  , _eC2NetworkInterfaceAttachmentDeviceIndex :: Val Text+  , _eC2NetworkInterfaceAttachmentInstanceId :: Val Text+  , _eC2NetworkInterfaceAttachmentNetworkInterfaceId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2NetworkInterfaceAttachment where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON EC2NetworkInterfaceAttachment where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'EC2NetworkInterfaceAttachment' containing required+-- | fields as arguments.+ec2NetworkInterfaceAttachment+  :: Val Text -- ^ 'ecniaDeviceIndex'+  -> Val Text -- ^ 'ecniaInstanceId'+  -> Val Text -- ^ 'ecniaNetworkInterfaceId'+  -> EC2NetworkInterfaceAttachment+ec2NetworkInterfaceAttachment deviceIndexarg instanceIdarg networkInterfaceIdarg =+  EC2NetworkInterfaceAttachment+  { _eC2NetworkInterfaceAttachmentDeleteOnTermination = Nothing+  , _eC2NetworkInterfaceAttachmentDeviceIndex = deviceIndexarg+  , _eC2NetworkInterfaceAttachmentInstanceId = instanceIdarg+  , _eC2NetworkInterfaceAttachmentNetworkInterfaceId = networkInterfaceIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html#cfn-ec2-network-interface-attachment-deleteonterm+ecniaDeleteOnTermination :: Lens' EC2NetworkInterfaceAttachment (Maybe (Val Bool'))+ecniaDeleteOnTermination = lens _eC2NetworkInterfaceAttachmentDeleteOnTermination (\s a -> s { _eC2NetworkInterfaceAttachmentDeleteOnTermination = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html#cfn-ec2-network-interface-attachment-deviceindex+ecniaDeviceIndex :: Lens' EC2NetworkInterfaceAttachment (Val Text)+ecniaDeviceIndex = lens _eC2NetworkInterfaceAttachmentDeviceIndex (\s a -> s { _eC2NetworkInterfaceAttachmentDeviceIndex = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html#cfn-ec2-network-interface-attachment-instanceid+ecniaInstanceId :: Lens' EC2NetworkInterfaceAttachment (Val Text)+ecniaInstanceId = lens _eC2NetworkInterfaceAttachmentInstanceId (\s a -> s { _eC2NetworkInterfaceAttachmentInstanceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-network-interface-attachment.html#cfn-ec2-network-interface-attachment-networkinterfaceid+ecniaNetworkInterfaceId :: Lens' EC2NetworkInterfaceAttachment (Val Text)+ecniaNetworkInterfaceId = lens _eC2NetworkInterfaceAttachmentNetworkInterfaceId (\s a -> s { _eC2NetworkInterfaceAttachmentNetworkInterfaceId = a })
+ library-gen/Stratosphere/Resources/EC2PlacementGroup.hs view
@@ -0,0 +1,41 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-placementgroup.html++module Stratosphere.Resources.EC2PlacementGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2PlacementGroup. See 'ec2PlacementGroup'+-- | for a more convenient constructor.+data EC2PlacementGroup =+  EC2PlacementGroup+  { _eC2PlacementGroupStrategy :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2PlacementGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }++instance FromJSON EC2PlacementGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }++-- | Constructor for 'EC2PlacementGroup' containing required fields as+-- | arguments.+ec2PlacementGroup+  :: EC2PlacementGroup+ec2PlacementGroup  =+  EC2PlacementGroup+  { _eC2PlacementGroupStrategy = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-placementgroup.html#cfn-ec2-placementgroup-strategy+ecpgStrategy :: Lens' EC2PlacementGroup (Maybe (Val Text))+ecpgStrategy = lens _eC2PlacementGroupStrategy (\s a -> s { _eC2PlacementGroupStrategy = a })
+ library-gen/Stratosphere/Resources/EC2Route.hs view
@@ -0,0 +1,84 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html++module Stratosphere.Resources.EC2Route where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2Route. See 'ec2Route' for a more+-- | convenient constructor.+data EC2Route =+  EC2Route+  { _eC2RouteDestinationCidrBlock :: Val Text+  , _eC2RouteDestinationIpv6CidrBlock :: Maybe (Val Text)+  , _eC2RouteGatewayId :: Maybe (Val Text)+  , _eC2RouteInstanceId :: Maybe (Val Text)+  , _eC2RouteNatGatewayId :: Maybe (Val Text)+  , _eC2RouteNetworkInterfaceId :: Maybe (Val Text)+  , _eC2RouteRouteTableId :: Val Text+  , _eC2RouteVpcPeeringConnectionId :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2Route where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 9, omitNothingFields = True }++instance FromJSON EC2Route where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 9, omitNothingFields = True }++-- | Constructor for 'EC2Route' containing required fields as arguments.+ec2Route+  :: Val Text -- ^ 'ecrDestinationCidrBlock'+  -> Val Text -- ^ 'ecrRouteTableId'+  -> EC2Route+ec2Route destinationCidrBlockarg routeTableIdarg =+  EC2Route+  { _eC2RouteDestinationCidrBlock = destinationCidrBlockarg+  , _eC2RouteDestinationIpv6CidrBlock = Nothing+  , _eC2RouteGatewayId = Nothing+  , _eC2RouteInstanceId = Nothing+  , _eC2RouteNatGatewayId = Nothing+  , _eC2RouteNetworkInterfaceId = Nothing+  , _eC2RouteRouteTableId = routeTableIdarg+  , _eC2RouteVpcPeeringConnectionId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-destinationcidrblock+ecrDestinationCidrBlock :: Lens' EC2Route (Val Text)+ecrDestinationCidrBlock = lens _eC2RouteDestinationCidrBlock (\s a -> s { _eC2RouteDestinationCidrBlock = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-destinationipv6cidrblock+ecrDestinationIpv6CidrBlock :: Lens' EC2Route (Maybe (Val Text))+ecrDestinationIpv6CidrBlock = lens _eC2RouteDestinationIpv6CidrBlock (\s a -> s { _eC2RouteDestinationIpv6CidrBlock = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-gatewayid+ecrGatewayId :: Lens' EC2Route (Maybe (Val Text))+ecrGatewayId = lens _eC2RouteGatewayId (\s a -> s { _eC2RouteGatewayId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-instanceid+ecrInstanceId :: Lens' EC2Route (Maybe (Val Text))+ecrInstanceId = lens _eC2RouteInstanceId (\s a -> s { _eC2RouteInstanceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-natgatewayid+ecrNatGatewayId :: Lens' EC2Route (Maybe (Val Text))+ecrNatGatewayId = lens _eC2RouteNatGatewayId (\s a -> s { _eC2RouteNatGatewayId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-networkinterfaceid+ecrNetworkInterfaceId :: Lens' EC2Route (Maybe (Val Text))+ecrNetworkInterfaceId = lens _eC2RouteNetworkInterfaceId (\s a -> s { _eC2RouteNetworkInterfaceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-routetableid+ecrRouteTableId :: Lens' EC2Route (Val Text)+ecrRouteTableId = lens _eC2RouteRouteTableId (\s a -> s { _eC2RouteRouteTableId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-vpcpeeringconnectionid+ecrVpcPeeringConnectionId :: Lens' EC2Route (Maybe (Val Text))+ecrVpcPeeringConnectionId = lens _eC2RouteVpcPeeringConnectionId (\s a -> s { _eC2RouteVpcPeeringConnectionId = a })
+ library-gen/Stratosphere/Resources/EC2RouteTable.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route-table.html++module Stratosphere.Resources.EC2RouteTable where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for EC2RouteTable. See 'ec2RouteTable' for a+-- | more convenient constructor.+data EC2RouteTable =+  EC2RouteTable+  { _eC2RouteTableTags :: Maybe [Tag]+  , _eC2RouteTableVpcId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2RouteTable where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++instance FromJSON EC2RouteTable where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++-- | Constructor for 'EC2RouteTable' containing required fields as arguments.+ec2RouteTable+  :: Val Text -- ^ 'ecrtVpcId'+  -> EC2RouteTable+ec2RouteTable vpcIdarg =+  EC2RouteTable+  { _eC2RouteTableTags = Nothing+  , _eC2RouteTableVpcId = vpcIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route-table.html#cfn-ec2-routetable-tags+ecrtTags :: Lens' EC2RouteTable (Maybe [Tag])+ecrtTags = lens _eC2RouteTableTags (\s a -> s { _eC2RouteTableTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route-table.html#cfn-ec2-routetable-vpcid+ecrtVpcId :: Lens' EC2RouteTable (Val Text)+ecrtVpcId = lens _eC2RouteTableVpcId (\s a -> s { _eC2RouteTableVpcId = a })
+ library-gen/Stratosphere/Resources/EC2SecurityGroup.hs view
@@ -0,0 +1,67 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html++module Stratosphere.Resources.EC2SecurityGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EC2SecurityGroupRule+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for EC2SecurityGroup. See 'ec2SecurityGroup'+-- | for a more convenient constructor.+data EC2SecurityGroup =+  EC2SecurityGroup+  { _eC2SecurityGroupGroupDescription :: Val Text+  , _eC2SecurityGroupSecurityGroupEgress :: Maybe [EC2SecurityGroupRule]+  , _eC2SecurityGroupSecurityGroupIngress :: Maybe [EC2SecurityGroupRule]+  , _eC2SecurityGroupTags :: Maybe [Tag]+  , _eC2SecurityGroupVpcId :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2SecurityGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++instance FromJSON EC2SecurityGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++-- | Constructor for 'EC2SecurityGroup' containing required fields as+-- | arguments.+ec2SecurityGroup+  :: Val Text -- ^ 'ecsgGroupDescription'+  -> EC2SecurityGroup+ec2SecurityGroup groupDescriptionarg =+  EC2SecurityGroup+  { _eC2SecurityGroupGroupDescription = groupDescriptionarg+  , _eC2SecurityGroupSecurityGroupEgress = Nothing+  , _eC2SecurityGroupSecurityGroupIngress = Nothing+  , _eC2SecurityGroupTags = Nothing+  , _eC2SecurityGroupVpcId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-groupdescription+ecsgGroupDescription :: Lens' EC2SecurityGroup (Val Text)+ecsgGroupDescription = lens _eC2SecurityGroupGroupDescription (\s a -> s { _eC2SecurityGroupGroupDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-securitygroupegress+ecsgSecurityGroupEgress :: Lens' EC2SecurityGroup (Maybe [EC2SecurityGroupRule])+ecsgSecurityGroupEgress = lens _eC2SecurityGroupSecurityGroupEgress (\s a -> s { _eC2SecurityGroupSecurityGroupEgress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-securitygroupingress+ecsgSecurityGroupIngress :: Lens' EC2SecurityGroup (Maybe [EC2SecurityGroupRule])+ecsgSecurityGroupIngress = lens _eC2SecurityGroupSecurityGroupIngress (\s a -> s { _eC2SecurityGroupSecurityGroupIngress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-tags+ecsgTags :: Lens' EC2SecurityGroup (Maybe [Tag])+ecsgTags = lens _eC2SecurityGroupTags (\s a -> s { _eC2SecurityGroupTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-vpcid+ecsgVpcId :: Lens' EC2SecurityGroup (Maybe (Val Text))+ecsgVpcId = lens _eC2SecurityGroupVpcId (\s a -> s { _eC2SecurityGroupVpcId = a })
+ library-gen/Stratosphere/Resources/EC2SecurityGroupEgress.hs view
@@ -0,0 +1,85 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html++module Stratosphere.Resources.EC2SecurityGroupEgress where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2SecurityGroupEgress. See+-- | 'ec2SecurityGroupEgress' for a more convenient constructor.+data EC2SecurityGroupEgress =+  EC2SecurityGroupEgress+  { _eC2SecurityGroupEgressCidrIp :: Maybe (Val Text)+  , _eC2SecurityGroupEgressCidrIpv6 :: Maybe (Val Text)+  , _eC2SecurityGroupEgressDestinationPrefixListId :: Maybe (Val Text)+  , _eC2SecurityGroupEgressDestinationSecurityGroupId :: Maybe (Val Text)+  , _eC2SecurityGroupEgressFromPort :: Maybe (Val Integer')+  , _eC2SecurityGroupEgressGroupId :: Val Text+  , _eC2SecurityGroupEgressIpProtocol :: Val Text+  , _eC2SecurityGroupEgressToPort :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON EC2SecurityGroupEgress where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++instance FromJSON EC2SecurityGroupEgress where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++-- | Constructor for 'EC2SecurityGroupEgress' containing required fields as+-- | arguments.+ec2SecurityGroupEgress+  :: Val Text -- ^ 'ecsgeGroupId'+  -> Val Text -- ^ 'ecsgeIpProtocol'+  -> EC2SecurityGroupEgress+ec2SecurityGroupEgress groupIdarg ipProtocolarg =+  EC2SecurityGroupEgress+  { _eC2SecurityGroupEgressCidrIp = Nothing+  , _eC2SecurityGroupEgressCidrIpv6 = Nothing+  , _eC2SecurityGroupEgressDestinationPrefixListId = Nothing+  , _eC2SecurityGroupEgressDestinationSecurityGroupId = Nothing+  , _eC2SecurityGroupEgressFromPort = Nothing+  , _eC2SecurityGroupEgressGroupId = groupIdarg+  , _eC2SecurityGroupEgressIpProtocol = ipProtocolarg+  , _eC2SecurityGroupEgressToPort = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-cidrip+ecsgeCidrIp :: Lens' EC2SecurityGroupEgress (Maybe (Val Text))+ecsgeCidrIp = lens _eC2SecurityGroupEgressCidrIp (\s a -> s { _eC2SecurityGroupEgressCidrIp = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-cidripv6+ecsgeCidrIpv6 :: Lens' EC2SecurityGroupEgress (Maybe (Val Text))+ecsgeCidrIpv6 = lens _eC2SecurityGroupEgressCidrIpv6 (\s a -> s { _eC2SecurityGroupEgressCidrIpv6 = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-destinationprefixlistid+ecsgeDestinationPrefixListId :: Lens' EC2SecurityGroupEgress (Maybe (Val Text))+ecsgeDestinationPrefixListId = lens _eC2SecurityGroupEgressDestinationPrefixListId (\s a -> s { _eC2SecurityGroupEgressDestinationPrefixListId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-destinationsecuritygroupid+ecsgeDestinationSecurityGroupId :: Lens' EC2SecurityGroupEgress (Maybe (Val Text))+ecsgeDestinationSecurityGroupId = lens _eC2SecurityGroupEgressDestinationSecurityGroupId (\s a -> s { _eC2SecurityGroupEgressDestinationSecurityGroupId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-fromport+ecsgeFromPort :: Lens' EC2SecurityGroupEgress (Maybe (Val Integer'))+ecsgeFromPort = lens _eC2SecurityGroupEgressFromPort (\s a -> s { _eC2SecurityGroupEgressFromPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-groupid+ecsgeGroupId :: Lens' EC2SecurityGroupEgress (Val Text)+ecsgeGroupId = lens _eC2SecurityGroupEgressGroupId (\s a -> s { _eC2SecurityGroupEgressGroupId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-ipprotocol+ecsgeIpProtocol :: Lens' EC2SecurityGroupEgress (Val Text)+ecsgeIpProtocol = lens _eC2SecurityGroupEgressIpProtocol (\s a -> s { _eC2SecurityGroupEgressIpProtocol = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-security-group-egress.html#cfn-ec2-securitygroupegress-toport+ecsgeToPort :: Lens' EC2SecurityGroupEgress (Maybe (Val Integer'))+ecsgeToPort = lens _eC2SecurityGroupEgressToPort (\s a -> s { _eC2SecurityGroupEgressToPort = a })
+ library-gen/Stratosphere/Resources/EC2SecurityGroupIngress.hs view
@@ -0,0 +1,96 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html++module Stratosphere.Resources.EC2SecurityGroupIngress where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2SecurityGroupIngress. See+-- | 'ec2SecurityGroupIngress' for a more convenient constructor.+data EC2SecurityGroupIngress =+  EC2SecurityGroupIngress+  { _eC2SecurityGroupIngressCidrIp :: Maybe (Val Text)+  , _eC2SecurityGroupIngressCidrIpv6 :: Maybe (Val Text)+  , _eC2SecurityGroupIngressFromPort :: Maybe (Val Integer')+  , _eC2SecurityGroupIngressGroupId :: Maybe (Val Text)+  , _eC2SecurityGroupIngressGroupName :: Maybe (Val Text)+  , _eC2SecurityGroupIngressIpProtocol :: Val Text+  , _eC2SecurityGroupIngressSourceSecurityGroupId :: Maybe (Val Text)+  , _eC2SecurityGroupIngressSourceSecurityGroupName :: Maybe (Val Text)+  , _eC2SecurityGroupIngressSourceSecurityGroupOwnerId :: Maybe (Val Text)+  , _eC2SecurityGroupIngressToPort :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON EC2SecurityGroupIngress where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++instance FromJSON EC2SecurityGroupIngress where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++-- | Constructor for 'EC2SecurityGroupIngress' containing required fields as+-- | arguments.+ec2SecurityGroupIngress+  :: Val Text -- ^ 'ecsgiIpProtocol'+  -> EC2SecurityGroupIngress+ec2SecurityGroupIngress ipProtocolarg =+  EC2SecurityGroupIngress+  { _eC2SecurityGroupIngressCidrIp = Nothing+  , _eC2SecurityGroupIngressCidrIpv6 = Nothing+  , _eC2SecurityGroupIngressFromPort = Nothing+  , _eC2SecurityGroupIngressGroupId = Nothing+  , _eC2SecurityGroupIngressGroupName = Nothing+  , _eC2SecurityGroupIngressIpProtocol = ipProtocolarg+  , _eC2SecurityGroupIngressSourceSecurityGroupId = Nothing+  , _eC2SecurityGroupIngressSourceSecurityGroupName = Nothing+  , _eC2SecurityGroupIngressSourceSecurityGroupOwnerId = Nothing+  , _eC2SecurityGroupIngressToPort = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-cidrip+ecsgiCidrIp :: Lens' EC2SecurityGroupIngress (Maybe (Val Text))+ecsgiCidrIp = lens _eC2SecurityGroupIngressCidrIp (\s a -> s { _eC2SecurityGroupIngressCidrIp = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-cidripv6+ecsgiCidrIpv6 :: Lens' EC2SecurityGroupIngress (Maybe (Val Text))+ecsgiCidrIpv6 = lens _eC2SecurityGroupIngressCidrIpv6 (\s a -> s { _eC2SecurityGroupIngressCidrIpv6 = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-fromport+ecsgiFromPort :: Lens' EC2SecurityGroupIngress (Maybe (Val Integer'))+ecsgiFromPort = lens _eC2SecurityGroupIngressFromPort (\s a -> s { _eC2SecurityGroupIngressFromPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-groupid+ecsgiGroupId :: Lens' EC2SecurityGroupIngress (Maybe (Val Text))+ecsgiGroupId = lens _eC2SecurityGroupIngressGroupId (\s a -> s { _eC2SecurityGroupIngressGroupId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-groupname+ecsgiGroupName :: Lens' EC2SecurityGroupIngress (Maybe (Val Text))+ecsgiGroupName = lens _eC2SecurityGroupIngressGroupName (\s a -> s { _eC2SecurityGroupIngressGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-ipprotocol+ecsgiIpProtocol :: Lens' EC2SecurityGroupIngress (Val Text)+ecsgiIpProtocol = lens _eC2SecurityGroupIngressIpProtocol (\s a -> s { _eC2SecurityGroupIngressIpProtocol = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-sourcesecuritygroupid+ecsgiSourceSecurityGroupId :: Lens' EC2SecurityGroupIngress (Maybe (Val Text))+ecsgiSourceSecurityGroupId = lens _eC2SecurityGroupIngressSourceSecurityGroupId (\s a -> s { _eC2SecurityGroupIngressSourceSecurityGroupId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-sourcesecuritygroupname+ecsgiSourceSecurityGroupName :: Lens' EC2SecurityGroupIngress (Maybe (Val Text))+ecsgiSourceSecurityGroupName = lens _eC2SecurityGroupIngressSourceSecurityGroupName (\s a -> s { _eC2SecurityGroupIngressSourceSecurityGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-sourcesecuritygroupownerid+ecsgiSourceSecurityGroupOwnerId :: Lens' EC2SecurityGroupIngress (Maybe (Val Text))+ecsgiSourceSecurityGroupOwnerId = lens _eC2SecurityGroupIngressSourceSecurityGroupOwnerId (\s a -> s { _eC2SecurityGroupIngressSourceSecurityGroupOwnerId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group-ingress.html#cfn-ec2-security-group-ingress-toport+ecsgiToPort :: Lens' EC2SecurityGroupIngress (Maybe (Val Integer'))+ecsgiToPort = lens _eC2SecurityGroupIngressToPort (\s a -> s { _eC2SecurityGroupIngressToPort = a })
+ library-gen/Stratosphere/Resources/EC2SpotFleet.hs view
@@ -0,0 +1,41 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-spotfleet.html++module Stratosphere.Resources.EC2SpotFleet where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetRequestConfigData++-- | Full data type definition for EC2SpotFleet. See 'ec2SpotFleet' for a more+-- | convenient constructor.+data EC2SpotFleet =+  EC2SpotFleet+  { _eC2SpotFleetSpotFleetRequestConfigData :: EC2SpotFleetSpotFleetRequestConfigData+  } deriving (Show, Generic)++instance ToJSON EC2SpotFleet where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }++instance FromJSON EC2SpotFleet where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }++-- | Constructor for 'EC2SpotFleet' containing required fields as arguments.+ec2SpotFleet+  :: EC2SpotFleetSpotFleetRequestConfigData -- ^ 'ecsfSpotFleetRequestConfigData'+  -> EC2SpotFleet+ec2SpotFleet spotFleetRequestConfigDataarg =+  EC2SpotFleet+  { _eC2SpotFleetSpotFleetRequestConfigData = spotFleetRequestConfigDataarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-spotfleet.html#cfn-ec2-spotfleet-spotfleetrequestconfigdata+ecsfSpotFleetRequestConfigData :: Lens' EC2SpotFleet EC2SpotFleetSpotFleetRequestConfigData+ecsfSpotFleetRequestConfigData = lens _eC2SpotFleetSpotFleetRequestConfigData (\s a -> s { _eC2SpotFleetSpotFleetRequestConfigData = a })
+ library-gen/Stratosphere/Resources/EC2Subnet.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html++module Stratosphere.Resources.EC2Subnet where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for EC2Subnet. See 'ec2Subnet' for a more+-- | convenient constructor.+data EC2Subnet =+  EC2Subnet+  { _eC2SubnetAvailabilityZone :: Maybe (Val Text)+  , _eC2SubnetCidrBlock :: Val Text+  , _eC2SubnetMapPublicIpOnLaunch :: Maybe (Val Bool')+  , _eC2SubnetTags :: Maybe [Tag]+  , _eC2SubnetVpcId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2Subnet where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }++instance FromJSON EC2Subnet where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }++-- | Constructor for 'EC2Subnet' containing required fields as arguments.+ec2Subnet+  :: Val Text -- ^ 'ecsCidrBlock'+  -> Val Text -- ^ 'ecsVpcId'+  -> EC2Subnet+ec2Subnet cidrBlockarg vpcIdarg =+  EC2Subnet+  { _eC2SubnetAvailabilityZone = Nothing+  , _eC2SubnetCidrBlock = cidrBlockarg+  , _eC2SubnetMapPublicIpOnLaunch = Nothing+  , _eC2SubnetTags = Nothing+  , _eC2SubnetVpcId = vpcIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-availabilityzone+ecsAvailabilityZone :: Lens' EC2Subnet (Maybe (Val Text))+ecsAvailabilityZone = lens _eC2SubnetAvailabilityZone (\s a -> s { _eC2SubnetAvailabilityZone = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-cidrblock+ecsCidrBlock :: Lens' EC2Subnet (Val Text)+ecsCidrBlock = lens _eC2SubnetCidrBlock (\s a -> s { _eC2SubnetCidrBlock = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-mappubliciponlaunch+ecsMapPublicIpOnLaunch :: Lens' EC2Subnet (Maybe (Val Bool'))+ecsMapPublicIpOnLaunch = lens _eC2SubnetMapPublicIpOnLaunch (\s a -> s { _eC2SubnetMapPublicIpOnLaunch = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-ec2-subnet-tags+ecsTags :: Lens' EC2Subnet (Maybe [Tag])+ecsTags = lens _eC2SubnetTags (\s a -> s { _eC2SubnetTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet.html#cfn-awsec2subnet-prop-vpcid+ecsVpcId :: Lens' EC2Subnet (Val Text)+ecsVpcId = lens _eC2SubnetVpcId (\s a -> s { _eC2SubnetVpcId = a })
+ library-gen/Stratosphere/Resources/EC2SubnetCidrBlock.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html++module Stratosphere.Resources.EC2SubnetCidrBlock where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2SubnetCidrBlock. See+-- | 'ec2SubnetCidrBlock' for a more convenient constructor.+data EC2SubnetCidrBlock =+  EC2SubnetCidrBlock+  { _eC2SubnetCidrBlockIpv6CidrBlock :: Val Text+  , _eC2SubnetCidrBlockSubnetId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2SubnetCidrBlock where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++instance FromJSON EC2SubnetCidrBlock where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++-- | Constructor for 'EC2SubnetCidrBlock' containing required fields as+-- | arguments.+ec2SubnetCidrBlock+  :: Val Text -- ^ 'ecscbIpv6CidrBlock'+  -> Val Text -- ^ 'ecscbSubnetId'+  -> EC2SubnetCidrBlock+ec2SubnetCidrBlock ipv6CidrBlockarg subnetIdarg =+  EC2SubnetCidrBlock+  { _eC2SubnetCidrBlockIpv6CidrBlock = ipv6CidrBlockarg+  , _eC2SubnetCidrBlockSubnetId = subnetIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html#cfn-ec2-subnetcidrblock-ipv6cidrblock+ecscbIpv6CidrBlock :: Lens' EC2SubnetCidrBlock (Val Text)+ecscbIpv6CidrBlock = lens _eC2SubnetCidrBlockIpv6CidrBlock (\s a -> s { _eC2SubnetCidrBlockIpv6CidrBlock = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnetcidrblock.html#cfn-ec2-subnetcidrblock-subnetid+ecscbSubnetId :: Lens' EC2SubnetCidrBlock (Val Text)+ecscbSubnetId = lens _eC2SubnetCidrBlockSubnetId (\s a -> s { _eC2SubnetCidrBlockSubnetId = a })
+ library-gen/Stratosphere/Resources/EC2SubnetNetworkAclAssociation.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-network-acl-assoc.html++module Stratosphere.Resources.EC2SubnetNetworkAclAssociation where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2SubnetNetworkAclAssociation. See+-- | 'ec2SubnetNetworkAclAssociation' for a more convenient constructor.+data EC2SubnetNetworkAclAssociation =+  EC2SubnetNetworkAclAssociation+  { _eC2SubnetNetworkAclAssociationNetworkAclId :: Val Text+  , _eC2SubnetNetworkAclAssociationSubnetId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2SubnetNetworkAclAssociation where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON EC2SubnetNetworkAclAssociation where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'EC2SubnetNetworkAclAssociation' containing required+-- | fields as arguments.+ec2SubnetNetworkAclAssociation+  :: Val Text -- ^ 'ecsnaaNetworkAclId'+  -> Val Text -- ^ 'ecsnaaSubnetId'+  -> EC2SubnetNetworkAclAssociation+ec2SubnetNetworkAclAssociation networkAclIdarg subnetIdarg =+  EC2SubnetNetworkAclAssociation+  { _eC2SubnetNetworkAclAssociationNetworkAclId = networkAclIdarg+  , _eC2SubnetNetworkAclAssociationSubnetId = subnetIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-network-acl-assoc.html#cfn-ec2-subnetnetworkaclassociation-networkaclid+ecsnaaNetworkAclId :: Lens' EC2SubnetNetworkAclAssociation (Val Text)+ecsnaaNetworkAclId = lens _eC2SubnetNetworkAclAssociationNetworkAclId (\s a -> s { _eC2SubnetNetworkAclAssociationNetworkAclId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-network-acl-assoc.html#cfn-ec2-subnetnetworkaclassociation-associationid+ecsnaaSubnetId :: Lens' EC2SubnetNetworkAclAssociation (Val Text)+ecsnaaSubnetId = lens _eC2SubnetNetworkAclAssociationSubnetId (\s a -> s { _eC2SubnetNetworkAclAssociationSubnetId = a })
+ library-gen/Stratosphere/Resources/EC2SubnetRouteTableAssociation.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-route-table-assoc.html++module Stratosphere.Resources.EC2SubnetRouteTableAssociation where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2SubnetRouteTableAssociation. See+-- | 'ec2SubnetRouteTableAssociation' for a more convenient constructor.+data EC2SubnetRouteTableAssociation =+  EC2SubnetRouteTableAssociation+  { _eC2SubnetRouteTableAssociationRouteTableId :: Val Text+  , _eC2SubnetRouteTableAssociationSubnetId :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2SubnetRouteTableAssociation where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON EC2SubnetRouteTableAssociation where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'EC2SubnetRouteTableAssociation' containing required+-- | fields as arguments.+ec2SubnetRouteTableAssociation+  :: Val Text -- ^ 'ecsrtaRouteTableId'+  -> EC2SubnetRouteTableAssociation+ec2SubnetRouteTableAssociation routeTableIdarg =+  EC2SubnetRouteTableAssociation+  { _eC2SubnetRouteTableAssociationRouteTableId = routeTableIdarg+  , _eC2SubnetRouteTableAssociationSubnetId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-route-table-assoc.html#cfn-ec2-subnetroutetableassociation-routetableid+ecsrtaRouteTableId :: Lens' EC2SubnetRouteTableAssociation (Val Text)+ecsrtaRouteTableId = lens _eC2SubnetRouteTableAssociationRouteTableId (\s a -> s { _eC2SubnetRouteTableAssociationRouteTableId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-subnet-route-table-assoc.html#cfn-ec2-subnetroutetableassociation-subnetid+ecsrtaSubnetId :: Lens' EC2SubnetRouteTableAssociation (Maybe (Val Text))+ecsrtaSubnetId = lens _eC2SubnetRouteTableAssociationSubnetId (\s a -> s { _eC2SubnetRouteTableAssociationSubnetId = a })
+ library-gen/Stratosphere/Resources/EC2VPC.hs view
@@ -0,0 +1,65 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html++module Stratosphere.Resources.EC2VPC where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for EC2VPC. See 'ec2VPC' for a more convenient+-- | constructor.+data EC2VPC =+  EC2VPC+  { _eC2VPCCidrBlock :: Val Text+  , _eC2VPCEnableDnsHostnames :: Maybe (Val Bool')+  , _eC2VPCEnableDnsSupport :: Maybe (Val Bool')+  , _eC2VPCInstanceTenancy :: Maybe (Val Text)+  , _eC2VPCTags :: Maybe [Tag]+  } deriving (Show, Generic)++instance ToJSON EC2VPC where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 7, omitNothingFields = True }++instance FromJSON EC2VPC where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 7, omitNothingFields = True }++-- | Constructor for 'EC2VPC' containing required fields as arguments.+ec2VPC+  :: Val Text -- ^ 'ecvpcCidrBlock'+  -> EC2VPC+ec2VPC cidrBlockarg =+  EC2VPC+  { _eC2VPCCidrBlock = cidrBlockarg+  , _eC2VPCEnableDnsHostnames = Nothing+  , _eC2VPCEnableDnsSupport = Nothing+  , _eC2VPCInstanceTenancy = Nothing+  , _eC2VPCTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-cidrblock+ecvpcCidrBlock :: Lens' EC2VPC (Val Text)+ecvpcCidrBlock = lens _eC2VPCCidrBlock (\s a -> s { _eC2VPCCidrBlock = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-EnableDnsHostnames+ecvpcEnableDnsHostnames :: Lens' EC2VPC (Maybe (Val Bool'))+ecvpcEnableDnsHostnames = lens _eC2VPCEnableDnsHostnames (\s a -> s { _eC2VPCEnableDnsHostnames = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-EnableDnsSupport+ecvpcEnableDnsSupport :: Lens' EC2VPC (Maybe (Val Bool'))+ecvpcEnableDnsSupport = lens _eC2VPCEnableDnsSupport (\s a -> s { _eC2VPCEnableDnsSupport = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-instancetenancy+ecvpcInstanceTenancy :: Lens' EC2VPC (Maybe (Val Text))+ecvpcInstanceTenancy = lens _eC2VPCInstanceTenancy (\s a -> s { _eC2VPCInstanceTenancy = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc.html#cfn-aws-ec2-vpc-tags+ecvpcTags :: Lens' EC2VPC (Maybe [Tag])+ecvpcTags = lens _eC2VPCTags (\s a -> s { _eC2VPCTags = a })
+ library-gen/Stratosphere/Resources/EC2VPCCidrBlock.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html++module Stratosphere.Resources.EC2VPCCidrBlock where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2VPCCidrBlock. See 'ec2VPCCidrBlock' for+-- | a more convenient constructor.+data EC2VPCCidrBlock =+  EC2VPCCidrBlock+  { _eC2VPCCidrBlockAmazonProvidedIpv6CidrBlock :: Maybe (Val Bool')+  , _eC2VPCCidrBlockVpcId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2VPCCidrBlock where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++instance FromJSON EC2VPCCidrBlock where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++-- | Constructor for 'EC2VPCCidrBlock' containing required fields as+-- | arguments.+ec2VPCCidrBlock+  :: Val Text -- ^ 'ecvpccbVpcId'+  -> EC2VPCCidrBlock+ec2VPCCidrBlock vpcIdarg =+  EC2VPCCidrBlock+  { _eC2VPCCidrBlockAmazonProvidedIpv6CidrBlock = Nothing+  , _eC2VPCCidrBlockVpcId = vpcIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html#cfn-ec2-vpccidrblock-amazonprovidedipv6cidrblock+ecvpccbAmazonProvidedIpv6CidrBlock :: Lens' EC2VPCCidrBlock (Maybe (Val Bool'))+ecvpccbAmazonProvidedIpv6CidrBlock = lens _eC2VPCCidrBlockAmazonProvidedIpv6CidrBlock (\s a -> s { _eC2VPCCidrBlockAmazonProvidedIpv6CidrBlock = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpccidrblock.html#cfn-ec2-vpccidrblock-vpcid+ecvpccbVpcId :: Lens' EC2VPCCidrBlock (Val Text)+ecvpccbVpcId = lens _eC2VPCCidrBlockVpcId (\s a -> s { _eC2VPCCidrBlockVpcId = a })
+ library-gen/Stratosphere/Resources/EC2VPCDHCPOptionsAssociation.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-dhcp-options-assoc.html++module Stratosphere.Resources.EC2VPCDHCPOptionsAssociation where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2VPCDHCPOptionsAssociation. See+-- | 'ec2VPCDHCPOptionsAssociation' for a more convenient constructor.+data EC2VPCDHCPOptionsAssociation =+  EC2VPCDHCPOptionsAssociation+  { _eC2VPCDHCPOptionsAssociationDhcpOptionsId :: Val Text+  , _eC2VPCDHCPOptionsAssociationVpcId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2VPCDHCPOptionsAssociation where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++instance FromJSON EC2VPCDHCPOptionsAssociation where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++-- | Constructor for 'EC2VPCDHCPOptionsAssociation' containing required fields+-- | as arguments.+ec2VPCDHCPOptionsAssociation+  :: Val Text -- ^ 'ecvpcdhcpoaDhcpOptionsId'+  -> Val Text -- ^ 'ecvpcdhcpoaVpcId'+  -> EC2VPCDHCPOptionsAssociation+ec2VPCDHCPOptionsAssociation dhcpOptionsIdarg vpcIdarg =+  EC2VPCDHCPOptionsAssociation+  { _eC2VPCDHCPOptionsAssociationDhcpOptionsId = dhcpOptionsIdarg+  , _eC2VPCDHCPOptionsAssociationVpcId = vpcIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-dhcp-options-assoc.html#cfn-ec2-vpcdhcpoptionsassociation-dhcpoptionsid+ecvpcdhcpoaDhcpOptionsId :: Lens' EC2VPCDHCPOptionsAssociation (Val Text)+ecvpcdhcpoaDhcpOptionsId = lens _eC2VPCDHCPOptionsAssociationDhcpOptionsId (\s a -> s { _eC2VPCDHCPOptionsAssociationDhcpOptionsId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-dhcp-options-assoc.html#cfn-ec2-vpcdhcpoptionsassociation-vpcid+ecvpcdhcpoaVpcId :: Lens' EC2VPCDHCPOptionsAssociation (Val Text)+ecvpcdhcpoaVpcId = lens _eC2VPCDHCPOptionsAssociationVpcId (\s a -> s { _eC2VPCDHCPOptionsAssociationVpcId = a })
+ library-gen/Stratosphere/Resources/EC2VPCEndpoint.hs view
@@ -0,0 +1,60 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html++module Stratosphere.Resources.EC2VPCEndpoint where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2VPCEndpoint. See 'ec2VPCEndpoint' for a+-- | more convenient constructor.+data EC2VPCEndpoint =+  EC2VPCEndpoint+  { _eC2VPCEndpointPolicyDocument :: Maybe Object+  , _eC2VPCEndpointRouteTableIds :: Maybe [Val Text]+  , _eC2VPCEndpointServiceName :: Val Text+  , _eC2VPCEndpointVpcId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2VPCEndpoint where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++instance FromJSON EC2VPCEndpoint where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++-- | Constructor for 'EC2VPCEndpoint' containing required fields as arguments.+ec2VPCEndpoint+  :: Val Text -- ^ 'ecvpceServiceName'+  -> Val Text -- ^ 'ecvpceVpcId'+  -> EC2VPCEndpoint+ec2VPCEndpoint serviceNamearg vpcIdarg =+  EC2VPCEndpoint+  { _eC2VPCEndpointPolicyDocument = Nothing+  , _eC2VPCEndpointRouteTableIds = Nothing+  , _eC2VPCEndpointServiceName = serviceNamearg+  , _eC2VPCEndpointVpcId = vpcIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-policydocument+ecvpcePolicyDocument :: Lens' EC2VPCEndpoint (Maybe Object)+ecvpcePolicyDocument = lens _eC2VPCEndpointPolicyDocument (\s a -> s { _eC2VPCEndpointPolicyDocument = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-routetableids+ecvpceRouteTableIds :: Lens' EC2VPCEndpoint (Maybe [Val Text])+ecvpceRouteTableIds = lens _eC2VPCEndpointRouteTableIds (\s a -> s { _eC2VPCEndpointRouteTableIds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-servicename+ecvpceServiceName :: Lens' EC2VPCEndpoint (Val Text)+ecvpceServiceName = lens _eC2VPCEndpointServiceName (\s a -> s { _eC2VPCEndpointServiceName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcendpoint.html#cfn-ec2-vpcendpoint-vpcid+ecvpceVpcId :: Lens' EC2VPCEndpoint (Val Text)+ecvpceVpcId = lens _eC2VPCEndpointVpcId (\s a -> s { _eC2VPCEndpointVpcId = a })
+ library-gen/Stratosphere/Resources/EC2VPCGatewayAttachment.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html++module Stratosphere.Resources.EC2VPCGatewayAttachment where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2VPCGatewayAttachment. See+-- | 'ec2VPCGatewayAttachment' for a more convenient constructor.+data EC2VPCGatewayAttachment =+  EC2VPCGatewayAttachment+  { _eC2VPCGatewayAttachmentInternetGatewayId :: Maybe (Val Text)+  , _eC2VPCGatewayAttachmentVpcId :: Val Text+  , _eC2VPCGatewayAttachmentVpnGatewayId :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2VPCGatewayAttachment where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++instance FromJSON EC2VPCGatewayAttachment where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++-- | Constructor for 'EC2VPCGatewayAttachment' containing required fields as+-- | arguments.+ec2VPCGatewayAttachment+  :: Val Text -- ^ 'ecvpcgaVpcId'+  -> EC2VPCGatewayAttachment+ec2VPCGatewayAttachment vpcIdarg =+  EC2VPCGatewayAttachment+  { _eC2VPCGatewayAttachmentInternetGatewayId = Nothing+  , _eC2VPCGatewayAttachmentVpcId = vpcIdarg+  , _eC2VPCGatewayAttachmentVpnGatewayId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html#cfn-ec2-vpcgatewayattachment-internetgatewayid+ecvpcgaInternetGatewayId :: Lens' EC2VPCGatewayAttachment (Maybe (Val Text))+ecvpcgaInternetGatewayId = lens _eC2VPCGatewayAttachmentInternetGatewayId (\s a -> s { _eC2VPCGatewayAttachmentInternetGatewayId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html#cfn-ec2-vpcgatewayattachment-vpcid+ecvpcgaVpcId :: Lens' EC2VPCGatewayAttachment (Val Text)+ecvpcgaVpcId = lens _eC2VPCGatewayAttachmentVpcId (\s a -> s { _eC2VPCGatewayAttachmentVpcId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpc-gateway-attachment.html#cfn-ec2-vpcgatewayattachment-vpngatewayid+ecvpcgaVpnGatewayId :: Lens' EC2VPCGatewayAttachment (Maybe (Val Text))+ecvpcgaVpnGatewayId = lens _eC2VPCGatewayAttachmentVpnGatewayId (\s a -> s { _eC2VPCGatewayAttachmentVpnGatewayId = a })
+ library-gen/Stratosphere/Resources/EC2VPCPeeringConnection.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html++module Stratosphere.Resources.EC2VPCPeeringConnection where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for EC2VPCPeeringConnection. See+-- | 'ec2VPCPeeringConnection' for a more convenient constructor.+data EC2VPCPeeringConnection =+  EC2VPCPeeringConnection+  { _eC2VPCPeeringConnectionPeerVpcId :: Val Text+  , _eC2VPCPeeringConnectionTags :: Maybe [Tag]+  , _eC2VPCPeeringConnectionVpcId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2VPCPeeringConnection where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++instance FromJSON EC2VPCPeeringConnection where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++-- | Constructor for 'EC2VPCPeeringConnection' containing required fields as+-- | arguments.+ec2VPCPeeringConnection+  :: Val Text -- ^ 'ecvpcpcPeerVpcId'+  -> Val Text -- ^ 'ecvpcpcVpcId'+  -> EC2VPCPeeringConnection+ec2VPCPeeringConnection peerVpcIdarg vpcIdarg =+  EC2VPCPeeringConnection+  { _eC2VPCPeeringConnectionPeerVpcId = peerVpcIdarg+  , _eC2VPCPeeringConnectionTags = Nothing+  , _eC2VPCPeeringConnectionVpcId = vpcIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-peervpcid+ecvpcpcPeerVpcId :: Lens' EC2VPCPeeringConnection (Val Text)+ecvpcpcPeerVpcId = lens _eC2VPCPeeringConnectionPeerVpcId (\s a -> s { _eC2VPCPeeringConnectionPeerVpcId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-tags+ecvpcpcTags :: Lens' EC2VPCPeeringConnection (Maybe [Tag])+ecvpcpcTags = lens _eC2VPCPeeringConnectionTags (\s a -> s { _eC2VPCPeeringConnectionTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpcpeeringconnection.html#cfn-ec2-vpcpeeringconnection-vpcid+ecvpcpcVpcId :: Lens' EC2VPCPeeringConnection (Val Text)+ecvpcpcVpcId = lens _eC2VPCPeeringConnectionVpcId (\s a -> s { _eC2VPCPeeringConnectionVpcId = a })
+ library-gen/Stratosphere/Resources/EC2VPNConnection.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html++module Stratosphere.Resources.EC2VPNConnection where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for EC2VPNConnection. See 'ec2VPNConnection'+-- | for a more convenient constructor.+data EC2VPNConnection =+  EC2VPNConnection+  { _eC2VPNConnectionCustomerGatewayId :: Val Text+  , _eC2VPNConnectionStaticRoutesOnly :: Maybe (Val Bool')+  , _eC2VPNConnectionTags :: Maybe [Tag]+  , _eC2VPNConnectionType :: Val Text+  , _eC2VPNConnectionVpnGatewayId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2VPNConnection where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++instance FromJSON EC2VPNConnection where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++-- | Constructor for 'EC2VPNConnection' containing required fields as+-- | arguments.+ec2VPNConnection+  :: Val Text -- ^ 'ecvpncCustomerGatewayId'+  -> Val Text -- ^ 'ecvpncType'+  -> Val Text -- ^ 'ecvpncVpnGatewayId'+  -> EC2VPNConnection+ec2VPNConnection customerGatewayIdarg typearg vpnGatewayIdarg =+  EC2VPNConnection+  { _eC2VPNConnectionCustomerGatewayId = customerGatewayIdarg+  , _eC2VPNConnectionStaticRoutesOnly = Nothing+  , _eC2VPNConnectionTags = Nothing+  , _eC2VPNConnectionType = typearg+  , _eC2VPNConnectionVpnGatewayId = vpnGatewayIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-customergatewayid+ecvpncCustomerGatewayId :: Lens' EC2VPNConnection (Val Text)+ecvpncCustomerGatewayId = lens _eC2VPNConnectionCustomerGatewayId (\s a -> s { _eC2VPNConnectionCustomerGatewayId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-StaticRoutesOnly+ecvpncStaticRoutesOnly :: Lens' EC2VPNConnection (Maybe (Val Bool'))+ecvpncStaticRoutesOnly = lens _eC2VPNConnectionStaticRoutesOnly (\s a -> s { _eC2VPNConnectionStaticRoutesOnly = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-tags+ecvpncTags :: Lens' EC2VPNConnection (Maybe [Tag])+ecvpncTags = lens _eC2VPNConnectionTags (\s a -> s { _eC2VPNConnectionTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-type+ecvpncType :: Lens' EC2VPNConnection (Val Text)+ecvpncType = lens _eC2VPNConnectionType (\s a -> s { _eC2VPNConnectionType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection.html#cfn-ec2-vpnconnection-vpngatewayid+ecvpncVpnGatewayId :: Lens' EC2VPNConnection (Val Text)+ecvpncVpnGatewayId = lens _eC2VPNConnectionVpnGatewayId (\s a -> s { _eC2VPNConnectionVpnGatewayId = a })
+ library-gen/Stratosphere/Resources/EC2VPNConnectionRoute.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection-route.html++module Stratosphere.Resources.EC2VPNConnectionRoute where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2VPNConnectionRoute. See+-- | 'ec2VPNConnectionRoute' for a more convenient constructor.+data EC2VPNConnectionRoute =+  EC2VPNConnectionRoute+  { _eC2VPNConnectionRouteDestinationCidrBlock :: Val Text+  , _eC2VPNConnectionRouteVpnConnectionId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2VPNConnectionRoute where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++instance FromJSON EC2VPNConnectionRoute where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++-- | Constructor for 'EC2VPNConnectionRoute' containing required fields as+-- | arguments.+ec2VPNConnectionRoute+  :: Val Text -- ^ 'ecvpncrDestinationCidrBlock'+  -> Val Text -- ^ 'ecvpncrVpnConnectionId'+  -> EC2VPNConnectionRoute+ec2VPNConnectionRoute destinationCidrBlockarg vpnConnectionIdarg =+  EC2VPNConnectionRoute+  { _eC2VPNConnectionRouteDestinationCidrBlock = destinationCidrBlockarg+  , _eC2VPNConnectionRouteVpnConnectionId = vpnConnectionIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection-route.html#cfn-ec2-vpnconnectionroute-cidrblock+ecvpncrDestinationCidrBlock :: Lens' EC2VPNConnectionRoute (Val Text)+ecvpncrDestinationCidrBlock = lens _eC2VPNConnectionRouteDestinationCidrBlock (\s a -> s { _eC2VPNConnectionRouteDestinationCidrBlock = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-connection-route.html#cfn-ec2-vpnconnectionroute-connectionid+ecvpncrVpnConnectionId :: Lens' EC2VPNConnectionRoute (Val Text)+ecvpncrVpnConnectionId = lens _eC2VPNConnectionRouteVpnConnectionId (\s a -> s { _eC2VPNConnectionRouteVpnConnectionId = a })
+ library-gen/Stratosphere/Resources/EC2VPNGateway.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html++module Stratosphere.Resources.EC2VPNGateway where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for EC2VPNGateway. See 'ec2VPNGateway' for a+-- | more convenient constructor.+data EC2VPNGateway =+  EC2VPNGateway+  { _eC2VPNGatewayTags :: Maybe [Tag]+  , _eC2VPNGatewayType :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2VPNGateway where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++instance FromJSON EC2VPNGateway where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++-- | Constructor for 'EC2VPNGateway' containing required fields as arguments.+ec2VPNGateway+  :: Val Text -- ^ 'ecvpngType'+  -> EC2VPNGateway+ec2VPNGateway typearg =+  EC2VPNGateway+  { _eC2VPNGatewayTags = Nothing+  , _eC2VPNGatewayType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html#cfn-ec2-vpngateway-tags+ecvpngTags :: Lens' EC2VPNGateway (Maybe [Tag])+ecvpngTags = lens _eC2VPNGatewayTags (\s a -> s { _eC2VPNGatewayTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gateway.html#cfn-ec2-vpngateway-type+ecvpngType :: Lens' EC2VPNGateway (Val Text)+ecvpngType = lens _eC2VPNGatewayType (\s a -> s { _eC2VPNGatewayType = a })
+ library-gen/Stratosphere/Resources/EC2VPNGatewayRoutePropagation.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gatewayrouteprop.html++module Stratosphere.Resources.EC2VPNGatewayRoutePropagation where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2VPNGatewayRoutePropagation. See+-- | 'ec2VPNGatewayRoutePropagation' for a more convenient constructor.+data EC2VPNGatewayRoutePropagation =+  EC2VPNGatewayRoutePropagation+  { _eC2VPNGatewayRoutePropagationRouteTableIds :: [Val Text]+  , _eC2VPNGatewayRoutePropagationVpnGatewayId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2VPNGatewayRoutePropagation where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON EC2VPNGatewayRoutePropagation where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'EC2VPNGatewayRoutePropagation' containing required+-- | fields as arguments.+ec2VPNGatewayRoutePropagation+  :: [Val Text] -- ^ 'ecvpngrpRouteTableIds'+  -> Val Text -- ^ 'ecvpngrpVpnGatewayId'+  -> EC2VPNGatewayRoutePropagation+ec2VPNGatewayRoutePropagation routeTableIdsarg vpnGatewayIdarg =+  EC2VPNGatewayRoutePropagation+  { _eC2VPNGatewayRoutePropagationRouteTableIds = routeTableIdsarg+  , _eC2VPNGatewayRoutePropagationVpnGatewayId = vpnGatewayIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gatewayrouteprop.html#cfn-ec2-vpngatewayrouteprop-routetableids+ecvpngrpRouteTableIds :: Lens' EC2VPNGatewayRoutePropagation [Val Text]+ecvpngrpRouteTableIds = lens _eC2VPNGatewayRoutePropagationRouteTableIds (\s a -> s { _eC2VPNGatewayRoutePropagationRouteTableIds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-vpn-gatewayrouteprop.html#cfn-ec2-vpngatewayrouteprop-vpngatewayid+ecvpngrpVpnGatewayId :: Lens' EC2VPNGatewayRoutePropagation (Val Text)+ecvpngrpVpnGatewayId = lens _eC2VPNGatewayRoutePropagationVpnGatewayId (\s a -> s { _eC2VPNGatewayRoutePropagationVpnGatewayId = a })
+ library-gen/Stratosphere/Resources/EC2Volume.hs view
@@ -0,0 +1,89 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html++module Stratosphere.Resources.EC2Volume where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for EC2Volume. See 'ec2Volume' for a more+-- | convenient constructor.+data EC2Volume =+  EC2Volume+  { _eC2VolumeAutoEnableIO :: Maybe (Val Bool')+  , _eC2VolumeAvailabilityZone :: Val Text+  , _eC2VolumeEncrypted :: Maybe (Val Bool')+  , _eC2VolumeIops :: Maybe (Val Integer')+  , _eC2VolumeKmsKeyId :: Maybe (Val Text)+  , _eC2VolumeSize :: Maybe (Val Integer')+  , _eC2VolumeSnapshotId :: Maybe (Val Text)+  , _eC2VolumeTags :: Maybe [Tag]+  , _eC2VolumeVolumeType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EC2Volume where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }++instance FromJSON EC2Volume where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }++-- | Constructor for 'EC2Volume' containing required fields as arguments.+ec2Volume+  :: Val Text -- ^ 'ecvAvailabilityZone'+  -> EC2Volume+ec2Volume availabilityZonearg =+  EC2Volume+  { _eC2VolumeAutoEnableIO = Nothing+  , _eC2VolumeAvailabilityZone = availabilityZonearg+  , _eC2VolumeEncrypted = Nothing+  , _eC2VolumeIops = Nothing+  , _eC2VolumeKmsKeyId = Nothing+  , _eC2VolumeSize = Nothing+  , _eC2VolumeSnapshotId = Nothing+  , _eC2VolumeTags = Nothing+  , _eC2VolumeVolumeType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-autoenableio+ecvAutoEnableIO :: Lens' EC2Volume (Maybe (Val Bool'))+ecvAutoEnableIO = lens _eC2VolumeAutoEnableIO (\s a -> s { _eC2VolumeAutoEnableIO = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-availabilityzone+ecvAvailabilityZone :: Lens' EC2Volume (Val Text)+ecvAvailabilityZone = lens _eC2VolumeAvailabilityZone (\s a -> s { _eC2VolumeAvailabilityZone = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-encrypted+ecvEncrypted :: Lens' EC2Volume (Maybe (Val Bool'))+ecvEncrypted = lens _eC2VolumeEncrypted (\s a -> s { _eC2VolumeEncrypted = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-iops+ecvIops :: Lens' EC2Volume (Maybe (Val Integer'))+ecvIops = lens _eC2VolumeIops (\s a -> s { _eC2VolumeIops = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-kmskeyid+ecvKmsKeyId :: Lens' EC2Volume (Maybe (Val Text))+ecvKmsKeyId = lens _eC2VolumeKmsKeyId (\s a -> s { _eC2VolumeKmsKeyId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-size+ecvSize :: Lens' EC2Volume (Maybe (Val Integer'))+ecvSize = lens _eC2VolumeSize (\s a -> s { _eC2VolumeSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-snapshotid+ecvSnapshotId :: Lens' EC2Volume (Maybe (Val Text))+ecvSnapshotId = lens _eC2VolumeSnapshotId (\s a -> s { _eC2VolumeSnapshotId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-tags+ecvTags :: Lens' EC2Volume (Maybe [Tag])+ecvTags = lens _eC2VolumeTags (\s a -> s { _eC2VolumeTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-volumetype+ecvVolumeType :: Lens' EC2Volume (Maybe (Val Text))+ecvVolumeType = lens _eC2VolumeVolumeType (\s a -> s { _eC2VolumeVolumeType = a })
+ library-gen/Stratosphere/Resources/EC2VolumeAttachment.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html++module Stratosphere.Resources.EC2VolumeAttachment where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EC2VolumeAttachment. See+-- | 'ec2VolumeAttachment' for a more convenient constructor.+data EC2VolumeAttachment =+  EC2VolumeAttachment+  { _eC2VolumeAttachmentDevice :: Val Text+  , _eC2VolumeAttachmentInstanceId :: Val Text+  , _eC2VolumeAttachmentVolumeId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EC2VolumeAttachment where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++instance FromJSON EC2VolumeAttachment where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++-- | Constructor for 'EC2VolumeAttachment' containing required fields as+-- | arguments.+ec2VolumeAttachment+  :: Val Text -- ^ 'ecvaDevice'+  -> Val Text -- ^ 'ecvaInstanceId'+  -> Val Text -- ^ 'ecvaVolumeId'+  -> EC2VolumeAttachment+ec2VolumeAttachment devicearg instanceIdarg volumeIdarg =+  EC2VolumeAttachment+  { _eC2VolumeAttachmentDevice = devicearg+  , _eC2VolumeAttachmentInstanceId = instanceIdarg+  , _eC2VolumeAttachmentVolumeId = volumeIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html#cfn-ec2-ebs-volumeattachment-device+ecvaDevice :: Lens' EC2VolumeAttachment (Val Text)+ecvaDevice = lens _eC2VolumeAttachmentDevice (\s a -> s { _eC2VolumeAttachmentDevice = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html#cfn-ec2-ebs-volumeattachment-instanceid+ecvaInstanceId :: Lens' EC2VolumeAttachment (Val Text)+ecvaInstanceId = lens _eC2VolumeAttachmentInstanceId (\s a -> s { _eC2VolumeAttachmentInstanceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volumeattachment.html#cfn-ec2-ebs-volumeattachment-volumeid+ecvaVolumeId :: Lens' EC2VolumeAttachment (Val Text)+ecvaVolumeId = lens _eC2VolumeAttachmentVolumeId (\s a -> s { _eC2VolumeAttachmentVolumeId = a })
+ library-gen/Stratosphere/Resources/ECRRepository.hs view
@@ -0,0 +1,46 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html++module Stratosphere.Resources.ECRRepository where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ECRRepository. See 'ecrRepository' for a+-- | more convenient constructor.+data ECRRepository =+  ECRRepository+  { _eCRRepositoryRepositoryName :: Maybe (Val Text)+  , _eCRRepositoryRepositoryPolicyText :: Maybe Object+  } deriving (Show, Generic)++instance ToJSON ECRRepository where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++instance FromJSON ECRRepository where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++-- | Constructor for 'ECRRepository' containing required fields as arguments.+ecrRepository+  :: ECRRepository+ecrRepository  =+  ECRRepository+  { _eCRRepositoryRepositoryName = Nothing+  , _eCRRepositoryRepositoryPolicyText = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-repositoryname+ecrrRepositoryName :: Lens' ECRRepository (Maybe (Val Text))+ecrrRepositoryName = lens _eCRRepositoryRepositoryName (\s a -> s { _eCRRepositoryRepositoryName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecr-repository.html#cfn-ecr-repository-repositorypolicytext+ecrrRepositoryPolicyText :: Lens' ECRRepository (Maybe Object)+ecrrRepositoryPolicyText = lens _eCRRepositoryRepositoryPolicyText (\s a -> s { _eCRRepositoryRepositoryPolicyText = a })
+ library-gen/Stratosphere/Resources/ECSCluster.hs view
@@ -0,0 +1,40 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html++module Stratosphere.Resources.ECSCluster where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ECSCluster. See 'ecsCluster' for a more+-- | convenient constructor.+data ECSCluster =+  ECSCluster+  { _eCSClusterClusterName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ECSCluster where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 11, omitNothingFields = True }++instance FromJSON ECSCluster where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 11, omitNothingFields = True }++-- | Constructor for 'ECSCluster' containing required fields as arguments.+ecsCluster+  :: ECSCluster+ecsCluster  =+  ECSCluster+  { _eCSClusterClusterName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-cluster.html#cfn-ecs-cluster-clustername+ecscClusterName :: Lens' ECSCluster (Maybe (Val Text))+ecscClusterName = lens _eCSClusterClusterName (\s a -> s { _eCSClusterClusterName = a })
+ library-gen/Stratosphere/Resources/ECSService.hs view
@@ -0,0 +1,73 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html++module Stratosphere.Resources.ECSService where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ECSServiceDeploymentConfiguration+import Stratosphere.ResourceProperties.ECSServiceLoadBalancer++-- | Full data type definition for ECSService. See 'ecsService' for a more+-- | convenient constructor.+data ECSService =+  ECSService+  { _eCSServiceCluster :: Maybe (Val Text)+  , _eCSServiceDeploymentConfiguration :: Maybe ECSServiceDeploymentConfiguration+  , _eCSServiceDesiredCount :: Val Integer'+  , _eCSServiceLoadBalancers :: Maybe [ECSServiceLoadBalancer]+  , _eCSServiceRole :: Maybe (Val Text)+  , _eCSServiceTaskDefinition :: Val Text+  } deriving (Show, Generic)++instance ToJSON ECSService where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 11, omitNothingFields = True }++instance FromJSON ECSService where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 11, omitNothingFields = True }++-- | Constructor for 'ECSService' containing required fields as arguments.+ecsService+  :: Val Integer' -- ^ 'ecssDesiredCount'+  -> Val Text -- ^ 'ecssTaskDefinition'+  -> ECSService+ecsService desiredCountarg taskDefinitionarg =+  ECSService+  { _eCSServiceCluster = Nothing+  , _eCSServiceDeploymentConfiguration = Nothing+  , _eCSServiceDesiredCount = desiredCountarg+  , _eCSServiceLoadBalancers = Nothing+  , _eCSServiceRole = Nothing+  , _eCSServiceTaskDefinition = taskDefinitionarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-cluster+ecssCluster :: Lens' ECSService (Maybe (Val Text))+ecssCluster = lens _eCSServiceCluster (\s a -> s { _eCSServiceCluster = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-deploymentconfiguration+ecssDeploymentConfiguration :: Lens' ECSService (Maybe ECSServiceDeploymentConfiguration)+ecssDeploymentConfiguration = lens _eCSServiceDeploymentConfiguration (\s a -> s { _eCSServiceDeploymentConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-desiredcount+ecssDesiredCount :: Lens' ECSService (Val Integer')+ecssDesiredCount = lens _eCSServiceDesiredCount (\s a -> s { _eCSServiceDesiredCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-loadbalancers+ecssLoadBalancers :: Lens' ECSService (Maybe [ECSServiceLoadBalancer])+ecssLoadBalancers = lens _eCSServiceLoadBalancers (\s a -> s { _eCSServiceLoadBalancers = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-role+ecssRole :: Lens' ECSService (Maybe (Val Text))+ecssRole = lens _eCSServiceRole (\s a -> s { _eCSServiceRole = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-taskdefinition+ecssTaskDefinition :: Lens' ECSService (Val Text)+ecssTaskDefinition = lens _eCSServiceTaskDefinition (\s a -> s { _eCSServiceTaskDefinition = a })
+ library-gen/Stratosphere/Resources/ECSTaskDefinition.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html++module Stratosphere.Resources.ECSTaskDefinition where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ECSTaskDefinitionContainerDefinition+import Stratosphere.ResourceProperties.ECSTaskDefinitionVolume++-- | Full data type definition for ECSTaskDefinition. See 'ecsTaskDefinition'+-- | for a more convenient constructor.+data ECSTaskDefinition =+  ECSTaskDefinition+  { _eCSTaskDefinitionContainerDefinitions :: Maybe [ECSTaskDefinitionContainerDefinition]+  , _eCSTaskDefinitionFamily :: Maybe (Val Text)+  , _eCSTaskDefinitionNetworkMode :: Maybe (Val Text)+  , _eCSTaskDefinitionTaskRoleArn :: Maybe (Val Text)+  , _eCSTaskDefinitionVolumes :: Maybe [ECSTaskDefinitionVolume]+  } deriving (Show, Generic)++instance ToJSON ECSTaskDefinition where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }++instance FromJSON ECSTaskDefinition where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }++-- | Constructor for 'ECSTaskDefinition' containing required fields as+-- | arguments.+ecsTaskDefinition+  :: ECSTaskDefinition+ecsTaskDefinition  =+  ECSTaskDefinition+  { _eCSTaskDefinitionContainerDefinitions = Nothing+  , _eCSTaskDefinitionFamily = Nothing+  , _eCSTaskDefinitionNetworkMode = Nothing+  , _eCSTaskDefinitionTaskRoleArn = Nothing+  , _eCSTaskDefinitionVolumes = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-containerdefinitions+ecstdContainerDefinitions :: Lens' ECSTaskDefinition (Maybe [ECSTaskDefinitionContainerDefinition])+ecstdContainerDefinitions = lens _eCSTaskDefinitionContainerDefinitions (\s a -> s { _eCSTaskDefinitionContainerDefinitions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-family+ecstdFamily :: Lens' ECSTaskDefinition (Maybe (Val Text))+ecstdFamily = lens _eCSTaskDefinitionFamily (\s a -> s { _eCSTaskDefinitionFamily = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-networkmode+ecstdNetworkMode :: Lens' ECSTaskDefinition (Maybe (Val Text))+ecstdNetworkMode = lens _eCSTaskDefinitionNetworkMode (\s a -> s { _eCSTaskDefinitionNetworkMode = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-taskrolearn+ecstdTaskRoleArn :: Lens' ECSTaskDefinition (Maybe (Val Text))+ecstdTaskRoleArn = lens _eCSTaskDefinitionTaskRoleArn (\s a -> s { _eCSTaskDefinitionTaskRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-volumes+ecstdVolumes :: Lens' ECSTaskDefinition (Maybe [ECSTaskDefinitionVolume])+ecstdVolumes = lens _eCSTaskDefinitionVolumes (\s a -> s { _eCSTaskDefinitionVolumes = a })
+ library-gen/Stratosphere/Resources/EFSFileSystem.hs view
@@ -0,0 +1,46 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html++module Stratosphere.Resources.EFSFileSystem where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EFSFileSystemElasticFileSystemTag++-- | Full data type definition for EFSFileSystem. See 'efsFileSystem' for a+-- | more convenient constructor.+data EFSFileSystem =+  EFSFileSystem+  { _eFSFileSystemFileSystemTags :: Maybe [EFSFileSystemElasticFileSystemTag]+  , _eFSFileSystemPerformanceMode :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EFSFileSystem where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++instance FromJSON EFSFileSystem where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++-- | Constructor for 'EFSFileSystem' containing required fields as arguments.+efsFileSystem+  :: EFSFileSystem+efsFileSystem  =+  EFSFileSystem+  { _eFSFileSystemFileSystemTags = Nothing+  , _eFSFileSystemPerformanceMode = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-filesystemtags+efsfsFileSystemTags :: Lens' EFSFileSystem (Maybe [EFSFileSystemElasticFileSystemTag])+efsfsFileSystemTags = lens _eFSFileSystemFileSystemTags (\s a -> s { _eFSFileSystemFileSystemTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html#cfn-efs-filesystem-performancemode+efsfsPerformanceMode :: Lens' EFSFileSystem (Maybe (Val Text))+efsfsPerformanceMode = lens _eFSFileSystemPerformanceMode (\s a -> s { _eFSFileSystemPerformanceMode = a })
+ library-gen/Stratosphere/Resources/EFSMountTarget.hs view
@@ -0,0 +1,61 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html++module Stratosphere.Resources.EFSMountTarget where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for EFSMountTarget. See 'efsMountTarget' for a+-- | more convenient constructor.+data EFSMountTarget =+  EFSMountTarget+  { _eFSMountTargetFileSystemId :: Val Text+  , _eFSMountTargetIpAddress :: Maybe (Val Text)+  , _eFSMountTargetSecurityGroups :: [Val Text]+  , _eFSMountTargetSubnetId :: Val Text+  } deriving (Show, Generic)++instance ToJSON EFSMountTarget where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++instance FromJSON EFSMountTarget where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++-- | Constructor for 'EFSMountTarget' containing required fields as arguments.+efsMountTarget+  :: Val Text -- ^ 'efsmtFileSystemId'+  -> [Val Text] -- ^ 'efsmtSecurityGroups'+  -> Val Text -- ^ 'efsmtSubnetId'+  -> EFSMountTarget+efsMountTarget fileSystemIdarg securityGroupsarg subnetIdarg =+  EFSMountTarget+  { _eFSMountTargetFileSystemId = fileSystemIdarg+  , _eFSMountTargetIpAddress = Nothing+  , _eFSMountTargetSecurityGroups = securityGroupsarg+  , _eFSMountTargetSubnetId = subnetIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-filesystemid+efsmtFileSystemId :: Lens' EFSMountTarget (Val Text)+efsmtFileSystemId = lens _eFSMountTargetFileSystemId (\s a -> s { _eFSMountTargetFileSystemId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-ipaddress+efsmtIpAddress :: Lens' EFSMountTarget (Maybe (Val Text))+efsmtIpAddress = lens _eFSMountTargetIpAddress (\s a -> s { _eFSMountTargetIpAddress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-securitygroups+efsmtSecurityGroups :: Lens' EFSMountTarget [Val Text]+efsmtSecurityGroups = lens _eFSMountTargetSecurityGroups (\s a -> s { _eFSMountTargetSecurityGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-mounttarget.html#cfn-efs-mounttarget-subnetid+efsmtSubnetId :: Lens' EFSMountTarget (Val Text)+efsmtSubnetId = lens _eFSMountTargetSubnetId (\s a -> s { _eFSMountTargetSubnetId = a })
− library-gen/Stratosphere/Resources/EIP.hs
@@ -1,55 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::EC2::EIP resource allocates an Elastic IP (EIP) address and can,--- optionally, associate it with an Amazon EC2 instance.--module Stratosphere.Resources.EIP where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for EIP. See 'eip' for a more convenient--- constructor.-data EIP =-  EIP-  { _eIPInstanceId :: Maybe (Val Text)-  , _eIPDomain :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON EIP where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 4, omitNothingFields = True }--instance FromJSON EIP where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 4, omitNothingFields = True }---- | Constructor for 'EIP' containing required fields as arguments.-eip-  :: EIP-eip  =-  EIP-  { _eIPInstanceId = Nothing-  , _eIPDomain = Nothing-  }---- | The Instance ID of the Amazon EC2 instance that you want to associate--- with this Elastic IP address.-eipInstanceId :: Lens' EIP (Maybe (Val Text))-eipInstanceId = lens _eIPInstanceId (\s a -> s { _eIPInstanceId = a })---- | Set to vpc to allocate the address to your Virtual Private Cloud (VPC).--- No other values are supported. Note If you define an Elastic IP address and--- associate it with a VPC that is defined in the same template, you must--- declare a dependency on the VPC-gateway attachment by using the DependsOn--- attribute on this resource. For more information, see DependsOn Attribute.--- For more information, see AllocateAddress in the Amazon EC2 API Reference.--- For more information about Elastic IP Addresses in VPC, go to IP Addressing--- in Your VPC in the Amazon VPC User Guide.-eipDomain :: Lens' EIP (Maybe (Val Text))-eipDomain = lens _eIPDomain (\s a -> s { _eIPDomain = a })
− library-gen/Stratosphere/Resources/EIPAssociation.hs
@@ -1,78 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::EC2::EIPAssociation resource type associates an Elastic IP--- address with an Amazon EC2 instance. The Elastic IP address can be an--- existing Elastic IP address or an Elastic IP address allocated through an--- AWS::EC2::EIP resource. This type supports updates. For more information--- about updating stacks, see AWS CloudFormation Stacks Updates.--module Stratosphere.Resources.EIPAssociation where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for EIPAssociation. See 'eipAssociation' for a--- more convenient constructor.-data EIPAssociation =-  EIPAssociation-  { _eIPAssociationAllocationId :: Maybe (Val Text)-  , _eIPAssociationEIP :: Maybe (Val Text)-  , _eIPAssociationInstanceId :: Maybe (Val Text)-  , _eIPAssociationNetworkInterfaceId :: Maybe (Val Text)-  , _eIPAssociationPrivateIpAddress :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON EIPAssociation where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }--instance FromJSON EIPAssociation where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }---- | Constructor for 'EIPAssociation' containing required fields as arguments.-eipAssociation-  :: EIPAssociation-eipAssociation  =-  EIPAssociation-  { _eIPAssociationAllocationId = Nothing-  , _eIPAssociationEIP = Nothing-  , _eIPAssociationInstanceId = Nothing-  , _eIPAssociationNetworkInterfaceId = Nothing-  , _eIPAssociationPrivateIpAddress = Nothing-  }---- | Allocation ID for the VPC Elastic IP address you want to associate with--- an Amazon EC2 instance in your VPC.-eipaAllocationId :: Lens' EIPAssociation (Maybe (Val Text))-eipaAllocationId = lens _eIPAssociationAllocationId (\s a -> s { _eIPAssociationAllocationId = a })---- | Elastic IP address that you want to associate with the Amazon EC2--- instance specified by the InstanceId property. You can specify an existing--- Elastic IP address or a reference to an Elastic IP address allocated with a--- AWS::EC2::EIP resource.-eipaEIP :: Lens' EIPAssociation (Maybe (Val Text))-eipaEIP = lens _eIPAssociationEIP (\s a -> s { _eIPAssociationEIP = a })---- | Instance ID of the Amazon EC2 instance that you want to associate with--- the Elastic IP address specified by the EIP property.-eipaInstanceId :: Lens' EIPAssociation (Maybe (Val Text))-eipaInstanceId = lens _eIPAssociationInstanceId (\s a -> s { _eIPAssociationInstanceId = a })---- | The ID of the network interface to associate with the Elastic IP address--- (VPC only).-eipaNetworkInterfaceId :: Lens' EIPAssociation (Maybe (Val Text))-eipaNetworkInterfaceId = lens _eIPAssociationNetworkInterfaceId (\s a -> s { _eIPAssociationNetworkInterfaceId = a })---- | The private IP address that you want to associate with the Elastic IP--- address. The private IP address is restricted to the primary and secondary--- private IP addresses that are associated with the network interface. By--- default, the private IP address that is associated with the EIP is the--- primary private IP address of the network interface.-eipaPrivateIpAddress :: Lens' EIPAssociation (Maybe (Val Text))-eipaPrivateIpAddress = lens _eIPAssociationPrivateIpAddress (\s a -> s { _eIPAssociationPrivateIpAddress = a })
+ library-gen/Stratosphere/Resources/EMRCluster.hs view
@@ -0,0 +1,114 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html++module Stratosphere.Resources.EMRCluster where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRClusterApplication+import Stratosphere.ResourceProperties.EMRClusterBootstrapActionConfig+import Stratosphere.ResourceProperties.EMRClusterConfiguration+import Stratosphere.ResourceProperties.EMRClusterJobFlowInstancesConfig+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for EMRCluster. See 'emrCluster' for a more+-- | convenient constructor.+data EMRCluster =+  EMRCluster+  { _eMRClusterAdditionalInfo :: Maybe Object+  , _eMRClusterApplications :: Maybe [EMRClusterApplication]+  , _eMRClusterBootstrapActions :: Maybe [EMRClusterBootstrapActionConfig]+  , _eMRClusterConfigurations :: Maybe [EMRClusterConfiguration]+  , _eMRClusterInstances :: EMRClusterJobFlowInstancesConfig+  , _eMRClusterJobFlowRole :: Val Text+  , _eMRClusterLogUri :: Maybe (Val Text)+  , _eMRClusterName :: Val Text+  , _eMRClusterReleaseLabel :: Maybe (Val Text)+  , _eMRClusterServiceRole :: Val Text+  , _eMRClusterTags :: Maybe [Tag]+  , _eMRClusterVisibleToAllUsers :: Maybe (Val Bool')+  } deriving (Show, Generic)++instance ToJSON EMRCluster where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 11, omitNothingFields = True }++instance FromJSON EMRCluster where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 11, omitNothingFields = True }++-- | Constructor for 'EMRCluster' containing required fields as arguments.+emrCluster+  :: EMRClusterJobFlowInstancesConfig -- ^ 'emrcInstances'+  -> Val Text -- ^ 'emrcJobFlowRole'+  -> Val Text -- ^ 'emrcName'+  -> Val Text -- ^ 'emrcServiceRole'+  -> EMRCluster+emrCluster instancesarg jobFlowRolearg namearg serviceRolearg =+  EMRCluster+  { _eMRClusterAdditionalInfo = Nothing+  , _eMRClusterApplications = Nothing+  , _eMRClusterBootstrapActions = Nothing+  , _eMRClusterConfigurations = Nothing+  , _eMRClusterInstances = instancesarg+  , _eMRClusterJobFlowRole = jobFlowRolearg+  , _eMRClusterLogUri = Nothing+  , _eMRClusterName = namearg+  , _eMRClusterReleaseLabel = Nothing+  , _eMRClusterServiceRole = serviceRolearg+  , _eMRClusterTags = Nothing+  , _eMRClusterVisibleToAllUsers = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html#cfn-emr-cluster-additionalinfo+emrcAdditionalInfo :: Lens' EMRCluster (Maybe Object)+emrcAdditionalInfo = lens _eMRClusterAdditionalInfo (\s a -> s { _eMRClusterAdditionalInfo = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html#cfn-emr-cluster-applications+emrcApplications :: Lens' EMRCluster (Maybe [EMRClusterApplication])+emrcApplications = lens _eMRClusterApplications (\s a -> s { _eMRClusterApplications = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html#cfn-emr-cluster-bootstrapactions+emrcBootstrapActions :: Lens' EMRCluster (Maybe [EMRClusterBootstrapActionConfig])+emrcBootstrapActions = lens _eMRClusterBootstrapActions (\s a -> s { _eMRClusterBootstrapActions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html#cfn-emr-cluster-configurations+emrcConfigurations :: Lens' EMRCluster (Maybe [EMRClusterConfiguration])+emrcConfigurations = lens _eMRClusterConfigurations (\s a -> s { _eMRClusterConfigurations = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html#cfn-emr-cluster-instances+emrcInstances :: Lens' EMRCluster EMRClusterJobFlowInstancesConfig+emrcInstances = lens _eMRClusterInstances (\s a -> s { _eMRClusterInstances = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html#cfn-emr-cluster-jobflowrole+emrcJobFlowRole :: Lens' EMRCluster (Val Text)+emrcJobFlowRole = lens _eMRClusterJobFlowRole (\s a -> s { _eMRClusterJobFlowRole = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html#cfn-emr-cluster-loguri+emrcLogUri :: Lens' EMRCluster (Maybe (Val Text))+emrcLogUri = lens _eMRClusterLogUri (\s a -> s { _eMRClusterLogUri = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html#cfn-emr-cluster-name+emrcName :: Lens' EMRCluster (Val Text)+emrcName = lens _eMRClusterName (\s a -> s { _eMRClusterName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html#cfn-emr-cluster-releaselabel+emrcReleaseLabel :: Lens' EMRCluster (Maybe (Val Text))+emrcReleaseLabel = lens _eMRClusterReleaseLabel (\s a -> s { _eMRClusterReleaseLabel = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html#cfn-emr-cluster-servicerole+emrcServiceRole :: Lens' EMRCluster (Val Text)+emrcServiceRole = lens _eMRClusterServiceRole (\s a -> s { _eMRClusterServiceRole = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html#cfn-elasticmapreduce-cluster-tags+emrcTags :: Lens' EMRCluster (Maybe [Tag])+emrcTags = lens _eMRClusterTags (\s a -> s { _eMRClusterTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html#cfn-emr-cluster-visibletoallusers+emrcVisibleToAllUsers :: Lens' EMRCluster (Maybe (Val Bool'))+emrcVisibleToAllUsers = lens _eMRClusterVisibleToAllUsers (\s a -> s { _eMRClusterVisibleToAllUsers = a })
+ library-gen/Stratosphere/Resources/EMRInstanceGroupConfig.hs view
@@ -0,0 +1,94 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html++module Stratosphere.Resources.EMRInstanceGroupConfig where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigConfiguration+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigEbsConfiguration++-- | Full data type definition for EMRInstanceGroupConfig. See+-- | 'emrInstanceGroupConfig' for a more convenient constructor.+data EMRInstanceGroupConfig =+  EMRInstanceGroupConfig+  { _eMRInstanceGroupConfigBidPrice :: Maybe (Val Text)+  , _eMRInstanceGroupConfigConfigurations :: Maybe [EMRInstanceGroupConfigConfiguration]+  , _eMRInstanceGroupConfigEbsConfiguration :: Maybe EMRInstanceGroupConfigEbsConfiguration+  , _eMRInstanceGroupConfigInstanceCount :: Val Integer'+  , _eMRInstanceGroupConfigInstanceRole :: Val Text+  , _eMRInstanceGroupConfigInstanceType :: Val Text+  , _eMRInstanceGroupConfigJobFlowId :: Val Text+  , _eMRInstanceGroupConfigMarket :: Maybe (Val Text)+  , _eMRInstanceGroupConfigName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON EMRInstanceGroupConfig where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++instance FromJSON EMRInstanceGroupConfig where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++-- | Constructor for 'EMRInstanceGroupConfig' containing required fields as+-- | arguments.+emrInstanceGroupConfig+  :: Val Integer' -- ^ 'emrigcInstanceCount'+  -> Val Text -- ^ 'emrigcInstanceRole'+  -> Val Text -- ^ 'emrigcInstanceType'+  -> Val Text -- ^ 'emrigcJobFlowId'+  -> EMRInstanceGroupConfig+emrInstanceGroupConfig instanceCountarg instanceRolearg instanceTypearg jobFlowIdarg =+  EMRInstanceGroupConfig+  { _eMRInstanceGroupConfigBidPrice = Nothing+  , _eMRInstanceGroupConfigConfigurations = Nothing+  , _eMRInstanceGroupConfigEbsConfiguration = Nothing+  , _eMRInstanceGroupConfigInstanceCount = instanceCountarg+  , _eMRInstanceGroupConfigInstanceRole = instanceRolearg+  , _eMRInstanceGroupConfigInstanceType = instanceTypearg+  , _eMRInstanceGroupConfigJobFlowId = jobFlowIdarg+  , _eMRInstanceGroupConfigMarket = Nothing+  , _eMRInstanceGroupConfigName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-bidprice+emrigcBidPrice :: Lens' EMRInstanceGroupConfig (Maybe (Val Text))+emrigcBidPrice = lens _eMRInstanceGroupConfigBidPrice (\s a -> s { _eMRInstanceGroupConfigBidPrice = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-configurations+emrigcConfigurations :: Lens' EMRInstanceGroupConfig (Maybe [EMRInstanceGroupConfigConfiguration])+emrigcConfigurations = lens _eMRInstanceGroupConfigConfigurations (\s a -> s { _eMRInstanceGroupConfigConfigurations = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-ebsconfiguration+emrigcEbsConfiguration :: Lens' EMRInstanceGroupConfig (Maybe EMRInstanceGroupConfigEbsConfiguration)+emrigcEbsConfiguration = lens _eMRInstanceGroupConfigEbsConfiguration (\s a -> s { _eMRInstanceGroupConfigEbsConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfiginstancecount-+emrigcInstanceCount :: Lens' EMRInstanceGroupConfig (Val Integer')+emrigcInstanceCount = lens _eMRInstanceGroupConfigInstanceCount (\s a -> s { _eMRInstanceGroupConfigInstanceCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-instancerole+emrigcInstanceRole :: Lens' EMRInstanceGroupConfig (Val Text)+emrigcInstanceRole = lens _eMRInstanceGroupConfigInstanceRole (\s a -> s { _eMRInstanceGroupConfigInstanceRole = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-instancetype+emrigcInstanceType :: Lens' EMRInstanceGroupConfig (Val Text)+emrigcInstanceType = lens _eMRInstanceGroupConfigInstanceType (\s a -> s { _eMRInstanceGroupConfigInstanceType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-jobflowid+emrigcJobFlowId :: Lens' EMRInstanceGroupConfig (Val Text)+emrigcJobFlowId = lens _eMRInstanceGroupConfigJobFlowId (\s a -> s { _eMRInstanceGroupConfigJobFlowId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-market+emrigcMarket :: Lens' EMRInstanceGroupConfig (Maybe (Val Text))+emrigcMarket = lens _eMRInstanceGroupConfigMarket (\s a -> s { _eMRInstanceGroupConfigMarket = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-name+emrigcName :: Lens' EMRInstanceGroupConfig (Maybe (Val Text))+emrigcName = lens _eMRInstanceGroupConfigName (\s a -> s { _eMRInstanceGroupConfigName = a })
+ library-gen/Stratosphere/Resources/EMRStep.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-step.html++module Stratosphere.Resources.EMRStep where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRStepHadoopJarStepConfig++-- | Full data type definition for EMRStep. See 'emrStep' for a more+-- | convenient constructor.+data EMRStep =+  EMRStep+  { _eMRStepActionOnFailure :: Val Text+  , _eMRStepHadoopJarStep :: EMRStepHadoopJarStepConfig+  , _eMRStepJobFlowId :: Val Text+  , _eMRStepName :: Val Text+  } deriving (Show, Generic)++instance ToJSON EMRStep where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 8, omitNothingFields = True }++instance FromJSON EMRStep where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 8, omitNothingFields = True }++-- | Constructor for 'EMRStep' containing required fields as arguments.+emrStep+  :: Val Text -- ^ 'emrsActionOnFailure'+  -> EMRStepHadoopJarStepConfig -- ^ 'emrsHadoopJarStep'+  -> Val Text -- ^ 'emrsJobFlowId'+  -> Val Text -- ^ 'emrsName'+  -> EMRStep+emrStep actionOnFailurearg hadoopJarSteparg jobFlowIdarg namearg =+  EMRStep+  { _eMRStepActionOnFailure = actionOnFailurearg+  , _eMRStepHadoopJarStep = hadoopJarSteparg+  , _eMRStepJobFlowId = jobFlowIdarg+  , _eMRStepName = namearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-step.html#cfn-elasticmapreduce-step-actiononfailure+emrsActionOnFailure :: Lens' EMRStep (Val Text)+emrsActionOnFailure = lens _eMRStepActionOnFailure (\s a -> s { _eMRStepActionOnFailure = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-step.html#cfn-elasticmapreduce-step-hadoopjarstep+emrsHadoopJarStep :: Lens' EMRStep EMRStepHadoopJarStepConfig+emrsHadoopJarStep = lens _eMRStepHadoopJarStep (\s a -> s { _eMRStepHadoopJarStep = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-step.html#cfn-elasticmapreduce-step-jobflowid+emrsJobFlowId :: Lens' EMRStep (Val Text)+emrsJobFlowId = lens _eMRStepJobFlowId (\s a -> s { _eMRStepJobFlowId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-step.html#cfn-elasticmapreduce-step-name+emrsName :: Lens' EMRStep (Val Text)+emrsName = lens _eMRStepName (\s a -> s { _eMRStepName = a })
+ library-gen/Stratosphere/Resources/ElastiCacheCacheCluster.hs view
@@ -0,0 +1,164 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html++module Stratosphere.Resources.ElastiCacheCacheCluster where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for ElastiCacheCacheCluster. See+-- | 'elastiCacheCacheCluster' for a more convenient constructor.+data ElastiCacheCacheCluster =+  ElastiCacheCacheCluster+  { _elastiCacheCacheClusterAZMode :: Maybe (Val Text)+  , _elastiCacheCacheClusterAutoMinorVersionUpgrade :: Maybe (Val Bool')+  , _elastiCacheCacheClusterCacheNodeType :: Val Text+  , _elastiCacheCacheClusterCacheParameterGroupName :: Maybe (Val Text)+  , _elastiCacheCacheClusterCacheSecurityGroupNames :: Maybe [Val Text]+  , _elastiCacheCacheClusterCacheSubnetGroupName :: Maybe (Val Text)+  , _elastiCacheCacheClusterClusterName :: Maybe (Val Text)+  , _elastiCacheCacheClusterEngine :: Val Text+  , _elastiCacheCacheClusterEngineVersion :: Maybe (Val Text)+  , _elastiCacheCacheClusterNotificationTopicArn :: Maybe (Val Text)+  , _elastiCacheCacheClusterNumCacheNodes :: Val Integer'+  , _elastiCacheCacheClusterPort :: Maybe (Val Integer')+  , _elastiCacheCacheClusterPreferredAvailabilityZone :: Maybe (Val Text)+  , _elastiCacheCacheClusterPreferredAvailabilityZones :: Maybe [Val Text]+  , _elastiCacheCacheClusterPreferredMaintenanceWindow :: Maybe (Val Text)+  , _elastiCacheCacheClusterSnapshotArns :: Maybe [Val Text]+  , _elastiCacheCacheClusterSnapshotName :: Maybe (Val Text)+  , _elastiCacheCacheClusterSnapshotRetentionLimit :: Maybe (Val Integer')+  , _elastiCacheCacheClusterSnapshotWindow :: Maybe (Val Text)+  , _elastiCacheCacheClusterTags :: Maybe [Tag]+  , _elastiCacheCacheClusterVpcSecurityGroupIds :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON ElastiCacheCacheCluster where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++instance FromJSON ElastiCacheCacheCluster where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++-- | Constructor for 'ElastiCacheCacheCluster' containing required fields as+-- | arguments.+elastiCacheCacheCluster+  :: Val Text -- ^ 'ecccCacheNodeType'+  -> Val Text -- ^ 'ecccEngine'+  -> Val Integer' -- ^ 'ecccNumCacheNodes'+  -> ElastiCacheCacheCluster+elastiCacheCacheCluster cacheNodeTypearg enginearg numCacheNodesarg =+  ElastiCacheCacheCluster+  { _elastiCacheCacheClusterAZMode = Nothing+  , _elastiCacheCacheClusterAutoMinorVersionUpgrade = Nothing+  , _elastiCacheCacheClusterCacheNodeType = cacheNodeTypearg+  , _elastiCacheCacheClusterCacheParameterGroupName = Nothing+  , _elastiCacheCacheClusterCacheSecurityGroupNames = Nothing+  , _elastiCacheCacheClusterCacheSubnetGroupName = Nothing+  , _elastiCacheCacheClusterClusterName = Nothing+  , _elastiCacheCacheClusterEngine = enginearg+  , _elastiCacheCacheClusterEngineVersion = Nothing+  , _elastiCacheCacheClusterNotificationTopicArn = Nothing+  , _elastiCacheCacheClusterNumCacheNodes = numCacheNodesarg+  , _elastiCacheCacheClusterPort = Nothing+  , _elastiCacheCacheClusterPreferredAvailabilityZone = Nothing+  , _elastiCacheCacheClusterPreferredAvailabilityZones = Nothing+  , _elastiCacheCacheClusterPreferredMaintenanceWindow = Nothing+  , _elastiCacheCacheClusterSnapshotArns = Nothing+  , _elastiCacheCacheClusterSnapshotName = Nothing+  , _elastiCacheCacheClusterSnapshotRetentionLimit = Nothing+  , _elastiCacheCacheClusterSnapshotWindow = Nothing+  , _elastiCacheCacheClusterTags = Nothing+  , _elastiCacheCacheClusterVpcSecurityGroupIds = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-azmode+ecccAZMode :: Lens' ElastiCacheCacheCluster (Maybe (Val Text))+ecccAZMode = lens _elastiCacheCacheClusterAZMode (\s a -> s { _elastiCacheCacheClusterAZMode = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-autominorversionupgrade+ecccAutoMinorVersionUpgrade :: Lens' ElastiCacheCacheCluster (Maybe (Val Bool'))+ecccAutoMinorVersionUpgrade = lens _elastiCacheCacheClusterAutoMinorVersionUpgrade (\s a -> s { _elastiCacheCacheClusterAutoMinorVersionUpgrade = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-cachenodetype+ecccCacheNodeType :: Lens' ElastiCacheCacheCluster (Val Text)+ecccCacheNodeType = lens _elastiCacheCacheClusterCacheNodeType (\s a -> s { _elastiCacheCacheClusterCacheNodeType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-cacheparametergroupname+ecccCacheParameterGroupName :: Lens' ElastiCacheCacheCluster (Maybe (Val Text))+ecccCacheParameterGroupName = lens _elastiCacheCacheClusterCacheParameterGroupName (\s a -> s { _elastiCacheCacheClusterCacheParameterGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-cachesecuritygroupnames+ecccCacheSecurityGroupNames :: Lens' ElastiCacheCacheCluster (Maybe [Val Text])+ecccCacheSecurityGroupNames = lens _elastiCacheCacheClusterCacheSecurityGroupNames (\s a -> s { _elastiCacheCacheClusterCacheSecurityGroupNames = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-cachesubnetgroupname+ecccCacheSubnetGroupName :: Lens' ElastiCacheCacheCluster (Maybe (Val Text))+ecccCacheSubnetGroupName = lens _elastiCacheCacheClusterCacheSubnetGroupName (\s a -> s { _elastiCacheCacheClusterCacheSubnetGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-clustername+ecccClusterName :: Lens' ElastiCacheCacheCluster (Maybe (Val Text))+ecccClusterName = lens _elastiCacheCacheClusterClusterName (\s a -> s { _elastiCacheCacheClusterClusterName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-engine+ecccEngine :: Lens' ElastiCacheCacheCluster (Val Text)+ecccEngine = lens _elastiCacheCacheClusterEngine (\s a -> s { _elastiCacheCacheClusterEngine = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-engineversion+ecccEngineVersion :: Lens' ElastiCacheCacheCluster (Maybe (Val Text))+ecccEngineVersion = lens _elastiCacheCacheClusterEngineVersion (\s a -> s { _elastiCacheCacheClusterEngineVersion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-notificationtopicarn+ecccNotificationTopicArn :: Lens' ElastiCacheCacheCluster (Maybe (Val Text))+ecccNotificationTopicArn = lens _elastiCacheCacheClusterNotificationTopicArn (\s a -> s { _elastiCacheCacheClusterNotificationTopicArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-numcachenodes+ecccNumCacheNodes :: Lens' ElastiCacheCacheCluster (Val Integer')+ecccNumCacheNodes = lens _elastiCacheCacheClusterNumCacheNodes (\s a -> s { _elastiCacheCacheClusterNumCacheNodes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-port+ecccPort :: Lens' ElastiCacheCacheCluster (Maybe (Val Integer'))+ecccPort = lens _elastiCacheCacheClusterPort (\s a -> s { _elastiCacheCacheClusterPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-preferredavailabilityzone+ecccPreferredAvailabilityZone :: Lens' ElastiCacheCacheCluster (Maybe (Val Text))+ecccPreferredAvailabilityZone = lens _elastiCacheCacheClusterPreferredAvailabilityZone (\s a -> s { _elastiCacheCacheClusterPreferredAvailabilityZone = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-preferredavailabilityzones+ecccPreferredAvailabilityZones :: Lens' ElastiCacheCacheCluster (Maybe [Val Text])+ecccPreferredAvailabilityZones = lens _elastiCacheCacheClusterPreferredAvailabilityZones (\s a -> s { _elastiCacheCacheClusterPreferredAvailabilityZones = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-preferredmaintenancewindow+ecccPreferredMaintenanceWindow :: Lens' ElastiCacheCacheCluster (Maybe (Val Text))+ecccPreferredMaintenanceWindow = lens _elastiCacheCacheClusterPreferredMaintenanceWindow (\s a -> s { _elastiCacheCacheClusterPreferredMaintenanceWindow = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-snapshotarns+ecccSnapshotArns :: Lens' ElastiCacheCacheCluster (Maybe [Val Text])+ecccSnapshotArns = lens _elastiCacheCacheClusterSnapshotArns (\s a -> s { _elastiCacheCacheClusterSnapshotArns = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-snapshotname+ecccSnapshotName :: Lens' ElastiCacheCacheCluster (Maybe (Val Text))+ecccSnapshotName = lens _elastiCacheCacheClusterSnapshotName (\s a -> s { _elastiCacheCacheClusterSnapshotName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-snapshotretentionlimit+ecccSnapshotRetentionLimit :: Lens' ElastiCacheCacheCluster (Maybe (Val Integer'))+ecccSnapshotRetentionLimit = lens _elastiCacheCacheClusterSnapshotRetentionLimit (\s a -> s { _elastiCacheCacheClusterSnapshotRetentionLimit = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-snapshotwindow+ecccSnapshotWindow :: Lens' ElastiCacheCacheCluster (Maybe (Val Text))+ecccSnapshotWindow = lens _elastiCacheCacheClusterSnapshotWindow (\s a -> s { _elastiCacheCacheClusterSnapshotWindow = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-tags+ecccTags :: Lens' ElastiCacheCacheCluster (Maybe [Tag])+ecccTags = lens _elastiCacheCacheClusterTags (\s a -> s { _elastiCacheCacheClusterTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-cache-cluster.html#cfn-elasticache-cachecluster-vpcsecuritygroupids+ecccVpcSecurityGroupIds :: Lens' ElastiCacheCacheCluster (Maybe [Val Text])+ecccVpcSecurityGroupIds = lens _elastiCacheCacheClusterVpcSecurityGroupIds (\s a -> s { _elastiCacheCacheClusterVpcSecurityGroupIds = a })
+ library-gen/Stratosphere/Resources/ElastiCacheParameterGroup.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html++module Stratosphere.Resources.ElastiCacheParameterGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ElastiCacheParameterGroup. See+-- | 'elastiCacheParameterGroup' for a more convenient constructor.+data ElastiCacheParameterGroup =+  ElastiCacheParameterGroup+  { _elastiCacheParameterGroupCacheParameterGroupFamily :: Val Text+  , _elastiCacheParameterGroupDescription :: Val Text+  , _elastiCacheParameterGroupProperties :: Maybe Object+  } deriving (Show, Generic)++instance ToJSON ElastiCacheParameterGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++instance FromJSON ElastiCacheParameterGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++-- | Constructor for 'ElastiCacheParameterGroup' containing required fields as+-- | arguments.+elastiCacheParameterGroup+  :: Val Text -- ^ 'ecpgCacheParameterGroupFamily'+  -> Val Text -- ^ 'ecpgDescription'+  -> ElastiCacheParameterGroup+elastiCacheParameterGroup cacheParameterGroupFamilyarg descriptionarg =+  ElastiCacheParameterGroup+  { _elastiCacheParameterGroupCacheParameterGroupFamily = cacheParameterGroupFamilyarg+  , _elastiCacheParameterGroupDescription = descriptionarg+  , _elastiCacheParameterGroupProperties = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-cacheparametergroupfamily+ecpgCacheParameterGroupFamily :: Lens' ElastiCacheParameterGroup (Val Text)+ecpgCacheParameterGroupFamily = lens _elastiCacheParameterGroupCacheParameterGroupFamily (\s a -> s { _elastiCacheParameterGroupCacheParameterGroupFamily = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-description+ecpgDescription :: Lens' ElastiCacheParameterGroup (Val Text)+ecpgDescription = lens _elastiCacheParameterGroupDescription (\s a -> s { _elastiCacheParameterGroupDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-parameter-group.html#cfn-elasticache-parametergroup-properties+ecpgProperties :: Lens' ElastiCacheParameterGroup (Maybe Object)+ecpgProperties = lens _elastiCacheParameterGroupProperties (\s a -> s { _elastiCacheParameterGroupProperties = a })
+ library-gen/Stratosphere/Resources/ElastiCacheReplicationGroup.hs view
@@ -0,0 +1,193 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html++module Stratosphere.Resources.ElastiCacheReplicationGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ElastiCacheReplicationGroupNodeGroupConfiguration+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for ElastiCacheReplicationGroup. See+-- | 'elastiCacheReplicationGroup' for a more convenient constructor.+data ElastiCacheReplicationGroup =+  ElastiCacheReplicationGroup+  { _elastiCacheReplicationGroupAutoMinorVersionUpgrade :: Maybe (Val Bool')+  , _elastiCacheReplicationGroupAutomaticFailoverEnabled :: Maybe (Val Bool')+  , _elastiCacheReplicationGroupCacheNodeType :: Maybe (Val Text)+  , _elastiCacheReplicationGroupCacheParameterGroupName :: Maybe (Val Text)+  , _elastiCacheReplicationGroupCacheSecurityGroupNames :: Maybe [Val Text]+  , _elastiCacheReplicationGroupCacheSubnetGroupName :: Maybe (Val Text)+  , _elastiCacheReplicationGroupEngine :: Maybe (Val Text)+  , _elastiCacheReplicationGroupEngineVersion :: Maybe (Val Text)+  , _elastiCacheReplicationGroupNodeGroupConfiguration :: Maybe [ElastiCacheReplicationGroupNodeGroupConfiguration]+  , _elastiCacheReplicationGroupNotificationTopicArn :: Maybe (Val Text)+  , _elastiCacheReplicationGroupNumCacheClusters :: Maybe (Val Integer')+  , _elastiCacheReplicationGroupNumNodeGroups :: Maybe (Val Integer')+  , _elastiCacheReplicationGroupPort :: Maybe (Val Integer')+  , _elastiCacheReplicationGroupPreferredCacheClusterAZs :: Maybe [Val Text]+  , _elastiCacheReplicationGroupPreferredMaintenanceWindow :: Maybe (Val Text)+  , _elastiCacheReplicationGroupPrimaryClusterId :: Maybe (Val Text)+  , _elastiCacheReplicationGroupReplicasPerNodeGroup :: Maybe (Val Integer')+  , _elastiCacheReplicationGroupReplicationGroupDescription :: Val Text+  , _elastiCacheReplicationGroupReplicationGroupId :: Maybe (Val Text)+  , _elastiCacheReplicationGroupSecurityGroupIds :: Maybe [Val Text]+  , _elastiCacheReplicationGroupSnapshotArns :: Maybe [Val Text]+  , _elastiCacheReplicationGroupSnapshotName :: Maybe (Val Text)+  , _elastiCacheReplicationGroupSnapshotRetentionLimit :: Maybe (Val Integer')+  , _elastiCacheReplicationGroupSnapshotWindow :: Maybe (Val Text)+  , _elastiCacheReplicationGroupSnapshottingClusterId :: Maybe (Val Text)+  , _elastiCacheReplicationGroupTags :: Maybe [Tag]+  } deriving (Show, Generic)++instance ToJSON ElastiCacheReplicationGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON ElastiCacheReplicationGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'ElastiCacheReplicationGroup' containing required fields+-- | as arguments.+elastiCacheReplicationGroup+  :: Val Text -- ^ 'ecrgReplicationGroupDescription'+  -> ElastiCacheReplicationGroup+elastiCacheReplicationGroup replicationGroupDescriptionarg =+  ElastiCacheReplicationGroup+  { _elastiCacheReplicationGroupAutoMinorVersionUpgrade = Nothing+  , _elastiCacheReplicationGroupAutomaticFailoverEnabled = Nothing+  , _elastiCacheReplicationGroupCacheNodeType = Nothing+  , _elastiCacheReplicationGroupCacheParameterGroupName = Nothing+  , _elastiCacheReplicationGroupCacheSecurityGroupNames = Nothing+  , _elastiCacheReplicationGroupCacheSubnetGroupName = Nothing+  , _elastiCacheReplicationGroupEngine = Nothing+  , _elastiCacheReplicationGroupEngineVersion = Nothing+  , _elastiCacheReplicationGroupNodeGroupConfiguration = Nothing+  , _elastiCacheReplicationGroupNotificationTopicArn = Nothing+  , _elastiCacheReplicationGroupNumCacheClusters = Nothing+  , _elastiCacheReplicationGroupNumNodeGroups = Nothing+  , _elastiCacheReplicationGroupPort = Nothing+  , _elastiCacheReplicationGroupPreferredCacheClusterAZs = Nothing+  , _elastiCacheReplicationGroupPreferredMaintenanceWindow = Nothing+  , _elastiCacheReplicationGroupPrimaryClusterId = Nothing+  , _elastiCacheReplicationGroupReplicasPerNodeGroup = Nothing+  , _elastiCacheReplicationGroupReplicationGroupDescription = replicationGroupDescriptionarg+  , _elastiCacheReplicationGroupReplicationGroupId = Nothing+  , _elastiCacheReplicationGroupSecurityGroupIds = Nothing+  , _elastiCacheReplicationGroupSnapshotArns = Nothing+  , _elastiCacheReplicationGroupSnapshotName = Nothing+  , _elastiCacheReplicationGroupSnapshotRetentionLimit = Nothing+  , _elastiCacheReplicationGroupSnapshotWindow = Nothing+  , _elastiCacheReplicationGroupSnapshottingClusterId = Nothing+  , _elastiCacheReplicationGroupTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-autominorversionupgrade+ecrgAutoMinorVersionUpgrade :: Lens' ElastiCacheReplicationGroup (Maybe (Val Bool'))+ecrgAutoMinorVersionUpgrade = lens _elastiCacheReplicationGroupAutoMinorVersionUpgrade (\s a -> s { _elastiCacheReplicationGroupAutoMinorVersionUpgrade = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-automaticfailoverenabled+ecrgAutomaticFailoverEnabled :: Lens' ElastiCacheReplicationGroup (Maybe (Val Bool'))+ecrgAutomaticFailoverEnabled = lens _elastiCacheReplicationGroupAutomaticFailoverEnabled (\s a -> s { _elastiCacheReplicationGroupAutomaticFailoverEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-cachenodetype+ecrgCacheNodeType :: Lens' ElastiCacheReplicationGroup (Maybe (Val Text))+ecrgCacheNodeType = lens _elastiCacheReplicationGroupCacheNodeType (\s a -> s { _elastiCacheReplicationGroupCacheNodeType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-cacheparametergroupname+ecrgCacheParameterGroupName :: Lens' ElastiCacheReplicationGroup (Maybe (Val Text))+ecrgCacheParameterGroupName = lens _elastiCacheReplicationGroupCacheParameterGroupName (\s a -> s { _elastiCacheReplicationGroupCacheParameterGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-cachesecuritygroupnames+ecrgCacheSecurityGroupNames :: Lens' ElastiCacheReplicationGroup (Maybe [Val Text])+ecrgCacheSecurityGroupNames = lens _elastiCacheReplicationGroupCacheSecurityGroupNames (\s a -> s { _elastiCacheReplicationGroupCacheSecurityGroupNames = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-cachesubnetgroupname+ecrgCacheSubnetGroupName :: Lens' ElastiCacheReplicationGroup (Maybe (Val Text))+ecrgCacheSubnetGroupName = lens _elastiCacheReplicationGroupCacheSubnetGroupName (\s a -> s { _elastiCacheReplicationGroupCacheSubnetGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-engine+ecrgEngine :: Lens' ElastiCacheReplicationGroup (Maybe (Val Text))+ecrgEngine = lens _elastiCacheReplicationGroupEngine (\s a -> s { _elastiCacheReplicationGroupEngine = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-engineversion+ecrgEngineVersion :: Lens' ElastiCacheReplicationGroup (Maybe (Val Text))+ecrgEngineVersion = lens _elastiCacheReplicationGroupEngineVersion (\s a -> s { _elastiCacheReplicationGroupEngineVersion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-nodegroupconfiguration+ecrgNodeGroupConfiguration :: Lens' ElastiCacheReplicationGroup (Maybe [ElastiCacheReplicationGroupNodeGroupConfiguration])+ecrgNodeGroupConfiguration = lens _elastiCacheReplicationGroupNodeGroupConfiguration (\s a -> s { _elastiCacheReplicationGroupNodeGroupConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-notificationtopicarn+ecrgNotificationTopicArn :: Lens' ElastiCacheReplicationGroup (Maybe (Val Text))+ecrgNotificationTopicArn = lens _elastiCacheReplicationGroupNotificationTopicArn (\s a -> s { _elastiCacheReplicationGroupNotificationTopicArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-numcacheclusters+ecrgNumCacheClusters :: Lens' ElastiCacheReplicationGroup (Maybe (Val Integer'))+ecrgNumCacheClusters = lens _elastiCacheReplicationGroupNumCacheClusters (\s a -> s { _elastiCacheReplicationGroupNumCacheClusters = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-numnodegroups+ecrgNumNodeGroups :: Lens' ElastiCacheReplicationGroup (Maybe (Val Integer'))+ecrgNumNodeGroups = lens _elastiCacheReplicationGroupNumNodeGroups (\s a -> s { _elastiCacheReplicationGroupNumNodeGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-port+ecrgPort :: Lens' ElastiCacheReplicationGroup (Maybe (Val Integer'))+ecrgPort = lens _elastiCacheReplicationGroupPort (\s a -> s { _elastiCacheReplicationGroupPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-preferredcacheclusterazs+ecrgPreferredCacheClusterAZs :: Lens' ElastiCacheReplicationGroup (Maybe [Val Text])+ecrgPreferredCacheClusterAZs = lens _elastiCacheReplicationGroupPreferredCacheClusterAZs (\s a -> s { _elastiCacheReplicationGroupPreferredCacheClusterAZs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-preferredmaintenancewindow+ecrgPreferredMaintenanceWindow :: Lens' ElastiCacheReplicationGroup (Maybe (Val Text))+ecrgPreferredMaintenanceWindow = lens _elastiCacheReplicationGroupPreferredMaintenanceWindow (\s a -> s { _elastiCacheReplicationGroupPreferredMaintenanceWindow = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-primaryclusterid+ecrgPrimaryClusterId :: Lens' ElastiCacheReplicationGroup (Maybe (Val Text))+ecrgPrimaryClusterId = lens _elastiCacheReplicationGroupPrimaryClusterId (\s a -> s { _elastiCacheReplicationGroupPrimaryClusterId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-replicaspernodegroup+ecrgReplicasPerNodeGroup :: Lens' ElastiCacheReplicationGroup (Maybe (Val Integer'))+ecrgReplicasPerNodeGroup = lens _elastiCacheReplicationGroupReplicasPerNodeGroup (\s a -> s { _elastiCacheReplicationGroupReplicasPerNodeGroup = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-replicationgroupdescription+ecrgReplicationGroupDescription :: Lens' ElastiCacheReplicationGroup (Val Text)+ecrgReplicationGroupDescription = lens _elastiCacheReplicationGroupReplicationGroupDescription (\s a -> s { _elastiCacheReplicationGroupReplicationGroupDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-replicationgroupid+ecrgReplicationGroupId :: Lens' ElastiCacheReplicationGroup (Maybe (Val Text))+ecrgReplicationGroupId = lens _elastiCacheReplicationGroupReplicationGroupId (\s a -> s { _elastiCacheReplicationGroupReplicationGroupId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-securitygroupids+ecrgSecurityGroupIds :: Lens' ElastiCacheReplicationGroup (Maybe [Val Text])+ecrgSecurityGroupIds = lens _elastiCacheReplicationGroupSecurityGroupIds (\s a -> s { _elastiCacheReplicationGroupSecurityGroupIds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-snapshotarns+ecrgSnapshotArns :: Lens' ElastiCacheReplicationGroup (Maybe [Val Text])+ecrgSnapshotArns = lens _elastiCacheReplicationGroupSnapshotArns (\s a -> s { _elastiCacheReplicationGroupSnapshotArns = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-snapshotname+ecrgSnapshotName :: Lens' ElastiCacheReplicationGroup (Maybe (Val Text))+ecrgSnapshotName = lens _elastiCacheReplicationGroupSnapshotName (\s a -> s { _elastiCacheReplicationGroupSnapshotName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-snapshotretentionlimit+ecrgSnapshotRetentionLimit :: Lens' ElastiCacheReplicationGroup (Maybe (Val Integer'))+ecrgSnapshotRetentionLimit = lens _elastiCacheReplicationGroupSnapshotRetentionLimit (\s a -> s { _elastiCacheReplicationGroupSnapshotRetentionLimit = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-snapshotwindow+ecrgSnapshotWindow :: Lens' ElastiCacheReplicationGroup (Maybe (Val Text))+ecrgSnapshotWindow = lens _elastiCacheReplicationGroupSnapshotWindow (\s a -> s { _elastiCacheReplicationGroupSnapshotWindow = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-snapshottingclusterid+ecrgSnapshottingClusterId :: Lens' ElastiCacheReplicationGroup (Maybe (Val Text))+ecrgSnapshottingClusterId = lens _elastiCacheReplicationGroupSnapshottingClusterId (\s a -> s { _elastiCacheReplicationGroupSnapshottingClusterId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html#cfn-elasticache-replicationgroup-tags+ecrgTags :: Lens' ElastiCacheReplicationGroup (Maybe [Tag])+ecrgTags = lens _elastiCacheReplicationGroupTags (\s a -> s { _elastiCacheReplicationGroupTags = a })
+ library-gen/Stratosphere/Resources/ElastiCacheSecurityGroup.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group.html++module Stratosphere.Resources.ElastiCacheSecurityGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ElastiCacheSecurityGroup. See+-- | 'elastiCacheSecurityGroup' for a more convenient constructor.+data ElastiCacheSecurityGroup =+  ElastiCacheSecurityGroup+  { _elastiCacheSecurityGroupDescription :: Val Text+  } deriving (Show, Generic)++instance ToJSON ElastiCacheSecurityGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++instance FromJSON ElastiCacheSecurityGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++-- | Constructor for 'ElastiCacheSecurityGroup' containing required fields as+-- | arguments.+elastiCacheSecurityGroup+  :: Val Text -- ^ 'ecsegDescription'+  -> ElastiCacheSecurityGroup+elastiCacheSecurityGroup descriptionarg =+  ElastiCacheSecurityGroup+  { _elastiCacheSecurityGroupDescription = descriptionarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group.html#cfn-elasticache-securitygroup-description+ecsegDescription :: Lens' ElastiCacheSecurityGroup (Val Text)+ecsegDescription = lens _elastiCacheSecurityGroupDescription (\s a -> s { _elastiCacheSecurityGroupDescription = a })
+ library-gen/Stratosphere/Resources/ElastiCacheSecurityGroupIngress.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html++module Stratosphere.Resources.ElastiCacheSecurityGroupIngress where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ElastiCacheSecurityGroupIngress. See+-- | 'elastiCacheSecurityGroupIngress' for a more convenient constructor.+data ElastiCacheSecurityGroupIngress =+  ElastiCacheSecurityGroupIngress+  { _elastiCacheSecurityGroupIngressCacheSecurityGroupName :: Val Text+  , _elastiCacheSecurityGroupIngressEC2SecurityGroupName :: Val Text+  , _elastiCacheSecurityGroupIngressEC2SecurityGroupOwnerId :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ElastiCacheSecurityGroupIngress where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++instance FromJSON ElastiCacheSecurityGroupIngress where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 32, omitNothingFields = True }++-- | Constructor for 'ElastiCacheSecurityGroupIngress' containing required+-- | fields as arguments.+elastiCacheSecurityGroupIngress+  :: Val Text -- ^ 'ecsgiCacheSecurityGroupName'+  -> Val Text -- ^ 'ecsgiEC2SecurityGroupName'+  -> ElastiCacheSecurityGroupIngress+elastiCacheSecurityGroupIngress cacheSecurityGroupNamearg eC2SecurityGroupNamearg =+  ElastiCacheSecurityGroupIngress+  { _elastiCacheSecurityGroupIngressCacheSecurityGroupName = cacheSecurityGroupNamearg+  , _elastiCacheSecurityGroupIngressEC2SecurityGroupName = eC2SecurityGroupNamearg+  , _elastiCacheSecurityGroupIngressEC2SecurityGroupOwnerId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html#cfn-elasticache-securitygroupingress-cachesecuritygroupname+ecsgiCacheSecurityGroupName :: Lens' ElastiCacheSecurityGroupIngress (Val Text)+ecsgiCacheSecurityGroupName = lens _elastiCacheSecurityGroupIngressCacheSecurityGroupName (\s a -> s { _elastiCacheSecurityGroupIngressCacheSecurityGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html#cfn-elasticache-securitygroupingress-ec2securitygroupname+ecsgiEC2SecurityGroupName :: Lens' ElastiCacheSecurityGroupIngress (Val Text)+ecsgiEC2SecurityGroupName = lens _elastiCacheSecurityGroupIngressEC2SecurityGroupName (\s a -> s { _elastiCacheSecurityGroupIngressEC2SecurityGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html#cfn-elasticache-securitygroupingress-ec2securitygroupownerid+ecsgiEC2SecurityGroupOwnerId :: Lens' ElastiCacheSecurityGroupIngress (Maybe (Val Text))+ecsgiEC2SecurityGroupOwnerId = lens _elastiCacheSecurityGroupIngressEC2SecurityGroupOwnerId (\s a -> s { _elastiCacheSecurityGroupIngressEC2SecurityGroupOwnerId = a })
+ library-gen/Stratosphere/Resources/ElastiCacheSubnetGroup.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html++module Stratosphere.Resources.ElastiCacheSubnetGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ElastiCacheSubnetGroup. See+-- | 'elastiCacheSubnetGroup' for a more convenient constructor.+data ElastiCacheSubnetGroup =+  ElastiCacheSubnetGroup+  { _elastiCacheSubnetGroupCacheSubnetGroupName :: Maybe (Val Text)+  , _elastiCacheSubnetGroupDescription :: Val Text+  , _elastiCacheSubnetGroupSubnetIds :: [Val Text]+  } deriving (Show, Generic)++instance ToJSON ElastiCacheSubnetGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++instance FromJSON ElastiCacheSubnetGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++-- | Constructor for 'ElastiCacheSubnetGroup' containing required fields as+-- | arguments.+elastiCacheSubnetGroup+  :: Val Text -- ^ 'ecsugDescription'+  -> [Val Text] -- ^ 'ecsugSubnetIds'+  -> ElastiCacheSubnetGroup+elastiCacheSubnetGroup descriptionarg subnetIdsarg =+  ElastiCacheSubnetGroup+  { _elastiCacheSubnetGroupCacheSubnetGroupName = Nothing+  , _elastiCacheSubnetGroupDescription = descriptionarg+  , _elastiCacheSubnetGroupSubnetIds = subnetIdsarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html#cfn-elasticache-subnetgroup-cachesubnetgroupname+ecsugCacheSubnetGroupName :: Lens' ElastiCacheSubnetGroup (Maybe (Val Text))+ecsugCacheSubnetGroupName = lens _elastiCacheSubnetGroupCacheSubnetGroupName (\s a -> s { _elastiCacheSubnetGroupCacheSubnetGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html#cfn-elasticache-subnetgroup-description+ecsugDescription :: Lens' ElastiCacheSubnetGroup (Val Text)+ecsugDescription = lens _elastiCacheSubnetGroupDescription (\s a -> s { _elastiCacheSubnetGroupDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html#cfn-elasticache-subnetgroup-subnetids+ecsugSubnetIds :: Lens' ElastiCacheSubnetGroup [Val Text]+ecsugSubnetIds = lens _elastiCacheSubnetGroupSubnetIds (\s a -> s { _elastiCacheSubnetGroupSubnetIds = a })
+ library-gen/Stratosphere/Resources/ElasticBeanstalkApplication.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk.html++module Stratosphere.Resources.ElasticBeanstalkApplication where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ElasticBeanstalkApplication. See+-- | 'elasticBeanstalkApplication' for a more convenient constructor.+data ElasticBeanstalkApplication =+  ElasticBeanstalkApplication+  { _elasticBeanstalkApplicationApplicationName :: Maybe (Val Text)+  , _elasticBeanstalkApplicationDescription :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ElasticBeanstalkApplication where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON ElasticBeanstalkApplication where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'ElasticBeanstalkApplication' containing required fields+-- | as arguments.+elasticBeanstalkApplication+  :: ElasticBeanstalkApplication+elasticBeanstalkApplication  =+  ElasticBeanstalkApplication+  { _elasticBeanstalkApplicationApplicationName = Nothing+  , _elasticBeanstalkApplicationDescription = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk.html#cfn-elasticbeanstalk-application-name+ebaApplicationName :: Lens' ElasticBeanstalkApplication (Maybe (Val Text))+ebaApplicationName = lens _elasticBeanstalkApplicationApplicationName (\s a -> s { _elasticBeanstalkApplicationApplicationName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk.html#cfn-elasticbeanstalk-application-description+ebaDescription :: Lens' ElasticBeanstalkApplication (Maybe (Val Text))+ebaDescription = lens _elasticBeanstalkApplicationDescription (\s a -> s { _elasticBeanstalkApplicationDescription = a })
+ library-gen/Stratosphere/Resources/ElasticBeanstalkApplicationVersion.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-version.html++module Stratosphere.Resources.ElasticBeanstalkApplicationVersion where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ElasticBeanstalkApplicationVersionSourceBundle++-- | Full data type definition for ElasticBeanstalkApplicationVersion. See+-- | 'elasticBeanstalkApplicationVersion' for a more convenient constructor.+data ElasticBeanstalkApplicationVersion =+  ElasticBeanstalkApplicationVersion+  { _elasticBeanstalkApplicationVersionApplicationName :: Val Text+  , _elasticBeanstalkApplicationVersionDescription :: Maybe (Val Text)+  , _elasticBeanstalkApplicationVersionSourceBundle :: ElasticBeanstalkApplicationVersionSourceBundle+  } deriving (Show, Generic)++instance ToJSON ElasticBeanstalkApplicationVersion where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++instance FromJSON ElasticBeanstalkApplicationVersion where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++-- | Constructor for 'ElasticBeanstalkApplicationVersion' containing required+-- | fields as arguments.+elasticBeanstalkApplicationVersion+  :: Val Text -- ^ 'ebavApplicationName'+  -> ElasticBeanstalkApplicationVersionSourceBundle -- ^ 'ebavSourceBundle'+  -> ElasticBeanstalkApplicationVersion+elasticBeanstalkApplicationVersion applicationNamearg sourceBundlearg =+  ElasticBeanstalkApplicationVersion+  { _elasticBeanstalkApplicationVersionApplicationName = applicationNamearg+  , _elasticBeanstalkApplicationVersionDescription = Nothing+  , _elasticBeanstalkApplicationVersionSourceBundle = sourceBundlearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-version.html#cfn-elasticbeanstalk-applicationversion-applicationname+ebavApplicationName :: Lens' ElasticBeanstalkApplicationVersion (Val Text)+ebavApplicationName = lens _elasticBeanstalkApplicationVersionApplicationName (\s a -> s { _elasticBeanstalkApplicationVersionApplicationName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-version.html#cfn-elasticbeanstalk-applicationversion-description+ebavDescription :: Lens' ElasticBeanstalkApplicationVersion (Maybe (Val Text))+ebavDescription = lens _elasticBeanstalkApplicationVersionDescription (\s a -> s { _elasticBeanstalkApplicationVersionDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-version.html#cfn-elasticbeanstalk-applicationversion-sourcebundle+ebavSourceBundle :: Lens' ElasticBeanstalkApplicationVersion ElasticBeanstalkApplicationVersionSourceBundle+ebavSourceBundle = lens _elasticBeanstalkApplicationVersionSourceBundle (\s a -> s { _elasticBeanstalkApplicationVersionSourceBundle = a })
+ library-gen/Stratosphere/Resources/ElasticBeanstalkConfigurationTemplate.hs view
@@ -0,0 +1,74 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-beanstalk-configurationtemplate.html++module Stratosphere.Resources.ElasticBeanstalkConfigurationTemplate where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting+import Stratosphere.ResourceProperties.ElasticBeanstalkConfigurationTemplateSourceConfiguration++-- | Full data type definition for ElasticBeanstalkConfigurationTemplate. See+-- | 'elasticBeanstalkConfigurationTemplate' for a more convenient+-- | constructor.+data ElasticBeanstalkConfigurationTemplate =+  ElasticBeanstalkConfigurationTemplate+  { _elasticBeanstalkConfigurationTemplateApplicationName :: Val Text+  , _elasticBeanstalkConfigurationTemplateDescription :: Maybe (Val Text)+  , _elasticBeanstalkConfigurationTemplateEnvironmentId :: Maybe (Val Text)+  , _elasticBeanstalkConfigurationTemplateOptionSettings :: Maybe [ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting]+  , _elasticBeanstalkConfigurationTemplateSolutionStackName :: Maybe (Val Text)+  , _elasticBeanstalkConfigurationTemplateSourceConfiguration :: Maybe ElasticBeanstalkConfigurationTemplateSourceConfiguration+  } deriving (Show, Generic)++instance ToJSON ElasticBeanstalkConfigurationTemplate where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++instance FromJSON ElasticBeanstalkConfigurationTemplate where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++-- | Constructor for 'ElasticBeanstalkConfigurationTemplate' containing+-- | required fields as arguments.+elasticBeanstalkConfigurationTemplate+  :: Val Text -- ^ 'ebctApplicationName'+  -> ElasticBeanstalkConfigurationTemplate+elasticBeanstalkConfigurationTemplate applicationNamearg =+  ElasticBeanstalkConfigurationTemplate+  { _elasticBeanstalkConfigurationTemplateApplicationName = applicationNamearg+  , _elasticBeanstalkConfigurationTemplateDescription = Nothing+  , _elasticBeanstalkConfigurationTemplateEnvironmentId = Nothing+  , _elasticBeanstalkConfigurationTemplateOptionSettings = Nothing+  , _elasticBeanstalkConfigurationTemplateSolutionStackName = Nothing+  , _elasticBeanstalkConfigurationTemplateSourceConfiguration = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-beanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-applicationname+ebctApplicationName :: Lens' ElasticBeanstalkConfigurationTemplate (Val Text)+ebctApplicationName = lens _elasticBeanstalkConfigurationTemplateApplicationName (\s a -> s { _elasticBeanstalkConfigurationTemplateApplicationName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-beanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-description+ebctDescription :: Lens' ElasticBeanstalkConfigurationTemplate (Maybe (Val Text))+ebctDescription = lens _elasticBeanstalkConfigurationTemplateDescription (\s a -> s { _elasticBeanstalkConfigurationTemplateDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-beanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-environmentid+ebctEnvironmentId :: Lens' ElasticBeanstalkConfigurationTemplate (Maybe (Val Text))+ebctEnvironmentId = lens _elasticBeanstalkConfigurationTemplateEnvironmentId (\s a -> s { _elasticBeanstalkConfigurationTemplateEnvironmentId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-beanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-optionsettings+ebctOptionSettings :: Lens' ElasticBeanstalkConfigurationTemplate (Maybe [ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting])+ebctOptionSettings = lens _elasticBeanstalkConfigurationTemplateOptionSettings (\s a -> s { _elasticBeanstalkConfigurationTemplateOptionSettings = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-beanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-solutionstackname+ebctSolutionStackName :: Lens' ElasticBeanstalkConfigurationTemplate (Maybe (Val Text))+ebctSolutionStackName = lens _elasticBeanstalkConfigurationTemplateSolutionStackName (\s a -> s { _elasticBeanstalkConfigurationTemplateSolutionStackName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-beanstalk-configurationtemplate.html#cfn-elasticbeanstalk-configurationtemplate-sourceconfiguration+ebctSourceConfiguration :: Lens' ElasticBeanstalkConfigurationTemplate (Maybe ElasticBeanstalkConfigurationTemplateSourceConfiguration)+ebctSourceConfiguration = lens _elasticBeanstalkConfigurationTemplateSourceConfiguration (\s a -> s { _elasticBeanstalkConfigurationTemplateSourceConfiguration = a })
+ library-gen/Stratosphere/Resources/ElasticBeanstalkEnvironment.hs view
@@ -0,0 +1,91 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html++module Stratosphere.Resources.ElasticBeanstalkEnvironment where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ElasticBeanstalkEnvironmentOptionSettings+import Stratosphere.ResourceProperties.ElasticBeanstalkEnvironmentTier++-- | Full data type definition for ElasticBeanstalkEnvironment. See+-- | 'elasticBeanstalkEnvironment' for a more convenient constructor.+data ElasticBeanstalkEnvironment =+  ElasticBeanstalkEnvironment+  { _elasticBeanstalkEnvironmentApplicationName :: Val Text+  , _elasticBeanstalkEnvironmentCNAMEPrefix :: Maybe (Val Text)+  , _elasticBeanstalkEnvironmentDescription :: Maybe (Val Text)+  , _elasticBeanstalkEnvironmentEnvironmentName :: Maybe (Val Text)+  , _elasticBeanstalkEnvironmentOptionSettings :: Maybe [ElasticBeanstalkEnvironmentOptionSettings]+  , _elasticBeanstalkEnvironmentSolutionStackName :: Maybe (Val Text)+  , _elasticBeanstalkEnvironmentTemplateName :: Maybe (Val Text)+  , _elasticBeanstalkEnvironmentTier :: Maybe ElasticBeanstalkEnvironmentTier+  , _elasticBeanstalkEnvironmentVersionLabel :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ElasticBeanstalkEnvironment where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON ElasticBeanstalkEnvironment where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'ElasticBeanstalkEnvironment' containing required fields+-- | as arguments.+elasticBeanstalkEnvironment+  :: Val Text -- ^ 'ebeApplicationName'+  -> ElasticBeanstalkEnvironment+elasticBeanstalkEnvironment applicationNamearg =+  ElasticBeanstalkEnvironment+  { _elasticBeanstalkEnvironmentApplicationName = applicationNamearg+  , _elasticBeanstalkEnvironmentCNAMEPrefix = Nothing+  , _elasticBeanstalkEnvironmentDescription = Nothing+  , _elasticBeanstalkEnvironmentEnvironmentName = Nothing+  , _elasticBeanstalkEnvironmentOptionSettings = Nothing+  , _elasticBeanstalkEnvironmentSolutionStackName = Nothing+  , _elasticBeanstalkEnvironmentTemplateName = Nothing+  , _elasticBeanstalkEnvironmentTier = Nothing+  , _elasticBeanstalkEnvironmentVersionLabel = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-applicationname+ebeApplicationName :: Lens' ElasticBeanstalkEnvironment (Val Text)+ebeApplicationName = lens _elasticBeanstalkEnvironmentApplicationName (\s a -> s { _elasticBeanstalkEnvironmentApplicationName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-cnameprefix+ebeCNAMEPrefix :: Lens' ElasticBeanstalkEnvironment (Maybe (Val Text))+ebeCNAMEPrefix = lens _elasticBeanstalkEnvironmentCNAMEPrefix (\s a -> s { _elasticBeanstalkEnvironmentCNAMEPrefix = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-description+ebeDescription :: Lens' ElasticBeanstalkEnvironment (Maybe (Val Text))+ebeDescription = lens _elasticBeanstalkEnvironmentDescription (\s a -> s { _elasticBeanstalkEnvironmentDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-name+ebeEnvironmentName :: Lens' ElasticBeanstalkEnvironment (Maybe (Val Text))+ebeEnvironmentName = lens _elasticBeanstalkEnvironmentEnvironmentName (\s a -> s { _elasticBeanstalkEnvironmentEnvironmentName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-optionsettings+ebeOptionSettings :: Lens' ElasticBeanstalkEnvironment (Maybe [ElasticBeanstalkEnvironmentOptionSettings])+ebeOptionSettings = lens _elasticBeanstalkEnvironmentOptionSettings (\s a -> s { _elasticBeanstalkEnvironmentOptionSettings = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-solutionstackname+ebeSolutionStackName :: Lens' ElasticBeanstalkEnvironment (Maybe (Val Text))+ebeSolutionStackName = lens _elasticBeanstalkEnvironmentSolutionStackName (\s a -> s { _elasticBeanstalkEnvironmentSolutionStackName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-templatename+ebeTemplateName :: Lens' ElasticBeanstalkEnvironment (Maybe (Val Text))+ebeTemplateName = lens _elasticBeanstalkEnvironmentTemplateName (\s a -> s { _elasticBeanstalkEnvironmentTemplateName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-tier+ebeTier :: Lens' ElasticBeanstalkEnvironment (Maybe ElasticBeanstalkEnvironmentTier)+ebeTier = lens _elasticBeanstalkEnvironmentTier (\s a -> s { _elasticBeanstalkEnvironmentTier = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-versionlabel+ebeVersionLabel :: Lens' ElasticBeanstalkEnvironment (Maybe (Val Text))+ebeVersionLabel = lens _elasticBeanstalkEnvironmentVersionLabel (\s a -> s { _elasticBeanstalkEnvironmentVersionLabel = a })
+ library-gen/Stratosphere/Resources/ElasticLoadBalancingLoadBalancer.hs view
@@ -0,0 +1,140 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html++module Stratosphere.Resources.ElasticLoadBalancingLoadBalancer where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerAccessLoggingPolicy+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerConnectionSettings+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerHealthCheck+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerListeners+import Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerPolicies+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for ElasticLoadBalancingLoadBalancer. See+-- | 'elasticLoadBalancingLoadBalancer' for a more convenient constructor.+data ElasticLoadBalancingLoadBalancer =+  ElasticLoadBalancingLoadBalancer+  { _elasticLoadBalancingLoadBalancerAccessLoggingPolicy :: Maybe ElasticLoadBalancingLoadBalancerAccessLoggingPolicy+  , _elasticLoadBalancingLoadBalancerAppCookieStickinessPolicy :: Maybe [ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy]+  , _elasticLoadBalancingLoadBalancerAvailabilityZones :: Maybe [Val Text]+  , _elasticLoadBalancingLoadBalancerConnectionDrainingPolicy :: Maybe ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy+  , _elasticLoadBalancingLoadBalancerConnectionSettings :: Maybe ElasticLoadBalancingLoadBalancerConnectionSettings+  , _elasticLoadBalancingLoadBalancerCrossZone :: Maybe (Val Bool')+  , _elasticLoadBalancingLoadBalancerHealthCheck :: Maybe ElasticLoadBalancingLoadBalancerHealthCheck+  , _elasticLoadBalancingLoadBalancerInstances :: Maybe [Val Text]+  , _elasticLoadBalancingLoadBalancerLBCookieStickinessPolicy :: Maybe [ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy]+  , _elasticLoadBalancingLoadBalancerListeners :: [ElasticLoadBalancingLoadBalancerListeners]+  , _elasticLoadBalancingLoadBalancerLoadBalancerName :: Maybe (Val Text)+  , _elasticLoadBalancingLoadBalancerPolicies :: Maybe [ElasticLoadBalancingLoadBalancerPolicies]+  , _elasticLoadBalancingLoadBalancerScheme :: Maybe (Val Text)+  , _elasticLoadBalancingLoadBalancerSecurityGroups :: Maybe [Val Text]+  , _elasticLoadBalancingLoadBalancerSubnets :: Maybe [Val Text]+  , _elasticLoadBalancingLoadBalancerTags :: Maybe [Tag]+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingLoadBalancer where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingLoadBalancer where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 33, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingLoadBalancer' containing required+-- | fields as arguments.+elasticLoadBalancingLoadBalancer+  :: [ElasticLoadBalancingLoadBalancerListeners] -- ^ 'elblbListeners'+  -> ElasticLoadBalancingLoadBalancer+elasticLoadBalancingLoadBalancer listenersarg =+  ElasticLoadBalancingLoadBalancer+  { _elasticLoadBalancingLoadBalancerAccessLoggingPolicy = Nothing+  , _elasticLoadBalancingLoadBalancerAppCookieStickinessPolicy = Nothing+  , _elasticLoadBalancingLoadBalancerAvailabilityZones = Nothing+  , _elasticLoadBalancingLoadBalancerConnectionDrainingPolicy = Nothing+  , _elasticLoadBalancingLoadBalancerConnectionSettings = Nothing+  , _elasticLoadBalancingLoadBalancerCrossZone = Nothing+  , _elasticLoadBalancingLoadBalancerHealthCheck = Nothing+  , _elasticLoadBalancingLoadBalancerInstances = Nothing+  , _elasticLoadBalancingLoadBalancerLBCookieStickinessPolicy = Nothing+  , _elasticLoadBalancingLoadBalancerListeners = listenersarg+  , _elasticLoadBalancingLoadBalancerLoadBalancerName = Nothing+  , _elasticLoadBalancingLoadBalancerPolicies = Nothing+  , _elasticLoadBalancingLoadBalancerScheme = Nothing+  , _elasticLoadBalancingLoadBalancerSecurityGroups = Nothing+  , _elasticLoadBalancingLoadBalancerSubnets = Nothing+  , _elasticLoadBalancingLoadBalancerTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-accessloggingpolicy+elblbAccessLoggingPolicy :: Lens' ElasticLoadBalancingLoadBalancer (Maybe ElasticLoadBalancingLoadBalancerAccessLoggingPolicy)+elblbAccessLoggingPolicy = lens _elasticLoadBalancingLoadBalancerAccessLoggingPolicy (\s a -> s { _elasticLoadBalancingLoadBalancerAccessLoggingPolicy = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-appcookiestickinesspolicy+elblbAppCookieStickinessPolicy :: Lens' ElasticLoadBalancingLoadBalancer (Maybe [ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy])+elblbAppCookieStickinessPolicy = lens _elasticLoadBalancingLoadBalancerAppCookieStickinessPolicy (\s a -> s { _elasticLoadBalancingLoadBalancerAppCookieStickinessPolicy = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-availabilityzones+elblbAvailabilityZones :: Lens' ElasticLoadBalancingLoadBalancer (Maybe [Val Text])+elblbAvailabilityZones = lens _elasticLoadBalancingLoadBalancerAvailabilityZones (\s a -> s { _elasticLoadBalancingLoadBalancerAvailabilityZones = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-connectiondrainingpolicy+elblbConnectionDrainingPolicy :: Lens' ElasticLoadBalancingLoadBalancer (Maybe ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy)+elblbConnectionDrainingPolicy = lens _elasticLoadBalancingLoadBalancerConnectionDrainingPolicy (\s a -> s { _elasticLoadBalancingLoadBalancerConnectionDrainingPolicy = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-connectionsettings+elblbConnectionSettings :: Lens' ElasticLoadBalancingLoadBalancer (Maybe ElasticLoadBalancingLoadBalancerConnectionSettings)+elblbConnectionSettings = lens _elasticLoadBalancingLoadBalancerConnectionSettings (\s a -> s { _elasticLoadBalancingLoadBalancerConnectionSettings = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-crosszone+elblbCrossZone :: Lens' ElasticLoadBalancingLoadBalancer (Maybe (Val Bool'))+elblbCrossZone = lens _elasticLoadBalancingLoadBalancerCrossZone (\s a -> s { _elasticLoadBalancingLoadBalancerCrossZone = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-healthcheck+elblbHealthCheck :: Lens' ElasticLoadBalancingLoadBalancer (Maybe ElasticLoadBalancingLoadBalancerHealthCheck)+elblbHealthCheck = lens _elasticLoadBalancingLoadBalancerHealthCheck (\s a -> s { _elasticLoadBalancingLoadBalancerHealthCheck = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-instances+elblbInstances :: Lens' ElasticLoadBalancingLoadBalancer (Maybe [Val Text])+elblbInstances = lens _elasticLoadBalancingLoadBalancerInstances (\s a -> s { _elasticLoadBalancingLoadBalancerInstances = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-lbcookiestickinesspolicy+elblbLBCookieStickinessPolicy :: Lens' ElasticLoadBalancingLoadBalancer (Maybe [ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy])+elblbLBCookieStickinessPolicy = lens _elasticLoadBalancingLoadBalancerLBCookieStickinessPolicy (\s a -> s { _elasticLoadBalancingLoadBalancerLBCookieStickinessPolicy = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-listeners+elblbListeners :: Lens' ElasticLoadBalancingLoadBalancer [ElasticLoadBalancingLoadBalancerListeners]+elblbListeners = lens _elasticLoadBalancingLoadBalancerListeners (\s a -> s { _elasticLoadBalancingLoadBalancerListeners = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-elbname+elblbLoadBalancerName :: Lens' ElasticLoadBalancingLoadBalancer (Maybe (Val Text))+elblbLoadBalancerName = lens _elasticLoadBalancingLoadBalancerLoadBalancerName (\s a -> s { _elasticLoadBalancingLoadBalancerLoadBalancerName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-policies+elblbPolicies :: Lens' ElasticLoadBalancingLoadBalancer (Maybe [ElasticLoadBalancingLoadBalancerPolicies])+elblbPolicies = lens _elasticLoadBalancingLoadBalancerPolicies (\s a -> s { _elasticLoadBalancingLoadBalancerPolicies = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-scheme+elblbScheme :: Lens' ElasticLoadBalancingLoadBalancer (Maybe (Val Text))+elblbScheme = lens _elasticLoadBalancingLoadBalancerScheme (\s a -> s { _elasticLoadBalancingLoadBalancerScheme = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-securitygroups+elblbSecurityGroups :: Lens' ElasticLoadBalancingLoadBalancer (Maybe [Val Text])+elblbSecurityGroups = lens _elasticLoadBalancingLoadBalancerSecurityGroups (\s a -> s { _elasticLoadBalancingLoadBalancerSecurityGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-ec2-elb-subnets+elblbSubnets :: Lens' ElasticLoadBalancingLoadBalancer (Maybe [Val Text])+elblbSubnets = lens _elasticLoadBalancingLoadBalancerSubnets (\s a -> s { _elasticLoadBalancingLoadBalancerSubnets = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-elb.html#cfn-elasticloadbalancing-loadbalancer-tags+elblbTags :: Lens' ElasticLoadBalancingLoadBalancer (Maybe [Tag])+elblbTags = lens _elasticLoadBalancingLoadBalancerTags (\s a -> s { _elasticLoadBalancingLoadBalancerTags = a })
+ library-gen/Stratosphere/Resources/ElasticLoadBalancingV2Listener.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html++module Stratosphere.Resources.ElasticLoadBalancingV2Listener where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerCertificate+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerAction++-- | Full data type definition for ElasticLoadBalancingV2Listener. See+-- | 'elasticLoadBalancingV2Listener' for a more convenient constructor.+data ElasticLoadBalancingV2Listener =+  ElasticLoadBalancingV2Listener+  { _elasticLoadBalancingV2ListenerCertificates :: Maybe [ElasticLoadBalancingV2ListenerCertificate]+  , _elasticLoadBalancingV2ListenerDefaultActions :: [ElasticLoadBalancingV2ListenerAction]+  , _elasticLoadBalancingV2ListenerLoadBalancerArn :: Val Text+  , _elasticLoadBalancingV2ListenerPort :: Val Integer'+  , _elasticLoadBalancingV2ListenerProtocol :: Val Text+  , _elasticLoadBalancingV2ListenerSslPolicy :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingV2Listener where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingV2Listener where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 31, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingV2Listener' containing required+-- | fields as arguments.+elasticLoadBalancingV2Listener+  :: [ElasticLoadBalancingV2ListenerAction] -- ^ 'elbvlDefaultActions'+  -> Val Text -- ^ 'elbvlLoadBalancerArn'+  -> Val Integer' -- ^ 'elbvlPort'+  -> Val Text -- ^ 'elbvlProtocol'+  -> ElasticLoadBalancingV2Listener+elasticLoadBalancingV2Listener defaultActionsarg loadBalancerArnarg portarg protocolarg =+  ElasticLoadBalancingV2Listener+  { _elasticLoadBalancingV2ListenerCertificates = Nothing+  , _elasticLoadBalancingV2ListenerDefaultActions = defaultActionsarg+  , _elasticLoadBalancingV2ListenerLoadBalancerArn = loadBalancerArnarg+  , _elasticLoadBalancingV2ListenerPort = portarg+  , _elasticLoadBalancingV2ListenerProtocol = protocolarg+  , _elasticLoadBalancingV2ListenerSslPolicy = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-certificates+elbvlCertificates :: Lens' ElasticLoadBalancingV2Listener (Maybe [ElasticLoadBalancingV2ListenerCertificate])+elbvlCertificates = lens _elasticLoadBalancingV2ListenerCertificates (\s a -> s { _elasticLoadBalancingV2ListenerCertificates = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-defaultactions+elbvlDefaultActions :: Lens' ElasticLoadBalancingV2Listener [ElasticLoadBalancingV2ListenerAction]+elbvlDefaultActions = lens _elasticLoadBalancingV2ListenerDefaultActions (\s a -> s { _elasticLoadBalancingV2ListenerDefaultActions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-loadbalancerarn+elbvlLoadBalancerArn :: Lens' ElasticLoadBalancingV2Listener (Val Text)+elbvlLoadBalancerArn = lens _elasticLoadBalancingV2ListenerLoadBalancerArn (\s a -> s { _elasticLoadBalancingV2ListenerLoadBalancerArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-port+elbvlPort :: Lens' ElasticLoadBalancingV2Listener (Val Integer')+elbvlPort = lens _elasticLoadBalancingV2ListenerPort (\s a -> s { _elasticLoadBalancingV2ListenerPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-protocol+elbvlProtocol :: Lens' ElasticLoadBalancingV2Listener (Val Text)+elbvlProtocol = lens _elasticLoadBalancingV2ListenerProtocol (\s a -> s { _elasticLoadBalancingV2ListenerProtocol = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html#cfn-elasticloadbalancingv2-listener-sslpolicy+elbvlSslPolicy :: Lens' ElasticLoadBalancingV2Listener (Maybe (Val Text))+elbvlSslPolicy = lens _elasticLoadBalancingV2ListenerSslPolicy (\s a -> s { _elasticLoadBalancingV2ListenerSslPolicy = a })
+ library-gen/Stratosphere/Resources/ElasticLoadBalancingV2ListenerRule.hs view
@@ -0,0 +1,64 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html++module Stratosphere.Resources.ElasticLoadBalancingV2ListenerRule where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerRuleAction+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerRuleRuleCondition++-- | Full data type definition for ElasticLoadBalancingV2ListenerRule. See+-- | 'elasticLoadBalancingV2ListenerRule' for a more convenient constructor.+data ElasticLoadBalancingV2ListenerRule =+  ElasticLoadBalancingV2ListenerRule+  { _elasticLoadBalancingV2ListenerRuleActions :: [ElasticLoadBalancingV2ListenerRuleAction]+  , _elasticLoadBalancingV2ListenerRuleConditions :: [ElasticLoadBalancingV2ListenerRuleRuleCondition]+  , _elasticLoadBalancingV2ListenerRuleListenerArn :: Val Text+  , _elasticLoadBalancingV2ListenerRulePriority :: Val Integer'+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingV2ListenerRule where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingV2ListenerRule where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingV2ListenerRule' containing required+-- | fields as arguments.+elasticLoadBalancingV2ListenerRule+  :: [ElasticLoadBalancingV2ListenerRuleAction] -- ^ 'elbvlrActions'+  -> [ElasticLoadBalancingV2ListenerRuleRuleCondition] -- ^ 'elbvlrConditions'+  -> Val Text -- ^ 'elbvlrListenerArn'+  -> Val Integer' -- ^ 'elbvlrPriority'+  -> ElasticLoadBalancingV2ListenerRule+elasticLoadBalancingV2ListenerRule actionsarg conditionsarg listenerArnarg priorityarg =+  ElasticLoadBalancingV2ListenerRule+  { _elasticLoadBalancingV2ListenerRuleActions = actionsarg+  , _elasticLoadBalancingV2ListenerRuleConditions = conditionsarg+  , _elasticLoadBalancingV2ListenerRuleListenerArn = listenerArnarg+  , _elasticLoadBalancingV2ListenerRulePriority = priorityarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html#cfn-elasticloadbalancingv2-listenerrule-actions+elbvlrActions :: Lens' ElasticLoadBalancingV2ListenerRule [ElasticLoadBalancingV2ListenerRuleAction]+elbvlrActions = lens _elasticLoadBalancingV2ListenerRuleActions (\s a -> s { _elasticLoadBalancingV2ListenerRuleActions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html#cfn-elasticloadbalancingv2-listenerrule-conditions+elbvlrConditions :: Lens' ElasticLoadBalancingV2ListenerRule [ElasticLoadBalancingV2ListenerRuleRuleCondition]+elbvlrConditions = lens _elasticLoadBalancingV2ListenerRuleConditions (\s a -> s { _elasticLoadBalancingV2ListenerRuleConditions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html#cfn-elasticloadbalancingv2-listenerrule-listenerarn+elbvlrListenerArn :: Lens' ElasticLoadBalancingV2ListenerRule (Val Text)+elbvlrListenerArn = lens _elasticLoadBalancingV2ListenerRuleListenerArn (\s a -> s { _elasticLoadBalancingV2ListenerRuleListenerArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listenerrule.html#cfn-elasticloadbalancingv2-listenerrule-priority+elbvlrPriority :: Lens' ElasticLoadBalancingV2ListenerRule (Val Integer')+elbvlrPriority = lens _elasticLoadBalancingV2ListenerRulePriority (\s a -> s { _elasticLoadBalancingV2ListenerRulePriority = a })
+ library-gen/Stratosphere/Resources/ElasticLoadBalancingV2LoadBalancer.hs view
@@ -0,0 +1,78 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html++module Stratosphere.Resources.ElasticLoadBalancingV2LoadBalancer where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for ElasticLoadBalancingV2LoadBalancer. See+-- | 'elasticLoadBalancingV2LoadBalancer' for a more convenient constructor.+data ElasticLoadBalancingV2LoadBalancer =+  ElasticLoadBalancingV2LoadBalancer+  { _elasticLoadBalancingV2LoadBalancerIpAddressType :: Maybe (Val Text)+  , _elasticLoadBalancingV2LoadBalancerLoadBalancerAttributes :: Maybe [ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute]+  , _elasticLoadBalancingV2LoadBalancerName :: Maybe (Val Text)+  , _elasticLoadBalancingV2LoadBalancerScheme :: Maybe (Val Text)+  , _elasticLoadBalancingV2LoadBalancerSecurityGroups :: Maybe [Val Text]+  , _elasticLoadBalancingV2LoadBalancerSubnets :: Maybe [Val Text]+  , _elasticLoadBalancingV2LoadBalancerTags :: Maybe [Tag]+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingV2LoadBalancer where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingV2LoadBalancer where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 35, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingV2LoadBalancer' containing required+-- | fields as arguments.+elasticLoadBalancingV2LoadBalancer+  :: ElasticLoadBalancingV2LoadBalancer+elasticLoadBalancingV2LoadBalancer  =+  ElasticLoadBalancingV2LoadBalancer+  { _elasticLoadBalancingV2LoadBalancerIpAddressType = Nothing+  , _elasticLoadBalancingV2LoadBalancerLoadBalancerAttributes = Nothing+  , _elasticLoadBalancingV2LoadBalancerName = Nothing+  , _elasticLoadBalancingV2LoadBalancerScheme = Nothing+  , _elasticLoadBalancingV2LoadBalancerSecurityGroups = Nothing+  , _elasticLoadBalancingV2LoadBalancerSubnets = Nothing+  , _elasticLoadBalancingV2LoadBalancerTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-ipaddresstype+elbvlbIpAddressType :: Lens' ElasticLoadBalancingV2LoadBalancer (Maybe (Val Text))+elbvlbIpAddressType = lens _elasticLoadBalancingV2LoadBalancerIpAddressType (\s a -> s { _elasticLoadBalancingV2LoadBalancerIpAddressType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-loadbalancerattributes+elbvlbLoadBalancerAttributes :: Lens' ElasticLoadBalancingV2LoadBalancer (Maybe [ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute])+elbvlbLoadBalancerAttributes = lens _elasticLoadBalancingV2LoadBalancerLoadBalancerAttributes (\s a -> s { _elasticLoadBalancingV2LoadBalancerLoadBalancerAttributes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-name+elbvlbName :: Lens' ElasticLoadBalancingV2LoadBalancer (Maybe (Val Text))+elbvlbName = lens _elasticLoadBalancingV2LoadBalancerName (\s a -> s { _elasticLoadBalancingV2LoadBalancerName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-scheme+elbvlbScheme :: Lens' ElasticLoadBalancingV2LoadBalancer (Maybe (Val Text))+elbvlbScheme = lens _elasticLoadBalancingV2LoadBalancerScheme (\s a -> s { _elasticLoadBalancingV2LoadBalancerScheme = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-securitygroups+elbvlbSecurityGroups :: Lens' ElasticLoadBalancingV2LoadBalancer (Maybe [Val Text])+elbvlbSecurityGroups = lens _elasticLoadBalancingV2LoadBalancerSecurityGroups (\s a -> s { _elasticLoadBalancingV2LoadBalancerSecurityGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-subnets+elbvlbSubnets :: Lens' ElasticLoadBalancingV2LoadBalancer (Maybe [Val Text])+elbvlbSubnets = lens _elasticLoadBalancingV2LoadBalancerSubnets (\s a -> s { _elasticLoadBalancingV2LoadBalancerSubnets = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-loadbalancer.html#cfn-elasticloadbalancingv2-loadbalancer-tags+elbvlbTags :: Lens' ElasticLoadBalancingV2LoadBalancer (Maybe [Tag])+elbvlbTags = lens _elasticLoadBalancingV2LoadBalancerTags (\s a -> s { _elasticLoadBalancingV2LoadBalancerTags = a })
+ library-gen/Stratosphere/Resources/ElasticLoadBalancingV2TargetGroup.hs view
@@ -0,0 +1,131 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html++module Stratosphere.Resources.ElasticLoadBalancingV2TargetGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupMatcher+import Stratosphere.ResourceProperties.Tag+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupTargetGroupAttribute+import Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupTargetDescription++-- | Full data type definition for ElasticLoadBalancingV2TargetGroup. See+-- | 'elasticLoadBalancingV2TargetGroup' for a more convenient constructor.+data ElasticLoadBalancingV2TargetGroup =+  ElasticLoadBalancingV2TargetGroup+  { _elasticLoadBalancingV2TargetGroupHealthCheckIntervalSeconds :: Maybe (Val Integer')+  , _elasticLoadBalancingV2TargetGroupHealthCheckPath :: Maybe (Val Text)+  , _elasticLoadBalancingV2TargetGroupHealthCheckPort :: Maybe (Val Text)+  , _elasticLoadBalancingV2TargetGroupHealthCheckProtocol :: Maybe (Val Text)+  , _elasticLoadBalancingV2TargetGroupHealthCheckTimeoutSeconds :: Maybe (Val Integer')+  , _elasticLoadBalancingV2TargetGroupHealthyThresholdCount :: Maybe (Val Integer')+  , _elasticLoadBalancingV2TargetGroupMatcher :: Maybe ElasticLoadBalancingV2TargetGroupMatcher+  , _elasticLoadBalancingV2TargetGroupName :: Maybe (Val Text)+  , _elasticLoadBalancingV2TargetGroupPort :: Val Integer'+  , _elasticLoadBalancingV2TargetGroupProtocol :: Val Text+  , _elasticLoadBalancingV2TargetGroupTags :: Maybe [Tag]+  , _elasticLoadBalancingV2TargetGroupTargetGroupAttributes :: Maybe [ElasticLoadBalancingV2TargetGroupTargetGroupAttribute]+  , _elasticLoadBalancingV2TargetGroupTargets :: Maybe [ElasticLoadBalancingV2TargetGroupTargetDescription]+  , _elasticLoadBalancingV2TargetGroupUnhealthyThresholdCount :: Maybe (Val Integer')+  , _elasticLoadBalancingV2TargetGroupVpcId :: Val Text+  } deriving (Show, Generic)++instance ToJSON ElasticLoadBalancingV2TargetGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++instance FromJSON ElasticLoadBalancingV2TargetGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 34, omitNothingFields = True }++-- | Constructor for 'ElasticLoadBalancingV2TargetGroup' containing required+-- | fields as arguments.+elasticLoadBalancingV2TargetGroup+  :: Val Integer' -- ^ 'elbvtgPort'+  -> Val Text -- ^ 'elbvtgProtocol'+  -> Val Text -- ^ 'elbvtgVpcId'+  -> ElasticLoadBalancingV2TargetGroup+elasticLoadBalancingV2TargetGroup portarg protocolarg vpcIdarg =+  ElasticLoadBalancingV2TargetGroup+  { _elasticLoadBalancingV2TargetGroupHealthCheckIntervalSeconds = Nothing+  , _elasticLoadBalancingV2TargetGroupHealthCheckPath = Nothing+  , _elasticLoadBalancingV2TargetGroupHealthCheckPort = Nothing+  , _elasticLoadBalancingV2TargetGroupHealthCheckProtocol = Nothing+  , _elasticLoadBalancingV2TargetGroupHealthCheckTimeoutSeconds = Nothing+  , _elasticLoadBalancingV2TargetGroupHealthyThresholdCount = Nothing+  , _elasticLoadBalancingV2TargetGroupMatcher = Nothing+  , _elasticLoadBalancingV2TargetGroupName = Nothing+  , _elasticLoadBalancingV2TargetGroupPort = portarg+  , _elasticLoadBalancingV2TargetGroupProtocol = protocolarg+  , _elasticLoadBalancingV2TargetGroupTags = Nothing+  , _elasticLoadBalancingV2TargetGroupTargetGroupAttributes = Nothing+  , _elasticLoadBalancingV2TargetGroupTargets = Nothing+  , _elasticLoadBalancingV2TargetGroupUnhealthyThresholdCount = Nothing+  , _elasticLoadBalancingV2TargetGroupVpcId = vpcIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthcheckintervalseconds+elbvtgHealthCheckIntervalSeconds :: Lens' ElasticLoadBalancingV2TargetGroup (Maybe (Val Integer'))+elbvtgHealthCheckIntervalSeconds = lens _elasticLoadBalancingV2TargetGroupHealthCheckIntervalSeconds (\s a -> s { _elasticLoadBalancingV2TargetGroupHealthCheckIntervalSeconds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthcheckpath+elbvtgHealthCheckPath :: Lens' ElasticLoadBalancingV2TargetGroup (Maybe (Val Text))+elbvtgHealthCheckPath = lens _elasticLoadBalancingV2TargetGroupHealthCheckPath (\s a -> s { _elasticLoadBalancingV2TargetGroupHealthCheckPath = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthcheckport+elbvtgHealthCheckPort :: Lens' ElasticLoadBalancingV2TargetGroup (Maybe (Val Text))+elbvtgHealthCheckPort = lens _elasticLoadBalancingV2TargetGroupHealthCheckPort (\s a -> s { _elasticLoadBalancingV2TargetGroupHealthCheckPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthcheckprotocol+elbvtgHealthCheckProtocol :: Lens' ElasticLoadBalancingV2TargetGroup (Maybe (Val Text))+elbvtgHealthCheckProtocol = lens _elasticLoadBalancingV2TargetGroupHealthCheckProtocol (\s a -> s { _elasticLoadBalancingV2TargetGroupHealthCheckProtocol = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthchecktimeoutseconds+elbvtgHealthCheckTimeoutSeconds :: Lens' ElasticLoadBalancingV2TargetGroup (Maybe (Val Integer'))+elbvtgHealthCheckTimeoutSeconds = lens _elasticLoadBalancingV2TargetGroupHealthCheckTimeoutSeconds (\s a -> s { _elasticLoadBalancingV2TargetGroupHealthCheckTimeoutSeconds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-healthythresholdcount+elbvtgHealthyThresholdCount :: Lens' ElasticLoadBalancingV2TargetGroup (Maybe (Val Integer'))+elbvtgHealthyThresholdCount = lens _elasticLoadBalancingV2TargetGroupHealthyThresholdCount (\s a -> s { _elasticLoadBalancingV2TargetGroupHealthyThresholdCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-matcher+elbvtgMatcher :: Lens' ElasticLoadBalancingV2TargetGroup (Maybe ElasticLoadBalancingV2TargetGroupMatcher)+elbvtgMatcher = lens _elasticLoadBalancingV2TargetGroupMatcher (\s a -> s { _elasticLoadBalancingV2TargetGroupMatcher = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-name+elbvtgName :: Lens' ElasticLoadBalancingV2TargetGroup (Maybe (Val Text))+elbvtgName = lens _elasticLoadBalancingV2TargetGroupName (\s a -> s { _elasticLoadBalancingV2TargetGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-port+elbvtgPort :: Lens' ElasticLoadBalancingV2TargetGroup (Val Integer')+elbvtgPort = lens _elasticLoadBalancingV2TargetGroupPort (\s a -> s { _elasticLoadBalancingV2TargetGroupPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-protocol+elbvtgProtocol :: Lens' ElasticLoadBalancingV2TargetGroup (Val Text)+elbvtgProtocol = lens _elasticLoadBalancingV2TargetGroupProtocol (\s a -> s { _elasticLoadBalancingV2TargetGroupProtocol = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-tags+elbvtgTags :: Lens' ElasticLoadBalancingV2TargetGroup (Maybe [Tag])+elbvtgTags = lens _elasticLoadBalancingV2TargetGroupTags (\s a -> s { _elasticLoadBalancingV2TargetGroupTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-targetgroupattributes+elbvtgTargetGroupAttributes :: Lens' ElasticLoadBalancingV2TargetGroup (Maybe [ElasticLoadBalancingV2TargetGroupTargetGroupAttribute])+elbvtgTargetGroupAttributes = lens _elasticLoadBalancingV2TargetGroupTargetGroupAttributes (\s a -> s { _elasticLoadBalancingV2TargetGroupTargetGroupAttributes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-targets+elbvtgTargets :: Lens' ElasticLoadBalancingV2TargetGroup (Maybe [ElasticLoadBalancingV2TargetGroupTargetDescription])+elbvtgTargets = lens _elasticLoadBalancingV2TargetGroupTargets (\s a -> s { _elasticLoadBalancingV2TargetGroupTargets = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-unhealthythresholdcount+elbvtgUnhealthyThresholdCount :: Lens' ElasticLoadBalancingV2TargetGroup (Maybe (Val Integer'))+elbvtgUnhealthyThresholdCount = lens _elasticLoadBalancingV2TargetGroupUnhealthyThresholdCount (\s a -> s { _elasticLoadBalancingV2TargetGroupUnhealthyThresholdCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-targetgroup.html#cfn-elasticloadbalancingv2-targetgroup-vpcid+elbvtgVpcId :: Lens' ElasticLoadBalancingV2TargetGroup (Val Text)+elbvtgVpcId = lens _elasticLoadBalancingV2TargetGroupVpcId (\s a -> s { _elasticLoadBalancingV2TargetGroupVpcId = a })
+ library-gen/Stratosphere/Resources/ElasticsearchDomain.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html++module Stratosphere.Resources.ElasticsearchDomain where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.ElasticsearchDomainEBSOptions+import Stratosphere.ResourceProperties.ElasticsearchDomainElasticsearchClusterConfig+import Stratosphere.ResourceProperties.ElasticsearchDomainSnapshotOptions+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for ElasticsearchDomain. See+-- | 'elasticsearchDomain' for a more convenient constructor.+data ElasticsearchDomain =+  ElasticsearchDomain+  { _elasticsearchDomainAccessPolicies :: Maybe Object+  , _elasticsearchDomainAdvancedOptions :: Maybe Object+  , _elasticsearchDomainDomainName :: Maybe (Val Text)+  , _elasticsearchDomainEBSOptions :: Maybe ElasticsearchDomainEBSOptions+  , _elasticsearchDomainElasticsearchClusterConfig :: Maybe ElasticsearchDomainElasticsearchClusterConfig+  , _elasticsearchDomainElasticsearchVersion :: Maybe (Val Text)+  , _elasticsearchDomainSnapshotOptions :: Maybe ElasticsearchDomainSnapshotOptions+  , _elasticsearchDomainTags :: Maybe [Tag]+  } deriving (Show, Generic)++instance ToJSON ElasticsearchDomain where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++instance FromJSON ElasticsearchDomain where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++-- | Constructor for 'ElasticsearchDomain' containing required fields as+-- | arguments.+elasticsearchDomain+  :: ElasticsearchDomain+elasticsearchDomain  =+  ElasticsearchDomain+  { _elasticsearchDomainAccessPolicies = Nothing+  , _elasticsearchDomainAdvancedOptions = Nothing+  , _elasticsearchDomainDomainName = Nothing+  , _elasticsearchDomainEBSOptions = Nothing+  , _elasticsearchDomainElasticsearchClusterConfig = Nothing+  , _elasticsearchDomainElasticsearchVersion = Nothing+  , _elasticsearchDomainSnapshotOptions = Nothing+  , _elasticsearchDomainTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-accesspolicies+edAccessPolicies :: Lens' ElasticsearchDomain (Maybe Object)+edAccessPolicies = lens _elasticsearchDomainAccessPolicies (\s a -> s { _elasticsearchDomainAccessPolicies = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-advancedoptions+edAdvancedOptions :: Lens' ElasticsearchDomain (Maybe Object)+edAdvancedOptions = lens _elasticsearchDomainAdvancedOptions (\s a -> s { _elasticsearchDomainAdvancedOptions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-domainname+edDomainName :: Lens' ElasticsearchDomain (Maybe (Val Text))+edDomainName = lens _elasticsearchDomainDomainName (\s a -> s { _elasticsearchDomainDomainName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-ebsoptions+edEBSOptions :: Lens' ElasticsearchDomain (Maybe ElasticsearchDomainEBSOptions)+edEBSOptions = lens _elasticsearchDomainEBSOptions (\s a -> s { _elasticsearchDomainEBSOptions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-elasticsearchclusterconfig+edElasticsearchClusterConfig :: Lens' ElasticsearchDomain (Maybe ElasticsearchDomainElasticsearchClusterConfig)+edElasticsearchClusterConfig = lens _elasticsearchDomainElasticsearchClusterConfig (\s a -> s { _elasticsearchDomainElasticsearchClusterConfig = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-elasticsearchversion+edElasticsearchVersion :: Lens' ElasticsearchDomain (Maybe (Val Text))+edElasticsearchVersion = lens _elasticsearchDomainElasticsearchVersion (\s a -> s { _elasticsearchDomainElasticsearchVersion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-snapshotoptions+edSnapshotOptions :: Lens' ElasticsearchDomain (Maybe ElasticsearchDomainSnapshotOptions)+edSnapshotOptions = lens _elasticsearchDomainSnapshotOptions (\s a -> s { _elasticsearchDomainSnapshotOptions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticsearch-domain.html#cfn-elasticsearch-domain-tags+edTags :: Lens' ElasticsearchDomain (Maybe [Tag])+edTags = lens _elasticsearchDomainTags (\s a -> s { _elasticsearchDomainTags = a })
library-gen/Stratosphere/Resources/EventsRule.hs view
@@ -1,10 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::Events::Rule resource creates a rule that matches incoming--- Amazon CloudWatch Events (CloudWatch Events) events and routes them to one--- or more targets for processing. For more information, see Using CloudWatch--- Events in the Amazon CloudWatch User Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html  module Stratosphere.Resources.EventsRule where @@ -16,9 +13,10 @@  import Stratosphere.Values import Stratosphere.Types+import Stratosphere.ResourceProperties.EventsRuleTarget  -- | Full data type definition for EventsRule. See 'eventsRule' for a more--- convenient constructor.+-- | convenient constructor. data EventsRule =   EventsRule   { _eventsRuleDescription :: Maybe (Val Text)@@ -26,8 +24,8 @@   , _eventsRuleName :: Maybe (Val Text)   , _eventsRuleRoleArn :: Maybe (Val Text)   , _eventsRuleScheduleExpression :: Maybe (Val Text)-  , _eventsRuleState :: Maybe EnabledState-  , _eventsRuleTargets :: Maybe [Object]+  , _eventsRuleState :: Maybe (Val EnabledState)+  , _eventsRuleTargets :: Maybe [EventsRuleTarget]   } deriving (Show, Generic)  instance ToJSON EventsRule where@@ -50,46 +48,30 @@   , _eventsRuleTargets = Nothing   } --- | A description of the rule's purpose.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-description erDescription :: Lens' EventsRule (Maybe (Val Text)) erDescription = lens _eventsRuleDescription (\s a -> s { _eventsRuleDescription = a }) --- | Describes which events CloudWatch Events routes to the specified target.--- These routed events are matched events. For more information, see Events--- and Event Patterns in the Amazon CloudWatch User Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-eventpattern erEventPattern :: Lens' EventsRule (Maybe Object) erEventPattern = lens _eventsRuleEventPattern (\s a -> s { _eventsRuleEventPattern = a }) --- | A name for the rule. If you don't specify a name, AWS CloudFormation--- generates a unique physical ID and uses that ID for the rule name. For more--- information, see Name Type. Important If you specify a name, you cannot do--- updates that require this resource to be replaced. You can still do updates--- that require no or some interruption. If you must replace the resource,--- specify a new name.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-name erName :: Lens' EventsRule (Maybe (Val Text)) erName = lens _eventsRuleName (\s a -> s { _eventsRuleName = a }) --- | The Amazon Resource Name (ARN) of the AWS Identity and Access Management--- (IAM) role that grants CloudWatch Events permission to make calls to target--- services, such as AWS Lambda (Lambda) or Amazon Kinesis streams.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-rolearn erRoleArn :: Lens' EventsRule (Maybe (Val Text)) erRoleArn = lens _eventsRuleRoleArn (\s a -> s { _eventsRuleRoleArn = a }) --- | The schedule or rate (frequency) that determines when CloudWatch Events--- runs the rule. For more information, see Schedule Expression Syntax for--- Rules in the Amazon CloudWatch User Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-scheduleexpression erScheduleExpression :: Lens' EventsRule (Maybe (Val Text)) erScheduleExpression = lens _eventsRuleScheduleExpression (\s a -> s { _eventsRuleScheduleExpression = a }) --- | Indicates whether the rule is enabled. For valid values, see the State--- parameter for the PutRule action in the Amazon CloudWatch Events API--- Reference.-erState :: Lens' EventsRule (Maybe EnabledState)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-state+erState :: Lens' EventsRule (Maybe (Val EnabledState)) erState = lens _eventsRuleState (\s a -> s { _eventsRuleState = a }) --- | The resources, such as Lambda functions or Amazon Kinesis streams, that--- CloudWatch Events routes events to and invokes when the rule is triggered.--- For information about valid targets, see the PutTargets action in the--- Amazon CloudWatch Events API Reference.-erTargets :: Lens' EventsRule (Maybe [Object])+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-events-rule.html#cfn-events-rule-targets+erTargets :: Lens' EventsRule (Maybe [EventsRuleTarget]) erTargets = lens _eventsRuleTargets (\s a -> s { _eventsRuleTargets = a })
+ library-gen/Stratosphere/Resources/GameLiftAlias.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html++module Stratosphere.Resources.GameLiftAlias where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.GameLiftAliasRoutingStrategy++-- | Full data type definition for GameLiftAlias. See 'gameLiftAlias' for a+-- | more convenient constructor.+data GameLiftAlias =+  GameLiftAlias+  { _gameLiftAliasDescription :: Maybe (Val Text)+  , _gameLiftAliasName :: Val Text+  , _gameLiftAliasRoutingStrategy :: GameLiftAliasRoutingStrategy+  } deriving (Show, Generic)++instance ToJSON GameLiftAlias where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++instance FromJSON GameLiftAlias where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++-- | Constructor for 'GameLiftAlias' containing required fields as arguments.+gameLiftAlias+  :: Val Text -- ^ 'glaName'+  -> GameLiftAliasRoutingStrategy -- ^ 'glaRoutingStrategy'+  -> GameLiftAlias+gameLiftAlias namearg routingStrategyarg =+  GameLiftAlias+  { _gameLiftAliasDescription = Nothing+  , _gameLiftAliasName = namearg+  , _gameLiftAliasRoutingStrategy = routingStrategyarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html#cfn-gamelift-alias-description+glaDescription :: Lens' GameLiftAlias (Maybe (Val Text))+glaDescription = lens _gameLiftAliasDescription (\s a -> s { _gameLiftAliasDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html#cfn-gamelift-alias-name+glaName :: Lens' GameLiftAlias (Val Text)+glaName = lens _gameLiftAliasName (\s a -> s { _gameLiftAliasName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-alias.html#cfn-gamelift-alias-routingstrategy+glaRoutingStrategy :: Lens' GameLiftAlias GameLiftAliasRoutingStrategy+glaRoutingStrategy = lens _gameLiftAliasRoutingStrategy (\s a -> s { _gameLiftAliasRoutingStrategy = a })
+ library-gen/Stratosphere/Resources/GameLiftBuild.hs view
@@ -0,0 +1,52 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html++module Stratosphere.Resources.GameLiftBuild where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.GameLiftBuildS3Location++-- | Full data type definition for GameLiftBuild. See 'gameLiftBuild' for a+-- | more convenient constructor.+data GameLiftBuild =+  GameLiftBuild+  { _gameLiftBuildName :: Maybe (Val Text)+  , _gameLiftBuildStorageLocation :: Maybe GameLiftBuildS3Location+  , _gameLiftBuildVersion :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON GameLiftBuild where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++instance FromJSON GameLiftBuild where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++-- | Constructor for 'GameLiftBuild' containing required fields as arguments.+gameLiftBuild+  :: GameLiftBuild+gameLiftBuild  =+  GameLiftBuild+  { _gameLiftBuildName = Nothing+  , _gameLiftBuildStorageLocation = Nothing+  , _gameLiftBuildVersion = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html#cfn-gamelift-build-name+glbName :: Lens' GameLiftBuild (Maybe (Val Text))+glbName = lens _gameLiftBuildName (\s a -> s { _gameLiftBuildName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html#cfn-gamelift-build-storagelocation+glbStorageLocation :: Lens' GameLiftBuild (Maybe GameLiftBuildS3Location)+glbStorageLocation = lens _gameLiftBuildStorageLocation (\s a -> s { _gameLiftBuildStorageLocation = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-build.html#cfn-gamelift-build-version+glbVersion :: Lens' GameLiftBuild (Maybe (Val Text))+glbVersion = lens _gameLiftBuildVersion (\s a -> s { _gameLiftBuildVersion = a })
+ library-gen/Stratosphere/Resources/GameLiftFleet.hs view
@@ -0,0 +1,105 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html++module Stratosphere.Resources.GameLiftFleet where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.GameLiftFleetIpPermission++-- | Full data type definition for GameLiftFleet. See 'gameLiftFleet' for a+-- | more convenient constructor.+data GameLiftFleet =+  GameLiftFleet+  { _gameLiftFleetBuildId :: Val Text+  , _gameLiftFleetDescription :: Maybe (Val Text)+  , _gameLiftFleetDesiredEC2Instances :: Val Integer'+  , _gameLiftFleetEC2InboundPermissions :: Maybe [GameLiftFleetIpPermission]+  , _gameLiftFleetEC2InstanceType :: Val Text+  , _gameLiftFleetLogPaths :: Maybe [Val Text]+  , _gameLiftFleetMaxSize :: Maybe (Val Integer')+  , _gameLiftFleetMinSize :: Maybe (Val Integer')+  , _gameLiftFleetName :: Val Text+  , _gameLiftFleetServerLaunchParameters :: Maybe (Val Text)+  , _gameLiftFleetServerLaunchPath :: Val Text+  } deriving (Show, Generic)++instance ToJSON GameLiftFleet where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++instance FromJSON GameLiftFleet where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++-- | Constructor for 'GameLiftFleet' containing required fields as arguments.+gameLiftFleet+  :: Val Text -- ^ 'glfBuildId'+  -> Val Integer' -- ^ 'glfDesiredEC2Instances'+  -> Val Text -- ^ 'glfEC2InstanceType'+  -> Val Text -- ^ 'glfName'+  -> Val Text -- ^ 'glfServerLaunchPath'+  -> GameLiftFleet+gameLiftFleet buildIdarg desiredEC2Instancesarg eC2InstanceTypearg namearg serverLaunchPatharg =+  GameLiftFleet+  { _gameLiftFleetBuildId = buildIdarg+  , _gameLiftFleetDescription = Nothing+  , _gameLiftFleetDesiredEC2Instances = desiredEC2Instancesarg+  , _gameLiftFleetEC2InboundPermissions = Nothing+  , _gameLiftFleetEC2InstanceType = eC2InstanceTypearg+  , _gameLiftFleetLogPaths = Nothing+  , _gameLiftFleetMaxSize = Nothing+  , _gameLiftFleetMinSize = Nothing+  , _gameLiftFleetName = namearg+  , _gameLiftFleetServerLaunchParameters = Nothing+  , _gameLiftFleetServerLaunchPath = serverLaunchPatharg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-buildid+glfBuildId :: Lens' GameLiftFleet (Val Text)+glfBuildId = lens _gameLiftFleetBuildId (\s a -> s { _gameLiftFleetBuildId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-description+glfDescription :: Lens' GameLiftFleet (Maybe (Val Text))+glfDescription = lens _gameLiftFleetDescription (\s a -> s { _gameLiftFleetDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-desiredec2instances+glfDesiredEC2Instances :: Lens' GameLiftFleet (Val Integer')+glfDesiredEC2Instances = lens _gameLiftFleetDesiredEC2Instances (\s a -> s { _gameLiftFleetDesiredEC2Instances = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-ec2inboundpermissions+glfEC2InboundPermissions :: Lens' GameLiftFleet (Maybe [GameLiftFleetIpPermission])+glfEC2InboundPermissions = lens _gameLiftFleetEC2InboundPermissions (\s a -> s { _gameLiftFleetEC2InboundPermissions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-ec2instancetype+glfEC2InstanceType :: Lens' GameLiftFleet (Val Text)+glfEC2InstanceType = lens _gameLiftFleetEC2InstanceType (\s a -> s { _gameLiftFleetEC2InstanceType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-logpaths+glfLogPaths :: Lens' GameLiftFleet (Maybe [Val Text])+glfLogPaths = lens _gameLiftFleetLogPaths (\s a -> s { _gameLiftFleetLogPaths = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-maxsize+glfMaxSize :: Lens' GameLiftFleet (Maybe (Val Integer'))+glfMaxSize = lens _gameLiftFleetMaxSize (\s a -> s { _gameLiftFleetMaxSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-minsize+glfMinSize :: Lens' GameLiftFleet (Maybe (Val Integer'))+glfMinSize = lens _gameLiftFleetMinSize (\s a -> s { _gameLiftFleetMinSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-name+glfName :: Lens' GameLiftFleet (Val Text)+glfName = lens _gameLiftFleetName (\s a -> s { _gameLiftFleetName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-serverlaunchparameters+glfServerLaunchParameters :: Lens' GameLiftFleet (Maybe (Val Text))+glfServerLaunchParameters = lens _gameLiftFleetServerLaunchParameters (\s a -> s { _gameLiftFleetServerLaunchParameters = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html#cfn-gamelift-fleet-serverlaunchpath+glfServerLaunchPath :: Lens' GameLiftFleet (Val Text)+glfServerLaunchPath = lens _gameLiftFleetServerLaunchPath (\s a -> s { _gameLiftFleetServerLaunchPath = a })
− library-gen/Stratosphere/Resources/Group.hs
@@ -1,65 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::IAM::Group type creates an Identity and Access Management (IAM)--- group. This type supports updates. For more information about updating--- stacks, see AWS CloudFormation Stacks Updates.--module Stratosphere.Resources.Group where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.IAMPolicies---- | Full data type definition for Group. See 'group' for a more convenient--- constructor.-data Group =-  Group-  { _groupGroupName :: Maybe (Val Text)-  , _groupManagedPolicyArns :: Maybe [Val Text]-  , _groupPath :: Maybe (Val Text)-  , _groupPolicies :: Maybe [IAMPolicies]-  } deriving (Show, Generic)--instance ToJSON Group where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 6, omitNothingFields = True }--instance FromJSON Group where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 6, omitNothingFields = True }---- | Constructor for 'Group' containing required fields as arguments.-group-  :: Group-group  =-  Group-  { _groupGroupName = Nothing-  , _groupManagedPolicyArns = Nothing-  , _groupPath = Nothing-  , _groupPolicies = Nothing-  }---- | A name for the IAM group. For valid values, see the GroupName parameter--- for the CreateGroup action in the IAM API Reference. If you don't specify a--- name, AWS CloudFormation generates a unique physical ID and uses that ID--- for the group name.-gGroupName :: Lens' Group (Maybe (Val Text))-gGroupName = lens _groupGroupName (\s a -> s { _groupGroupName = a })---- | One or more managed policy ARNs to attach to this group.-gManagedPolicyArns :: Lens' Group (Maybe [Val Text])-gManagedPolicyArns = lens _groupManagedPolicyArns (\s a -> s { _groupManagedPolicyArns = a })---- | The path to the group. For more information about paths, see Identifiers--- for IAM Entities in Using IAM.-gPath :: Lens' Group (Maybe (Val Text))-gPath = lens _groupPath (\s a -> s { _groupPath = a })---- | The policies to associate with this group. For information about--- policies, see Overview of Policies in Using IAM.-gPolicies :: Lens' Group (Maybe [IAMPolicies])-gPolicies = lens _groupPolicies (\s a -> s { _groupPolicies = a })
+ library-gen/Stratosphere/Resources/IAMAccessKey.hs view
@@ -0,0 +1,53 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html++module Stratosphere.Resources.IAMAccessKey where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IAMAccessKey. See 'iamAccessKey' for a more+-- | convenient constructor.+data IAMAccessKey =+  IAMAccessKey+  { _iAMAccessKeySerial :: Maybe (Val Integer')+  , _iAMAccessKeyStatus :: Maybe (Val Text)+  , _iAMAccessKeyUserName :: Val Text+  } deriving (Show, Generic)++instance ToJSON IAMAccessKey where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }++instance FromJSON IAMAccessKey where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }++-- | Constructor for 'IAMAccessKey' containing required fields as arguments.+iamAccessKey+  :: Val Text -- ^ 'iamakUserName'+  -> IAMAccessKey+iamAccessKey userNamearg =+  IAMAccessKey+  { _iAMAccessKeySerial = Nothing+  , _iAMAccessKeyStatus = Nothing+  , _iAMAccessKeyUserName = userNamearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html#cfn-iam-accesskey-serial+iamakSerial :: Lens' IAMAccessKey (Maybe (Val Integer'))+iamakSerial = lens _iAMAccessKeySerial (\s a -> s { _iAMAccessKeySerial = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html#cfn-iam-accesskey-status+iamakStatus :: Lens' IAMAccessKey (Maybe (Val Text))+iamakStatus = lens _iAMAccessKeyStatus (\s a -> s { _iAMAccessKeyStatus = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-accesskey.html#cfn-iam-accesskey-username+iamakUserName :: Lens' IAMAccessKey (Val Text)+iamakUserName = lens _iAMAccessKeyUserName (\s a -> s { _iAMAccessKeyUserName = a })
+ library-gen/Stratosphere/Resources/IAMGroup.hs view
@@ -0,0 +1,58 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html++module Stratosphere.Resources.IAMGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.IAMGroupPolicy++-- | Full data type definition for IAMGroup. See 'iamGroup' for a more+-- | convenient constructor.+data IAMGroup =+  IAMGroup+  { _iAMGroupGroupName :: Maybe (Val Text)+  , _iAMGroupManagedPolicyArns :: Maybe [Val Text]+  , _iAMGroupPath :: Maybe (Val Text)+  , _iAMGroupPolicies :: Maybe [IAMGroupPolicy]+  } deriving (Show, Generic)++instance ToJSON IAMGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 9, omitNothingFields = True }++instance FromJSON IAMGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 9, omitNothingFields = True }++-- | Constructor for 'IAMGroup' containing required fields as arguments.+iamGroup+  :: IAMGroup+iamGroup  =+  IAMGroup+  { _iAMGroupGroupName = Nothing+  , _iAMGroupManagedPolicyArns = Nothing+  , _iAMGroupPath = Nothing+  , _iAMGroupPolicies = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-groupname+iamgGroupName :: Lens' IAMGroup (Maybe (Val Text))+iamgGroupName = lens _iAMGroupGroupName (\s a -> s { _iAMGroupGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-managepolicyarns+iamgManagedPolicyArns :: Lens' IAMGroup (Maybe [Val Text])+iamgManagedPolicyArns = lens _iAMGroupManagedPolicyArns (\s a -> s { _iAMGroupManagedPolicyArns = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-path+iamgPath :: Lens' IAMGroup (Maybe (Val Text))+iamgPath = lens _iAMGroupPath (\s a -> s { _iAMGroupPath = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-group.html#cfn-iam-group-policies+iamgPolicies :: Lens' IAMGroup (Maybe [IAMGroupPolicy])+iamgPolicies = lens _iAMGroupPolicies (\s a -> s { _iAMGroupPolicies = a })
+ library-gen/Stratosphere/Resources/IAMInstanceProfile.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html++module Stratosphere.Resources.IAMInstanceProfile where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IAMInstanceProfile. See+-- | 'iamInstanceProfile' for a more convenient constructor.+data IAMInstanceProfile =+  IAMInstanceProfile+  { _iAMInstanceProfilePath :: Val Text+  , _iAMInstanceProfileRoles :: [Val Text]+  } deriving (Show, Generic)++instance ToJSON IAMInstanceProfile where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++instance FromJSON IAMInstanceProfile where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++-- | Constructor for 'IAMInstanceProfile' containing required fields as+-- | arguments.+iamInstanceProfile+  :: Val Text -- ^ 'iamipPath'+  -> [Val Text] -- ^ 'iamipRoles'+  -> IAMInstanceProfile+iamInstanceProfile patharg rolesarg =+  IAMInstanceProfile+  { _iAMInstanceProfilePath = patharg+  , _iAMInstanceProfileRoles = rolesarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html#cfn-iam-instanceprofile-path+iamipPath :: Lens' IAMInstanceProfile (Val Text)+iamipPath = lens _iAMInstanceProfilePath (\s a -> s { _iAMInstanceProfilePath = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-instanceprofile.html#cfn-iam-instanceprofile-roles+iamipRoles :: Lens' IAMInstanceProfile [Val Text]+iamipRoles = lens _iAMInstanceProfileRoles (\s a -> s { _iAMInstanceProfileRoles = a })
+ library-gen/Stratosphere/Resources/IAMManagedPolicy.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html++module Stratosphere.Resources.IAMManagedPolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IAMManagedPolicy. See 'iamManagedPolicy'+-- | for a more convenient constructor.+data IAMManagedPolicy =+  IAMManagedPolicy+  { _iAMManagedPolicyDescription :: Maybe (Val Text)+  , _iAMManagedPolicyGroups :: Maybe [Val Text]+  , _iAMManagedPolicyPath :: Maybe (Val Text)+  , _iAMManagedPolicyPolicyDocument :: Maybe Object+  , _iAMManagedPolicyRoles :: Maybe [Val Text]+  , _iAMManagedPolicyUsers :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON IAMManagedPolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++instance FromJSON IAMManagedPolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++-- | Constructor for 'IAMManagedPolicy' containing required fields as+-- | arguments.+iamManagedPolicy+  :: IAMManagedPolicy+iamManagedPolicy  =+  IAMManagedPolicy+  { _iAMManagedPolicyDescription = Nothing+  , _iAMManagedPolicyGroups = Nothing+  , _iAMManagedPolicyPath = Nothing+  , _iAMManagedPolicyPolicyDocument = Nothing+  , _iAMManagedPolicyRoles = Nothing+  , _iAMManagedPolicyUsers = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-description+iammpDescription :: Lens' IAMManagedPolicy (Maybe (Val Text))+iammpDescription = lens _iAMManagedPolicyDescription (\s a -> s { _iAMManagedPolicyDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-groups+iammpGroups :: Lens' IAMManagedPolicy (Maybe [Val Text])+iammpGroups = lens _iAMManagedPolicyGroups (\s a -> s { _iAMManagedPolicyGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-ec2-dhcpoptions-path+iammpPath :: Lens' IAMManagedPolicy (Maybe (Val Text))+iammpPath = lens _iAMManagedPolicyPath (\s a -> s { _iAMManagedPolicyPath = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-policydocument+iammpPolicyDocument :: Lens' IAMManagedPolicy (Maybe Object)+iammpPolicyDocument = lens _iAMManagedPolicyPolicyDocument (\s a -> s { _iAMManagedPolicyPolicyDocument = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-roles+iammpRoles :: Lens' IAMManagedPolicy (Maybe [Val Text])+iammpRoles = lens _iAMManagedPolicyRoles (\s a -> s { _iAMManagedPolicyRoles = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-managedpolicy.html#cfn-iam-managedpolicy-users+iammpUsers :: Lens' IAMManagedPolicy (Maybe [Val Text])+iammpUsers = lens _iAMManagedPolicyUsers (\s a -> s { _iAMManagedPolicyUsers = a })
+ library-gen/Stratosphere/Resources/IAMPolicy.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html++module Stratosphere.Resources.IAMPolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IAMPolicy. See 'iamPolicy' for a more+-- | convenient constructor.+data IAMPolicy =+  IAMPolicy+  { _iAMPolicyGroups :: Maybe [Val Text]+  , _iAMPolicyPolicyDocument :: Object+  , _iAMPolicyPolicyName :: Val Text+  , _iAMPolicyRoles :: Maybe [Val Text]+  , _iAMPolicyUsers :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON IAMPolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }++instance FromJSON IAMPolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }++-- | Constructor for 'IAMPolicy' containing required fields as arguments.+iamPolicy+  :: Object -- ^ 'iampPolicyDocument'+  -> Val Text -- ^ 'iampPolicyName'+  -> IAMPolicy+iamPolicy policyDocumentarg policyNamearg =+  IAMPolicy+  { _iAMPolicyGroups = Nothing+  , _iAMPolicyPolicyDocument = policyDocumentarg+  , _iAMPolicyPolicyName = policyNamearg+  , _iAMPolicyRoles = Nothing+  , _iAMPolicyUsers = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-groups+iampGroups :: Lens' IAMPolicy (Maybe [Val Text])+iampGroups = lens _iAMPolicyGroups (\s a -> s { _iAMPolicyGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-policydocument+iampPolicyDocument :: Lens' IAMPolicy Object+iampPolicyDocument = lens _iAMPolicyPolicyDocument (\s a -> s { _iAMPolicyPolicyDocument = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-policyname+iampPolicyName :: Lens' IAMPolicy (Val Text)+iampPolicyName = lens _iAMPolicyPolicyName (\s a -> s { _iAMPolicyPolicyName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-roles+iampRoles :: Lens' IAMPolicy (Maybe [Val Text])+iampRoles = lens _iAMPolicyRoles (\s a -> s { _iAMPolicyRoles = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-policy.html#cfn-iam-policy-users+iampUsers :: Lens' IAMPolicy (Maybe [Val Text])+iampUsers = lens _iAMPolicyUsers (\s a -> s { _iAMPolicyUsers = a })
library-gen/Stratosphere/Resources/IAMRole.hs view
@@ -1,11 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | Creates an AWS Identity and Access Management (IAM) role. An IAM role can--- be used to enable applications running on an Amazon EC2 instance to--- securely access your AWS resources. For more information about IAM roles,--- see Working with Roles in the AWS Identity and Access Management User--- Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html  module Stratosphere.Resources.IAMRole where @@ -16,16 +12,16 @@ import GHC.Generics  import Stratosphere.Values-import Stratosphere.ResourceProperties.IAMPolicies+import Stratosphere.ResourceProperties.IAMRolePolicy  -- | Full data type definition for IAMRole. See 'iamRole' for a more--- convenient constructor.+-- | convenient constructor. data IAMRole =   IAMRole   { _iAMRoleAssumeRolePolicyDocument :: Object   , _iAMRoleManagedPolicyArns :: Maybe [Val Text]   , _iAMRolePath :: Maybe (Val Text)-  , _iAMRolePolicies :: Maybe [IAMPolicies]+  , _iAMRolePolicies :: Maybe [IAMRolePolicy]   , _iAMRoleRoleName :: Maybe (Val Text)   } deriving (Show, Generic) @@ -48,38 +44,22 @@   , _iAMRoleRoleName = Nothing   } --- | The IAM assume role policy that is associated with this role.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-assumerolepolicydocument iamrAssumeRolePolicyDocument :: Lens' IAMRole Object iamrAssumeRolePolicyDocument = lens _iAMRoleAssumeRolePolicyDocument (\s a -> s { _iAMRoleAssumeRolePolicyDocument = a }) --- | One or more managed policy ARNs to attach to this role.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-managepolicyarns iamrManagedPolicyArns :: Lens' IAMRole (Maybe [Val Text]) iamrManagedPolicyArns = lens _iAMRoleManagedPolicyArns (\s a -> s { _iAMRoleManagedPolicyArns = a }) --- | The path associated with this role. For information about IAM paths, see--- Friendly Names and Paths in IAM User Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-path iamrPath :: Lens' IAMRole (Maybe (Val Text)) iamrPath = lens _iAMRolePath (\s a -> s { _iAMRolePath = a }) --- | The policies to associate with this role. Policies can also be specified--- externally. For sample templates that demonstrates both embedded and--- external policies, see Template Examples. If you specify multiple polices,--- specify unique values for the policy name. If you don't, updates to the IAM--- role will fail. Note If an external policy (such as AWS::IAM::Policy or--- AWS::IAM::ManagedPolicy) has a Ref to a role and if a resource (such as--- AWS::ECS::Service) also has a Ref to the same role, add a DependsOn--- attribute to the resource so that the resource depends on the external--- policy. This dependency ensures that the role's policy is available--- throughout the resource's lifecycle. For example, when you delete a stack--- with an AWS::ECS::Service resource, the DependsOn attribute ensures that--- the AWS::ECS::Service resource can complete its deletion before its role's--- policy is deleted.-iamrPolicies :: Lens' IAMRole (Maybe [IAMPolicies])+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-policies+iamrPolicies :: Lens' IAMRole (Maybe [IAMRolePolicy]) iamrPolicies = lens _iAMRolePolicies (\s a -> s { _iAMRolePolicies = a }) --- | A name for the IAM role. For valid values, see the RoleName parameter for--- the CreateRole action in the IAM API Reference. If you don't specify a--- name, AWS CloudFormation generates a unique physical ID and uses that ID--- for the role name.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iam-role.html#cfn-iam-role-rolename iamrRoleName :: Lens' IAMRole (Maybe (Val Text)) iamrRoleName = lens _iAMRoleRoleName (\s a -> s { _iAMRoleRoleName = a })
+ library-gen/Stratosphere/Resources/IAMUser.hs view
@@ -0,0 +1,71 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html++module Stratosphere.Resources.IAMUser where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.IAMUserLoginProfile+import Stratosphere.ResourceProperties.IAMUserPolicy++-- | Full data type definition for IAMUser. See 'iamUser' for a more+-- | convenient constructor.+data IAMUser =+  IAMUser+  { _iAMUserGroups :: Maybe [Val Text]+  , _iAMUserLoginProfile :: Maybe IAMUserLoginProfile+  , _iAMUserManagedPolicyArns :: Maybe [Val Text]+  , _iAMUserPath :: Maybe (Val Text)+  , _iAMUserPolicies :: Maybe [IAMUserPolicy]+  , _iAMUserUserName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON IAMUser where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 8, omitNothingFields = True }++instance FromJSON IAMUser where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 8, omitNothingFields = True }++-- | Constructor for 'IAMUser' containing required fields as arguments.+iamUser+  :: IAMUser+iamUser  =+  IAMUser+  { _iAMUserGroups = Nothing+  , _iAMUserLoginProfile = Nothing+  , _iAMUserManagedPolicyArns = Nothing+  , _iAMUserPath = Nothing+  , _iAMUserPolicies = Nothing+  , _iAMUserUserName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-groups+iamuGroups :: Lens' IAMUser (Maybe [Val Text])+iamuGroups = lens _iAMUserGroups (\s a -> s { _iAMUserGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-loginprofile+iamuLoginProfile :: Lens' IAMUser (Maybe IAMUserLoginProfile)+iamuLoginProfile = lens _iAMUserLoginProfile (\s a -> s { _iAMUserLoginProfile = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-managepolicyarns+iamuManagedPolicyArns :: Lens' IAMUser (Maybe [Val Text])+iamuManagedPolicyArns = lens _iAMUserManagedPolicyArns (\s a -> s { _iAMUserManagedPolicyArns = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-path+iamuPath :: Lens' IAMUser (Maybe (Val Text))+iamuPath = lens _iAMUserPath (\s a -> s { _iAMUserPath = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-policies+iamuPolicies :: Lens' IAMUser (Maybe [IAMUserPolicy])+iamuPolicies = lens _iAMUserPolicies (\s a -> s { _iAMUserPolicies = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-user.html#cfn-iam-user-username+iamuUserName :: Lens' IAMUser (Maybe (Val Text))+iamuUserName = lens _iAMUserUserName (\s a -> s { _iAMUserUserName = a })
+ library-gen/Stratosphere/Resources/IAMUserToGroupAddition.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html++module Stratosphere.Resources.IAMUserToGroupAddition where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IAMUserToGroupAddition. See+-- | 'iamUserToGroupAddition' for a more convenient constructor.+data IAMUserToGroupAddition =+  IAMUserToGroupAddition+  { _iAMUserToGroupAdditionGroupName :: Val Text+  , _iAMUserToGroupAdditionUsers :: [Val Text]+  } deriving (Show, Generic)++instance ToJSON IAMUserToGroupAddition where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++instance FromJSON IAMUserToGroupAddition where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++-- | Constructor for 'IAMUserToGroupAddition' containing required fields as+-- | arguments.+iamUserToGroupAddition+  :: Val Text -- ^ 'iamutgaGroupName'+  -> [Val Text] -- ^ 'iamutgaUsers'+  -> IAMUserToGroupAddition+iamUserToGroupAddition groupNamearg usersarg =+  IAMUserToGroupAddition+  { _iAMUserToGroupAdditionGroupName = groupNamearg+  , _iAMUserToGroupAdditionUsers = usersarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html#cfn-iam-addusertogroup-groupname+iamutgaGroupName :: Lens' IAMUserToGroupAddition (Val Text)+iamutgaGroupName = lens _iAMUserToGroupAdditionGroupName (\s a -> s { _iAMUserToGroupAdditionGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iam-addusertogroup.html#cfn-iam-addusertogroup-users+iamutgaUsers :: Lens' IAMUserToGroupAddition [Val Text]+iamutgaUsers = lens _iAMUserToGroupAdditionUsers (\s a -> s { _iAMUserToGroupAdditionUsers = a })
− library-gen/Stratosphere/Resources/InstanceProfile.hs
@@ -1,54 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Creates an AWS Identity and Access Management (IAM) Instance Profile that--- can be used with IAM Roles for EC2 Instances. For more information about--- IAM roles, see Working with Roles in the AWS Identity and Access Management--- User Guide.--module Stratosphere.Resources.InstanceProfile where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for InstanceProfile. See 'instanceProfile' for--- a more convenient constructor.-data InstanceProfile =-  InstanceProfile-  { _instanceProfilePath :: Val Text-  , _instanceProfileRoles :: [Val Text]-  } deriving (Show, Generic)--instance ToJSON InstanceProfile where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }--instance FromJSON InstanceProfile where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }---- | Constructor for 'InstanceProfile' containing required fields as--- arguments.-instanceProfile-  :: Val Text -- ^ 'ipPath'-  -> [Val Text] -- ^ 'ipRoles'-  -> InstanceProfile-instanceProfile patharg rolesarg =-  InstanceProfile-  { _instanceProfilePath = patharg-  , _instanceProfileRoles = rolesarg-  }---- | The path associated with this IAM instance profile. For information about--- IAM paths, see Friendly Names and Paths in the AWS Identity and Access--- Management User Guide.-ipPath :: Lens' InstanceProfile (Val Text)-ipPath = lens _instanceProfilePath (\s a -> s { _instanceProfilePath = a })---- | The roles associated with this IAM instance profile.-ipRoles :: Lens' InstanceProfile [Val Text]-ipRoles = lens _instanceProfileRoles (\s a -> s { _instanceProfileRoles = a })
− library-gen/Stratosphere/Resources/InternetGateway.hs
@@ -1,42 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Creates a new Internet gateway in your AWS account. After creating the--- Internet gateway, you then attach it to a VPC.--module Stratosphere.Resources.InternetGateway where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.ResourceTag---- | Full data type definition for InternetGateway. See 'internetGateway' for--- a more convenient constructor.-data InternetGateway =-  InternetGateway-  { _internetGatewayTags :: Maybe [ResourceTag]-  } deriving (Show, Generic)--instance ToJSON InternetGateway where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }--instance FromJSON InternetGateway where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }---- | Constructor for 'InternetGateway' containing required fields as--- arguments.-internetGateway-  :: InternetGateway-internetGateway  =-  InternetGateway-  { _internetGatewayTags = Nothing-  }---- | An arbitrary set of tags (key–value pairs) for this resource.-igTags :: Lens' InternetGateway (Maybe [ResourceTag])-igTags = lens _internetGatewayTags (\s a -> s { _internetGatewayTags = a })
+ library-gen/Stratosphere/Resources/IoTCertificate.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html++module Stratosphere.Resources.IoTCertificate where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTCertificate. See 'ioTCertificate' for a+-- | more convenient constructor.+data IoTCertificate =+  IoTCertificate+  { _ioTCertificateCertificateSigningRequest :: Val Text+  , _ioTCertificateStatus :: Val Text+  } deriving (Show, Generic)++instance ToJSON IoTCertificate where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++instance FromJSON IoTCertificate where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++-- | Constructor for 'IoTCertificate' containing required fields as arguments.+ioTCertificate+  :: Val Text -- ^ 'itcCertificateSigningRequest'+  -> Val Text -- ^ 'itcStatus'+  -> IoTCertificate+ioTCertificate certificateSigningRequestarg statusarg =+  IoTCertificate+  { _ioTCertificateCertificateSigningRequest = certificateSigningRequestarg+  , _ioTCertificateStatus = statusarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-certificatesigningrequest+itcCertificateSigningRequest :: Lens' IoTCertificate (Val Text)+itcCertificateSigningRequest = lens _ioTCertificateCertificateSigningRequest (\s a -> s { _ioTCertificateCertificateSigningRequest = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-certificate.html#cfn-iot-certificate-status+itcStatus :: Lens' IoTCertificate (Val Text)+itcStatus = lens _ioTCertificateStatus (\s a -> s { _ioTCertificateStatus = a })
+ library-gen/Stratosphere/Resources/IoTPolicy.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html++module Stratosphere.Resources.IoTPolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTPolicy. See 'ioTPolicy' for a more+-- | convenient constructor.+data IoTPolicy =+  IoTPolicy+  { _ioTPolicyPolicyDocument :: Object+  , _ioTPolicyPolicyName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON IoTPolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }++instance FromJSON IoTPolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }++-- | Constructor for 'IoTPolicy' containing required fields as arguments.+ioTPolicy+  :: Object -- ^ 'itpPolicyDocument'+  -> IoTPolicy+ioTPolicy policyDocumentarg =+  IoTPolicy+  { _ioTPolicyPolicyDocument = policyDocumentarg+  , _ioTPolicyPolicyName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html#cfn-iot-policy-policydocument+itpPolicyDocument :: Lens' IoTPolicy Object+itpPolicyDocument = lens _ioTPolicyPolicyDocument (\s a -> s { _ioTPolicyPolicyDocument = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policy.html#cfn-iot-policy-policyname+itpPolicyName :: Lens' IoTPolicy (Maybe (Val Text))+itpPolicyName = lens _ioTPolicyPolicyName (\s a -> s { _ioTPolicyPolicyName = a })
+ library-gen/Stratosphere/Resources/IoTPolicyPrincipalAttachment.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html++module Stratosphere.Resources.IoTPolicyPrincipalAttachment where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTPolicyPrincipalAttachment. See+-- | 'ioTPolicyPrincipalAttachment' for a more convenient constructor.+data IoTPolicyPrincipalAttachment =+  IoTPolicyPrincipalAttachment+  { _ioTPolicyPrincipalAttachmentPolicyName :: Val Text+  , _ioTPolicyPrincipalAttachmentPrincipal :: Val Text+  } deriving (Show, Generic)++instance ToJSON IoTPolicyPrincipalAttachment where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++instance FromJSON IoTPolicyPrincipalAttachment where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++-- | Constructor for 'IoTPolicyPrincipalAttachment' containing required fields+-- | as arguments.+ioTPolicyPrincipalAttachment+  :: Val Text -- ^ 'itppaPolicyName'+  -> Val Text -- ^ 'itppaPrincipal'+  -> IoTPolicyPrincipalAttachment+ioTPolicyPrincipalAttachment policyNamearg principalarg =+  IoTPolicyPrincipalAttachment+  { _ioTPolicyPrincipalAttachmentPolicyName = policyNamearg+  , _ioTPolicyPrincipalAttachmentPrincipal = principalarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html#cfn-iot-policyprincipalattachment-policyname+itppaPolicyName :: Lens' IoTPolicyPrincipalAttachment (Val Text)+itppaPolicyName = lens _ioTPolicyPrincipalAttachmentPolicyName (\s a -> s { _ioTPolicyPrincipalAttachmentPolicyName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-policyprincipalattachment.html#cfn-iot-policyprincipalattachment-principal+itppaPrincipal :: Lens' IoTPolicyPrincipalAttachment (Val Text)+itppaPrincipal = lens _ioTPolicyPrincipalAttachmentPrincipal (\s a -> s { _ioTPolicyPrincipalAttachmentPrincipal = a })
+ library-gen/Stratosphere/Resources/IoTThing.hs view
@@ -0,0 +1,46 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html++module Stratosphere.Resources.IoTThing where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.IoTThingAttributePayload++-- | Full data type definition for IoTThing. See 'ioTThing' for a more+-- | convenient constructor.+data IoTThing =+  IoTThing+  { _ioTThingAttributePayload :: Maybe IoTThingAttributePayload+  , _ioTThingThingName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON IoTThing where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 9, omitNothingFields = True }++instance FromJSON IoTThing where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 9, omitNothingFields = True }++-- | Constructor for 'IoTThing' containing required fields as arguments.+ioTThing+  :: IoTThing+ioTThing  =+  IoTThing+  { _ioTThingAttributePayload = Nothing+  , _ioTThingThingName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html#cfn-iot-thing-attributepayload+ittAttributePayload :: Lens' IoTThing (Maybe IoTThingAttributePayload)+ittAttributePayload = lens _ioTThingAttributePayload (\s a -> s { _ioTThingAttributePayload = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thing.html#cfn-iot-thing-thingname+ittThingName :: Lens' IoTThing (Maybe (Val Text))+ittThingName = lens _ioTThingThingName (\s a -> s { _ioTThingThingName = a })
+ library-gen/Stratosphere/Resources/IoTThingPrincipalAttachment.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html++module Stratosphere.Resources.IoTThingPrincipalAttachment where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for IoTThingPrincipalAttachment. See+-- | 'ioTThingPrincipalAttachment' for a more convenient constructor.+data IoTThingPrincipalAttachment =+  IoTThingPrincipalAttachment+  { _ioTThingPrincipalAttachmentPrincipal :: Val Text+  , _ioTThingPrincipalAttachmentThingName :: Val Text+  } deriving (Show, Generic)++instance ToJSON IoTThingPrincipalAttachment where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++instance FromJSON IoTThingPrincipalAttachment where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }++-- | Constructor for 'IoTThingPrincipalAttachment' containing required fields+-- | as arguments.+ioTThingPrincipalAttachment+  :: Val Text -- ^ 'ittpaPrincipal'+  -> Val Text -- ^ 'ittpaThingName'+  -> IoTThingPrincipalAttachment+ioTThingPrincipalAttachment principalarg thingNamearg =+  IoTThingPrincipalAttachment+  { _ioTThingPrincipalAttachmentPrincipal = principalarg+  , _ioTThingPrincipalAttachmentThingName = thingNamearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html#cfn-iot-thingprincipalattachment-principal+ittpaPrincipal :: Lens' IoTThingPrincipalAttachment (Val Text)+ittpaPrincipal = lens _ioTThingPrincipalAttachmentPrincipal (\s a -> s { _ioTThingPrincipalAttachmentPrincipal = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-thingprincipalattachment.html#cfn-iot-thingprincipalattachment-thingname+ittpaThingName :: Lens' IoTThingPrincipalAttachment (Val Text)+ittpaThingName = lens _ioTThingPrincipalAttachmentThingName (\s a -> s { _ioTThingPrincipalAttachmentThingName = a })
+ library-gen/Stratosphere/Resources/IoTTopicRule.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html++module Stratosphere.Resources.IoTTopicRule where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.IoTTopicRuleTopicRulePayload++-- | Full data type definition for IoTTopicRule. See 'ioTTopicRule' for a more+-- | convenient constructor.+data IoTTopicRule =+  IoTTopicRule+  { _ioTTopicRuleRuleName :: Maybe (Val Text)+  , _ioTTopicRuleTopicRulePayload :: IoTTopicRuleTopicRulePayload+  } deriving (Show, Generic)++instance ToJSON IoTTopicRule where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }++instance FromJSON IoTTopicRule where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }++-- | Constructor for 'IoTTopicRule' containing required fields as arguments.+ioTTopicRule+  :: IoTTopicRuleTopicRulePayload -- ^ 'ittrTopicRulePayload'+  -> IoTTopicRule+ioTTopicRule topicRulePayloadarg =+  IoTTopicRule+  { _ioTTopicRuleRuleName = Nothing+  , _ioTTopicRuleTopicRulePayload = topicRulePayloadarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html#cfn-iot-topicrule-rulename+ittrRuleName :: Lens' IoTTopicRule (Maybe (Val Text))+ittrRuleName = lens _ioTTopicRuleRuleName (\s a -> s { _ioTTopicRuleRuleName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iot-topicrule.html#cfn-iot-topicrule-topicrulepayload+ittrTopicRulePayload :: Lens' IoTTopicRule IoTTopicRuleTopicRulePayload+ittrTopicRulePayload = lens _ioTTopicRuleTopicRulePayload (\s a -> s { _ioTTopicRuleTopicRulePayload = a })
+ library-gen/Stratosphere/Resources/KMSAlias.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html++module Stratosphere.Resources.KMSAlias where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for KMSAlias. See 'kmsAlias' for a more+-- | convenient constructor.+data KMSAlias =+  KMSAlias+  { _kMSAliasAliasName :: Val Text+  , _kMSAliasTargetKeyId :: Val Text+  } deriving (Show, Generic)++instance ToJSON KMSAlias where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 9, omitNothingFields = True }++instance FromJSON KMSAlias where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 9, omitNothingFields = True }++-- | Constructor for 'KMSAlias' containing required fields as arguments.+kmsAlias+  :: Val Text -- ^ 'kmsaAliasName'+  -> Val Text -- ^ 'kmsaTargetKeyId'+  -> KMSAlias+kmsAlias aliasNamearg targetKeyIdarg =+  KMSAlias+  { _kMSAliasAliasName = aliasNamearg+  , _kMSAliasTargetKeyId = targetKeyIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html#cfn-kms-alias-aliasname+kmsaAliasName :: Lens' KMSAlias (Val Text)+kmsaAliasName = lens _kMSAliasAliasName (\s a -> s { _kMSAliasAliasName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-alias.html#cfn-kms-alias-targetkeyid+kmsaTargetKeyId :: Lens' KMSAlias (Val Text)+kmsaTargetKeyId = lens _kMSAliasTargetKeyId (\s a -> s { _kMSAliasTargetKeyId = a })
+ library-gen/Stratosphere/Resources/KMSKey.hs view
@@ -0,0 +1,65 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html++module Stratosphere.Resources.KMSKey where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for KMSKey. See 'kmsKey' for a more convenient+-- | constructor.+data KMSKey =+  KMSKey+  { _kMSKeyDescription :: Maybe (Val Text)+  , _kMSKeyEnableKeyRotation :: Maybe (Val Bool')+  , _kMSKeyEnabled :: Maybe (Val Bool')+  , _kMSKeyKeyPolicy :: Object+  , _kMSKeyKeyUsage :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON KMSKey where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 7, omitNothingFields = True }++instance FromJSON KMSKey where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 7, omitNothingFields = True }++-- | Constructor for 'KMSKey' containing required fields as arguments.+kmsKey+  :: Object -- ^ 'kmskKeyPolicy'+  -> KMSKey+kmsKey keyPolicyarg =+  KMSKey+  { _kMSKeyDescription = Nothing+  , _kMSKeyEnableKeyRotation = Nothing+  , _kMSKeyEnabled = Nothing+  , _kMSKeyKeyPolicy = keyPolicyarg+  , _kMSKeyKeyUsage = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-description+kmskDescription :: Lens' KMSKey (Maybe (Val Text))+kmskDescription = lens _kMSKeyDescription (\s a -> s { _kMSKeyDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-enablekeyrotation+kmskEnableKeyRotation :: Lens' KMSKey (Maybe (Val Bool'))+kmskEnableKeyRotation = lens _kMSKeyEnableKeyRotation (\s a -> s { _kMSKeyEnableKeyRotation = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-enabled+kmskEnabled :: Lens' KMSKey (Maybe (Val Bool'))+kmskEnabled = lens _kMSKeyEnabled (\s a -> s { _kMSKeyEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-keypolicy+kmskKeyPolicy :: Lens' KMSKey Object+kmskKeyPolicy = lens _kMSKeyKeyPolicy (\s a -> s { _kMSKeyKeyPolicy = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-keyusage+kmskKeyUsage :: Lens' KMSKey (Maybe (Val Text))+kmskKeyUsage = lens _kMSKeyKeyUsage (\s a -> s { _kMSKeyKeyUsage = a })
+ library-gen/Stratosphere/Resources/KinesisFirehoseDeliveryStream.hs view
@@ -0,0 +1,61 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html++module Stratosphere.Resources.KinesisFirehoseDeliveryStream where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration+import Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamS3DestinationConfiguration++-- | Full data type definition for KinesisFirehoseDeliveryStream. See+-- | 'kinesisFirehoseDeliveryStream' for a more convenient constructor.+data KinesisFirehoseDeliveryStream =+  KinesisFirehoseDeliveryStream+  { _kinesisFirehoseDeliveryStreamDeliveryStreamName :: Maybe (Val Text)+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration :: Maybe KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration+  , _kinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration :: Maybe KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration+  , _kinesisFirehoseDeliveryStreamS3DestinationConfiguration :: Maybe KinesisFirehoseDeliveryStreamS3DestinationConfiguration+  } deriving (Show, Generic)++instance ToJSON KinesisFirehoseDeliveryStream where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON KinesisFirehoseDeliveryStream where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'KinesisFirehoseDeliveryStream' containing required+-- | fields as arguments.+kinesisFirehoseDeliveryStream+  :: KinesisFirehoseDeliveryStream+kinesisFirehoseDeliveryStream  =+  KinesisFirehoseDeliveryStream+  { _kinesisFirehoseDeliveryStreamDeliveryStreamName = Nothing+  , _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration = Nothing+  , _kinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration = Nothing+  , _kinesisFirehoseDeliveryStreamS3DestinationConfiguration = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverstream-deliverystreamname+kfdsDeliveryStreamName :: Lens' KinesisFirehoseDeliveryStream (Maybe (Val Text))+kfdsDeliveryStreamName = lens _kinesisFirehoseDeliveryStreamDeliveryStreamName (\s a -> s { _kinesisFirehoseDeliveryStreamDeliveryStreamName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverstream-elasticsearchdestinationconfiguration+kfdsElasticsearchDestinationConfiguration :: Lens' KinesisFirehoseDeliveryStream (Maybe KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration)+kfdsElasticsearchDestinationConfiguration = lens _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration (\s a -> s { _kinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-redshiftdestinationconfiguration+kfdsRedshiftDestinationConfiguration :: Lens' KinesisFirehoseDeliveryStream (Maybe KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration)+kfdsRedshiftDestinationConfiguration = lens _kinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration (\s a -> s { _kinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesisfirehose-deliverystream.html#cfn-kinesisfirehose-deliverystream-s3destinationconfiguration+kfdsS3DestinationConfiguration :: Lens' KinesisFirehoseDeliveryStream (Maybe KinesisFirehoseDeliveryStreamS3DestinationConfiguration)+kfdsS3DestinationConfiguration = lens _kinesisFirehoseDeliveryStreamS3DestinationConfiguration (\s a -> s { _kinesisFirehoseDeliveryStreamS3DestinationConfiguration = a })
library-gen/Stratosphere/Resources/KinesisStream.hs view
@@ -1,9 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | Creates an Amazon Kinesis stream that captures and transports data--- records that are emitted from data sources. For information about creating--- streams, see CreateStream in the Amazon Kinesis API Reference.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html  module Stratosphere.Resources.KinesisStream where @@ -14,15 +12,15 @@ import GHC.Generics  import Stratosphere.Values-import Stratosphere.ResourceProperties.ResourceTag+import Stratosphere.ResourceProperties.Tag  -- | Full data type definition for KinesisStream. See 'kinesisStream' for a--- more convenient constructor.+-- | more convenient constructor. data KinesisStream =   KinesisStream   { _kinesisStreamName :: Maybe (Val Text)   , _kinesisStreamShardCount :: Val Integer'-  , _kinesisStreamTags :: Maybe [ResourceTag]+  , _kinesisStreamTags :: Maybe [Tag]   } deriving (Show, Generic)  instance ToJSON KinesisStream where@@ -42,21 +40,14 @@   , _kinesisStreamTags = Nothing   } --- | The name of the Amazon Kinesis stream. If you don't specify a name, AWS--- CloudFormation generates a unique physical ID and uses that ID for the--- stream name. For more information, see Name Type. Important If you specify--- a name, you cannot do updates that require this resource to be replaced.--- You can still do updates that require no or some interruption. If you must--- replace the resource, specify a new name.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-name ksName :: Lens' KinesisStream (Maybe (Val Text)) ksName = lens _kinesisStreamName (\s a -> s { _kinesisStreamName = a }) --- | The number of shards that the stream uses. For greater provisioned--- throughput, increase the number of shards.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-shardcount ksShardCount :: Lens' KinesisStream (Val Integer') ksShardCount = lens _kinesisStreamShardCount (\s a -> s { _kinesisStreamShardCount = a }) --- | An arbitrary set of tags (key–value pairs) to associate with the Amazon--- Kinesis stream.-ksTags :: Lens' KinesisStream (Maybe [ResourceTag])+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kinesis-stream.html#cfn-kinesis-stream-tags+ksTags :: Lens' KinesisStream (Maybe [Tag]) ksTags = lens _kinesisStreamTags (\s a -> s { _kinesisStreamTags = a })
library-gen/Stratosphere/Resources/LambdaAlias.hs view
@@ -1,13 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::Lambda::Alias resource creates an alias that points to the--- version of an AWS Lambda (Lambda) function that you specify. Use aliases--- when you want to control which version of your function other services or--- applications invoke. Those services or applications can use your function's--- alias so that they don't need to be updated whenever you release a new--- version of your function. For more information, see Introduction to AWS--- Lambda Aliases in the AWS Lambda Developer Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html  module Stratosphere.Resources.LambdaAlias where @@ -21,7 +15,7 @@   -- | Full data type definition for LambdaAlias. See 'lambdaAlias' for a more--- convenient constructor.+-- | convenient constructor. data LambdaAlias =   LambdaAlias   { _lambdaAliasDescription :: Maybe (Val Text)@@ -50,21 +44,18 @@   , _lambdaAliasName = namearg   } --- | Information about the alias, such as its purpose or the Lambda function--- that is associated with it.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-description laDescription :: Lens' LambdaAlias (Maybe (Val Text)) laDescription = lens _lambdaAliasDescription (\s a -> s { _lambdaAliasDescription = a }) --- | The Lambda function that you want to associate with this alias. You can--- specify the function's name or its Amazon Resource Name (ARN).+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-functionname laFunctionName :: Lens' LambdaAlias (Val Text) laFunctionName = lens _lambdaAliasFunctionName (\s a -> s { _lambdaAliasFunctionName = a }) --- | The version of the Lambda function that you want to associate with this--- alias.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-functionversion laFunctionVersion :: Lens' LambdaAlias (Val Text) laFunctionVersion = lens _lambdaAliasFunctionVersion (\s a -> s { _lambdaAliasFunctionVersion = a }) --- | A name for the alias.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-alias.html#cfn-lambda-alias-name laName :: Lens' LambdaAlias (Val Text) laName = lens _lambdaAliasName (\s a -> s { _lambdaAliasName = a })
+ library-gen/Stratosphere/Resources/LambdaEventSourceMapping.hs view
@@ -0,0 +1,68 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html++module Stratosphere.Resources.LambdaEventSourceMapping where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for LambdaEventSourceMapping. See+-- | 'lambdaEventSourceMapping' for a more convenient constructor.+data LambdaEventSourceMapping =+  LambdaEventSourceMapping+  { _lambdaEventSourceMappingBatchSize :: Maybe (Val Integer')+  , _lambdaEventSourceMappingEnabled :: Maybe (Val Bool')+  , _lambdaEventSourceMappingEventSourceArn :: Val Text+  , _lambdaEventSourceMappingFunctionName :: Val Text+  , _lambdaEventSourceMappingStartingPosition :: Val Text+  } deriving (Show, Generic)++instance ToJSON LambdaEventSourceMapping where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++instance FromJSON LambdaEventSourceMapping where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++-- | Constructor for 'LambdaEventSourceMapping' containing required fields as+-- | arguments.+lambdaEventSourceMapping+  :: Val Text -- ^ 'lesmEventSourceArn'+  -> Val Text -- ^ 'lesmFunctionName'+  -> Val Text -- ^ 'lesmStartingPosition'+  -> LambdaEventSourceMapping+lambdaEventSourceMapping eventSourceArnarg functionNamearg startingPositionarg =+  LambdaEventSourceMapping+  { _lambdaEventSourceMappingBatchSize = Nothing+  , _lambdaEventSourceMappingEnabled = Nothing+  , _lambdaEventSourceMappingEventSourceArn = eventSourceArnarg+  , _lambdaEventSourceMappingFunctionName = functionNamearg+  , _lambdaEventSourceMappingStartingPosition = startingPositionarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-batchsize+lesmBatchSize :: Lens' LambdaEventSourceMapping (Maybe (Val Integer'))+lesmBatchSize = lens _lambdaEventSourceMappingBatchSize (\s a -> s { _lambdaEventSourceMappingBatchSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-enabled+lesmEnabled :: Lens' LambdaEventSourceMapping (Maybe (Val Bool'))+lesmEnabled = lens _lambdaEventSourceMappingEnabled (\s a -> s { _lambdaEventSourceMappingEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-eventsourcearn+lesmEventSourceArn :: Lens' LambdaEventSourceMapping (Val Text)+lesmEventSourceArn = lens _lambdaEventSourceMappingEventSourceArn (\s a -> s { _lambdaEventSourceMappingEventSourceArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-functionname+lesmFunctionName :: Lens' LambdaEventSourceMapping (Val Text)+lesmFunctionName = lens _lambdaEventSourceMappingFunctionName (\s a -> s { _lambdaEventSourceMappingFunctionName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-startingposition+lesmStartingPosition :: Lens' LambdaEventSourceMapping (Val Text)+lesmStartingPosition = lens _lambdaEventSourceMappingStartingPosition (\s a -> s { _lambdaEventSourceMappingStartingPosition = a })
library-gen/Stratosphere/Resources/LambdaFunction.hs view
@@ -1,9 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::Lambda::Function resource creates an AWS Lambda (Lambda)--- function that can run code in response to events. For more information, see--- CreateFunction in the AWS Lambda Developer Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html  module Stratosphere.Resources.LambdaFunction where @@ -14,23 +12,26 @@ import GHC.Generics  import Stratosphere.Values-import Stratosphere.ResourceProperties.LambdaFunctionCode-import Stratosphere.ResourceProperties.LambdaFunctionVPCConfig import Stratosphere.Types+import Stratosphere.ResourceProperties.LambdaFunctionCode+import Stratosphere.ResourceProperties.LambdaFunctionEnvironment+import Stratosphere.ResourceProperties.LambdaFunctionVpcConfig  -- | Full data type definition for LambdaFunction. See 'lambdaFunction' for a--- more convenient constructor.+-- | more convenient constructor. data LambdaFunction =   LambdaFunction   { _lambdaFunctionCode :: LambdaFunctionCode   , _lambdaFunctionDescription :: Maybe (Val Text)+  , _lambdaFunctionEnvironment :: Maybe LambdaFunctionEnvironment   , _lambdaFunctionFunctionName :: Maybe (Val Text)   , _lambdaFunctionHandler :: Val Text+  , _lambdaFunctionKmsKeyArn :: Maybe (Val Text)   , _lambdaFunctionMemorySize :: Maybe (Val Integer')   , _lambdaFunctionRole :: Val Text-  , _lambdaFunctionRuntime :: Runtime+  , _lambdaFunctionRuntime :: Val Runtime   , _lambdaFunctionTimeout :: Maybe (Val Integer')-  , _lambdaFunctionVpcConfig :: Maybe LambdaFunctionVPCConfig+  , _lambdaFunctionVpcConfig :: Maybe LambdaFunctionVpcConfig   } deriving (Show, Generic)  instance ToJSON LambdaFunction where@@ -44,14 +45,16 @@   :: LambdaFunctionCode -- ^ 'lfCode'   -> Val Text -- ^ 'lfHandler'   -> Val Text -- ^ 'lfRole'-  -> Runtime -- ^ 'lfRuntime'+  -> Val Runtime -- ^ 'lfRuntime'   -> LambdaFunction lambdaFunction codearg handlerarg rolearg runtimearg =   LambdaFunction   { _lambdaFunctionCode = codearg   , _lambdaFunctionDescription = Nothing+  , _lambdaFunctionEnvironment = Nothing   , _lambdaFunctionFunctionName = Nothing   , _lambdaFunctionHandler = handlerarg+  , _lambdaFunctionKmsKeyArn = Nothing   , _lambdaFunctionMemorySize = Nothing   , _lambdaFunctionRole = rolearg   , _lambdaFunctionRuntime = runtimearg@@ -59,71 +62,46 @@   , _lambdaFunctionVpcConfig = Nothing   } --- | The source code of your Lambda function. You can point to a file in an--- Amazon Simple Storage Service (Amazon S3) bucket or specify your source--- code as inline text.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-code lfCode :: Lens' LambdaFunction LambdaFunctionCode lfCode = lens _lambdaFunctionCode (\s a -> s { _lambdaFunctionCode = a }) --- | A description of the function.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-description lfDescription :: Lens' LambdaFunction (Maybe (Val Text)) lfDescription = lens _lambdaFunctionDescription (\s a -> s { _lambdaFunctionDescription = a }) --- | A name for the function. If you don't specify a name, AWS CloudFormation--- generates a unique physical ID and uses that ID for the function's name.--- For more information, see Name Type. Important If you specify a name, you--- cannot do updates that require this resource to be replaced. You can still--- do updates that require no or some interruption. If you must replace the--- resource, specify a new name.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-environment+lfEnvironment :: Lens' LambdaFunction (Maybe LambdaFunctionEnvironment)+lfEnvironment = lens _lambdaFunctionEnvironment (\s a -> s { _lambdaFunctionEnvironment = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-functionname lfFunctionName :: Lens' LambdaFunction (Maybe (Val Text)) lfFunctionName = lens _lambdaFunctionFunctionName (\s a -> s { _lambdaFunctionFunctionName = a }) --- | The name of the function (within your source code) that Lambda calls to--- start running your code. For more information, see the Handler property in--- the AWS Lambda Developer Guide. Note If you specify your source code as--- inline text by specifying the ZipFile property within the Code property,--- specify index.function_name as the handler.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-handler lfHandler :: Lens' LambdaFunction (Val Text) lfHandler = lens _lambdaFunctionHandler (\s a -> s { _lambdaFunctionHandler = a }) --- | The amount of memory, in MB, that is allocated to your Lambda function.--- Lambda uses this value to proportionally allocate the amount of CPU power.--- For more information, see Resource Model in the AWS Lambda Developer Guide.--- Your function use case determines your CPU and memory requirements. For--- example, a database operation might need less memory than an image--- processing function. You must specify a value that is greater than or equal--- to 128, and it must be a multiple of 64. You cannot specify a size larger--- than 1536. The default value is 128 MB.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-kmskeyarn+lfKmsKeyArn :: Lens' LambdaFunction (Maybe (Val Text))+lfKmsKeyArn = lens _lambdaFunctionKmsKeyArn (\s a -> s { _lambdaFunctionKmsKeyArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-memorysize lfMemorySize :: Lens' LambdaFunction (Maybe (Val Integer')) lfMemorySize = lens _lambdaFunctionMemorySize (\s a -> s { _lambdaFunctionMemorySize = a }) --- | The Amazon Resource Name (ARN) of the AWS Identity and Access Management--- (IAM) execution role that Lambda assumes when it runs your code to access--- AWS services.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-role lfRole :: Lens' LambdaFunction (Val Text) lfRole = lens _lambdaFunctionRole (\s a -> s { _lambdaFunctionRole = a }) --- | The runtime environment for the Lambda function that you are uploading.--- For valid values, see the Runtime property in the AWS Lambda Developer--- Guide.-lfRuntime :: Lens' LambdaFunction Runtime+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-runtime+lfRuntime :: Lens' LambdaFunction (Val Runtime) lfRuntime = lens _lambdaFunctionRuntime (\s a -> s { _lambdaFunctionRuntime = a }) --- | The function execution time (in seconds) after which Lambda terminates--- the function. Because the execution time affects cost, set this value based--- on the function's expected execution time. By default, Timeout is set to 3--- seconds.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-timeout lfTimeout :: Lens' LambdaFunction (Maybe (Val Integer')) lfTimeout = lens _lambdaFunctionTimeout (\s a -> s { _lambdaFunctionTimeout = a }) --- | If the Lambda function requires access to resources in a VPC, specify a--- VPC configuration that Lambda uses to set up an elastic network interface--- (ENI). The ENI enables your function to connect to other resources in your--- VPC, but it doesn't provide public Internet access. If your function--- requires Internet access (for example, to access AWS services that don't--- have VPC endpoints), configure a Network Address Translation (NAT) instance--- inside your VPC or use an Amazon Virtual Private Cloud (Amazon VPC) NAT--- gateway. For more information, see NAT Gateways in the Amazon VPC User--- Guide.-lfVpcConfig :: Lens' LambdaFunction (Maybe LambdaFunctionVPCConfig)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-vpcconfig+lfVpcConfig :: Lens' LambdaFunction (Maybe LambdaFunctionVpcConfig) lfVpcConfig = lens _lambdaFunctionVpcConfig (\s a -> s { _lambdaFunctionVpcConfig = a })
library-gen/Stratosphere/Resources/LambdaPermission.hs view
@@ -1,11 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::Lambda::Permission resource associates a policy statement with a--- specific AWS Lambda (Lambda) function's access policy. The function policy--- grants a specific AWS service or application permission to invoke the--- function. For more information, see AddPermission in the AWS Lambda--- Developer Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html  module Stratosphere.Resources.LambdaPermission where @@ -19,7 +15,7 @@   -- | Full data type definition for LambdaPermission. See 'lambdaPermission'--- for a more convenient constructor.+-- | for a more convenient constructor. data LambdaPermission =   LambdaPermission   { _lambdaPermissionAction :: Val Text@@ -36,7 +32,7 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }  -- | Constructor for 'LambdaPermission' containing required fields as--- arguments.+-- | arguments. lambdaPermission   :: Val Text -- ^ 'lpAction'   -> Val Text -- ^ 'lpFunctionName'@@ -51,46 +47,22 @@   , _lambdaPermissionSourceArn = Nothing   } --- | The Lambda actions that you want to allow in this statement. For example,--- you can specify lambda:CreateFunction to specify a certain action, or use a--- wildcard (lambda:*) to grant permission to all Lambda actions. For a list--- of actions, see Actions and Condition Context Keys for AWS Lambda in the--- IAM User Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-action lpAction :: Lens' LambdaPermission (Val Text) lpAction = lens _lambdaPermissionAction (\s a -> s { _lambdaPermissionAction = a }) --- | The name (physical ID) or Amazon Resource Name (ARN) of the Lambda--- function that you want to associate with this statement. Lambda adds this--- statement to the function's access policy.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-functionname lpFunctionName :: Lens' LambdaPermission (Val Text) lpFunctionName = lens _lambdaPermissionFunctionName (\s a -> s { _lambdaPermissionFunctionName = a }) --- | The entity for which you are granting permission to invoke the Lambda--- function. This entity can be any valid AWS service principal, such as--- s3.amazonaws.com or sns.amazonaws.com, or, if you are granting--- cross-account permission, an AWS account ID. For example, you might want to--- allow a custom application in another AWS account to push events to Lambda--- by invoking your function.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-principal lpPrincipal :: Lens' LambdaPermission (Val Text) lpPrincipal = lens _lambdaPermissionPrincipal (\s a -> s { _lambdaPermissionPrincipal = a }) --- | The AWS account ID (without hyphens) of the source owner. For example, if--- you specify an S3 bucket in the SourceArn property, this value is the--- bucket owner's account ID. You can use this property to ensure that all--- source principals are owned by a specific account. Important This property--- is not supported by all event sources. For more information, see the--- SourceAccount parameter for the AddPermission action in the AWS Lambda--- Developer Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-sourceaccount lpSourceAccount :: Lens' LambdaPermission (Maybe (Val Text)) lpSourceAccount = lens _lambdaPermissionSourceAccount (\s a -> s { _lambdaPermissionSourceAccount = a }) --- | The ARN of a resource that is invoking your function. When granting--- Amazon Simple Storage Service (Amazon S3) permission to invoke your--- function, specify this property with the bucket ARN as its value. This--- ensures that events generated only from the specified bucket, not just any--- bucket from any AWS account that creates a mapping to your function, can--- invoke the function. Important This property is not supported by all event--- sources. For more information, see the SourceArn parameter for the--- AddPermission action in the AWS Lambda Developer Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html#cfn-lambda-permission-sourcearn lpSourceArn :: Lens' LambdaPermission (Maybe (Val Text)) lpSourceArn = lens _lambdaPermissionSourceArn (\s a -> s { _lambdaPermissionSourceArn = a })
library-gen/Stratosphere/Resources/LambdaVersion.hs view
@@ -1,11 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::Lambda::Version resource publishes a specified version of an AWS--- Lambda (Lambda) function. When publishing a new version of your function,--- Lambda copies the latest version of your function. For more information,--- see Introduction to AWS Lambda Versioning in the AWS Lambda Developer--- Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html  module Stratosphere.Resources.LambdaVersion where @@ -19,7 +15,7 @@   -- | Full data type definition for LambdaVersion. See 'lambdaVersion' for a--- more convenient constructor.+-- | more convenient constructor. data LambdaVersion =   LambdaVersion   { _lambdaVersionCodeSha256 :: Maybe (Val Text)@@ -44,20 +40,14 @@   , _lambdaVersionFunctionName = functionNamearg   } --- | The SHA-256 hash of the deployment package that you want to publish. This--- value must match the SHA-256 hash of the $LATEST version of the function.--- Specify this property to validate that you are publishing the correct--- package.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-codesha256 lvCodeSha256 :: Lens' LambdaVersion (Maybe (Val Text)) lvCodeSha256 = lens _lambdaVersionCodeSha256 (\s a -> s { _lambdaVersionCodeSha256 = a }) --- | A description of the version you are publishing. If you don't specify a--- value, Lambda copies the description from the $LATEST version of the--- function.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-description lvDescription :: Lens' LambdaVersion (Maybe (Val Text)) lvDescription = lens _lambdaVersionDescription (\s a -> s { _lambdaVersionDescription = a }) --- | The Lambda function for which you want to publish a version. You can--- specify the function's name or its Amazon Resource Name (ARN).+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-version.html#cfn-lambda-version-functionname lvFunctionName :: Lens' LambdaVersion (Val Text) lvFunctionName = lens _lambdaVersionFunctionName (\s a -> s { _lambdaVersionFunctionName = a })
− library-gen/Stratosphere/Resources/LaunchConfiguration.hs
@@ -1,194 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::AutoScaling::LaunchConfiguration type creates an Auto Scaling--- launch configuration that can be used by an Auto Scaling group to configure--- Amazon EC2 instances in the Auto Scaling group.--module Stratosphere.Resources.LaunchConfiguration where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.AutoScalingBlockDeviceMapping---- | Full data type definition for LaunchConfiguration. See--- 'launchConfiguration' for a more convenient constructor.-data LaunchConfiguration =-  LaunchConfiguration-  { _launchConfigurationAssociatePublicIpAddress :: Maybe (Val Bool')-  , _launchConfigurationBlockDeviceMappings :: Maybe [AutoScalingBlockDeviceMapping]-  , _launchConfigurationClassicLinkVPCId :: Maybe (Val Text)-  , _launchConfigurationClassicLinkVPCSecurityGroups :: Maybe [Val Text]-  , _launchConfigurationEbsOptimized :: Maybe (Val Bool')-  , _launchConfigurationIamInstanceProfile :: Maybe (Val Text)-  , _launchConfigurationImageId :: Val Text-  , _launchConfigurationInstanceId :: Maybe (Val Text)-  , _launchConfigurationInstanceMonitoring :: Maybe (Val Bool')-  , _launchConfigurationInstanceType :: Val Text-  , _launchConfigurationKernelId :: Maybe (Val Text)-  , _launchConfigurationKeyName :: Maybe (Val Text)-  , _launchConfigurationPlacementTenancy :: Maybe (Val Text)-  , _launchConfigurationRamDiskId :: Maybe (Val Text)-  , _launchConfigurationSecurityGroups :: Maybe [Val Text]-  , _launchConfigurationSpotPrice :: Maybe (Val Text)-  , _launchConfigurationUserData :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON LaunchConfiguration where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }--instance FromJSON LaunchConfiguration where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }---- | Constructor for 'LaunchConfiguration' containing required fields as--- arguments.-launchConfiguration-  :: Val Text -- ^ 'lcImageId'-  -> Val Text -- ^ 'lcInstanceType'-  -> LaunchConfiguration-launchConfiguration imageIdarg instanceTypearg =-  LaunchConfiguration-  { _launchConfigurationAssociatePublicIpAddress = Nothing-  , _launchConfigurationBlockDeviceMappings = Nothing-  , _launchConfigurationClassicLinkVPCId = Nothing-  , _launchConfigurationClassicLinkVPCSecurityGroups = Nothing-  , _launchConfigurationEbsOptimized = Nothing-  , _launchConfigurationIamInstanceProfile = Nothing-  , _launchConfigurationImageId = imageIdarg-  , _launchConfigurationInstanceId = Nothing-  , _launchConfigurationInstanceMonitoring = Nothing-  , _launchConfigurationInstanceType = instanceTypearg-  , _launchConfigurationKernelId = Nothing-  , _launchConfigurationKeyName = Nothing-  , _launchConfigurationPlacementTenancy = Nothing-  , _launchConfigurationRamDiskId = Nothing-  , _launchConfigurationSecurityGroups = Nothing-  , _launchConfigurationSpotPrice = Nothing-  , _launchConfigurationUserData = Nothing-  }---- | For Amazon EC2 instances in a VPC, indicates whether instances in the--- Auto Scaling group receive public IP addresses. If you specify true, each--- instance in the Auto Scaling receives a unique public IP address. Note If--- this resource has a public IP address and is also in a VPC that is defined--- in the same template, you must use the DependsOn attribute to declare a--- dependency on the VPC-gateway attachment. For more information, see--- DependsOn Attribute.-lcAssociatePublicIpAddress :: Lens' LaunchConfiguration (Maybe (Val Bool'))-lcAssociatePublicIpAddress = lens _launchConfigurationAssociatePublicIpAddress (\s a -> s { _launchConfigurationAssociatePublicIpAddress = a })---- | Specifies how block devices are exposed to the instance. You can specify--- virtual devices and EBS volumes.-lcBlockDeviceMappings :: Lens' LaunchConfiguration (Maybe [AutoScalingBlockDeviceMapping])-lcBlockDeviceMappings = lens _launchConfigurationBlockDeviceMappings (\s a -> s { _launchConfigurationBlockDeviceMappings = a })---- | The ID of a ClassicLink-enabled VPC to link your EC2-Classic instances--- to. You can specify this property only for EC2-Classic instances. For more--- information, see ClassicLink in the Amazon Elastic Compute Cloud User--- Guide.-lcClassicLinkVPCId :: Lens' LaunchConfiguration (Maybe (Val Text))-lcClassicLinkVPCId = lens _launchConfigurationClassicLinkVPCId (\s a -> s { _launchConfigurationClassicLinkVPCId = a })---- | The IDs of one or more security groups for the VPC that you specified in--- the ClassicLinkVPCId property.-lcClassicLinkVPCSecurityGroups :: Lens' LaunchConfiguration (Maybe [Val Text])-lcClassicLinkVPCSecurityGroups = lens _launchConfigurationClassicLinkVPCSecurityGroups (\s a -> s { _launchConfigurationClassicLinkVPCSecurityGroups = a })---- | Specifies whether the launch configuration is optimized for EBS I/O. This--- optimization provides dedicated throughput to Amazon EBS and an optimized--- configuration stack to provide optimal EBS I/O performance. Additional fees--- are incurred when using EBS-optimized instances. For more information about--- fees and supported instance types, see EBS-Optimized Instances in the--- Amazon EC2 User Guide for Linux Instances.-lcEbsOptimized :: Lens' LaunchConfiguration (Maybe (Val Bool'))-lcEbsOptimized = lens _launchConfigurationEbsOptimized (\s a -> s { _launchConfigurationEbsOptimized = a })---- | Provides the name or the Amazon Resource Name (ARN) of the instance--- profile associated with the IAM role for the instance. The instance profile--- contains the IAM role.-lcIamInstanceProfile :: Lens' LaunchConfiguration (Maybe (Val Text))-lcIamInstanceProfile = lens _launchConfigurationIamInstanceProfile (\s a -> s { _launchConfigurationIamInstanceProfile = a })---- | Provides the unique ID of the Amazon Machine Image (AMI) that was--- assigned during registration.-lcImageId :: Lens' LaunchConfiguration (Val Text)-lcImageId = lens _launchConfigurationImageId (\s a -> s { _launchConfigurationImageId = a })---- | The ID of the Amazon EC2 instance you want to use to create the launch--- configuration. Use this property if you want the launch configuration to--- use settings from an existing Amazon EC2 instance. When you use an instance--- to create a launch configuration, all properties are derived from the--- instance with the exception of BlockDeviceMapping and--- AssociatePublicIpAddress. You can override any properties from the instance--- by specifying them in the launch configuration.-lcInstanceId :: Lens' LaunchConfiguration (Maybe (Val Text))-lcInstanceId = lens _launchConfigurationInstanceId (\s a -> s { _launchConfigurationInstanceId = a })---- | Indicates whether detailed instance monitoring is enabled for the Auto--- Scaling group. By default, this property is set to true (enabled). When--- detailed monitoring is enabled, Amazon CloudWatch (CloudWatch) generates--- metrics every minute and your account is charged a fee. When you disable--- detailed monitoring, CloudWatch generates metrics every 5 minutes. For more--- information, see Monitor Your Auto Scaling Instances in the Auto Scaling--- Developer Guide.-lcInstanceMonitoring :: Lens' LaunchConfiguration (Maybe (Val Bool'))-lcInstanceMonitoring = lens _launchConfigurationInstanceMonitoring (\s a -> s { _launchConfigurationInstanceMonitoring = a })---- | Specifies the instance type of the EC2 instance.-lcInstanceType :: Lens' LaunchConfiguration (Val Text)-lcInstanceType = lens _launchConfigurationInstanceType (\s a -> s { _launchConfigurationInstanceType = a })---- | Provides the ID of the kernel associated with the EC2 AMI.-lcKernelId :: Lens' LaunchConfiguration (Maybe (Val Text))-lcKernelId = lens _launchConfigurationKernelId (\s a -> s { _launchConfigurationKernelId = a })---- | Provides the name of the EC2 key pair.-lcKeyName :: Lens' LaunchConfiguration (Maybe (Val Text))-lcKeyName = lens _launchConfigurationKeyName (\s a -> s { _launchConfigurationKeyName = a })---- | The tenancy of the instance. An instance with a tenancy of dedicated runs--- on single-tenant hardware and can only be launched in a VPC. You must set--- the value of this parameter to dedicated if want to launch dedicated--- instances in a shared tenancy VPC (a VPC with the instance placement--- tenancy attribute set to default). For more information, see--- CreateLaunchConfiguration in the Auto Scaling API Reference. If you specify--- this property, you must specify at least one subnet in the--- VPCZoneIdentifier property of the AWS::AutoScaling::AutoScalingGroup--- resource.-lcPlacementTenancy :: Lens' LaunchConfiguration (Maybe (Val Text))-lcPlacementTenancy = lens _launchConfigurationPlacementTenancy (\s a -> s { _launchConfigurationPlacementTenancy = a })---- | The ID of the RAM disk to select. Some kernels require additional drivers--- at launch. Check the kernel requirements for information about whether you--- need to specify a RAM disk. To find kernel requirements, refer to the AWS--- Resource Center and search for the kernel ID.-lcRamDiskId :: Lens' LaunchConfiguration (Maybe (Val Text))-lcRamDiskId = lens _launchConfigurationRamDiskId (\s a -> s { _launchConfigurationRamDiskId = a })---- | A list that contains the EC2 security groups to assign to the Amazon EC2--- instances in the Auto Scaling group. The list can contain the name of--- existing EC2 security groups or references to AWS::EC2::SecurityGroup--- resources created in the template. If your instances are launched within--- VPC, specify Amazon VPC security group IDs.-lcSecurityGroups :: Lens' LaunchConfiguration (Maybe [Val Text])-lcSecurityGroups = lens _launchConfigurationSecurityGroups (\s a -> s { _launchConfigurationSecurityGroups = a })---- | The spot price for this autoscaling group. If a spot price is set, then--- the autoscaling group will launch when the current spot price is less than--- the amount specified in the template. When you have specified a spot price--- for an auto scaling group, the group will only launch when the spot price--- has been met, regardless of the setting in the autoscaling group's--- DesiredCapacity. For more information about configuring a spot price for an--- autoscaling group, see Using Auto Scaling to Launch Spot Instances in the--- AutoScaling Developer Guide.-lcSpotPrice :: Lens' LaunchConfiguration (Maybe (Val Text))-lcSpotPrice = lens _launchConfigurationSpotPrice (\s a -> s { _launchConfigurationSpotPrice = a })---- | The user data available to the launched EC2 instances.-lcUserData :: Lens' LaunchConfiguration (Maybe (Val Text))-lcUserData = lens _launchConfigurationUserData (\s a -> s { _launchConfigurationUserData = a })
− library-gen/Stratosphere/Resources/LifecycleHook.hs
@@ -1,97 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Use AWS::AutoScaling::LifecycleHook to control the state of an instance--- in an Auto Scaling group after it is launched or terminated. When you use a--- lifecycle hook, the Auto Scaling group either pauses the instance after it--- is launched (before it is put into service) or pauses the instance as it is--- terminated (before it is fully terminated). For more information, see--- Examples of How to Use Lifecycle Hooks in the Auto Scaling User Guide.--module Stratosphere.Resources.LifecycleHook where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for LifecycleHook. See 'lifecycleHook' for a--- more convenient constructor.-data LifecycleHook =-  LifecycleHook-  { _lifecycleHookAutoScalingGroupName :: Val Text-  , _lifecycleHookDefaultResult :: Maybe (Val Text)-  , _lifecycleHookHeartbeatTimeout :: Maybe (Val Integer')-  , _lifecycleHookLifecycleTransition :: Val Text-  , _lifecycleHookNotificationMetadata :: Maybe (Val Text)-  , _lifecycleHookNotificationTargetARN :: Val Text-  , _lifecycleHookRoleARN :: Val Text-  } deriving (Show, Generic)--instance ToJSON LifecycleHook where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }--instance FromJSON LifecycleHook where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }---- | Constructor for 'LifecycleHook' containing required fields as arguments.-lifecycleHook-  :: Val Text -- ^ 'lhAutoScalingGroupName'-  -> Val Text -- ^ 'lhLifecycleTransition'-  -> Val Text -- ^ 'lhNotificationTargetARN'-  -> Val Text -- ^ 'lhRoleARN'-  -> LifecycleHook-lifecycleHook autoScalingGroupNamearg lifecycleTransitionarg notificationTargetARNarg roleARNarg =-  LifecycleHook-  { _lifecycleHookAutoScalingGroupName = autoScalingGroupNamearg-  , _lifecycleHookDefaultResult = Nothing-  , _lifecycleHookHeartbeatTimeout = Nothing-  , _lifecycleHookLifecycleTransition = lifecycleTransitionarg-  , _lifecycleHookNotificationMetadata = Nothing-  , _lifecycleHookNotificationTargetARN = notificationTargetARNarg-  , _lifecycleHookRoleARN = roleARNarg-  }---- | The name of the Auto Scaling group for the lifecycle hook.-lhAutoScalingGroupName :: Lens' LifecycleHook (Val Text)-lhAutoScalingGroupName = lens _lifecycleHookAutoScalingGroupName (\s a -> s { _lifecycleHookAutoScalingGroupName = a })---- | The action the Auto Scaling group takes when the lifecycle hook timeout--- elapses or if an unexpected failure occurs.-lhDefaultResult :: Lens' LifecycleHook (Maybe (Val Text))-lhDefaultResult = lens _lifecycleHookDefaultResult (\s a -> s { _lifecycleHookDefaultResult = a })---- | The amount of time that can elapse before the lifecycle hook times out.--- When the lifecycle hook times out, Auto Scaling performs the action that--- you specified in the DefaultResult property.-lhHeartbeatTimeout :: Lens' LifecycleHook (Maybe (Val Integer'))-lhHeartbeatTimeout = lens _lifecycleHookHeartbeatTimeout (\s a -> s { _lifecycleHookHeartbeatTimeout = a })---- | The state of the Amazon EC2 instance to which you want to attach the--- lifecycle hook.-lhLifecycleTransition :: Lens' LifecycleHook (Val Text)-lhLifecycleTransition = lens _lifecycleHookLifecycleTransition (\s a -> s { _lifecycleHookLifecycleTransition = a })---- | Additional information that you want to include when Auto Scaling sends a--- message to the notification target.-lhNotificationMetadata :: Lens' LifecycleHook (Maybe (Val Text))-lhNotificationMetadata = lens _lifecycleHookNotificationMetadata (\s a -> s { _lifecycleHookNotificationMetadata = a })---- | The Amazon resource name (ARN) of the notification target that Auto--- Scaling uses to notify you when an instance is in the transition state for--- the lifecycle hook. You can specify an Amazon SQS queue or an Amazon SNS--- topic. The notification message includes the following information:--- lifecycle action token, user account ID, Auto Scaling group name, lifecycle--- hook name, instance ID, lifecycle transition, and notification metadata.-lhNotificationTargetARN :: Lens' LifecycleHook (Val Text)-lhNotificationTargetARN = lens _lifecycleHookNotificationTargetARN (\s a -> s { _lifecycleHookNotificationTargetARN = a })---- | The ARN of the IAM role that allows the Auto Scaling group to publish to--- the specified notification target. The role requires permissions to Amazon--- SNS and Amazon SQS.-lhRoleARN :: Lens' LifecycleHook (Val Text)-lhRoleARN = lens _lifecycleHookRoleARN (\s a -> s { _lifecycleHookRoleARN = a })
− library-gen/Stratosphere/Resources/LoadBalancer.hs
@@ -1,176 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::ElasticLoadBalancing::LoadBalancer type creates a LoadBalancer.--module Stratosphere.Resources.LoadBalancer where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.AccessLoggingPolicy-import Stratosphere.ResourceProperties.AppCookieStickinessPolicy-import Stratosphere.ResourceProperties.ConnectionDrainingPolicy-import Stratosphere.ResourceProperties.ConnectionSettings-import Stratosphere.ResourceProperties.HealthCheck-import Stratosphere.ResourceProperties.LBCookieStickinessPolicy-import Stratosphere.ResourceProperties.ListenerProperty-import Stratosphere.ResourceProperties.ELBPolicy-import Stratosphere.ResourceProperties.ResourceTag---- | Full data type definition for LoadBalancer. See 'loadBalancer' for a more--- convenient constructor.-data LoadBalancer =-  LoadBalancer-  { _loadBalancerAccessLoggingPolicy :: Maybe AccessLoggingPolicy-  , _loadBalancerAppCookieStickinessPolicy :: Maybe [AppCookieStickinessPolicy]-  , _loadBalancerAvailabilityZones :: Maybe [Val Text]-  , _loadBalancerConnectionDrainingPolicy :: Maybe ConnectionDrainingPolicy-  , _loadBalancerConnectionSettings :: Maybe ConnectionSettings-  , _loadBalancerCrossZone :: Maybe (Val Bool')-  , _loadBalancerHealthCheck :: Maybe HealthCheck-  , _loadBalancerInstances :: Maybe [Val Text]-  , _loadBalancerLBCookieStickinessPolicy :: Maybe [LBCookieStickinessPolicy]-  , _loadBalancerLoadBalancerName :: Maybe (Val Text)-  , _loadBalancerListeners :: [ListenerProperty]-  , _loadBalancerPolicies :: Maybe [ELBPolicy]-  , _loadBalancerScheme :: Maybe (Val Text)-  , _loadBalancerSecurityGroups :: Maybe [Val Text]-  , _loadBalancerSubnets :: Maybe [Val Text]-  , _loadBalancerTags :: Maybe [ResourceTag]-  } deriving (Show, Generic)--instance ToJSON LoadBalancer where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }--instance FromJSON LoadBalancer where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }---- | Constructor for 'LoadBalancer' containing required fields as arguments.-loadBalancer-  :: [ListenerProperty] -- ^ 'lbListeners'-  -> LoadBalancer-loadBalancer listenersarg =-  LoadBalancer-  { _loadBalancerAccessLoggingPolicy = Nothing-  , _loadBalancerAppCookieStickinessPolicy = Nothing-  , _loadBalancerAvailabilityZones = Nothing-  , _loadBalancerConnectionDrainingPolicy = Nothing-  , _loadBalancerConnectionSettings = Nothing-  , _loadBalancerCrossZone = Nothing-  , _loadBalancerHealthCheck = Nothing-  , _loadBalancerInstances = Nothing-  , _loadBalancerLBCookieStickinessPolicy = Nothing-  , _loadBalancerLoadBalancerName = Nothing-  , _loadBalancerListeners = listenersarg-  , _loadBalancerPolicies = Nothing-  , _loadBalancerScheme = Nothing-  , _loadBalancerSecurityGroups = Nothing-  , _loadBalancerSubnets = Nothing-  , _loadBalancerTags = Nothing-  }---- | Captures detailed information for all requests made to your load--- balancer, such as the time a request was received, client’s IP address,--- latencies, request path, and server responses.-lbAccessLoggingPolicy :: Lens' LoadBalancer (Maybe AccessLoggingPolicy)-lbAccessLoggingPolicy = lens _loadBalancerAccessLoggingPolicy (\s a -> s { _loadBalancerAccessLoggingPolicy = a })---- | Generates one or more stickiness policies with sticky session lifetimes--- that follow that of an application-generated cookie. These policies can be--- associated only with HTTP/HTTPS listeners.-lbAppCookieStickinessPolicy :: Lens' LoadBalancer (Maybe [AppCookieStickinessPolicy])-lbAppCookieStickinessPolicy = lens _loadBalancerAppCookieStickinessPolicy (\s a -> s { _loadBalancerAppCookieStickinessPolicy = a })---- | The Availability Zones in which to create the load balancer. You can--- specify the AvailabilityZones or Subnets property, but not both. Note For--- load balancers that are in a VPC, specify the Subnets property.-lbAvailabilityZones :: Lens' LoadBalancer (Maybe [Val Text])-lbAvailabilityZones = lens _loadBalancerAvailabilityZones (\s a -> s { _loadBalancerAvailabilityZones = a })---- | Whether deregistered or unhealthy instances can complete all in-flight--- requests.-lbConnectionDrainingPolicy :: Lens' LoadBalancer (Maybe ConnectionDrainingPolicy)-lbConnectionDrainingPolicy = lens _loadBalancerConnectionDrainingPolicy (\s a -> s { _loadBalancerConnectionDrainingPolicy = a })---- | Specifies how long front-end and back-end connections of your load--- balancer can remain idle.-lbConnectionSettings :: Lens' LoadBalancer (Maybe ConnectionSettings)-lbConnectionSettings = lens _loadBalancerConnectionSettings (\s a -> s { _loadBalancerConnectionSettings = a })---- | Whether cross-zone load balancing is enabled for the load balancer. With--- cross-zone load balancing, your load balancer nodes route traffic to the--- back-end instances across all Availability Zones. By default the CrossZone--- property is false.-lbCrossZone :: Lens' LoadBalancer (Maybe (Val Bool'))-lbCrossZone = lens _loadBalancerCrossZone (\s a -> s { _loadBalancerCrossZone = a })---- | Application health check for the instances.-lbHealthCheck :: Lens' LoadBalancer (Maybe HealthCheck)-lbHealthCheck = lens _loadBalancerHealthCheck (\s a -> s { _loadBalancerHealthCheck = a })---- | A list of EC2 instance IDs for the load balancer.-lbInstances :: Lens' LoadBalancer (Maybe [Val Text])-lbInstances = lens _loadBalancerInstances (\s a -> s { _loadBalancerInstances = a })---- | Generates a stickiness policy with sticky session lifetimes controlled by--- the lifetime of the browser (user-agent), or by a specified expiration--- period. This policy can be associated only with HTTP/HTTPS listeners.-lbLBCookieStickinessPolicy :: Lens' LoadBalancer (Maybe [LBCookieStickinessPolicy])-lbLBCookieStickinessPolicy = lens _loadBalancerLBCookieStickinessPolicy (\s a -> s { _loadBalancerLBCookieStickinessPolicy = a })---- | A name for the load balancer. If you don't specify a name, AWS--- CloudFormation generates a unique physical ID and uses that ID for the load--- balancer. The name must be unique within your set of load balancers. For--- more information, see Name Type. Important If you specify a name, you--- cannot do updates that require this resource to be replaced. You can still--- do updates that require no or some interruption. If you must replace the--- resource, specify a new name.-lbLoadBalancerName :: Lens' LoadBalancer (Maybe (Val Text))-lbLoadBalancerName = lens _loadBalancerLoadBalancerName (\s a -> s { _loadBalancerLoadBalancerName = a })---- | One or more listeners for this load balancer. Each listener must be--- registered for a specific port, and you cannot have more than one listener--- for a given port. Important If you update the property values for a--- listener specified by the Listeners property, AWS CloudFormation will--- delete the existing listener and create a new one with the updated--- properties. During the time that AWS CloudFormation is performing this--- action, clients will not be able to connect to the load balancer.-lbListeners :: Lens' LoadBalancer [ListenerProperty]-lbListeners = lens _loadBalancerListeners (\s a -> s { _loadBalancerListeners = a })---- | A list of elastic load balancing policies to apply to this elastic load--- balancer.-lbPolicies :: Lens' LoadBalancer (Maybe [ELBPolicy])-lbPolicies = lens _loadBalancerPolicies (\s a -> s { _loadBalancerPolicies = a })---- | For load balancers attached to an Amazon VPC, this parameter can be used--- to specify the type of load balancer to use. Specify internal to create an--- internal load balancer with a DNS name that resolves to private IP--- addresses or internet-facing to create a load balancer with a publicly--- resolvable DNS name, which resolves to public IP addresses. Note If you--- specify internal, you must specify subnets to associate with the load--- balancer, not Availability Zones.-lbScheme :: Lens' LoadBalancer (Maybe (Val Text))-lbScheme = lens _loadBalancerScheme (\s a -> s { _loadBalancerScheme = a })---- |-lbSecurityGroups :: Lens' LoadBalancer (Maybe [Val Text])-lbSecurityGroups = lens _loadBalancerSecurityGroups (\s a -> s { _loadBalancerSecurityGroups = a })---- | A list of subnet IDs in your virtual private cloud (VPC) to attach to--- your load balancer. Do not specify multiple subnets that are in the same--- Availability Zone. You can specify the AvailabilityZones or Subnets--- property, but not both. For more information about using Elastic Load--- Balancing in a VPC, see How Do I Use Elastic Load Balancing in Amazon VPC--- in the Elastic Load Balancing Developer Guide.-lbSubnets :: Lens' LoadBalancer (Maybe [Val Text])-lbSubnets = lens _loadBalancerSubnets (\s a -> s { _loadBalancerSubnets = a })---- | An arbitrary set of tags (key-value pairs) for this load balancer.-lbTags :: Lens' LoadBalancer (Maybe [ResourceTag])-lbTags = lens _loadBalancerTags (\s a -> s { _loadBalancerTags = a })
− library-gen/Stratosphere/Resources/LogGroup.hs
@@ -1,56 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::Logs::LogGroup resource creates an Amazon CloudWatch Logs log--- group that defines common properties for log streams, such as their--- retention and access control rules. Each log stream must belong to one log--- group.--module Stratosphere.Resources.LogGroup where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for LogGroup. See 'logGroup' for a more--- convenient constructor.-data LogGroup =-  LogGroup-  { _logGroupLogGroupName :: Maybe (Val Text)-  , _logGroupRetentionInDays :: Maybe (Val Integer')-  } deriving (Show, Generic)--instance ToJSON LogGroup where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 9, omitNothingFields = True }--instance FromJSON LogGroup where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 9, omitNothingFields = True }---- | Constructor for 'LogGroup' containing required fields as arguments.-logGroup-  :: LogGroup-logGroup  =-  LogGroup-  { _logGroupLogGroupName = Nothing-  , _logGroupRetentionInDays = Nothing-  }---- | A name for the log group. If you don't specify a name, AWS CloudFormation--- generates a unique physical ID and uses that ID for the table name. For--- more information, see Name Type. Important If you specify a name, you--- cannot do updates that require this resource to be replaced. You can still--- do updates that require no or some interruption. If you must replace the--- resource, specify a new name.-lgLogGroupName :: Lens' LogGroup (Maybe (Val Text))-lgLogGroupName = lens _logGroupLogGroupName (\s a -> s { _logGroupLogGroupName = a })---- | The number of days log events are kept in CloudWatch Logs. When a log--- event expires, CloudWatch Logs automatically deletes it. For valid values,--- see PutRetentionPolicy in the Amazon CloudWatch Logs API Reference.-lgRetentionInDays :: Lens' LogGroup (Maybe (Val Integer'))-lgRetentionInDays = lens _logGroupRetentionInDays (\s a -> s { _logGroupRetentionInDays = a })
− library-gen/Stratosphere/Resources/LogStream.hs
@@ -1,52 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::Logs::LogStream resource creates an Amazon CloudWatch Logs log--- stream in a log group. A log stream represents the sequence of events--- coming from an application instance or resource that you are monitoring.--- For more information, see Monitoring Log Files in the Amazon CloudWatch--- Developer Guide.--module Stratosphere.Resources.LogStream where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for LogStream. See 'logStream' for a more--- convenient constructor.-data LogStream =-  LogStream-  { _logStreamLogGroupName :: Val Text-  , _logStreamLogStreamName :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON LogStream where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }--instance FromJSON LogStream where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }---- | Constructor for 'LogStream' containing required fields as arguments.-logStream-  :: Val Text -- ^ 'lsLogGroupName'-  -> LogStream-logStream logGroupNamearg =-  LogStream-  { _logStreamLogGroupName = logGroupNamearg-  , _logStreamLogStreamName = Nothing-  }---- | The name of the log group where the log stream is created.-lsLogGroupName :: Lens' LogStream (Val Text)-lsLogGroupName = lens _logStreamLogGroupName (\s a -> s { _logStreamLogGroupName = a })---- | The name of the log stream to create. The name must be unique within the--- log group.-lsLogStreamName :: Lens' LogStream (Maybe (Val Text))-lsLogStreamName = lens _logStreamLogStreamName (\s a -> s { _logStreamLogStreamName = a })
+ library-gen/Stratosphere/Resources/LogsDestination.hs view
@@ -0,0 +1,63 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html++module Stratosphere.Resources.LogsDestination where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for LogsDestination. See 'logsDestination' for+-- | a more convenient constructor.+data LogsDestination =+  LogsDestination+  { _logsDestinationDestinationName :: Val Text+  , _logsDestinationDestinationPolicy :: Val Text+  , _logsDestinationRoleArn :: Val Text+  , _logsDestinationTargetArn :: Val Text+  } deriving (Show, Generic)++instance ToJSON LogsDestination where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++instance FromJSON LogsDestination where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++-- | Constructor for 'LogsDestination' containing required fields as+-- | arguments.+logsDestination+  :: Val Text -- ^ 'ldDestinationName'+  -> Val Text -- ^ 'ldDestinationPolicy'+  -> Val Text -- ^ 'ldRoleArn'+  -> Val Text -- ^ 'ldTargetArn'+  -> LogsDestination+logsDestination destinationNamearg destinationPolicyarg roleArnarg targetArnarg =+  LogsDestination+  { _logsDestinationDestinationName = destinationNamearg+  , _logsDestinationDestinationPolicy = destinationPolicyarg+  , _logsDestinationRoleArn = roleArnarg+  , _logsDestinationTargetArn = targetArnarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-destinationname+ldDestinationName :: Lens' LogsDestination (Val Text)+ldDestinationName = lens _logsDestinationDestinationName (\s a -> s { _logsDestinationDestinationName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-destinationpolicy+ldDestinationPolicy :: Lens' LogsDestination (Val Text)+ldDestinationPolicy = lens _logsDestinationDestinationPolicy (\s a -> s { _logsDestinationDestinationPolicy = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-rolearn+ldRoleArn :: Lens' LogsDestination (Val Text)+ldRoleArn = lens _logsDestinationRoleArn (\s a -> s { _logsDestinationRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-destination.html#cfn-logs-destination-targetarn+ldTargetArn :: Lens' LogsDestination (Val Text)+ldTargetArn = lens _logsDestinationTargetArn (\s a -> s { _logsDestinationTargetArn = a })
+ library-gen/Stratosphere/Resources/LogsLogGroup.hs view
@@ -0,0 +1,46 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html++module Stratosphere.Resources.LogsLogGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for LogsLogGroup. See 'logsLogGroup' for a more+-- | convenient constructor.+data LogsLogGroup =+  LogsLogGroup+  { _logsLogGroupLogGroupName :: Maybe (Val Text)+  , _logsLogGroupRetentionInDays :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON LogsLogGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }++instance FromJSON LogsLogGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }++-- | Constructor for 'LogsLogGroup' containing required fields as arguments.+logsLogGroup+  :: LogsLogGroup+logsLogGroup  =+  LogsLogGroup+  { _logsLogGroupLogGroupName = Nothing+  , _logsLogGroupRetentionInDays = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-cwl-loggroup-loggroupname+llgLogGroupName :: Lens' LogsLogGroup (Maybe (Val Text))+llgLogGroupName = lens _logsLogGroupLogGroupName (\s a -> s { _logsLogGroupLogGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-loggroup.html#cfn-cwl-loggroup-retentionindays+llgRetentionInDays :: Lens' LogsLogGroup (Maybe (Val Integer'))+llgRetentionInDays = lens _logsLogGroupRetentionInDays (\s a -> s { _logsLogGroupRetentionInDays = a })
+ library-gen/Stratosphere/Resources/LogsLogStream.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html++module Stratosphere.Resources.LogsLogStream where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for LogsLogStream. See 'logsLogStream' for a+-- | more convenient constructor.+data LogsLogStream =+  LogsLogStream+  { _logsLogStreamLogGroupName :: Val Text+  , _logsLogStreamLogStreamName :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON LogsLogStream where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++instance FromJSON LogsLogStream where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++-- | Constructor for 'LogsLogStream' containing required fields as arguments.+logsLogStream+  :: Val Text -- ^ 'llsLogGroupName'+  -> LogsLogStream+logsLogStream logGroupNamearg =+  LogsLogStream+  { _logsLogStreamLogGroupName = logGroupNamearg+  , _logsLogStreamLogStreamName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html#cfn-logs-logstream-loggroupname+llsLogGroupName :: Lens' LogsLogStream (Val Text)+llsLogGroupName = lens _logsLogStreamLogGroupName (\s a -> s { _logsLogStreamLogGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-logstream.html#cfn-logs-logstream-logstreamname+llsLogStreamName :: Lens' LogsLogStream (Maybe (Val Text))+llsLogStreamName = lens _logsLogStreamLogStreamName (\s a -> s { _logsLogStreamLogStreamName = a })
+ library-gen/Stratosphere/Resources/LogsMetricFilter.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html++module Stratosphere.Resources.LogsMetricFilter where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.LogsMetricFilterMetricTransformation++-- | Full data type definition for LogsMetricFilter. See 'logsMetricFilter'+-- | for a more convenient constructor.+data LogsMetricFilter =+  LogsMetricFilter+  { _logsMetricFilterFilterPattern :: Val Text+  , _logsMetricFilterLogGroupName :: Val Text+  , _logsMetricFilterMetricTransformations :: [LogsMetricFilterMetricTransformation]+  } deriving (Show, Generic)++instance ToJSON LogsMetricFilter where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++instance FromJSON LogsMetricFilter where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++-- | Constructor for 'LogsMetricFilter' containing required fields as+-- | arguments.+logsMetricFilter+  :: Val Text -- ^ 'lmfFilterPattern'+  -> Val Text -- ^ 'lmfLogGroupName'+  -> [LogsMetricFilterMetricTransformation] -- ^ 'lmfMetricTransformations'+  -> LogsMetricFilter+logsMetricFilter filterPatternarg logGroupNamearg metricTransformationsarg =+  LogsMetricFilter+  { _logsMetricFilterFilterPattern = filterPatternarg+  , _logsMetricFilterLogGroupName = logGroupNamearg+  , _logsMetricFilterMetricTransformations = metricTransformationsarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-cwl-metricfilter-filterpattern+lmfFilterPattern :: Lens' LogsMetricFilter (Val Text)+lmfFilterPattern = lens _logsMetricFilterFilterPattern (\s a -> s { _logsMetricFilterFilterPattern = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-cwl-metricfilter-loggroupname+lmfLogGroupName :: Lens' LogsMetricFilter (Val Text)+lmfLogGroupName = lens _logsMetricFilterLogGroupName (\s a -> s { _logsMetricFilterLogGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-metricfilter.html#cfn-cwl-metricfilter-metrictransformations+lmfMetricTransformations :: Lens' LogsMetricFilter [LogsMetricFilterMetricTransformation]+lmfMetricTransformations = lens _logsMetricFilterMetricTransformations (\s a -> s { _logsMetricFilterMetricTransformations = a })
+ library-gen/Stratosphere/Resources/LogsSubscriptionFilter.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html++module Stratosphere.Resources.LogsSubscriptionFilter where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for LogsSubscriptionFilter. See+-- | 'logsSubscriptionFilter' for a more convenient constructor.+data LogsSubscriptionFilter =+  LogsSubscriptionFilter+  { _logsSubscriptionFilterDestinationArn :: Val Text+  , _logsSubscriptionFilterFilterPattern :: Val Text+  , _logsSubscriptionFilterLogGroupName :: Val Text+  , _logsSubscriptionFilterRoleArn :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON LogsSubscriptionFilter where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++instance FromJSON LogsSubscriptionFilter where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 23, omitNothingFields = True }++-- | Constructor for 'LogsSubscriptionFilter' containing required fields as+-- | arguments.+logsSubscriptionFilter+  :: Val Text -- ^ 'lsfDestinationArn'+  -> Val Text -- ^ 'lsfFilterPattern'+  -> Val Text -- ^ 'lsfLogGroupName'+  -> LogsSubscriptionFilter+logsSubscriptionFilter destinationArnarg filterPatternarg logGroupNamearg =+  LogsSubscriptionFilter+  { _logsSubscriptionFilterDestinationArn = destinationArnarg+  , _logsSubscriptionFilterFilterPattern = filterPatternarg+  , _logsSubscriptionFilterLogGroupName = logGroupNamearg+  , _logsSubscriptionFilterRoleArn = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-destinationarn+lsfDestinationArn :: Lens' LogsSubscriptionFilter (Val Text)+lsfDestinationArn = lens _logsSubscriptionFilterDestinationArn (\s a -> s { _logsSubscriptionFilterDestinationArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-filterpattern+lsfFilterPattern :: Lens' LogsSubscriptionFilter (Val Text)+lsfFilterPattern = lens _logsSubscriptionFilterFilterPattern (\s a -> s { _logsSubscriptionFilterFilterPattern = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-loggroupname+lsfLogGroupName :: Lens' LogsSubscriptionFilter (Val Text)+lsfLogGroupName = lens _logsSubscriptionFilterLogGroupName (\s a -> s { _logsSubscriptionFilterLogGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-logs-subscriptionfilter.html#cfn-cwl-subscriptionfilter-rolearn+lsfRoleArn :: Lens' LogsSubscriptionFilter (Maybe (Val Text))+lsfRoleArn = lens _logsSubscriptionFilterRoleArn (\s a -> s { _logsSubscriptionFilterRoleArn = a })
− library-gen/Stratosphere/Resources/ManagedPolicy.hs
@@ -1,86 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | AWS::IAM::ManagedPolicy creates an AWS Identity and Access Management--- (IAM) managed policy for your AWS account that you can use to apply--- permissions to IAM users, groups, and roles. For more information about--- managed policies, see Managed Policies and Inline Policies in the IAM User--- Guide guide.--module Stratosphere.Resources.ManagedPolicy where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for ManagedPolicy. See 'managedPolicy' for a--- more convenient constructor.-data ManagedPolicy =-  ManagedPolicy-  { _managedPolicyDescription :: Maybe (Val Text)-  , _managedPolicyGroups :: Maybe [Val Text]-  , _managedPolicyPath :: Maybe (Val Text)-  , _managedPolicyPolicyDocument :: Object-  , _managedPolicyRoles :: Maybe [Val Text]-  , _managedPolicyUsers :: Maybe [Val Text]-  } deriving (Show, Generic)--instance ToJSON ManagedPolicy where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }--instance FromJSON ManagedPolicy where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }---- | Constructor for 'ManagedPolicy' containing required fields as arguments.-managedPolicy-  :: Object -- ^ 'mpPolicyDocument'-  -> ManagedPolicy-managedPolicy policyDocumentarg =-  ManagedPolicy-  { _managedPolicyDescription = Nothing-  , _managedPolicyGroups = Nothing-  , _managedPolicyPath = Nothing-  , _managedPolicyPolicyDocument = policyDocumentarg-  , _managedPolicyRoles = Nothing-  , _managedPolicyUsers = Nothing-  }---- | A description of the policy. For example, you can describe the--- permissions that are defined in the policy.-mpDescription :: Lens' ManagedPolicy (Maybe (Val Text))-mpDescription = lens _managedPolicyDescription (\s a -> s { _managedPolicyDescription = a })---- | The names of groups to attach to this policy.-mpGroups :: Lens' ManagedPolicy (Maybe [Val Text])-mpGroups = lens _managedPolicyGroups (\s a -> s { _managedPolicyGroups = a })---- | The path for the policy. By default, the path is /. For more information,--- see IAM Identifiers in the IAM User Guide guide.-mpPath :: Lens' ManagedPolicy (Maybe (Val Text))-mpPath = lens _managedPolicyPath (\s a -> s { _managedPolicyPath = a })---- | Policies that define the permissions for this managed policy. For more--- information about policy syntax, see IAM Policy Elements Reference in IAM--- User Guide.-mpPolicyDocument :: Lens' ManagedPolicy Object-mpPolicyDocument = lens _managedPolicyPolicyDocument (\s a -> s { _managedPolicyPolicyDocument = a })---- | The names of roles to attach to this policy. Note If a policy has a Ref--- to a role and if a resource (such as AWS::ECS::Service) also has a Ref to--- the same role, add a DependsOn attribute to the resource so that the--- resource depends on the policy. This dependency ensures that the role's--- policy is available throughout the resource's lifecycle. For example, when--- you delete a stack with an AWS::ECS::Service resource, the DependsOn--- attribute ensures that the AWS::ECS::Service resource can complete its--- deletion before its role's policy is deleted.-mpRoles :: Lens' ManagedPolicy (Maybe [Val Text])-mpRoles = lens _managedPolicyRoles (\s a -> s { _managedPolicyRoles = a })---- | The names of users to attach to this policy.-mpUsers :: Lens' ManagedPolicy (Maybe [Val Text])-mpUsers = lens _managedPolicyUsers (\s a -> s { _managedPolicyUsers = a })
− library-gen/Stratosphere/Resources/NatGateway.hs
@@ -1,55 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::EC2::NatGateway resource creates a network address translation--- (NAT) gateway in the specified public subnet. Use a NAT gateway to allow--- instances in a private subnet to connect to the Internet or to other AWS--- services, but prevent the Internet from initiating a connection with those--- instances. For more information and a sample architectural diagram, see NAT--- Gateways in the Amazon VPC User Guide.--module Stratosphere.Resources.NatGateway where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for NatGateway. See 'natGateway' for a more--- convenient constructor.-data NatGateway =-  NatGateway-  { _natGatewayAllocationId :: Val Text-  , _natGatewaySubnetId :: Val Text-  } deriving (Show, Generic)--instance ToJSON NatGateway where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 11, omitNothingFields = True }--instance FromJSON NatGateway where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 11, omitNothingFields = True }---- | Constructor for 'NatGateway' containing required fields as arguments.-natGateway-  :: Val Text -- ^ 'ngAllocationId'-  -> Val Text -- ^ 'ngSubnetId'-  -> NatGateway-natGateway allocationIdarg subnetIdarg =-  NatGateway-  { _natGatewayAllocationId = allocationIdarg-  , _natGatewaySubnetId = subnetIdarg-  }---- | The allocation ID of an Elastic IP address to associate with the NAT--- gateway. If the Elastic IP address is associated with another resource, you--- must first disassociate it.-ngAllocationId :: Lens' NatGateway (Val Text)-ngAllocationId = lens _natGatewayAllocationId (\s a -> s { _natGatewayAllocationId = a })---- | The public subnet in which to create the NAT gateway.-ngSubnetId :: Lens' NatGateway (Val Text)-ngSubnetId = lens _natGatewaySubnetId (\s a -> s { _natGatewaySubnetId = a })
+ library-gen/Stratosphere/Resources/OpsWorksApp.hs view
@@ -0,0 +1,112 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html++module Stratosphere.Resources.OpsWorksApp where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.OpsWorksAppSource+import Stratosphere.ResourceProperties.OpsWorksAppDataSource+import Stratosphere.ResourceProperties.OpsWorksAppEnvironmentVariable+import Stratosphere.ResourceProperties.OpsWorksAppSslConfiguration++-- | Full data type definition for OpsWorksApp. See 'opsWorksApp' for a more+-- | convenient constructor.+data OpsWorksApp =+  OpsWorksApp+  { _opsWorksAppAppSource :: Maybe OpsWorksAppSource+  , _opsWorksAppAttributes :: Maybe Object+  , _opsWorksAppDataSources :: Maybe [OpsWorksAppDataSource]+  , _opsWorksAppDescription :: Maybe (Val Text)+  , _opsWorksAppDomains :: Maybe [Val Text]+  , _opsWorksAppEnableSsl :: Maybe (Val Bool')+  , _opsWorksAppEnvironment :: Maybe [OpsWorksAppEnvironmentVariable]+  , _opsWorksAppName :: Val Text+  , _opsWorksAppShortname :: Maybe (Val Text)+  , _opsWorksAppSslConfiguration :: Maybe OpsWorksAppSslConfiguration+  , _opsWorksAppStackId :: Val Text+  , _opsWorksAppType :: Val Text+  } deriving (Show, Generic)++instance ToJSON OpsWorksApp where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 12, omitNothingFields = True }++instance FromJSON OpsWorksApp where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 12, omitNothingFields = True }++-- | Constructor for 'OpsWorksApp' containing required fields as arguments.+opsWorksApp+  :: Val Text -- ^ 'owaName'+  -> Val Text -- ^ 'owaStackId'+  -> Val Text -- ^ 'owaType'+  -> OpsWorksApp+opsWorksApp namearg stackIdarg typearg =+  OpsWorksApp+  { _opsWorksAppAppSource = Nothing+  , _opsWorksAppAttributes = Nothing+  , _opsWorksAppDataSources = Nothing+  , _opsWorksAppDescription = Nothing+  , _opsWorksAppDomains = Nothing+  , _opsWorksAppEnableSsl = Nothing+  , _opsWorksAppEnvironment = Nothing+  , _opsWorksAppName = namearg+  , _opsWorksAppShortname = Nothing+  , _opsWorksAppSslConfiguration = Nothing+  , _opsWorksAppStackId = stackIdarg+  , _opsWorksAppType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-appsource+owaAppSource :: Lens' OpsWorksApp (Maybe OpsWorksAppSource)+owaAppSource = lens _opsWorksAppAppSource (\s a -> s { _opsWorksAppAppSource = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-attributes+owaAttributes :: Lens' OpsWorksApp (Maybe Object)+owaAttributes = lens _opsWorksAppAttributes (\s a -> s { _opsWorksAppAttributes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-datasources+owaDataSources :: Lens' OpsWorksApp (Maybe [OpsWorksAppDataSource])+owaDataSources = lens _opsWorksAppDataSources (\s a -> s { _opsWorksAppDataSources = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-description+owaDescription :: Lens' OpsWorksApp (Maybe (Val Text))+owaDescription = lens _opsWorksAppDescription (\s a -> s { _opsWorksAppDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-domains+owaDomains :: Lens' OpsWorksApp (Maybe [Val Text])+owaDomains = lens _opsWorksAppDomains (\s a -> s { _opsWorksAppDomains = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-enablessl+owaEnableSsl :: Lens' OpsWorksApp (Maybe (Val Bool'))+owaEnableSsl = lens _opsWorksAppEnableSsl (\s a -> s { _opsWorksAppEnableSsl = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-environment+owaEnvironment :: Lens' OpsWorksApp (Maybe [OpsWorksAppEnvironmentVariable])+owaEnvironment = lens _opsWorksAppEnvironment (\s a -> s { _opsWorksAppEnvironment = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-name+owaName :: Lens' OpsWorksApp (Val Text)+owaName = lens _opsWorksAppName (\s a -> s { _opsWorksAppName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-shortname+owaShortname :: Lens' OpsWorksApp (Maybe (Val Text))+owaShortname = lens _opsWorksAppShortname (\s a -> s { _opsWorksAppShortname = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-sslconfiguration+owaSslConfiguration :: Lens' OpsWorksApp (Maybe OpsWorksAppSslConfiguration)+owaSslConfiguration = lens _opsWorksAppSslConfiguration (\s a -> s { _opsWorksAppSslConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-stackid+owaStackId :: Lens' OpsWorksApp (Val Text)+owaStackId = lens _opsWorksAppStackId (\s a -> s { _opsWorksAppStackId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-app.html#cfn-opsworks-app-type+owaType :: Lens' OpsWorksApp (Val Text)+owaType = lens _opsWorksAppType (\s a -> s { _opsWorksAppType = a })
+ library-gen/Stratosphere/Resources/OpsWorksElasticLoadBalancerAttachment.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elbattachment.html++module Stratosphere.Resources.OpsWorksElasticLoadBalancerAttachment where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksElasticLoadBalancerAttachment. See+-- | 'opsWorksElasticLoadBalancerAttachment' for a more convenient+-- | constructor.+data OpsWorksElasticLoadBalancerAttachment =+  OpsWorksElasticLoadBalancerAttachment+  { _opsWorksElasticLoadBalancerAttachmentElasticLoadBalancerName :: Val Text+  , _opsWorksElasticLoadBalancerAttachmentLayerId :: Val Text+  } deriving (Show, Generic)++instance ToJSON OpsWorksElasticLoadBalancerAttachment where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++instance FromJSON OpsWorksElasticLoadBalancerAttachment where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 38, omitNothingFields = True }++-- | Constructor for 'OpsWorksElasticLoadBalancerAttachment' containing+-- | required fields as arguments.+opsWorksElasticLoadBalancerAttachment+  :: Val Text -- ^ 'owelbaElasticLoadBalancerName'+  -> Val Text -- ^ 'owelbaLayerId'+  -> OpsWorksElasticLoadBalancerAttachment+opsWorksElasticLoadBalancerAttachment elasticLoadBalancerNamearg layerIdarg =+  OpsWorksElasticLoadBalancerAttachment+  { _opsWorksElasticLoadBalancerAttachmentElasticLoadBalancerName = elasticLoadBalancerNamearg+  , _opsWorksElasticLoadBalancerAttachmentLayerId = layerIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elbattachment.html#cfn-opsworks-elbattachment-elbname+owelbaElasticLoadBalancerName :: Lens' OpsWorksElasticLoadBalancerAttachment (Val Text)+owelbaElasticLoadBalancerName = lens _opsWorksElasticLoadBalancerAttachmentElasticLoadBalancerName (\s a -> s { _opsWorksElasticLoadBalancerAttachmentElasticLoadBalancerName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-elbattachment.html#cfn-opsworks-elbattachment-layerid+owelbaLayerId :: Lens' OpsWorksElasticLoadBalancerAttachment (Val Text)+owelbaLayerId = lens _opsWorksElasticLoadBalancerAttachmentLayerId (\s a -> s { _opsWorksElasticLoadBalancerAttachmentLayerId = a })
+ library-gen/Stratosphere/Resources/OpsWorksInstance.hs view
@@ -0,0 +1,165 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html++module Stratosphere.Resources.OpsWorksInstance where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.OpsWorksInstanceBlockDeviceMapping+import Stratosphere.ResourceProperties.OpsWorksInstanceTimeBasedAutoScaling++-- | Full data type definition for OpsWorksInstance. See 'opsWorksInstance'+-- | for a more convenient constructor.+data OpsWorksInstance =+  OpsWorksInstance+  { _opsWorksInstanceAgentVersion :: Maybe (Val Text)+  , _opsWorksInstanceAmiId :: Maybe (Val Text)+  , _opsWorksInstanceArchitecture :: Maybe (Val Text)+  , _opsWorksInstanceAutoScalingType :: Maybe (Val Text)+  , _opsWorksInstanceAvailabilityZone :: Maybe (Val Text)+  , _opsWorksInstanceBlockDeviceMappings :: Maybe [OpsWorksInstanceBlockDeviceMapping]+  , _opsWorksInstanceEbsOptimized :: Maybe (Val Bool')+  , _opsWorksInstanceElasticIps :: Maybe [Val Text]+  , _opsWorksInstanceHostname :: Maybe (Val Text)+  , _opsWorksInstanceInstallUpdatesOnBoot :: Maybe (Val Bool')+  , _opsWorksInstanceInstanceType :: Val Text+  , _opsWorksInstanceLayerIds :: [Val Text]+  , _opsWorksInstanceOs :: Maybe (Val Text)+  , _opsWorksInstanceRootDeviceType :: Maybe (Val Text)+  , _opsWorksInstanceSshKeyName :: Maybe (Val Text)+  , _opsWorksInstanceStackId :: Val Text+  , _opsWorksInstanceSubnetId :: Maybe (Val Text)+  , _opsWorksInstanceTenancy :: Maybe (Val Text)+  , _opsWorksInstanceTimeBasedAutoScaling :: Maybe OpsWorksInstanceTimeBasedAutoScaling+  , _opsWorksInstanceVirtualizationType :: Maybe (Val Text)+  , _opsWorksInstanceVolumes :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON OpsWorksInstance where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++instance FromJSON OpsWorksInstance where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++-- | Constructor for 'OpsWorksInstance' containing required fields as+-- | arguments.+opsWorksInstance+  :: Val Text -- ^ 'owiInstanceType'+  -> [Val Text] -- ^ 'owiLayerIds'+  -> Val Text -- ^ 'owiStackId'+  -> OpsWorksInstance+opsWorksInstance instanceTypearg layerIdsarg stackIdarg =+  OpsWorksInstance+  { _opsWorksInstanceAgentVersion = Nothing+  , _opsWorksInstanceAmiId = Nothing+  , _opsWorksInstanceArchitecture = Nothing+  , _opsWorksInstanceAutoScalingType = Nothing+  , _opsWorksInstanceAvailabilityZone = Nothing+  , _opsWorksInstanceBlockDeviceMappings = Nothing+  , _opsWorksInstanceEbsOptimized = Nothing+  , _opsWorksInstanceElasticIps = Nothing+  , _opsWorksInstanceHostname = Nothing+  , _opsWorksInstanceInstallUpdatesOnBoot = Nothing+  , _opsWorksInstanceInstanceType = instanceTypearg+  , _opsWorksInstanceLayerIds = layerIdsarg+  , _opsWorksInstanceOs = Nothing+  , _opsWorksInstanceRootDeviceType = Nothing+  , _opsWorksInstanceSshKeyName = Nothing+  , _opsWorksInstanceStackId = stackIdarg+  , _opsWorksInstanceSubnetId = Nothing+  , _opsWorksInstanceTenancy = Nothing+  , _opsWorksInstanceTimeBasedAutoScaling = Nothing+  , _opsWorksInstanceVirtualizationType = Nothing+  , _opsWorksInstanceVolumes = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-agentversion+owiAgentVersion :: Lens' OpsWorksInstance (Maybe (Val Text))+owiAgentVersion = lens _opsWorksInstanceAgentVersion (\s a -> s { _opsWorksInstanceAgentVersion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-amiid+owiAmiId :: Lens' OpsWorksInstance (Maybe (Val Text))+owiAmiId = lens _opsWorksInstanceAmiId (\s a -> s { _opsWorksInstanceAmiId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-architecture+owiArchitecture :: Lens' OpsWorksInstance (Maybe (Val Text))+owiArchitecture = lens _opsWorksInstanceArchitecture (\s a -> s { _opsWorksInstanceArchitecture = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-autoscalingtype+owiAutoScalingType :: Lens' OpsWorksInstance (Maybe (Val Text))+owiAutoScalingType = lens _opsWorksInstanceAutoScalingType (\s a -> s { _opsWorksInstanceAutoScalingType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-availabilityzone+owiAvailabilityZone :: Lens' OpsWorksInstance (Maybe (Val Text))+owiAvailabilityZone = lens _opsWorksInstanceAvailabilityZone (\s a -> s { _opsWorksInstanceAvailabilityZone = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-blockdevicemappings+owiBlockDeviceMappings :: Lens' OpsWorksInstance (Maybe [OpsWorksInstanceBlockDeviceMapping])+owiBlockDeviceMappings = lens _opsWorksInstanceBlockDeviceMappings (\s a -> s { _opsWorksInstanceBlockDeviceMappings = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-ebsoptimized+owiEbsOptimized :: Lens' OpsWorksInstance (Maybe (Val Bool'))+owiEbsOptimized = lens _opsWorksInstanceEbsOptimized (\s a -> s { _opsWorksInstanceEbsOptimized = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-elasticips+owiElasticIps :: Lens' OpsWorksInstance (Maybe [Val Text])+owiElasticIps = lens _opsWorksInstanceElasticIps (\s a -> s { _opsWorksInstanceElasticIps = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-hostname+owiHostname :: Lens' OpsWorksInstance (Maybe (Val Text))+owiHostname = lens _opsWorksInstanceHostname (\s a -> s { _opsWorksInstanceHostname = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-installupdatesonboot+owiInstallUpdatesOnBoot :: Lens' OpsWorksInstance (Maybe (Val Bool'))+owiInstallUpdatesOnBoot = lens _opsWorksInstanceInstallUpdatesOnBoot (\s a -> s { _opsWorksInstanceInstallUpdatesOnBoot = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-instancetype+owiInstanceType :: Lens' OpsWorksInstance (Val Text)+owiInstanceType = lens _opsWorksInstanceInstanceType (\s a -> s { _opsWorksInstanceInstanceType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-layerids+owiLayerIds :: Lens' OpsWorksInstance [Val Text]+owiLayerIds = lens _opsWorksInstanceLayerIds (\s a -> s { _opsWorksInstanceLayerIds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-os+owiOs :: Lens' OpsWorksInstance (Maybe (Val Text))+owiOs = lens _opsWorksInstanceOs (\s a -> s { _opsWorksInstanceOs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-rootdevicetype+owiRootDeviceType :: Lens' OpsWorksInstance (Maybe (Val Text))+owiRootDeviceType = lens _opsWorksInstanceRootDeviceType (\s a -> s { _opsWorksInstanceRootDeviceType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-sshkeyname+owiSshKeyName :: Lens' OpsWorksInstance (Maybe (Val Text))+owiSshKeyName = lens _opsWorksInstanceSshKeyName (\s a -> s { _opsWorksInstanceSshKeyName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-stackid+owiStackId :: Lens' OpsWorksInstance (Val Text)+owiStackId = lens _opsWorksInstanceStackId (\s a -> s { _opsWorksInstanceStackId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-subnetid+owiSubnetId :: Lens' OpsWorksInstance (Maybe (Val Text))+owiSubnetId = lens _opsWorksInstanceSubnetId (\s a -> s { _opsWorksInstanceSubnetId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-tenancy+owiTenancy :: Lens' OpsWorksInstance (Maybe (Val Text))+owiTenancy = lens _opsWorksInstanceTenancy (\s a -> s { _opsWorksInstanceTenancy = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-timebasedautoscaling+owiTimeBasedAutoScaling :: Lens' OpsWorksInstance (Maybe OpsWorksInstanceTimeBasedAutoScaling)+owiTimeBasedAutoScaling = lens _opsWorksInstanceTimeBasedAutoScaling (\s a -> s { _opsWorksInstanceTimeBasedAutoScaling = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-virtualizationtype+owiVirtualizationType :: Lens' OpsWorksInstance (Maybe (Val Text))+owiVirtualizationType = lens _opsWorksInstanceVirtualizationType (\s a -> s { _opsWorksInstanceVirtualizationType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-instance.html#cfn-opsworks-instance-volumes+owiVolumes :: Lens' OpsWorksInstance (Maybe [Val Text])+owiVolumes = lens _opsWorksInstanceVolumes (\s a -> s { _opsWorksInstanceVolumes = a })
+ library-gen/Stratosphere/Resources/OpsWorksLayer.hs view
@@ -0,0 +1,152 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html++module Stratosphere.Resources.OpsWorksLayer where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.OpsWorksLayerRecipes+import Stratosphere.ResourceProperties.OpsWorksLayerLifecycleEventConfiguration+import Stratosphere.ResourceProperties.OpsWorksLayerLoadBasedAutoScaling+import Stratosphere.ResourceProperties.OpsWorksLayerVolumeConfiguration++-- | Full data type definition for OpsWorksLayer. See 'opsWorksLayer' for a+-- | more convenient constructor.+data OpsWorksLayer =+  OpsWorksLayer+  { _opsWorksLayerAttributes :: Maybe Object+  , _opsWorksLayerAutoAssignElasticIps :: Val Bool'+  , _opsWorksLayerAutoAssignPublicIps :: Val Bool'+  , _opsWorksLayerCustomInstanceProfileArn :: Maybe (Val Text)+  , _opsWorksLayerCustomJson :: Maybe Object+  , _opsWorksLayerCustomRecipes :: Maybe OpsWorksLayerRecipes+  , _opsWorksLayerCustomSecurityGroupIds :: Maybe [Val Text]+  , _opsWorksLayerEnableAutoHealing :: Val Bool'+  , _opsWorksLayerInstallUpdatesOnBoot :: Maybe (Val Bool')+  , _opsWorksLayerLifecycleEventConfiguration :: Maybe OpsWorksLayerLifecycleEventConfiguration+  , _opsWorksLayerLoadBasedAutoScaling :: Maybe OpsWorksLayerLoadBasedAutoScaling+  , _opsWorksLayerName :: Val Text+  , _opsWorksLayerPackages :: Maybe [Val Text]+  , _opsWorksLayerShortname :: Val Text+  , _opsWorksLayerStackId :: Val Text+  , _opsWorksLayerType :: Val Text+  , _opsWorksLayerUseEbsOptimizedInstances :: Maybe (Val Bool')+  , _opsWorksLayerVolumeConfigurations :: Maybe [OpsWorksLayerVolumeConfiguration]+  } deriving (Show, Generic)++instance ToJSON OpsWorksLayer where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++instance FromJSON OpsWorksLayer where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++-- | Constructor for 'OpsWorksLayer' containing required fields as arguments.+opsWorksLayer+  :: Val Bool' -- ^ 'owlAutoAssignElasticIps'+  -> Val Bool' -- ^ 'owlAutoAssignPublicIps'+  -> Val Bool' -- ^ 'owlEnableAutoHealing'+  -> Val Text -- ^ 'owlName'+  -> Val Text -- ^ 'owlShortname'+  -> Val Text -- ^ 'owlStackId'+  -> Val Text -- ^ 'owlType'+  -> OpsWorksLayer+opsWorksLayer autoAssignElasticIpsarg autoAssignPublicIpsarg enableAutoHealingarg namearg shortnamearg stackIdarg typearg =+  OpsWorksLayer+  { _opsWorksLayerAttributes = Nothing+  , _opsWorksLayerAutoAssignElasticIps = autoAssignElasticIpsarg+  , _opsWorksLayerAutoAssignPublicIps = autoAssignPublicIpsarg+  , _opsWorksLayerCustomInstanceProfileArn = Nothing+  , _opsWorksLayerCustomJson = Nothing+  , _opsWorksLayerCustomRecipes = Nothing+  , _opsWorksLayerCustomSecurityGroupIds = Nothing+  , _opsWorksLayerEnableAutoHealing = enableAutoHealingarg+  , _opsWorksLayerInstallUpdatesOnBoot = Nothing+  , _opsWorksLayerLifecycleEventConfiguration = Nothing+  , _opsWorksLayerLoadBasedAutoScaling = Nothing+  , _opsWorksLayerName = namearg+  , _opsWorksLayerPackages = Nothing+  , _opsWorksLayerShortname = shortnamearg+  , _opsWorksLayerStackId = stackIdarg+  , _opsWorksLayerType = typearg+  , _opsWorksLayerUseEbsOptimizedInstances = Nothing+  , _opsWorksLayerVolumeConfigurations = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-attributes+owlAttributes :: Lens' OpsWorksLayer (Maybe Object)+owlAttributes = lens _opsWorksLayerAttributes (\s a -> s { _opsWorksLayerAttributes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-autoassignelasticips+owlAutoAssignElasticIps :: Lens' OpsWorksLayer (Val Bool')+owlAutoAssignElasticIps = lens _opsWorksLayerAutoAssignElasticIps (\s a -> s { _opsWorksLayerAutoAssignElasticIps = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-autoassignpublicips+owlAutoAssignPublicIps :: Lens' OpsWorksLayer (Val Bool')+owlAutoAssignPublicIps = lens _opsWorksLayerAutoAssignPublicIps (\s a -> s { _opsWorksLayerAutoAssignPublicIps = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-custominstanceprofilearn+owlCustomInstanceProfileArn :: Lens' OpsWorksLayer (Maybe (Val Text))+owlCustomInstanceProfileArn = lens _opsWorksLayerCustomInstanceProfileArn (\s a -> s { _opsWorksLayerCustomInstanceProfileArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-customjson+owlCustomJson :: Lens' OpsWorksLayer (Maybe Object)+owlCustomJson = lens _opsWorksLayerCustomJson (\s a -> s { _opsWorksLayerCustomJson = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-customrecipes+owlCustomRecipes :: Lens' OpsWorksLayer (Maybe OpsWorksLayerRecipes)+owlCustomRecipes = lens _opsWorksLayerCustomRecipes (\s a -> s { _opsWorksLayerCustomRecipes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-customsecuritygroupids+owlCustomSecurityGroupIds :: Lens' OpsWorksLayer (Maybe [Val Text])+owlCustomSecurityGroupIds = lens _opsWorksLayerCustomSecurityGroupIds (\s a -> s { _opsWorksLayerCustomSecurityGroupIds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-enableautohealing+owlEnableAutoHealing :: Lens' OpsWorksLayer (Val Bool')+owlEnableAutoHealing = lens _opsWorksLayerEnableAutoHealing (\s a -> s { _opsWorksLayerEnableAutoHealing = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-installupdatesonboot+owlInstallUpdatesOnBoot :: Lens' OpsWorksLayer (Maybe (Val Bool'))+owlInstallUpdatesOnBoot = lens _opsWorksLayerInstallUpdatesOnBoot (\s a -> s { _opsWorksLayerInstallUpdatesOnBoot = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-lifecycleeventconfiguration+owlLifecycleEventConfiguration :: Lens' OpsWorksLayer (Maybe OpsWorksLayerLifecycleEventConfiguration)+owlLifecycleEventConfiguration = lens _opsWorksLayerLifecycleEventConfiguration (\s a -> s { _opsWorksLayerLifecycleEventConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-loadbasedautoscaling+owlLoadBasedAutoScaling :: Lens' OpsWorksLayer (Maybe OpsWorksLayerLoadBasedAutoScaling)+owlLoadBasedAutoScaling = lens _opsWorksLayerLoadBasedAutoScaling (\s a -> s { _opsWorksLayerLoadBasedAutoScaling = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-name+owlName :: Lens' OpsWorksLayer (Val Text)+owlName = lens _opsWorksLayerName (\s a -> s { _opsWorksLayerName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-packages+owlPackages :: Lens' OpsWorksLayer (Maybe [Val Text])+owlPackages = lens _opsWorksLayerPackages (\s a -> s { _opsWorksLayerPackages = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-shortname+owlShortname :: Lens' OpsWorksLayer (Val Text)+owlShortname = lens _opsWorksLayerShortname (\s a -> s { _opsWorksLayerShortname = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-stackid+owlStackId :: Lens' OpsWorksLayer (Val Text)+owlStackId = lens _opsWorksLayerStackId (\s a -> s { _opsWorksLayerStackId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-type+owlType :: Lens' OpsWorksLayer (Val Text)+owlType = lens _opsWorksLayerType (\s a -> s { _opsWorksLayerType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-useebsoptimizedinstances+owlUseEbsOptimizedInstances :: Lens' OpsWorksLayer (Maybe (Val Bool'))+owlUseEbsOptimizedInstances = lens _opsWorksLayerUseEbsOptimizedInstances (\s a -> s { _opsWorksLayerUseEbsOptimizedInstances = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-layer.html#cfn-opsworks-layer-volumeconfigurations+owlVolumeConfigurations :: Lens' OpsWorksLayer (Maybe [OpsWorksLayerVolumeConfiguration])+owlVolumeConfigurations = lens _opsWorksLayerVolumeConfigurations (\s a -> s { _opsWorksLayerVolumeConfigurations = a })
+ library-gen/Stratosphere/Resources/OpsWorksStack.hs view
@@ -0,0 +1,185 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html++module Stratosphere.Resources.OpsWorksStack where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.OpsWorksStackChefConfiguration+import Stratosphere.ResourceProperties.OpsWorksStackStackConfigurationManager+import Stratosphere.ResourceProperties.OpsWorksStackSource+import Stratosphere.ResourceProperties.OpsWorksStackElasticIp+import Stratosphere.ResourceProperties.OpsWorksStackRdsDbInstance++-- | Full data type definition for OpsWorksStack. See 'opsWorksStack' for a+-- | more convenient constructor.+data OpsWorksStack =+  OpsWorksStack+  { _opsWorksStackAgentVersion :: Maybe (Val Text)+  , _opsWorksStackAttributes :: Maybe Object+  , _opsWorksStackChefConfiguration :: Maybe OpsWorksStackChefConfiguration+  , _opsWorksStackCloneAppIds :: Maybe [Val Text]+  , _opsWorksStackClonePermissions :: Maybe (Val Bool')+  , _opsWorksStackConfigurationManager :: Maybe OpsWorksStackStackConfigurationManager+  , _opsWorksStackCustomCookbooksSource :: Maybe OpsWorksStackSource+  , _opsWorksStackCustomJson :: Maybe Object+  , _opsWorksStackDefaultAvailabilityZone :: Maybe (Val Text)+  , _opsWorksStackDefaultInstanceProfileArn :: Val Text+  , _opsWorksStackDefaultOs :: Maybe (Val Text)+  , _opsWorksStackDefaultRootDeviceType :: Maybe (Val Text)+  , _opsWorksStackDefaultSshKeyName :: Maybe (Val Text)+  , _opsWorksStackDefaultSubnetId :: Maybe (Val Text)+  , _opsWorksStackEcsClusterArn :: Maybe (Val Text)+  , _opsWorksStackElasticIps :: Maybe [OpsWorksStackElasticIp]+  , _opsWorksStackHostnameTheme :: Maybe (Val Text)+  , _opsWorksStackName :: Val Text+  , _opsWorksStackRdsDbInstances :: Maybe [OpsWorksStackRdsDbInstance]+  , _opsWorksStackServiceRoleArn :: Val Text+  , _opsWorksStackSourceStackId :: Maybe (Val Text)+  , _opsWorksStackUseCustomCookbooks :: Maybe (Val Bool')+  , _opsWorksStackUseOpsworksSecurityGroups :: Maybe (Val Bool')+  , _opsWorksStackVpcId :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON OpsWorksStack where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++instance FromJSON OpsWorksStack where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++-- | Constructor for 'OpsWorksStack' containing required fields as arguments.+opsWorksStack+  :: Val Text -- ^ 'owsDefaultInstanceProfileArn'+  -> Val Text -- ^ 'owsName'+  -> Val Text -- ^ 'owsServiceRoleArn'+  -> OpsWorksStack+opsWorksStack defaultInstanceProfileArnarg namearg serviceRoleArnarg =+  OpsWorksStack+  { _opsWorksStackAgentVersion = Nothing+  , _opsWorksStackAttributes = Nothing+  , _opsWorksStackChefConfiguration = Nothing+  , _opsWorksStackCloneAppIds = Nothing+  , _opsWorksStackClonePermissions = Nothing+  , _opsWorksStackConfigurationManager = Nothing+  , _opsWorksStackCustomCookbooksSource = Nothing+  , _opsWorksStackCustomJson = Nothing+  , _opsWorksStackDefaultAvailabilityZone = Nothing+  , _opsWorksStackDefaultInstanceProfileArn = defaultInstanceProfileArnarg+  , _opsWorksStackDefaultOs = Nothing+  , _opsWorksStackDefaultRootDeviceType = Nothing+  , _opsWorksStackDefaultSshKeyName = Nothing+  , _opsWorksStackDefaultSubnetId = Nothing+  , _opsWorksStackEcsClusterArn = Nothing+  , _opsWorksStackElasticIps = Nothing+  , _opsWorksStackHostnameTheme = Nothing+  , _opsWorksStackName = namearg+  , _opsWorksStackRdsDbInstances = Nothing+  , _opsWorksStackServiceRoleArn = serviceRoleArnarg+  , _opsWorksStackSourceStackId = Nothing+  , _opsWorksStackUseCustomCookbooks = Nothing+  , _opsWorksStackUseOpsworksSecurityGroups = Nothing+  , _opsWorksStackVpcId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-agentversion+owsAgentVersion :: Lens' OpsWorksStack (Maybe (Val Text))+owsAgentVersion = lens _opsWorksStackAgentVersion (\s a -> s { _opsWorksStackAgentVersion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-attributes+owsAttributes :: Lens' OpsWorksStack (Maybe Object)+owsAttributes = lens _opsWorksStackAttributes (\s a -> s { _opsWorksStackAttributes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-chefconfiguration+owsChefConfiguration :: Lens' OpsWorksStack (Maybe OpsWorksStackChefConfiguration)+owsChefConfiguration = lens _opsWorksStackChefConfiguration (\s a -> s { _opsWorksStackChefConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-cloneappids+owsCloneAppIds :: Lens' OpsWorksStack (Maybe [Val Text])+owsCloneAppIds = lens _opsWorksStackCloneAppIds (\s a -> s { _opsWorksStackCloneAppIds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-clonepermissions+owsClonePermissions :: Lens' OpsWorksStack (Maybe (Val Bool'))+owsClonePermissions = lens _opsWorksStackClonePermissions (\s a -> s { _opsWorksStackClonePermissions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-configmanager+owsConfigurationManager :: Lens' OpsWorksStack (Maybe OpsWorksStackStackConfigurationManager)+owsConfigurationManager = lens _opsWorksStackConfigurationManager (\s a -> s { _opsWorksStackConfigurationManager = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-custcookbooksource+owsCustomCookbooksSource :: Lens' OpsWorksStack (Maybe OpsWorksStackSource)+owsCustomCookbooksSource = lens _opsWorksStackCustomCookbooksSource (\s a -> s { _opsWorksStackCustomCookbooksSource = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-custjson+owsCustomJson :: Lens' OpsWorksStack (Maybe Object)+owsCustomJson = lens _opsWorksStackCustomJson (\s a -> s { _opsWorksStackCustomJson = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-defaultaz+owsDefaultAvailabilityZone :: Lens' OpsWorksStack (Maybe (Val Text))+owsDefaultAvailabilityZone = lens _opsWorksStackDefaultAvailabilityZone (\s a -> s { _opsWorksStackDefaultAvailabilityZone = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-defaultinstanceprof+owsDefaultInstanceProfileArn :: Lens' OpsWorksStack (Val Text)+owsDefaultInstanceProfileArn = lens _opsWorksStackDefaultInstanceProfileArn (\s a -> s { _opsWorksStackDefaultInstanceProfileArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-defaultos+owsDefaultOs :: Lens' OpsWorksStack (Maybe (Val Text))+owsDefaultOs = lens _opsWorksStackDefaultOs (\s a -> s { _opsWorksStackDefaultOs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-defaultrootdevicetype+owsDefaultRootDeviceType :: Lens' OpsWorksStack (Maybe (Val Text))+owsDefaultRootDeviceType = lens _opsWorksStackDefaultRootDeviceType (\s a -> s { _opsWorksStackDefaultRootDeviceType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-defaultsshkeyname+owsDefaultSshKeyName :: Lens' OpsWorksStack (Maybe (Val Text))+owsDefaultSshKeyName = lens _opsWorksStackDefaultSshKeyName (\s a -> s { _opsWorksStackDefaultSshKeyName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#defaultsubnet+owsDefaultSubnetId :: Lens' OpsWorksStack (Maybe (Val Text))+owsDefaultSubnetId = lens _opsWorksStackDefaultSubnetId (\s a -> s { _opsWorksStackDefaultSubnetId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-ecsclusterarn+owsEcsClusterArn :: Lens' OpsWorksStack (Maybe (Val Text))+owsEcsClusterArn = lens _opsWorksStackEcsClusterArn (\s a -> s { _opsWorksStackEcsClusterArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-elasticips+owsElasticIps :: Lens' OpsWorksStack (Maybe [OpsWorksStackElasticIp])+owsElasticIps = lens _opsWorksStackElasticIps (\s a -> s { _opsWorksStackElasticIps = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-hostnametheme+owsHostnameTheme :: Lens' OpsWorksStack (Maybe (Val Text))+owsHostnameTheme = lens _opsWorksStackHostnameTheme (\s a -> s { _opsWorksStackHostnameTheme = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-name+owsName :: Lens' OpsWorksStack (Val Text)+owsName = lens _opsWorksStackName (\s a -> s { _opsWorksStackName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-rdsdbinstances+owsRdsDbInstances :: Lens' OpsWorksStack (Maybe [OpsWorksStackRdsDbInstance])+owsRdsDbInstances = lens _opsWorksStackRdsDbInstances (\s a -> s { _opsWorksStackRdsDbInstances = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-servicerolearn+owsServiceRoleArn :: Lens' OpsWorksStack (Val Text)+owsServiceRoleArn = lens _opsWorksStackServiceRoleArn (\s a -> s { _opsWorksStackServiceRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-sourcestackid+owsSourceStackId :: Lens' OpsWorksStack (Maybe (Val Text))+owsSourceStackId = lens _opsWorksStackSourceStackId (\s a -> s { _opsWorksStackSourceStackId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#usecustcookbooks+owsUseCustomCookbooks :: Lens' OpsWorksStack (Maybe (Val Bool'))+owsUseCustomCookbooks = lens _opsWorksStackUseCustomCookbooks (\s a -> s { _opsWorksStackUseCustomCookbooks = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-useopsworkssecuritygroups+owsUseOpsworksSecurityGroups :: Lens' OpsWorksStack (Maybe (Val Bool'))+owsUseOpsworksSecurityGroups = lens _opsWorksStackUseOpsworksSecurityGroups (\s a -> s { _opsWorksStackUseOpsworksSecurityGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-stack.html#cfn-opsworks-stack-vpcid+owsVpcId :: Lens' OpsWorksStack (Maybe (Val Text))+owsVpcId = lens _opsWorksStackVpcId (\s a -> s { _opsWorksStackVpcId = a })
+ library-gen/Stratosphere/Resources/OpsWorksUserProfile.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html++module Stratosphere.Resources.OpsWorksUserProfile where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksUserProfile. See+-- | 'opsWorksUserProfile' for a more convenient constructor.+data OpsWorksUserProfile =+  OpsWorksUserProfile+  { _opsWorksUserProfileAllowSelfManagement :: Maybe (Val Bool')+  , _opsWorksUserProfileIamUserArn :: Val Text+  , _opsWorksUserProfileSshPublicKey :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON OpsWorksUserProfile where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++instance FromJSON OpsWorksUserProfile where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++-- | Constructor for 'OpsWorksUserProfile' containing required fields as+-- | arguments.+opsWorksUserProfile+  :: Val Text -- ^ 'owupIamUserArn'+  -> OpsWorksUserProfile+opsWorksUserProfile iamUserArnarg =+  OpsWorksUserProfile+  { _opsWorksUserProfileAllowSelfManagement = Nothing+  , _opsWorksUserProfileIamUserArn = iamUserArnarg+  , _opsWorksUserProfileSshPublicKey = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html#cfn-opsworks-userprofile-allowselfmanagement+owupAllowSelfManagement :: Lens' OpsWorksUserProfile (Maybe (Val Bool'))+owupAllowSelfManagement = lens _opsWorksUserProfileAllowSelfManagement (\s a -> s { _opsWorksUserProfileAllowSelfManagement = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html#cfn-opsworks-userprofile-iamuserarn+owupIamUserArn :: Lens' OpsWorksUserProfile (Val Text)+owupIamUserArn = lens _opsWorksUserProfileIamUserArn (\s a -> s { _opsWorksUserProfileIamUserArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-userprofile.html#cfn-opsworks-userprofile-sshpublickey+owupSshPublicKey :: Lens' OpsWorksUserProfile (Maybe (Val Text))+owupSshPublicKey = lens _opsWorksUserProfileSshPublicKey (\s a -> s { _opsWorksUserProfileSshPublicKey = a })
+ library-gen/Stratosphere/Resources/OpsWorksVolume.hs view
@@ -0,0 +1,60 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html++module Stratosphere.Resources.OpsWorksVolume where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for OpsWorksVolume. See 'opsWorksVolume' for a+-- | more convenient constructor.+data OpsWorksVolume =+  OpsWorksVolume+  { _opsWorksVolumeEc2VolumeId :: Val Text+  , _opsWorksVolumeMountPoint :: Maybe (Val Text)+  , _opsWorksVolumeName :: Maybe (Val Text)+  , _opsWorksVolumeStackId :: Val Text+  } deriving (Show, Generic)++instance ToJSON OpsWorksVolume where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++instance FromJSON OpsWorksVolume where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++-- | Constructor for 'OpsWorksVolume' containing required fields as arguments.+opsWorksVolume+  :: Val Text -- ^ 'owvEc2VolumeId'+  -> Val Text -- ^ 'owvStackId'+  -> OpsWorksVolume+opsWorksVolume ec2VolumeIdarg stackIdarg =+  OpsWorksVolume+  { _opsWorksVolumeEc2VolumeId = ec2VolumeIdarg+  , _opsWorksVolumeMountPoint = Nothing+  , _opsWorksVolumeName = Nothing+  , _opsWorksVolumeStackId = stackIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html#cfn-opsworks-volume-ec2volumeid+owvEc2VolumeId :: Lens' OpsWorksVolume (Val Text)+owvEc2VolumeId = lens _opsWorksVolumeEc2VolumeId (\s a -> s { _opsWorksVolumeEc2VolumeId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html#cfn-opsworks-volume-mountpoint+owvMountPoint :: Lens' OpsWorksVolume (Maybe (Val Text))+owvMountPoint = lens _opsWorksVolumeMountPoint (\s a -> s { _opsWorksVolumeMountPoint = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html#cfn-opsworks-volume-name+owvName :: Lens' OpsWorksVolume (Maybe (Val Text))+owvName = lens _opsWorksVolumeName (\s a -> s { _opsWorksVolumeName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-opsworks-volume.html#cfn-opsworks-volume-stackid+owvStackId :: Lens' OpsWorksVolume (Val Text)+owvStackId = lens _opsWorksVolumeStackId (\s a -> s { _opsWorksVolumeStackId = a })
− library-gen/Stratosphere/Resources/Policy.hs
@@ -1,78 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::IAM::Policy resource associates an IAM policy with IAM users,--- roles, or groups. For more information about IAM policies, see Overview of--- IAM Policies in the IAM User Guide guide.--module Stratosphere.Resources.Policy where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for Policy. See 'policy' for a more convenient--- constructor.-data Policy =-  Policy-  { _policyGroups :: Maybe [Val Text]-  , _policyPolicyDocument :: Object-  , _policyPolicyName :: Val Text-  , _policyRoles :: Maybe [Val Text]-  , _policyUsers :: Maybe [Val Text]-  } deriving (Show, Generic)--instance ToJSON Policy where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 7, omitNothingFields = True }--instance FromJSON Policy where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 7, omitNothingFields = True }---- | Constructor for 'Policy' containing required fields as arguments.-policy-  :: Object -- ^ 'pPolicyDocument'-  -> Val Text -- ^ 'pPolicyName'-  -> Policy-policy policyDocumentarg policyNamearg =-  Policy-  { _policyGroups = Nothing-  , _policyPolicyDocument = policyDocumentarg-  , _policyPolicyName = policyNamearg-  , _policyRoles = Nothing-  , _policyUsers = Nothing-  }---- | The names of groups to which you want to add the policy.-pGroups :: Lens' Policy (Maybe [Val Text])-pGroups = lens _policyGroups (\s a -> s { _policyGroups = a })---- | A policy document that contains permissions to add to the specified users--- or groups.-pPolicyDocument :: Lens' Policy Object-pPolicyDocument = lens _policyPolicyDocument (\s a -> s { _policyPolicyDocument = a })---- | The name of the policy. If you specify multiple policies for an entity,--- specify unique names. For example, if you specify a list of policies for an--- IAM role, each policy must have a unique name.-pPolicyName :: Lens' Policy (Val Text)-pPolicyName = lens _policyPolicyName (\s a -> s { _policyPolicyName = a })---- | The names of AWS::IAM::Roles to attach to this policy. Note If a policy--- has a Ref to a role and if a resource (such as AWS::ECS::Service) also has--- a Ref to the same role, add a DependsOn attribute to the resource so that--- the resource depends on the policy. This dependency ensures that the role's--- policy is available throughout the resource's lifecycle. For example, when--- you delete a stack with an AWS::ECS::Service resource, the DependsOn--- attribute ensures that the AWS::ECS::Service resource can complete its--- deletion before its role's policy is deleted.-pRoles :: Lens' Policy (Maybe [Val Text])-pRoles = lens _policyRoles (\s a -> s { _policyRoles = a })---- | The names of users for whom you want to add the policy.-pUsers :: Lens' Policy (Maybe [Val Text])-pUsers = lens _policyUsers (\s a -> s { _policyUsers = a })
+ library-gen/Stratosphere/Resources/RDSDBCluster.hs view
@@ -0,0 +1,137 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html++module Stratosphere.Resources.RDSDBCluster where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for RDSDBCluster. See 'rdsdbCluster' for a more+-- | convenient constructor.+data RDSDBCluster =+  RDSDBCluster+  { _rDSDBClusterAvailabilityZones :: Maybe (Val Text)+  , _rDSDBClusterBackupRetentionPeriod :: Maybe (Val Integer')+  , _rDSDBClusterDBClusterParameterGroupName :: Maybe (Val Text)+  , _rDSDBClusterDBSubnetGroupName :: Maybe (Val Text)+  , _rDSDBClusterDatabaseName :: Maybe (Val Text)+  , _rDSDBClusterEngine :: Val Text+  , _rDSDBClusterEngineVersion :: Maybe (Val Text)+  , _rDSDBClusterKmsKeyId :: Maybe (Val Text)+  , _rDSDBClusterMasterUserPassword :: Maybe (Val Text)+  , _rDSDBClusterMasterUsername :: Maybe (Val Text)+  , _rDSDBClusterPort :: Maybe (Val Integer')+  , _rDSDBClusterPreferredBackupWindow :: Maybe (Val Text)+  , _rDSDBClusterPreferredMaintenanceWindow :: Maybe (Val Text)+  , _rDSDBClusterSnapshotIdentifier :: Maybe (Val Text)+  , _rDSDBClusterStorageEncrypted :: Maybe (Val Bool')+  , _rDSDBClusterTags :: Maybe [Tag]+  , _rDSDBClusterVpcSecurityGroupIds :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON RDSDBCluster where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }++instance FromJSON RDSDBCluster where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }++-- | Constructor for 'RDSDBCluster' containing required fields as arguments.+rdsdbCluster+  :: Val Text -- ^ 'rdsdbcEngine'+  -> RDSDBCluster+rdsdbCluster enginearg =+  RDSDBCluster+  { _rDSDBClusterAvailabilityZones = Nothing+  , _rDSDBClusterBackupRetentionPeriod = Nothing+  , _rDSDBClusterDBClusterParameterGroupName = Nothing+  , _rDSDBClusterDBSubnetGroupName = Nothing+  , _rDSDBClusterDatabaseName = Nothing+  , _rDSDBClusterEngine = enginearg+  , _rDSDBClusterEngineVersion = Nothing+  , _rDSDBClusterKmsKeyId = Nothing+  , _rDSDBClusterMasterUserPassword = Nothing+  , _rDSDBClusterMasterUsername = Nothing+  , _rDSDBClusterPort = Nothing+  , _rDSDBClusterPreferredBackupWindow = Nothing+  , _rDSDBClusterPreferredMaintenanceWindow = Nothing+  , _rDSDBClusterSnapshotIdentifier = Nothing+  , _rDSDBClusterStorageEncrypted = Nothing+  , _rDSDBClusterTags = Nothing+  , _rDSDBClusterVpcSecurityGroupIds = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-availabilityzones+rdsdbcAvailabilityZones :: Lens' RDSDBCluster (Maybe (Val Text))+rdsdbcAvailabilityZones = lens _rDSDBClusterAvailabilityZones (\s a -> s { _rDSDBClusterAvailabilityZones = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-backuprententionperiod+rdsdbcBackupRetentionPeriod :: Lens' RDSDBCluster (Maybe (Val Integer'))+rdsdbcBackupRetentionPeriod = lens _rDSDBClusterBackupRetentionPeriod (\s a -> s { _rDSDBClusterBackupRetentionPeriod = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-dbclusterparametergroupname+rdsdbcDBClusterParameterGroupName :: Lens' RDSDBCluster (Maybe (Val Text))+rdsdbcDBClusterParameterGroupName = lens _rDSDBClusterDBClusterParameterGroupName (\s a -> s { _rDSDBClusterDBClusterParameterGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-dbsubnetgroupname+rdsdbcDBSubnetGroupName :: Lens' RDSDBCluster (Maybe (Val Text))+rdsdbcDBSubnetGroupName = lens _rDSDBClusterDBSubnetGroupName (\s a -> s { _rDSDBClusterDBSubnetGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-databasename+rdsdbcDatabaseName :: Lens' RDSDBCluster (Maybe (Val Text))+rdsdbcDatabaseName = lens _rDSDBClusterDatabaseName (\s a -> s { _rDSDBClusterDatabaseName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-engine+rdsdbcEngine :: Lens' RDSDBCluster (Val Text)+rdsdbcEngine = lens _rDSDBClusterEngine (\s a -> s { _rDSDBClusterEngine = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-engineversion+rdsdbcEngineVersion :: Lens' RDSDBCluster (Maybe (Val Text))+rdsdbcEngineVersion = lens _rDSDBClusterEngineVersion (\s a -> s { _rDSDBClusterEngineVersion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-kmskeyid+rdsdbcKmsKeyId :: Lens' RDSDBCluster (Maybe (Val Text))+rdsdbcKmsKeyId = lens _rDSDBClusterKmsKeyId (\s a -> s { _rDSDBClusterKmsKeyId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-masteruserpassword+rdsdbcMasterUserPassword :: Lens' RDSDBCluster (Maybe (Val Text))+rdsdbcMasterUserPassword = lens _rDSDBClusterMasterUserPassword (\s a -> s { _rDSDBClusterMasterUserPassword = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-masterusername+rdsdbcMasterUsername :: Lens' RDSDBCluster (Maybe (Val Text))+rdsdbcMasterUsername = lens _rDSDBClusterMasterUsername (\s a -> s { _rDSDBClusterMasterUsername = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-port+rdsdbcPort :: Lens' RDSDBCluster (Maybe (Val Integer'))+rdsdbcPort = lens _rDSDBClusterPort (\s a -> s { _rDSDBClusterPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-preferredbackupwindow+rdsdbcPreferredBackupWindow :: Lens' RDSDBCluster (Maybe (Val Text))+rdsdbcPreferredBackupWindow = lens _rDSDBClusterPreferredBackupWindow (\s a -> s { _rDSDBClusterPreferredBackupWindow = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-preferredmaintenancewindow+rdsdbcPreferredMaintenanceWindow :: Lens' RDSDBCluster (Maybe (Val Text))+rdsdbcPreferredMaintenanceWindow = lens _rDSDBClusterPreferredMaintenanceWindow (\s a -> s { _rDSDBClusterPreferredMaintenanceWindow = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-snapshotidentifier+rdsdbcSnapshotIdentifier :: Lens' RDSDBCluster (Maybe (Val Text))+rdsdbcSnapshotIdentifier = lens _rDSDBClusterSnapshotIdentifier (\s a -> s { _rDSDBClusterSnapshotIdentifier = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-storageencrypted+rdsdbcStorageEncrypted :: Lens' RDSDBCluster (Maybe (Val Bool'))+rdsdbcStorageEncrypted = lens _rDSDBClusterStorageEncrypted (\s a -> s { _rDSDBClusterStorageEncrypted = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-tags+rdsdbcTags :: Lens' RDSDBCluster (Maybe [Tag])+rdsdbcTags = lens _rDSDBClusterTags (\s a -> s { _rDSDBClusterTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html#cfn-rds-dbcluster-vpcsecuritygroupids+rdsdbcVpcSecurityGroupIds :: Lens' RDSDBCluster (Maybe [Val Text])+rdsdbcVpcSecurityGroupIds = lens _rDSDBClusterVpcSecurityGroupIds (\s a -> s { _rDSDBClusterVpcSecurityGroupIds = a })
+ library-gen/Stratosphere/Resources/RDSDBClusterParameterGroup.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html++module Stratosphere.Resources.RDSDBClusterParameterGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for RDSDBClusterParameterGroup. See+-- | 'rdsdbClusterParameterGroup' for a more convenient constructor.+data RDSDBClusterParameterGroup =+  RDSDBClusterParameterGroup+  { _rDSDBClusterParameterGroupDescription :: Val Text+  , _rDSDBClusterParameterGroupFamily :: Val Text+  , _rDSDBClusterParameterGroupParameters :: Object+  , _rDSDBClusterParameterGroupTags :: Maybe [Tag]+  } deriving (Show, Generic)++instance ToJSON RDSDBClusterParameterGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON RDSDBClusterParameterGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'RDSDBClusterParameterGroup' containing required fields+-- | as arguments.+rdsdbClusterParameterGroup+  :: Val Text -- ^ 'rdsdbcpgDescription'+  -> Val Text -- ^ 'rdsdbcpgFamily'+  -> Object -- ^ 'rdsdbcpgParameters'+  -> RDSDBClusterParameterGroup+rdsdbClusterParameterGroup descriptionarg familyarg parametersarg =+  RDSDBClusterParameterGroup+  { _rDSDBClusterParameterGroupDescription = descriptionarg+  , _rDSDBClusterParameterGroupFamily = familyarg+  , _rDSDBClusterParameterGroupParameters = parametersarg+  , _rDSDBClusterParameterGroupTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html#cfn-rds-dbclusterparametergroup-description+rdsdbcpgDescription :: Lens' RDSDBClusterParameterGroup (Val Text)+rdsdbcpgDescription = lens _rDSDBClusterParameterGroupDescription (\s a -> s { _rDSDBClusterParameterGroupDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html#cfn-rds-dbclusterparametergroup-family+rdsdbcpgFamily :: Lens' RDSDBClusterParameterGroup (Val Text)+rdsdbcpgFamily = lens _rDSDBClusterParameterGroupFamily (\s a -> s { _rDSDBClusterParameterGroupFamily = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html#cfn-rds-dbclusterparametergroup-parameters+rdsdbcpgParameters :: Lens' RDSDBClusterParameterGroup Object+rdsdbcpgParameters = lens _rDSDBClusterParameterGroupParameters (\s a -> s { _rDSDBClusterParameterGroupParameters = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbclusterparametergroup.html#cfn-rds-dbclusterparametergroup-tags+rdsdbcpgTags :: Lens' RDSDBClusterParameterGroup (Maybe [Tag])+rdsdbcpgTags = lens _rDSDBClusterParameterGroupTags (\s a -> s { _rDSDBClusterParameterGroupTags = a })
+ library-gen/Stratosphere/Resources/RDSDBInstance.hs view
@@ -0,0 +1,257 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html++module Stratosphere.Resources.RDSDBInstance where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for RDSDBInstance. See 'rdsdbInstance' for a+-- | more convenient constructor.+data RDSDBInstance =+  RDSDBInstance+  { _rDSDBInstanceAllocatedStorage :: Maybe (Val Text)+  , _rDSDBInstanceAllowMajorVersionUpgrade :: Maybe (Val Bool')+  , _rDSDBInstanceAutoMinorVersionUpgrade :: Maybe (Val Bool')+  , _rDSDBInstanceAvailabilityZone :: Maybe (Val Text)+  , _rDSDBInstanceBackupRetentionPeriod :: Maybe (Val Text)+  , _rDSDBInstanceCharacterSetName :: Maybe (Val Text)+  , _rDSDBInstanceDBClusterIdentifier :: Maybe (Val Text)+  , _rDSDBInstanceDBInstanceClass :: Val Text+  , _rDSDBInstanceDBInstanceIdentifier :: Maybe (Val Text)+  , _rDSDBInstanceDBName :: Maybe (Val Text)+  , _rDSDBInstanceDBParameterGroupName :: Maybe (Val Text)+  , _rDSDBInstanceDBSecurityGroups :: Maybe [Val Text]+  , _rDSDBInstanceDBSnapshotIdentifier :: Maybe (Val Text)+  , _rDSDBInstanceDBSubnetGroupName :: Maybe (Val Text)+  , _rDSDBInstanceDomain :: Maybe (Val Text)+  , _rDSDBInstanceDomainIAMRoleName :: Maybe (Val Text)+  , _rDSDBInstanceEngine :: Maybe (Val Text)+  , _rDSDBInstanceEngineVersion :: Maybe (Val Text)+  , _rDSDBInstanceIops :: Maybe (Val Integer')+  , _rDSDBInstanceKmsKeyId :: Maybe (Val Text)+  , _rDSDBInstanceLicenseModel :: Maybe (Val Text)+  , _rDSDBInstanceMasterUserPassword :: Maybe (Val Text)+  , _rDSDBInstanceMasterUsername :: Maybe (Val Text)+  , _rDSDBInstanceMonitoringInterval :: Maybe (Val Integer')+  , _rDSDBInstanceMonitoringRoleArn :: Maybe (Val Text)+  , _rDSDBInstanceMultiAZ :: Maybe (Val Bool')+  , _rDSDBInstanceOptionGroupName :: Maybe (Val Text)+  , _rDSDBInstancePort :: Maybe (Val Text)+  , _rDSDBInstancePreferredBackupWindow :: Maybe (Val Text)+  , _rDSDBInstancePreferredMaintenanceWindow :: Maybe (Val Text)+  , _rDSDBInstancePubliclyAccessible :: Maybe (Val Bool')+  , _rDSDBInstanceSourceDBInstanceIdentifier :: Maybe (Val Text)+  , _rDSDBInstanceStorageEncrypted :: Maybe (Val Bool')+  , _rDSDBInstanceStorageType :: Maybe (Val Text)+  , _rDSDBInstanceTags :: Maybe [Tag]+  , _rDSDBInstanceTimezone :: Maybe (Val Text)+  , _rDSDBInstanceVPCSecurityGroups :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON RDSDBInstance where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++instance FromJSON RDSDBInstance where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }++-- | Constructor for 'RDSDBInstance' containing required fields as arguments.+rdsdbInstance+  :: Val Text -- ^ 'rdsdbiDBInstanceClass'+  -> RDSDBInstance+rdsdbInstance dBInstanceClassarg =+  RDSDBInstance+  { _rDSDBInstanceAllocatedStorage = Nothing+  , _rDSDBInstanceAllowMajorVersionUpgrade = Nothing+  , _rDSDBInstanceAutoMinorVersionUpgrade = Nothing+  , _rDSDBInstanceAvailabilityZone = Nothing+  , _rDSDBInstanceBackupRetentionPeriod = Nothing+  , _rDSDBInstanceCharacterSetName = Nothing+  , _rDSDBInstanceDBClusterIdentifier = Nothing+  , _rDSDBInstanceDBInstanceClass = dBInstanceClassarg+  , _rDSDBInstanceDBInstanceIdentifier = Nothing+  , _rDSDBInstanceDBName = Nothing+  , _rDSDBInstanceDBParameterGroupName = Nothing+  , _rDSDBInstanceDBSecurityGroups = Nothing+  , _rDSDBInstanceDBSnapshotIdentifier = Nothing+  , _rDSDBInstanceDBSubnetGroupName = Nothing+  , _rDSDBInstanceDomain = Nothing+  , _rDSDBInstanceDomainIAMRoleName = Nothing+  , _rDSDBInstanceEngine = Nothing+  , _rDSDBInstanceEngineVersion = Nothing+  , _rDSDBInstanceIops = Nothing+  , _rDSDBInstanceKmsKeyId = Nothing+  , _rDSDBInstanceLicenseModel = Nothing+  , _rDSDBInstanceMasterUserPassword = Nothing+  , _rDSDBInstanceMasterUsername = Nothing+  , _rDSDBInstanceMonitoringInterval = Nothing+  , _rDSDBInstanceMonitoringRoleArn = Nothing+  , _rDSDBInstanceMultiAZ = Nothing+  , _rDSDBInstanceOptionGroupName = Nothing+  , _rDSDBInstancePort = Nothing+  , _rDSDBInstancePreferredBackupWindow = Nothing+  , _rDSDBInstancePreferredMaintenanceWindow = Nothing+  , _rDSDBInstancePubliclyAccessible = Nothing+  , _rDSDBInstanceSourceDBInstanceIdentifier = Nothing+  , _rDSDBInstanceStorageEncrypted = Nothing+  , _rDSDBInstanceStorageType = Nothing+  , _rDSDBInstanceTags = Nothing+  , _rDSDBInstanceTimezone = Nothing+  , _rDSDBInstanceVPCSecurityGroups = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-allocatedstorage+rdsdbiAllocatedStorage :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiAllocatedStorage = lens _rDSDBInstanceAllocatedStorage (\s a -> s { _rDSDBInstanceAllocatedStorage = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-allowmajorversionupgrade+rdsdbiAllowMajorVersionUpgrade :: Lens' RDSDBInstance (Maybe (Val Bool'))+rdsdbiAllowMajorVersionUpgrade = lens _rDSDBInstanceAllowMajorVersionUpgrade (\s a -> s { _rDSDBInstanceAllowMajorVersionUpgrade = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-autominorversionupgrade+rdsdbiAutoMinorVersionUpgrade :: Lens' RDSDBInstance (Maybe (Val Bool'))+rdsdbiAutoMinorVersionUpgrade = lens _rDSDBInstanceAutoMinorVersionUpgrade (\s a -> s { _rDSDBInstanceAutoMinorVersionUpgrade = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-availabilityzone+rdsdbiAvailabilityZone :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiAvailabilityZone = lens _rDSDBInstanceAvailabilityZone (\s a -> s { _rDSDBInstanceAvailabilityZone = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-backupretentionperiod+rdsdbiBackupRetentionPeriod :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiBackupRetentionPeriod = lens _rDSDBInstanceBackupRetentionPeriod (\s a -> s { _rDSDBInstanceBackupRetentionPeriod = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-charactersetname+rdsdbiCharacterSetName :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiCharacterSetName = lens _rDSDBInstanceCharacterSetName (\s a -> s { _rDSDBInstanceCharacterSetName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbclusteridentifier+rdsdbiDBClusterIdentifier :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiDBClusterIdentifier = lens _rDSDBInstanceDBClusterIdentifier (\s a -> s { _rDSDBInstanceDBClusterIdentifier = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbinstanceclass+rdsdbiDBInstanceClass :: Lens' RDSDBInstance (Val Text)+rdsdbiDBInstanceClass = lens _rDSDBInstanceDBInstanceClass (\s a -> s { _rDSDBInstanceDBInstanceClass = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbinstanceidentifier+rdsdbiDBInstanceIdentifier :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiDBInstanceIdentifier = lens _rDSDBInstanceDBInstanceIdentifier (\s a -> s { _rDSDBInstanceDBInstanceIdentifier = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbname+rdsdbiDBName :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiDBName = lens _rDSDBInstanceDBName (\s a -> s { _rDSDBInstanceDBName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbparametergroupname+rdsdbiDBParameterGroupName :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiDBParameterGroupName = lens _rDSDBInstanceDBParameterGroupName (\s a -> s { _rDSDBInstanceDBParameterGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbsecuritygroups+rdsdbiDBSecurityGroups :: Lens' RDSDBInstance (Maybe [Val Text])+rdsdbiDBSecurityGroups = lens _rDSDBInstanceDBSecurityGroups (\s a -> s { _rDSDBInstanceDBSecurityGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbsnapshotidentifier+rdsdbiDBSnapshotIdentifier :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiDBSnapshotIdentifier = lens _rDSDBInstanceDBSnapshotIdentifier (\s a -> s { _rDSDBInstanceDBSnapshotIdentifier = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-dbsubnetgroupname+rdsdbiDBSubnetGroupName :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiDBSubnetGroupName = lens _rDSDBInstanceDBSubnetGroupName (\s a -> s { _rDSDBInstanceDBSubnetGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-domain+rdsdbiDomain :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiDomain = lens _rDSDBInstanceDomain (\s a -> s { _rDSDBInstanceDomain = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-domainiamrolename+rdsdbiDomainIAMRoleName :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiDomainIAMRoleName = lens _rDSDBInstanceDomainIAMRoleName (\s a -> s { _rDSDBInstanceDomainIAMRoleName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-engine+rdsdbiEngine :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiEngine = lens _rDSDBInstanceEngine (\s a -> s { _rDSDBInstanceEngine = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-engineversion+rdsdbiEngineVersion :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiEngineVersion = lens _rDSDBInstanceEngineVersion (\s a -> s { _rDSDBInstanceEngineVersion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-iops+rdsdbiIops :: Lens' RDSDBInstance (Maybe (Val Integer'))+rdsdbiIops = lens _rDSDBInstanceIops (\s a -> s { _rDSDBInstanceIops = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-kmskeyid+rdsdbiKmsKeyId :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiKmsKeyId = lens _rDSDBInstanceKmsKeyId (\s a -> s { _rDSDBInstanceKmsKeyId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-licensemodel+rdsdbiLicenseModel :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiLicenseModel = lens _rDSDBInstanceLicenseModel (\s a -> s { _rDSDBInstanceLicenseModel = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-masteruserpassword+rdsdbiMasterUserPassword :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiMasterUserPassword = lens _rDSDBInstanceMasterUserPassword (\s a -> s { _rDSDBInstanceMasterUserPassword = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-masterusername+rdsdbiMasterUsername :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiMasterUsername = lens _rDSDBInstanceMasterUsername (\s a -> s { _rDSDBInstanceMasterUsername = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-monitoringinterval+rdsdbiMonitoringInterval :: Lens' RDSDBInstance (Maybe (Val Integer'))+rdsdbiMonitoringInterval = lens _rDSDBInstanceMonitoringInterval (\s a -> s { _rDSDBInstanceMonitoringInterval = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-monitoringrolearn+rdsdbiMonitoringRoleArn :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiMonitoringRoleArn = lens _rDSDBInstanceMonitoringRoleArn (\s a -> s { _rDSDBInstanceMonitoringRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-multiaz+rdsdbiMultiAZ :: Lens' RDSDBInstance (Maybe (Val Bool'))+rdsdbiMultiAZ = lens _rDSDBInstanceMultiAZ (\s a -> s { _rDSDBInstanceMultiAZ = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-optiongroupname+rdsdbiOptionGroupName :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiOptionGroupName = lens _rDSDBInstanceOptionGroupName (\s a -> s { _rDSDBInstanceOptionGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-port+rdsdbiPort :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiPort = lens _rDSDBInstancePort (\s a -> s { _rDSDBInstancePort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-preferredbackupwindow+rdsdbiPreferredBackupWindow :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiPreferredBackupWindow = lens _rDSDBInstancePreferredBackupWindow (\s a -> s { _rDSDBInstancePreferredBackupWindow = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-preferredmaintenancewindow+rdsdbiPreferredMaintenanceWindow :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiPreferredMaintenanceWindow = lens _rDSDBInstancePreferredMaintenanceWindow (\s a -> s { _rDSDBInstancePreferredMaintenanceWindow = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-publiclyaccessible+rdsdbiPubliclyAccessible :: Lens' RDSDBInstance (Maybe (Val Bool'))+rdsdbiPubliclyAccessible = lens _rDSDBInstancePubliclyAccessible (\s a -> s { _rDSDBInstancePubliclyAccessible = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-sourcedbinstanceidentifier+rdsdbiSourceDBInstanceIdentifier :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiSourceDBInstanceIdentifier = lens _rDSDBInstanceSourceDBInstanceIdentifier (\s a -> s { _rDSDBInstanceSourceDBInstanceIdentifier = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-storageencrypted+rdsdbiStorageEncrypted :: Lens' RDSDBInstance (Maybe (Val Bool'))+rdsdbiStorageEncrypted = lens _rDSDBInstanceStorageEncrypted (\s a -> s { _rDSDBInstanceStorageEncrypted = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-storagetype+rdsdbiStorageType :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiStorageType = lens _rDSDBInstanceStorageType (\s a -> s { _rDSDBInstanceStorageType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-tags+rdsdbiTags :: Lens' RDSDBInstance (Maybe [Tag])+rdsdbiTags = lens _rDSDBInstanceTags (\s a -> s { _rDSDBInstanceTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-timezone+rdsdbiTimezone :: Lens' RDSDBInstance (Maybe (Val Text))+rdsdbiTimezone = lens _rDSDBInstanceTimezone (\s a -> s { _rDSDBInstanceTimezone = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-database-instance.html#cfn-rds-dbinstance-vpcsecuritygroups+rdsdbiVPCSecurityGroups :: Lens' RDSDBInstance (Maybe [Val Text])+rdsdbiVPCSecurityGroups = lens _rDSDBInstanceVPCSecurityGroups (\s a -> s { _rDSDBInstanceVPCSecurityGroups = a })
+ library-gen/Stratosphere/Resources/RDSDBParameterGroup.hs view
@@ -0,0 +1,61 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html++module Stratosphere.Resources.RDSDBParameterGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for RDSDBParameterGroup. See+-- | 'rdsdbParameterGroup' for a more convenient constructor.+data RDSDBParameterGroup =+  RDSDBParameterGroup+  { _rDSDBParameterGroupDescription :: Val Text+  , _rDSDBParameterGroupFamily :: Val Text+  , _rDSDBParameterGroupParameters :: Maybe Object+  , _rDSDBParameterGroupTags :: Maybe [Tag]+  } deriving (Show, Generic)++instance ToJSON RDSDBParameterGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++instance FromJSON RDSDBParameterGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++-- | Constructor for 'RDSDBParameterGroup' containing required fields as+-- | arguments.+rdsdbParameterGroup+  :: Val Text -- ^ 'rdsdbpgDescription'+  -> Val Text -- ^ 'rdsdbpgFamily'+  -> RDSDBParameterGroup+rdsdbParameterGroup descriptionarg familyarg =+  RDSDBParameterGroup+  { _rDSDBParameterGroupDescription = descriptionarg+  , _rDSDBParameterGroupFamily = familyarg+  , _rDSDBParameterGroupParameters = Nothing+  , _rDSDBParameterGroupTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html#cfn-rds-dbparametergroup-description+rdsdbpgDescription :: Lens' RDSDBParameterGroup (Val Text)+rdsdbpgDescription = lens _rDSDBParameterGroupDescription (\s a -> s { _rDSDBParameterGroupDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html#cfn-rds-dbparametergroup-family+rdsdbpgFamily :: Lens' RDSDBParameterGroup (Val Text)+rdsdbpgFamily = lens _rDSDBParameterGroupFamily (\s a -> s { _rDSDBParameterGroupFamily = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html#cfn-rds-dbparametergroup-parameters+rdsdbpgParameters :: Lens' RDSDBParameterGroup (Maybe Object)+rdsdbpgParameters = lens _rDSDBParameterGroupParameters (\s a -> s { _rDSDBParameterGroupParameters = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-dbparametergroup.html#cfn-rds-dbparametergroup-tags+rdsdbpgTags :: Lens' RDSDBParameterGroup (Maybe [Tag])+rdsdbpgTags = lens _rDSDBParameterGroupTags (\s a -> s { _rDSDBParameterGroupTags = a })
+ library-gen/Stratosphere/Resources/RDSDBSecurityGroup.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html++module Stratosphere.Resources.RDSDBSecurityGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.RDSDBSecurityGroupIngressProperty+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for RDSDBSecurityGroup. See+-- | 'rdsdbSecurityGroup' for a more convenient constructor.+data RDSDBSecurityGroup =+  RDSDBSecurityGroup+  { _rDSDBSecurityGroupDBSecurityGroupIngress :: [RDSDBSecurityGroupIngressProperty]+  , _rDSDBSecurityGroupEC2VpcId :: Maybe (Val Text)+  , _rDSDBSecurityGroupGroupDescription :: Val Text+  , _rDSDBSecurityGroupTags :: Maybe [Tag]+  } deriving (Show, Generic)++instance ToJSON RDSDBSecurityGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++instance FromJSON RDSDBSecurityGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++-- | Constructor for 'RDSDBSecurityGroup' containing required fields as+-- | arguments.+rdsdbSecurityGroup+  :: [RDSDBSecurityGroupIngressProperty] -- ^ 'rdsdbsegDBSecurityGroupIngress'+  -> Val Text -- ^ 'rdsdbsegGroupDescription'+  -> RDSDBSecurityGroup+rdsdbSecurityGroup dBSecurityGroupIngressarg groupDescriptionarg =+  RDSDBSecurityGroup+  { _rDSDBSecurityGroupDBSecurityGroupIngress = dBSecurityGroupIngressarg+  , _rDSDBSecurityGroupEC2VpcId = Nothing+  , _rDSDBSecurityGroupGroupDescription = groupDescriptionarg+  , _rDSDBSecurityGroupTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html#cfn-rds-dbsecuritygroup-dbsecuritygroupingress+rdsdbsegDBSecurityGroupIngress :: Lens' RDSDBSecurityGroup [RDSDBSecurityGroupIngressProperty]+rdsdbsegDBSecurityGroupIngress = lens _rDSDBSecurityGroupDBSecurityGroupIngress (\s a -> s { _rDSDBSecurityGroupDBSecurityGroupIngress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html#cfn-rds-dbsecuritygroup-ec2vpcid+rdsdbsegEC2VpcId :: Lens' RDSDBSecurityGroup (Maybe (Val Text))+rdsdbsegEC2VpcId = lens _rDSDBSecurityGroupEC2VpcId (\s a -> s { _rDSDBSecurityGroupEC2VpcId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html#cfn-rds-dbsecuritygroup-groupdescription+rdsdbsegGroupDescription :: Lens' RDSDBSecurityGroup (Val Text)+rdsdbsegGroupDescription = lens _rDSDBSecurityGroupGroupDescription (\s a -> s { _rDSDBSecurityGroupGroupDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-rds-security-group.html#cfn-rds-dbsecuritygroup-tags+rdsdbsegTags :: Lens' RDSDBSecurityGroup (Maybe [Tag])+rdsdbsegTags = lens _rDSDBSecurityGroupTags (\s a -> s { _rDSDBSecurityGroupTags = a })
+ library-gen/Stratosphere/Resources/RDSDBSecurityGroupIngress.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html++module Stratosphere.Resources.RDSDBSecurityGroupIngress where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for RDSDBSecurityGroupIngress. See+-- | 'rdsdbSecurityGroupIngress' for a more convenient constructor.+data RDSDBSecurityGroupIngress =+  RDSDBSecurityGroupIngress+  { _rDSDBSecurityGroupIngressCIDRIP :: Maybe (Val Text)+  , _rDSDBSecurityGroupIngressDBSecurityGroupName :: Val Text+  , _rDSDBSecurityGroupIngressEC2SecurityGroupId :: Maybe (Val Text)+  , _rDSDBSecurityGroupIngressEC2SecurityGroupName :: Maybe (Val Text)+  , _rDSDBSecurityGroupIngressEC2SecurityGroupOwnerId :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON RDSDBSecurityGroupIngress where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++instance FromJSON RDSDBSecurityGroupIngress where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 26, omitNothingFields = True }++-- | Constructor for 'RDSDBSecurityGroupIngress' containing required fields as+-- | arguments.+rdsdbSecurityGroupIngress+  :: Val Text -- ^ 'rdsdbsgiDBSecurityGroupName'+  -> RDSDBSecurityGroupIngress+rdsdbSecurityGroupIngress dBSecurityGroupNamearg =+  RDSDBSecurityGroupIngress+  { _rDSDBSecurityGroupIngressCIDRIP = Nothing+  , _rDSDBSecurityGroupIngressDBSecurityGroupName = dBSecurityGroupNamearg+  , _rDSDBSecurityGroupIngressEC2SecurityGroupId = Nothing+  , _rDSDBSecurityGroupIngressEC2SecurityGroupName = Nothing+  , _rDSDBSecurityGroupIngressEC2SecurityGroupOwnerId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html#cfn-rds-securitygroup-ingress-cidrip+rdsdbsgiCIDRIP :: Lens' RDSDBSecurityGroupIngress (Maybe (Val Text))+rdsdbsgiCIDRIP = lens _rDSDBSecurityGroupIngressCIDRIP (\s a -> s { _rDSDBSecurityGroupIngressCIDRIP = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html#cfn-rds-securitygroup-ingress-dbsecuritygroupname+rdsdbsgiDBSecurityGroupName :: Lens' RDSDBSecurityGroupIngress (Val Text)+rdsdbsgiDBSecurityGroupName = lens _rDSDBSecurityGroupIngressDBSecurityGroupName (\s a -> s { _rDSDBSecurityGroupIngressDBSecurityGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html#cfn-rds-securitygroup-ingress-ec2securitygroupid+rdsdbsgiEC2SecurityGroupId :: Lens' RDSDBSecurityGroupIngress (Maybe (Val Text))+rdsdbsgiEC2SecurityGroupId = lens _rDSDBSecurityGroupIngressEC2SecurityGroupId (\s a -> s { _rDSDBSecurityGroupIngressEC2SecurityGroupId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html#cfn-rds-securitygroup-ingress-ec2securitygroupname+rdsdbsgiEC2SecurityGroupName :: Lens' RDSDBSecurityGroupIngress (Maybe (Val Text))+rdsdbsgiEC2SecurityGroupName = lens _rDSDBSecurityGroupIngressEC2SecurityGroupName (\s a -> s { _rDSDBSecurityGroupIngressEC2SecurityGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-security-group-ingress.html#cfn-rds-securitygroup-ingress-ec2securitygroupownerid+rdsdbsgiEC2SecurityGroupOwnerId :: Lens' RDSDBSecurityGroupIngress (Maybe (Val Text))+rdsdbsgiEC2SecurityGroupOwnerId = lens _rDSDBSecurityGroupIngressEC2SecurityGroupOwnerId (\s a -> s { _rDSDBSecurityGroupIngressEC2SecurityGroupOwnerId = a })
+ library-gen/Stratosphere/Resources/RDSDBSubnetGroup.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html++module Stratosphere.Resources.RDSDBSubnetGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for RDSDBSubnetGroup. See 'rdsdbSubnetGroup'+-- | for a more convenient constructor.+data RDSDBSubnetGroup =+  RDSDBSubnetGroup+  { _rDSDBSubnetGroupDBSubnetGroupDescription :: Val Text+  , _rDSDBSubnetGroupSubnetIds :: [Val Text]+  , _rDSDBSubnetGroupTags :: Maybe [Tag]+  } deriving (Show, Generic)++instance ToJSON RDSDBSubnetGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++instance FromJSON RDSDBSubnetGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++-- | Constructor for 'RDSDBSubnetGroup' containing required fields as+-- | arguments.+rdsdbSubnetGroup+  :: Val Text -- ^ 'rdsdbsugDBSubnetGroupDescription'+  -> [Val Text] -- ^ 'rdsdbsugSubnetIds'+  -> RDSDBSubnetGroup+rdsdbSubnetGroup dBSubnetGroupDescriptionarg subnetIdsarg =+  RDSDBSubnetGroup+  { _rDSDBSubnetGroupDBSubnetGroupDescription = dBSubnetGroupDescriptionarg+  , _rDSDBSubnetGroupSubnetIds = subnetIdsarg+  , _rDSDBSubnetGroupTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html#cfn-rds-dbsubnetgroup-dbsubnetgroupdescription+rdsdbsugDBSubnetGroupDescription :: Lens' RDSDBSubnetGroup (Val Text)+rdsdbsugDBSubnetGroupDescription = lens _rDSDBSubnetGroupDBSubnetGroupDescription (\s a -> s { _rDSDBSubnetGroupDBSubnetGroupDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html#cfn-rds-dbsubnetgroup-subnetids+rdsdbsugSubnetIds :: Lens' RDSDBSubnetGroup [Val Text]+rdsdbsugSubnetIds = lens _rDSDBSubnetGroupSubnetIds (\s a -> s { _rDSDBSubnetGroupSubnetIds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbsubnet-group.html#cfn-rds-dbsubnetgroup-tags+rdsdbsugTags :: Lens' RDSDBSubnetGroup (Maybe [Tag])+rdsdbsugTags = lens _rDSDBSubnetGroupTags (\s a -> s { _rDSDBSubnetGroupTags = a })
+ library-gen/Stratosphere/Resources/RDSEventSubscription.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html++module Stratosphere.Resources.RDSEventSubscription where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for RDSEventSubscription. See+-- | 'rdsEventSubscription' for a more convenient constructor.+data RDSEventSubscription =+  RDSEventSubscription+  { _rDSEventSubscriptionEnabled :: Maybe (Val Bool')+  , _rDSEventSubscriptionEventCategories :: Maybe [Val Text]+  , _rDSEventSubscriptionSnsTopicArn :: Val Text+  , _rDSEventSubscriptionSourceIds :: Maybe [Val Text]+  , _rDSEventSubscriptionSourceType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON RDSEventSubscription where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++instance FromJSON RDSEventSubscription where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++-- | Constructor for 'RDSEventSubscription' containing required fields as+-- | arguments.+rdsEventSubscription+  :: Val Text -- ^ 'rdsesSnsTopicArn'+  -> RDSEventSubscription+rdsEventSubscription snsTopicArnarg =+  RDSEventSubscription+  { _rDSEventSubscriptionEnabled = Nothing+  , _rDSEventSubscriptionEventCategories = Nothing+  , _rDSEventSubscriptionSnsTopicArn = snsTopicArnarg+  , _rDSEventSubscriptionSourceIds = Nothing+  , _rDSEventSubscriptionSourceType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html#cfn-rds-eventsubscription-enabled+rdsesEnabled :: Lens' RDSEventSubscription (Maybe (Val Bool'))+rdsesEnabled = lens _rDSEventSubscriptionEnabled (\s a -> s { _rDSEventSubscriptionEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html#cfn-rds-eventsubscription-eventcategories+rdsesEventCategories :: Lens' RDSEventSubscription (Maybe [Val Text])+rdsesEventCategories = lens _rDSEventSubscriptionEventCategories (\s a -> s { _rDSEventSubscriptionEventCategories = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html#cfn-rds-eventsubscription-snstopicarn+rdsesSnsTopicArn :: Lens' RDSEventSubscription (Val Text)+rdsesSnsTopicArn = lens _rDSEventSubscriptionSnsTopicArn (\s a -> s { _rDSEventSubscriptionSnsTopicArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html#cfn-rds-eventsubscription-sourceids+rdsesSourceIds :: Lens' RDSEventSubscription (Maybe [Val Text])+rdsesSourceIds = lens _rDSEventSubscriptionSourceIds (\s a -> s { _rDSEventSubscriptionSourceIds = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-eventsubscription.html#cfn-rds-eventsubscription-sourcetype+rdsesSourceType :: Lens' RDSEventSubscription (Maybe (Val Text))+rdsesSourceType = lens _rDSEventSubscriptionSourceType (\s a -> s { _rDSEventSubscriptionSourceType = a })
+ library-gen/Stratosphere/Resources/RDSOptionGroup.hs view
@@ -0,0 +1,69 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html++module Stratosphere.Resources.RDSOptionGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.RDSOptionGroupOptionConfiguration+import Stratosphere.ResourceProperties.Tag++-- | Full data type definition for RDSOptionGroup. See 'rdsOptionGroup' for a+-- | more convenient constructor.+data RDSOptionGroup =+  RDSOptionGroup+  { _rDSOptionGroupEngineName :: Val Text+  , _rDSOptionGroupMajorEngineVersion :: Val Text+  , _rDSOptionGroupOptionConfigurations :: [RDSOptionGroupOptionConfiguration]+  , _rDSOptionGroupOptionGroupDescription :: Val Text+  , _rDSOptionGroupTags :: Maybe [Tag]+  } deriving (Show, Generic)++instance ToJSON RDSOptionGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++instance FromJSON RDSOptionGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++-- | Constructor for 'RDSOptionGroup' containing required fields as arguments.+rdsOptionGroup+  :: Val Text -- ^ 'rdsogEngineName'+  -> Val Text -- ^ 'rdsogMajorEngineVersion'+  -> [RDSOptionGroupOptionConfiguration] -- ^ 'rdsogOptionConfigurations'+  -> Val Text -- ^ 'rdsogOptionGroupDescription'+  -> RDSOptionGroup+rdsOptionGroup engineNamearg majorEngineVersionarg optionConfigurationsarg optionGroupDescriptionarg =+  RDSOptionGroup+  { _rDSOptionGroupEngineName = engineNamearg+  , _rDSOptionGroupMajorEngineVersion = majorEngineVersionarg+  , _rDSOptionGroupOptionConfigurations = optionConfigurationsarg+  , _rDSOptionGroupOptionGroupDescription = optionGroupDescriptionarg+  , _rDSOptionGroupTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-enginename+rdsogEngineName :: Lens' RDSOptionGroup (Val Text)+rdsogEngineName = lens _rDSOptionGroupEngineName (\s a -> s { _rDSOptionGroupEngineName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-majorengineversion+rdsogMajorEngineVersion :: Lens' RDSOptionGroup (Val Text)+rdsogMajorEngineVersion = lens _rDSOptionGroupMajorEngineVersion (\s a -> s { _rDSOptionGroupMajorEngineVersion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-optionconfigurations+rdsogOptionConfigurations :: Lens' RDSOptionGroup [RDSOptionGroupOptionConfiguration]+rdsogOptionConfigurations = lens _rDSOptionGroupOptionConfigurations (\s a -> s { _rDSOptionGroupOptionConfigurations = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-optiongroupdescription+rdsogOptionGroupDescription :: Lens' RDSOptionGroup (Val Text)+rdsogOptionGroupDescription = lens _rDSOptionGroupOptionGroupDescription (\s a -> s { _rDSOptionGroupOptionGroupDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-optiongroup.html#cfn-rds-optiongroup-tags+rdsogTags :: Lens' RDSOptionGroup (Maybe [Tag])+rdsogTags = lens _rDSOptionGroupTags (\s a -> s { _rDSOptionGroupTags = a })
− library-gen/Stratosphere/Resources/RecordSet.hs
@@ -1,182 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::Route53::RecordSet type can be used as a standalone resource or--- as an embedded property in the AWS::Route53::RecordSetGroup type. Note that--- some AWS::Route53::RecordSet properties are valid only when used within--- AWS::Route53::RecordSetGroup. For more information about constraints and--- values for each property, see POST CreateHostedZone for hosted zones and--- POST ChangeResourceRecordSet for resource record sets.--module Stratosphere.Resources.RecordSet where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.AliasTarget-import Stratosphere.ResourceProperties.RecordSetGeoLocation---- | Full data type definition for RecordSet. See 'recordSet' for a more--- convenient constructor.-data RecordSet =-  RecordSet-  { _recordSetAliasTarget :: Maybe AliasTarget-  , _recordSetComment :: Maybe (Val Text)-  , _recordSetFailover :: Maybe (Val Text)-  , _recordSetGeoLocation :: Maybe [RecordSetGeoLocation]-  , _recordSetHealthCheckId :: Maybe (Val Text)-  , _recordSetHostedZoneId :: Maybe (Val Text)-  , _recordSetHostedZoneName :: Maybe (Val Text)-  , _recordSetName :: Val Text-  , _recordSetRegion :: Maybe (Val Text)-  , _recordSetResourceRecords :: Maybe [Val Text]-  , _recordSetSetIdentifier :: Maybe (Val Text)-  , _recordSetTTL :: Maybe (Val Text)-  , _recordSetType :: Val Text-  , _recordSetWeight :: Maybe (Val Integer')-  } deriving (Show, Generic)--instance ToJSON RecordSet where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }--instance FromJSON RecordSet where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }---- | Constructor for 'RecordSet' containing required fields as arguments.-recordSet-  :: Val Text -- ^ 'rsName'-  -> Val Text -- ^ 'rsType'-  -> RecordSet-recordSet namearg typearg =-  RecordSet-  { _recordSetAliasTarget = Nothing-  , _recordSetComment = Nothing-  , _recordSetFailover = Nothing-  , _recordSetGeoLocation = Nothing-  , _recordSetHealthCheckId = Nothing-  , _recordSetHostedZoneId = Nothing-  , _recordSetHostedZoneName = Nothing-  , _recordSetName = namearg-  , _recordSetRegion = Nothing-  , _recordSetResourceRecords = Nothing-  , _recordSetSetIdentifier = Nothing-  , _recordSetTTL = Nothing-  , _recordSetType = typearg-  , _recordSetWeight = Nothing-  }---- | Alias resource record sets only: Information about the domain to which--- you are redirecting traffic. If you specify this property, do not specify--- the TTL property. The alias uses a TTL value from the alias target record.--- For more information about alias resource record sets, see Creating Alias--- Resource Record Sets in the Amazon Route 53 Developer Guide and POST--- ChangeResourceRecordSets in the Amazon Route 53 API reference.-rsAliasTarget :: Lens' RecordSet (Maybe AliasTarget)-rsAliasTarget = lens _recordSetAliasTarget (\s a -> s { _recordSetAliasTarget = a })---- | Any comments that you want to include about the hosted zone. Important If--- the record set is part of a record set group, this property isn't valid.--- Don't specify this property.-rsComment :: Lens' RecordSet (Maybe (Val Text))-rsComment = lens _recordSetComment (\s a -> s { _recordSetComment = a })---- | Designates the record set as a PRIMARY or SECONDARY failover record set.--- When you have more than one resource performing the same function, you can--- configure Amazon Route 53 to check the health of your resources and use--- only health resources to respond to DNS queries. You cannot create--- nonfailover resource record sets that have the same Name and Type property--- values as failover resource record sets. For more information, see the--- Failover element in the Amazon Route 53 API Reference. If you specify this--- property, you must specify the SetIdentifier property.-rsFailover :: Lens' RecordSet (Maybe (Val Text))-rsFailover = lens _recordSetFailover (\s a -> s { _recordSetFailover = a })---- | Describes how Amazon Route 53 responds to DNS queries based on the--- geographic origin of the query.-rsGeoLocation :: Lens' RecordSet (Maybe [RecordSetGeoLocation])-rsGeoLocation = lens _recordSetGeoLocation (\s a -> s { _recordSetGeoLocation = a })---- | The health check ID that you want to apply to this record set. Amazon--- Route 53 returns this resource record set in response to a DNS query only--- while record set is healthy.-rsHealthCheckId :: Lens' RecordSet (Maybe (Val Text))-rsHealthCheckId = lens _recordSetHealthCheckId (\s a -> s { _recordSetHealthCheckId = a })---- | The ID of the hosted zone.-rsHostedZoneId :: Lens' RecordSet (Maybe (Val Text))-rsHostedZoneId = lens _recordSetHostedZoneId (\s a -> s { _recordSetHostedZoneId = a })---- | The name of the domain for the hosted zone where you want to add the--- record set. When you create a stack using an AWS::Route53::RecordSet that--- specifies HostedZoneName, AWS CloudFormation attempts to find a hosted zone--- whose name matches the HostedZoneName. If AWS CloudFormation cannot find a--- hosted zone with a matching domain name, or if there is more than one--- hosted zone with the specified domain name, AWS CloudFormation will not--- create the stack. If you have multiple hosted zones with the same domain--- name, you must explicitly specify the hosted zone using HostedZoneId.-rsHostedZoneName :: Lens' RecordSet (Maybe (Val Text))-rsHostedZoneName = lens _recordSetHostedZoneName (\s a -> s { _recordSetHostedZoneName = a })---- | The name of the domain. You must specify a fully qualified domain name--- that ends with a period as the last label indication. If you omit the final--- period, AWS CloudFormation adds it.-rsName :: Lens' RecordSet (Val Text)-rsName = lens _recordSetName (\s a -> s { _recordSetName = a })---- | Latency resource record sets only: The Amazon EC2 region where the--- resource that is specified in this resource record set resides. The--- resource typically is an AWS resource, for example, Amazon EC2 instance or--- an Elastic Load Balancing load balancer, and is referred to by an IP--- address or a DNS domain name, depending on the record type. When Amazon--- Route 53 receives a DNS query for a domain name and type for which you have--- created latency resource record sets, Amazon Route 53 selects the latency--- resource record set that has the lowest latency between the end user and--- the associated Amazon EC2 region. Amazon Route 53 then returns the value--- that is associated with the selected resource record set. The following--- restrictions must be followed: You can only specify one resource record per--- latency resource record set. You can only create one latency resource--- record set for each Amazon EC2 region. You are not required to create--- latency resource record sets for all Amazon EC2 regions. Amazon Route 53--- will choose the region with the best latency from among the regions for--- which you create latency resource record sets. You cannot create both--- weighted and latency resource record sets that have the same values for the--- Name and Type elements. To see a list of regions by service, see Regions--- and Endpoints in the AWS General Reference.-rsRegion :: Lens' RecordSet (Maybe (Val Text))-rsRegion = lens _recordSetRegion (\s a -> s { _recordSetRegion = a })---- | List of resource records to add. Each record should be in the format--- appropriate for the record type specified by the Type property. For--- information about different record types and their record formats, see--- Appendix: Domain Name Format in the Amazon Route 53 Developer Guide.-rsResourceRecords :: Lens' RecordSet (Maybe [Val Text])-rsResourceRecords = lens _recordSetResourceRecords (\s a -> s { _recordSetResourceRecords = a })---- | A unique identifier that differentiates among multiple resource record--- sets that have the same combination of DNS name and type.-rsSetIdentifier :: Lens' RecordSet (Maybe (Val Text))-rsSetIdentifier = lens _recordSetSetIdentifier (\s a -> s { _recordSetSetIdentifier = a })---- | The resource record cache time to live (TTL), in seconds. If you specify--- this property, do not specify the AliasTarget property. For alias target--- records, the alias uses a TTL value from the target. If you specify this--- property, you must specify the ResourceRecords property.-rsTTL :: Lens' RecordSet (Maybe (Val Text))-rsTTL = lens _recordSetTTL (\s a -> s { _recordSetTTL = a })---- | The type of records to add.-rsType :: Lens' RecordSet (Val Text)-rsType = lens _recordSetType (\s a -> s { _recordSetType = a })---- | Weighted resource record sets only: Among resource record sets that have--- the same combination of DNS name and type, a value that determines what--- portion of traffic for the current resource record set is routed to the--- associated location. For more information about weighted resource record--- sets, see Setting Up Weighted Resource Record Sets in the Amazon Route 53--- Developer Guide.-rsWeight :: Lens' RecordSet (Maybe (Val Integer'))-rsWeight = lens _recordSetWeight (\s a -> s { _recordSetWeight = a })
− library-gen/Stratosphere/Resources/RecordSetGroup.hs
@@ -1,69 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::Route53::RecordSetGroup resource creates record sets for a--- hosted zone. For more information about constraints and values for each--- property, see POST CreateHostedZone for hosted zones and POST--- ChangeResourceRecordSet for resource record sets.--module Stratosphere.Resources.RecordSetGroup where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.Resources.RecordSet---- | Full data type definition for RecordSetGroup. See 'recordSetGroup' for a--- more convenient constructor.-data RecordSetGroup =-  RecordSetGroup-  { _recordSetGroupComment :: Maybe (Val Text)-  , _recordSetGroupHostedZoneId :: Maybe (Val Text)-  , _recordSetGroupHostedZoneName :: Maybe (Val Text)-  , _recordSetGroupRecordSets :: [RecordSet]-  } deriving (Show, Generic)--instance ToJSON RecordSetGroup where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }--instance FromJSON RecordSetGroup where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }---- | Constructor for 'RecordSetGroup' containing required fields as arguments.-recordSetGroup-  :: [RecordSet] -- ^ 'rsgRecordSets'-  -> RecordSetGroup-recordSetGroup recordSetsarg =-  RecordSetGroup-  { _recordSetGroupComment = Nothing-  , _recordSetGroupHostedZoneId = Nothing-  , _recordSetGroupHostedZoneName = Nothing-  , _recordSetGroupRecordSets = recordSetsarg-  }---- | Any comments you want to include about the hosted zone.-rsgComment :: Lens' RecordSetGroup (Maybe (Val Text))-rsgComment = lens _recordSetGroupComment (\s a -> s { _recordSetGroupComment = a })---- | The ID of the hosted zone.-rsgHostedZoneId :: Lens' RecordSetGroup (Maybe (Val Text))-rsgHostedZoneId = lens _recordSetGroupHostedZoneId (\s a -> s { _recordSetGroupHostedZoneId = a })---- | The name of the domain for the hosted zone where you want to add the--- record set. When you create a stack using an AWS::Route53::RecordSet that--- specifies HostedZoneName, AWS CloudFormation attempts to find a hosted zone--- whose name matches the HostedZoneName. If AWS CloudFormation cannot find a--- hosted zone with a matching domain name, or if there is more than one--- hosted zone with the specified domain name, AWS CloudFormation will not--- create the stack. If you have multiple hosted zones with the same domain--- name, you must explicitly specify the hosted zone using HostedZoneId.-rsgHostedZoneName :: Lens' RecordSetGroup (Maybe (Val Text))-rsgHostedZoneName = lens _recordSetGroupHostedZoneName (\s a -> s { _recordSetGroupHostedZoneName = a })---- | List of resource record sets to add.-rsgRecordSets :: Lens' RecordSetGroup [RecordSet]-rsgRecordSets = lens _recordSetGroupRecordSets (\s a -> s { _recordSetGroupRecordSets = a })
+ library-gen/Stratosphere/Resources/RedshiftCluster.hs view
@@ -0,0 +1,184 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html++module Stratosphere.Resources.RedshiftCluster where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for RedshiftCluster. See 'redshiftCluster' for+-- | a more convenient constructor.+data RedshiftCluster =+  RedshiftCluster+  { _redshiftClusterAllowVersionUpdate :: Maybe (Val Bool')+  , _redshiftClusterAutomatedSnapshotRetentionPeriod :: Maybe (Val Integer')+  , _redshiftClusterAvailabilityZone :: Maybe (Val Text)+  , _redshiftClusterClusterParameterGroupName :: Maybe (Val Integer')+  , _redshiftClusterClusterSecurityGroups :: Maybe [Val Text]+  , _redshiftClusterClusterSubnetGroupName :: Maybe (Val Text)+  , _redshiftClusterClusterType :: Val Text+  , _redshiftClusterClusterVersion :: Maybe (Val Text)+  , _redshiftClusterDBName :: Val Text+  , _redshiftClusterElasticIp :: Maybe (Val Text)+  , _redshiftClusterEncrypted :: Maybe (Val Bool')+  , _redshiftClusterHsmClientCertificateIdentifier :: Maybe (Val Text)+  , _redshiftClusterKmsKeyId :: Maybe (Val Text)+  , _redshiftClusterMasterUserPassword :: Val Text+  , _redshiftClusterMasterUsername :: Val Text+  , _redshiftClusterNodeType :: Val Text+  , _redshiftClusterNumberOfNodes :: Maybe (Val Integer')+  , _redshiftClusterOwnerAccount :: Maybe (Val Text)+  , _redshiftClusterPort :: Maybe (Val Integer')+  , _redshiftClusterPreferredMaintenanceWindow :: Maybe (Val Text)+  , _redshiftClusterPubliclyAccessible :: Maybe (Val Bool')+  , _redshiftClusterSnapshotClusterIdentifier :: Maybe (Val Text)+  , _redshiftClusterSnapshotIdentifier :: Maybe (Val Text)+  , _redshiftClusterVpcSecurityGroupIds :: Maybe [Val Text]+  } deriving (Show, Generic)++instance ToJSON RedshiftCluster where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++instance FromJSON RedshiftCluster where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++-- | Constructor for 'RedshiftCluster' containing required fields as+-- | arguments.+redshiftCluster+  :: Val Text -- ^ 'rcClusterType'+  -> Val Text -- ^ 'rcDBName'+  -> Val Text -- ^ 'rcMasterUserPassword'+  -> Val Text -- ^ 'rcMasterUsername'+  -> Val Text -- ^ 'rcNodeType'+  -> RedshiftCluster+redshiftCluster clusterTypearg dBNamearg masterUserPasswordarg masterUsernamearg nodeTypearg =+  RedshiftCluster+  { _redshiftClusterAllowVersionUpdate = Nothing+  , _redshiftClusterAutomatedSnapshotRetentionPeriod = Nothing+  , _redshiftClusterAvailabilityZone = Nothing+  , _redshiftClusterClusterParameterGroupName = Nothing+  , _redshiftClusterClusterSecurityGroups = Nothing+  , _redshiftClusterClusterSubnetGroupName = Nothing+  , _redshiftClusterClusterType = clusterTypearg+  , _redshiftClusterClusterVersion = Nothing+  , _redshiftClusterDBName = dBNamearg+  , _redshiftClusterElasticIp = Nothing+  , _redshiftClusterEncrypted = Nothing+  , _redshiftClusterHsmClientCertificateIdentifier = Nothing+  , _redshiftClusterKmsKeyId = Nothing+  , _redshiftClusterMasterUserPassword = masterUserPasswordarg+  , _redshiftClusterMasterUsername = masterUsernamearg+  , _redshiftClusterNodeType = nodeTypearg+  , _redshiftClusterNumberOfNodes = Nothing+  , _redshiftClusterOwnerAccount = Nothing+  , _redshiftClusterPort = Nothing+  , _redshiftClusterPreferredMaintenanceWindow = Nothing+  , _redshiftClusterPubliclyAccessible = Nothing+  , _redshiftClusterSnapshotClusterIdentifier = Nothing+  , _redshiftClusterSnapshotIdentifier = Nothing+  , _redshiftClusterVpcSecurityGroupIds = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-allowversionupgrade+rcAllowVersionUpdate :: Lens' RedshiftCluster (Maybe (Val Bool'))+rcAllowVersionUpdate = lens _redshiftClusterAllowVersionUpdate (\s a -> s { _redshiftClusterAllowVersionUpdate = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-automatedsnapshotretentionperiod+rcAutomatedSnapshotRetentionPeriod :: Lens' RedshiftCluster (Maybe (Val Integer'))+rcAutomatedSnapshotRetentionPeriod = lens _redshiftClusterAutomatedSnapshotRetentionPeriod (\s a -> s { _redshiftClusterAutomatedSnapshotRetentionPeriod = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-availabilityzone+rcAvailabilityZone :: Lens' RedshiftCluster (Maybe (Val Text))+rcAvailabilityZone = lens _redshiftClusterAvailabilityZone (\s a -> s { _redshiftClusterAvailabilityZone = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clusterparametergroupname+rcClusterParameterGroupName :: Lens' RedshiftCluster (Maybe (Val Integer'))+rcClusterParameterGroupName = lens _redshiftClusterClusterParameterGroupName (\s a -> s { _redshiftClusterClusterParameterGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clustersecuritygroups+rcClusterSecurityGroups :: Lens' RedshiftCluster (Maybe [Val Text])+rcClusterSecurityGroups = lens _redshiftClusterClusterSecurityGroups (\s a -> s { _redshiftClusterClusterSecurityGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clustersubnetgroupname+rcClusterSubnetGroupName :: Lens' RedshiftCluster (Maybe (Val Text))+rcClusterSubnetGroupName = lens _redshiftClusterClusterSubnetGroupName (\s a -> s { _redshiftClusterClusterSubnetGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clustertype+rcClusterType :: Lens' RedshiftCluster (Val Text)+rcClusterType = lens _redshiftClusterClusterType (\s a -> s { _redshiftClusterClusterType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-clusterversion+rcClusterVersion :: Lens' RedshiftCluster (Maybe (Val Text))+rcClusterVersion = lens _redshiftClusterClusterVersion (\s a -> s { _redshiftClusterClusterVersion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-dbname+rcDBName :: Lens' RedshiftCluster (Val Text)+rcDBName = lens _redshiftClusterDBName (\s a -> s { _redshiftClusterDBName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-elasticip+rcElasticIp :: Lens' RedshiftCluster (Maybe (Val Text))+rcElasticIp = lens _redshiftClusterElasticIp (\s a -> s { _redshiftClusterElasticIp = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-encrypted+rcEncrypted :: Lens' RedshiftCluster (Maybe (Val Bool'))+rcEncrypted = lens _redshiftClusterEncrypted (\s a -> s { _redshiftClusterEncrypted = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-hsmclientcertidentifier+rcHsmClientCertificateIdentifier :: Lens' RedshiftCluster (Maybe (Val Text))+rcHsmClientCertificateIdentifier = lens _redshiftClusterHsmClientCertificateIdentifier (\s a -> s { _redshiftClusterHsmClientCertificateIdentifier = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-kmskeyid+rcKmsKeyId :: Lens' RedshiftCluster (Maybe (Val Text))+rcKmsKeyId = lens _redshiftClusterKmsKeyId (\s a -> s { _redshiftClusterKmsKeyId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-masteruserpassword+rcMasterUserPassword :: Lens' RedshiftCluster (Val Text)+rcMasterUserPassword = lens _redshiftClusterMasterUserPassword (\s a -> s { _redshiftClusterMasterUserPassword = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-masterusername+rcMasterUsername :: Lens' RedshiftCluster (Val Text)+rcMasterUsername = lens _redshiftClusterMasterUsername (\s a -> s { _redshiftClusterMasterUsername = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-nodetype+rcNodeType :: Lens' RedshiftCluster (Val Text)+rcNodeType = lens _redshiftClusterNodeType (\s a -> s { _redshiftClusterNodeType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-nodetype+rcNumberOfNodes :: Lens' RedshiftCluster (Maybe (Val Integer'))+rcNumberOfNodes = lens _redshiftClusterNumberOfNodes (\s a -> s { _redshiftClusterNumberOfNodes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-owneraccount+rcOwnerAccount :: Lens' RedshiftCluster (Maybe (Val Text))+rcOwnerAccount = lens _redshiftClusterOwnerAccount (\s a -> s { _redshiftClusterOwnerAccount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-port+rcPort :: Lens' RedshiftCluster (Maybe (Val Integer'))+rcPort = lens _redshiftClusterPort (\s a -> s { _redshiftClusterPort = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-preferredmaintenancewindow+rcPreferredMaintenanceWindow :: Lens' RedshiftCluster (Maybe (Val Text))+rcPreferredMaintenanceWindow = lens _redshiftClusterPreferredMaintenanceWindow (\s a -> s { _redshiftClusterPreferredMaintenanceWindow = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-publiclyaccessible+rcPubliclyAccessible :: Lens' RedshiftCluster (Maybe (Val Bool'))+rcPubliclyAccessible = lens _redshiftClusterPubliclyAccessible (\s a -> s { _redshiftClusterPubliclyAccessible = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-snapshotclusteridentifier+rcSnapshotClusterIdentifier :: Lens' RedshiftCluster (Maybe (Val Text))+rcSnapshotClusterIdentifier = lens _redshiftClusterSnapshotClusterIdentifier (\s a -> s { _redshiftClusterSnapshotClusterIdentifier = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-snapshotidentifier+rcSnapshotIdentifier :: Lens' RedshiftCluster (Maybe (Val Text))+rcSnapshotIdentifier = lens _redshiftClusterSnapshotIdentifier (\s a -> s { _redshiftClusterSnapshotIdentifier = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-vpcsecuritygroupids+rcVpcSecurityGroupIds :: Lens' RedshiftCluster (Maybe [Val Text])+rcVpcSecurityGroupIds = lens _redshiftClusterVpcSecurityGroupIds (\s a -> s { _redshiftClusterVpcSecurityGroupIds = a })
+ library-gen/Stratosphere/Resources/RedshiftClusterParameterGroup.hs view
@@ -0,0 +1,55 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html++module Stratosphere.Resources.RedshiftClusterParameterGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.RedshiftClusterParameterGroupParameter++-- | Full data type definition for RedshiftClusterParameterGroup. See+-- | 'redshiftClusterParameterGroup' for a more convenient constructor.+data RedshiftClusterParameterGroup =+  RedshiftClusterParameterGroup+  { _redshiftClusterParameterGroupDescription :: Val Text+  , _redshiftClusterParameterGroupParameterGroupFamily :: Val Text+  , _redshiftClusterParameterGroupParameters :: Maybe [RedshiftClusterParameterGroupParameter]+  } deriving (Show, Generic)++instance ToJSON RedshiftClusterParameterGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++instance FromJSON RedshiftClusterParameterGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 30, omitNothingFields = True }++-- | Constructor for 'RedshiftClusterParameterGroup' containing required+-- | fields as arguments.+redshiftClusterParameterGroup+  :: Val Text -- ^ 'rcpgDescription'+  -> Val Text -- ^ 'rcpgParameterGroupFamily'+  -> RedshiftClusterParameterGroup+redshiftClusterParameterGroup descriptionarg parameterGroupFamilyarg =+  RedshiftClusterParameterGroup+  { _redshiftClusterParameterGroupDescription = descriptionarg+  , _redshiftClusterParameterGroupParameterGroupFamily = parameterGroupFamilyarg+  , _redshiftClusterParameterGroupParameters = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-description+rcpgDescription :: Lens' RedshiftClusterParameterGroup (Val Text)+rcpgDescription = lens _redshiftClusterParameterGroupDescription (\s a -> s { _redshiftClusterParameterGroupDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-parametergroupfamily+rcpgParameterGroupFamily :: Lens' RedshiftClusterParameterGroup (Val Text)+rcpgParameterGroupFamily = lens _redshiftClusterParameterGroupParameterGroupFamily (\s a -> s { _redshiftClusterParameterGroupParameterGroupFamily = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-parameters+rcpgParameters :: Lens' RedshiftClusterParameterGroup (Maybe [RedshiftClusterParameterGroupParameter])+rcpgParameters = lens _redshiftClusterParameterGroupParameters (\s a -> s { _redshiftClusterParameterGroupParameters = a })
+ library-gen/Stratosphere/Resources/RedshiftClusterSecurityGroup.hs view
@@ -0,0 +1,42 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html++module Stratosphere.Resources.RedshiftClusterSecurityGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for RedshiftClusterSecurityGroup. See+-- | 'redshiftClusterSecurityGroup' for a more convenient constructor.+data RedshiftClusterSecurityGroup =+  RedshiftClusterSecurityGroup+  { _redshiftClusterSecurityGroupDescription :: Val Text+  } deriving (Show, Generic)++instance ToJSON RedshiftClusterSecurityGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++instance FromJSON RedshiftClusterSecurityGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 29, omitNothingFields = True }++-- | Constructor for 'RedshiftClusterSecurityGroup' containing required fields+-- | as arguments.+redshiftClusterSecurityGroup+  :: Val Text -- ^ 'rcsegDescription'+  -> RedshiftClusterSecurityGroup+redshiftClusterSecurityGroup descriptionarg =+  RedshiftClusterSecurityGroup+  { _redshiftClusterSecurityGroupDescription = descriptionarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html#cfn-redshift-clustersecuritygroup-description+rcsegDescription :: Lens' RedshiftClusterSecurityGroup (Val Text)+rcsegDescription = lens _redshiftClusterSecurityGroupDescription (\s a -> s { _redshiftClusterSecurityGroupDescription = a })
+ library-gen/Stratosphere/Resources/RedshiftClusterSecurityGroupIngress.hs view
@@ -0,0 +1,60 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html++module Stratosphere.Resources.RedshiftClusterSecurityGroupIngress where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for RedshiftClusterSecurityGroupIngress. See+-- | 'redshiftClusterSecurityGroupIngress' for a more convenient constructor.+data RedshiftClusterSecurityGroupIngress =+  RedshiftClusterSecurityGroupIngress+  { _redshiftClusterSecurityGroupIngressCIDRIP :: Maybe (Val Text)+  , _redshiftClusterSecurityGroupIngressClusterSecurityGroupName :: Val Text+  , _redshiftClusterSecurityGroupIngressEC2SecurityGroupName :: Maybe (Val Text)+  , _redshiftClusterSecurityGroupIngressEC2SecurityGroupOwnerId :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON RedshiftClusterSecurityGroupIngress where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++instance FromJSON RedshiftClusterSecurityGroupIngress where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 36, omitNothingFields = True }++-- | Constructor for 'RedshiftClusterSecurityGroupIngress' containing required+-- | fields as arguments.+redshiftClusterSecurityGroupIngress+  :: Val Text -- ^ 'rcsgiClusterSecurityGroupName'+  -> RedshiftClusterSecurityGroupIngress+redshiftClusterSecurityGroupIngress clusterSecurityGroupNamearg =+  RedshiftClusterSecurityGroupIngress+  { _redshiftClusterSecurityGroupIngressCIDRIP = Nothing+  , _redshiftClusterSecurityGroupIngressClusterSecurityGroupName = clusterSecurityGroupNamearg+  , _redshiftClusterSecurityGroupIngressEC2SecurityGroupName = Nothing+  , _redshiftClusterSecurityGroupIngressEC2SecurityGroupOwnerId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-cidrip+rcsgiCIDRIP :: Lens' RedshiftClusterSecurityGroupIngress (Maybe (Val Text))+rcsgiCIDRIP = lens _redshiftClusterSecurityGroupIngressCIDRIP (\s a -> s { _redshiftClusterSecurityGroupIngressCIDRIP = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-clustersecuritygroupname+rcsgiClusterSecurityGroupName :: Lens' RedshiftClusterSecurityGroupIngress (Val Text)+rcsgiClusterSecurityGroupName = lens _redshiftClusterSecurityGroupIngressClusterSecurityGroupName (\s a -> s { _redshiftClusterSecurityGroupIngressClusterSecurityGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-ec2securitygroupname+rcsgiEC2SecurityGroupName :: Lens' RedshiftClusterSecurityGroupIngress (Maybe (Val Text))+rcsgiEC2SecurityGroupName = lens _redshiftClusterSecurityGroupIngressEC2SecurityGroupName (\s a -> s { _redshiftClusterSecurityGroupIngressEC2SecurityGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroupingress.html#cfn-redshift-clustersecuritygroupingress-ec2securitygroupownerid+rcsgiEC2SecurityGroupOwnerId :: Lens' RedshiftClusterSecurityGroupIngress (Maybe (Val Text))+rcsgiEC2SecurityGroupOwnerId = lens _redshiftClusterSecurityGroupIngressEC2SecurityGroupOwnerId (\s a -> s { _redshiftClusterSecurityGroupIngressEC2SecurityGroupOwnerId = a })
+ library-gen/Stratosphere/Resources/RedshiftClusterSubnetGroup.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html++module Stratosphere.Resources.RedshiftClusterSubnetGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for RedshiftClusterSubnetGroup. See+-- | 'redshiftClusterSubnetGroup' for a more convenient constructor.+data RedshiftClusterSubnetGroup =+  RedshiftClusterSubnetGroup+  { _redshiftClusterSubnetGroupDescription :: Val Text+  , _redshiftClusterSubnetGroupSubnetIds :: [Val Text]+  } deriving (Show, Generic)++instance ToJSON RedshiftClusterSubnetGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON RedshiftClusterSubnetGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'RedshiftClusterSubnetGroup' containing required fields+-- | as arguments.+redshiftClusterSubnetGroup+  :: Val Text -- ^ 'rcsugDescription'+  -> [Val Text] -- ^ 'rcsugSubnetIds'+  -> RedshiftClusterSubnetGroup+redshiftClusterSubnetGroup descriptionarg subnetIdsarg =+  RedshiftClusterSubnetGroup+  { _redshiftClusterSubnetGroupDescription = descriptionarg+  , _redshiftClusterSubnetGroupSubnetIds = subnetIdsarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-description+rcsugDescription :: Lens' RedshiftClusterSubnetGroup (Val Text)+rcsugDescription = lens _redshiftClusterSubnetGroupDescription (\s a -> s { _redshiftClusterSubnetGroupDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-subnetids+rcsugSubnetIds :: Lens' RedshiftClusterSubnetGroup [Val Text]+rcsugSubnetIds = lens _redshiftClusterSubnetGroupSubnetIds (\s a -> s { _redshiftClusterSubnetGroupSubnetIds = a })
− library-gen/Stratosphere/Resources/Route.hs
@@ -1,77 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Creates a new route in a route table within a VPC. The route's target can--- be either a gateway attached to the VPC or a NAT instance in the VPC.--module Stratosphere.Resources.Route where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for Route. See 'route' for a more convenient--- constructor.-data Route =-  Route-  { _routeDestinationCidrBlock :: Val Text-  , _routeGatewayId :: Maybe (Val Text)-  , _routeInstanceId :: Maybe (Val Text)-  , _routeNatGatewayId :: Maybe (Val Text)-  , _routeNetworkInterfaceId :: Maybe (Val Text)-  , _routeRouteTableId :: Val Text-  } deriving (Show, Generic)--instance ToJSON Route where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 6, omitNothingFields = True }--instance FromJSON Route where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 6, omitNothingFields = True }---- | Constructor for 'Route' containing required fields as arguments.-route-  :: Val Text -- ^ 'rDestinationCidrBlock'-  -> Val Text -- ^ 'rRouteTableId'-  -> Route-route destinationCidrBlockarg routeTableIdarg =-  Route-  { _routeDestinationCidrBlock = destinationCidrBlockarg-  , _routeGatewayId = Nothing-  , _routeInstanceId = Nothing-  , _routeNatGatewayId = Nothing-  , _routeNetworkInterfaceId = Nothing-  , _routeRouteTableId = routeTableIdarg-  }---- | The CIDR address block used for the destination match. For example,--- 0.0.0.0/0. Routing decisions are based on the most specific match.-rDestinationCidrBlock :: Lens' Route (Val Text)-rDestinationCidrBlock = lens _routeDestinationCidrBlock (\s a -> s { _routeDestinationCidrBlock = a })---- | The ID of an Internet gateway or virtual private gateway that is attached--- to your VPC. For example: igw-eaad4883. For route entries that specify a--- gateway, you must specify a dependency on the gateway attachment resource.--- For more information, see DependsOn Attribute.-rGatewayId :: Lens' Route (Maybe (Val Text))-rGatewayId = lens _routeGatewayId (\s a -> s { _routeGatewayId = a })---- | The ID of a NAT instance in your VPC. For example, i-1a2b3c4d.-rInstanceId :: Lens' Route (Maybe (Val Text))-rInstanceId = lens _routeInstanceId (\s a -> s { _routeInstanceId = a })---- | The ID of a NAT gateway. For example, nat-0a12bc456789de0fg.-rNatGatewayId :: Lens' Route (Maybe (Val Text))-rNatGatewayId = lens _routeNatGatewayId (\s a -> s { _routeNatGatewayId = a })---- | Allows the routing of network interface IDs.-rNetworkInterfaceId :: Lens' Route (Maybe (Val Text))-rNetworkInterfaceId = lens _routeNetworkInterfaceId (\s a -> s { _routeNetworkInterfaceId = a })---- | The ID of the route table where the route will be added.-rRouteTableId :: Lens' Route (Val Text)-rRouteTableId = lens _routeRouteTableId (\s a -> s { _routeRouteTableId = a })
+ library-gen/Stratosphere/Resources/Route53HealthCheck.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html++module Stratosphere.Resources.Route53HealthCheck where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Route53HealthCheckHealthCheckConfig+import Stratosphere.ResourceProperties.Route53HealthCheckHealthCheckTag++-- | Full data type definition for Route53HealthCheck. See+-- | 'route53HealthCheck' for a more convenient constructor.+data Route53HealthCheck =+  Route53HealthCheck+  { _route53HealthCheckHealthCheckConfig :: Route53HealthCheckHealthCheckConfig+  , _route53HealthCheckHealthCheckTags :: Maybe [Route53HealthCheckHealthCheckTag]+  } deriving (Show, Generic)++instance ToJSON Route53HealthCheck where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++instance FromJSON Route53HealthCheck where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 19, omitNothingFields = True }++-- | Constructor for 'Route53HealthCheck' containing required fields as+-- | arguments.+route53HealthCheck+  :: Route53HealthCheckHealthCheckConfig -- ^ 'rhcHealthCheckConfig'+  -> Route53HealthCheck+route53HealthCheck healthCheckConfigarg =+  Route53HealthCheck+  { _route53HealthCheckHealthCheckConfig = healthCheckConfigarg+  , _route53HealthCheckHealthCheckTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html#cfn-route53-healthcheck-healthcheckconfig+rhcHealthCheckConfig :: Lens' Route53HealthCheck Route53HealthCheckHealthCheckConfig+rhcHealthCheckConfig = lens _route53HealthCheckHealthCheckConfig (\s a -> s { _route53HealthCheckHealthCheckConfig = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-healthcheck.html#cfn-route53-healthcheck-healthchecktags+rhcHealthCheckTags :: Lens' Route53HealthCheck (Maybe [Route53HealthCheckHealthCheckTag])+rhcHealthCheckTags = lens _route53HealthCheckHealthCheckTags (\s a -> s { _route53HealthCheckHealthCheckTags = a })
+ library-gen/Stratosphere/Resources/Route53HostedZone.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html++module Stratosphere.Resources.Route53HostedZone where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Route53HostedZoneHostedZoneConfig+import Stratosphere.ResourceProperties.Route53HostedZoneHostedZoneTag+import Stratosphere.ResourceProperties.Route53HostedZoneVPC++-- | Full data type definition for Route53HostedZone. See 'route53HostedZone'+-- | for a more convenient constructor.+data Route53HostedZone =+  Route53HostedZone+  { _route53HostedZoneHostedZoneConfig :: Maybe Route53HostedZoneHostedZoneConfig+  , _route53HostedZoneHostedZoneTags :: Maybe [Route53HostedZoneHostedZoneTag]+  , _route53HostedZoneName :: Val Text+  , _route53HostedZoneVPCs :: Maybe [Route53HostedZoneVPC]+  } deriving (Show, Generic)++instance ToJSON Route53HostedZone where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }++instance FromJSON Route53HostedZone where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 18, omitNothingFields = True }++-- | Constructor for 'Route53HostedZone' containing required fields as+-- | arguments.+route53HostedZone+  :: Val Text -- ^ 'rhzName'+  -> Route53HostedZone+route53HostedZone namearg =+  Route53HostedZone+  { _route53HostedZoneHostedZoneConfig = Nothing+  , _route53HostedZoneHostedZoneTags = Nothing+  , _route53HostedZoneName = namearg+  , _route53HostedZoneVPCs = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-hostedzoneconfig+rhzHostedZoneConfig :: Lens' Route53HostedZone (Maybe Route53HostedZoneHostedZoneConfig)+rhzHostedZoneConfig = lens _route53HostedZoneHostedZoneConfig (\s a -> s { _route53HostedZoneHostedZoneConfig = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-hostedzonetags+rhzHostedZoneTags :: Lens' Route53HostedZone (Maybe [Route53HostedZoneHostedZoneTag])+rhzHostedZoneTags = lens _route53HostedZoneHostedZoneTags (\s a -> s { _route53HostedZoneHostedZoneTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-name+rhzName :: Lens' Route53HostedZone (Val Text)+rhzName = lens _route53HostedZoneName (\s a -> s { _route53HostedZoneName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-hostedzone.html#cfn-route53-hostedzone-vpcs+rhzVPCs :: Lens' Route53HostedZone (Maybe [Route53HostedZoneVPC])+rhzVPCs = lens _route53HostedZoneVPCs (\s a -> s { _route53HostedZoneVPCs = a })
+ library-gen/Stratosphere/Resources/Route53RecordSet.hs view
@@ -0,0 +1,122 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html++module Stratosphere.Resources.Route53RecordSet where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Route53RecordSetAliasTarget+import Stratosphere.ResourceProperties.Route53RecordSetGeoLocation++-- | Full data type definition for Route53RecordSet. See 'route53RecordSet'+-- | for a more convenient constructor.+data Route53RecordSet =+  Route53RecordSet+  { _route53RecordSetAliasTarget :: Maybe Route53RecordSetAliasTarget+  , _route53RecordSetComment :: Maybe (Val Text)+  , _route53RecordSetFailover :: Maybe (Val Text)+  , _route53RecordSetGeoLocation :: Maybe Route53RecordSetGeoLocation+  , _route53RecordSetHealthCheckId :: Maybe (Val Text)+  , _route53RecordSetHostedZoneId :: Maybe (Val Text)+  , _route53RecordSetHostedZoneName :: Maybe (Val Text)+  , _route53RecordSetName :: Val Text+  , _route53RecordSetRegion :: Maybe (Val Text)+  , _route53RecordSetResourceRecords :: Maybe [Val Text]+  , _route53RecordSetSetIdentifier :: Maybe (Val Text)+  , _route53RecordSetTTL :: Maybe (Val Text)+  , _route53RecordSetType :: Val Text+  , _route53RecordSetWeight :: Maybe (Val Integer')+  } deriving (Show, Generic)++instance ToJSON Route53RecordSet where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++instance FromJSON Route53RecordSet where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }++-- | Constructor for 'Route53RecordSet' containing required fields as+-- | arguments.+route53RecordSet+  :: Val Text -- ^ 'rrsName'+  -> Val Text -- ^ 'rrsType'+  -> Route53RecordSet+route53RecordSet namearg typearg =+  Route53RecordSet+  { _route53RecordSetAliasTarget = Nothing+  , _route53RecordSetComment = Nothing+  , _route53RecordSetFailover = Nothing+  , _route53RecordSetGeoLocation = Nothing+  , _route53RecordSetHealthCheckId = Nothing+  , _route53RecordSetHostedZoneId = Nothing+  , _route53RecordSetHostedZoneName = Nothing+  , _route53RecordSetName = namearg+  , _route53RecordSetRegion = Nothing+  , _route53RecordSetResourceRecords = Nothing+  , _route53RecordSetSetIdentifier = Nothing+  , _route53RecordSetTTL = Nothing+  , _route53RecordSetType = typearg+  , _route53RecordSetWeight = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-aliastarget+rrsAliasTarget :: Lens' Route53RecordSet (Maybe Route53RecordSetAliasTarget)+rrsAliasTarget = lens _route53RecordSetAliasTarget (\s a -> s { _route53RecordSetAliasTarget = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-comment+rrsComment :: Lens' Route53RecordSet (Maybe (Val Text))+rrsComment = lens _route53RecordSetComment (\s a -> s { _route53RecordSetComment = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-failover+rrsFailover :: Lens' Route53RecordSet (Maybe (Val Text))+rrsFailover = lens _route53RecordSetFailover (\s a -> s { _route53RecordSetFailover = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-geolocation+rrsGeoLocation :: Lens' Route53RecordSet (Maybe Route53RecordSetGeoLocation)+rrsGeoLocation = lens _route53RecordSetGeoLocation (\s a -> s { _route53RecordSetGeoLocation = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-healthcheckid+rrsHealthCheckId :: Lens' Route53RecordSet (Maybe (Val Text))+rrsHealthCheckId = lens _route53RecordSetHealthCheckId (\s a -> s { _route53RecordSetHealthCheckId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-hostedzoneid+rrsHostedZoneId :: Lens' Route53RecordSet (Maybe (Val Text))+rrsHostedZoneId = lens _route53RecordSetHostedZoneId (\s a -> s { _route53RecordSetHostedZoneId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-hostedzonename+rrsHostedZoneName :: Lens' Route53RecordSet (Maybe (Val Text))+rrsHostedZoneName = lens _route53RecordSetHostedZoneName (\s a -> s { _route53RecordSetHostedZoneName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-name+rrsName :: Lens' Route53RecordSet (Val Text)+rrsName = lens _route53RecordSetName (\s a -> s { _route53RecordSetName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-region+rrsRegion :: Lens' Route53RecordSet (Maybe (Val Text))+rrsRegion = lens _route53RecordSetRegion (\s a -> s { _route53RecordSetRegion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-resourcerecords+rrsResourceRecords :: Lens' Route53RecordSet (Maybe [Val Text])+rrsResourceRecords = lens _route53RecordSetResourceRecords (\s a -> s { _route53RecordSetResourceRecords = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-setidentifier+rrsSetIdentifier :: Lens' Route53RecordSet (Maybe (Val Text))+rrsSetIdentifier = lens _route53RecordSetSetIdentifier (\s a -> s { _route53RecordSetSetIdentifier = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-ttl+rrsTTL :: Lens' Route53RecordSet (Maybe (Val Text))+rrsTTL = lens _route53RecordSetTTL (\s a -> s { _route53RecordSetTTL = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-type+rrsType :: Lens' Route53RecordSet (Val Text)+rrsType = lens _route53RecordSetType (\s a -> s { _route53RecordSetType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-route53-recordset.html#cfn-route53-recordset-weight+rrsWeight :: Lens' Route53RecordSet (Maybe (Val Integer'))+rrsWeight = lens _route53RecordSetWeight (\s a -> s { _route53RecordSetWeight = a })
+ library-gen/Stratosphere/Resources/Route53RecordSetGroup.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html++module Stratosphere.Resources.Route53RecordSetGroup where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.Route53RecordSetGroupRecordSet++-- | Full data type definition for Route53RecordSetGroup. See+-- | 'route53RecordSetGroup' for a more convenient constructor.+data Route53RecordSetGroup =+  Route53RecordSetGroup+  { _route53RecordSetGroupComment :: Maybe (Val Text)+  , _route53RecordSetGroupHostedZoneId :: Maybe (Val Text)+  , _route53RecordSetGroupHostedZoneName :: Maybe (Val Text)+  , _route53RecordSetGroupRecordSets :: Maybe [Route53RecordSetGroupRecordSet]+  } deriving (Show, Generic)++instance ToJSON Route53RecordSetGroup where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++instance FromJSON Route53RecordSetGroup where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 22, omitNothingFields = True }++-- | Constructor for 'Route53RecordSetGroup' containing required fields as+-- | arguments.+route53RecordSetGroup+  :: Route53RecordSetGroup+route53RecordSetGroup  =+  Route53RecordSetGroup+  { _route53RecordSetGroupComment = Nothing+  , _route53RecordSetGroupHostedZoneId = Nothing+  , _route53RecordSetGroupHostedZoneName = Nothing+  , _route53RecordSetGroupRecordSets = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html#cfn-route53-recordsetgroup-comment+rrsgComment :: Lens' Route53RecordSetGroup (Maybe (Val Text))+rrsgComment = lens _route53RecordSetGroupComment (\s a -> s { _route53RecordSetGroupComment = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html#cfn-route53-recordsetgroup-hostedzoneid+rrsgHostedZoneId :: Lens' Route53RecordSetGroup (Maybe (Val Text))+rrsgHostedZoneId = lens _route53RecordSetGroupHostedZoneId (\s a -> s { _route53RecordSetGroupHostedZoneId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html#cfn-route53-recordsetgroup-hostedzonename+rrsgHostedZoneName :: Lens' Route53RecordSetGroup (Maybe (Val Text))+rrsgHostedZoneName = lens _route53RecordSetGroupHostedZoneName (\s a -> s { _route53RecordSetGroupHostedZoneName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53-recordsetgroup.html#cfn-route53-recordsetgroup-recordsets+rrsgRecordSets :: Lens' Route53RecordSetGroup (Maybe [Route53RecordSetGroupRecordSet])+rrsgRecordSets = lens _route53RecordSetGroupRecordSets (\s a -> s { _route53RecordSetGroupRecordSets = a })
− library-gen/Stratosphere/Resources/RouteTable.hs
@@ -1,49 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Creates a new route table within a VPC. After you create a new route--- table, you can add routes and associate the table with a subnet.--module Stratosphere.Resources.RouteTable where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.ResourceTag---- | Full data type definition for RouteTable. See 'routeTable' for a more--- convenient constructor.-data RouteTable =-  RouteTable-  { _routeTableVpcId :: Val Text-  , _routeTableTags :: Maybe [ResourceTag]-  } deriving (Show, Generic)--instance ToJSON RouteTable where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 11, omitNothingFields = True }--instance FromJSON RouteTable where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 11, omitNothingFields = True }---- | Constructor for 'RouteTable' containing required fields as arguments.-routeTable-  :: Val Text -- ^ 'rtVpcId'-  -> RouteTable-routeTable vpcIdarg =-  RouteTable-  { _routeTableVpcId = vpcIdarg-  , _routeTableTags = Nothing-  }---- | The ID of the VPC where the route table will be created. Example:--- vpc-11ad4878-rtVpcId :: Lens' RouteTable (Val Text)-rtVpcId = lens _routeTableVpcId (\s a -> s { _routeTableVpcId = a })---- | An arbitrary set of tags (key–value pairs) for this route table.-rtTags :: Lens' RouteTable (Maybe [ResourceTag])-rtTags = lens _routeTableTags (\s a -> s { _routeTableTags = a })
+ library-gen/Stratosphere/Resources/S3Bucket.hs view
@@ -0,0 +1,102 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html++module Stratosphere.Resources.S3Bucket where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.Types+import Stratosphere.ResourceProperties.S3BucketCorsConfiguration+import Stratosphere.ResourceProperties.S3BucketLifecycleConfiguration+import Stratosphere.ResourceProperties.S3BucketLoggingConfiguration+import Stratosphere.ResourceProperties.S3BucketNotificationConfiguration+import Stratosphere.ResourceProperties.S3BucketReplicationConfiguration+import Stratosphere.ResourceProperties.Tag+import Stratosphere.ResourceProperties.S3BucketVersioningConfiguration+import Stratosphere.ResourceProperties.S3BucketWebsiteConfiguration++-- | Full data type definition for S3Bucket. See 's3Bucket' for a more+-- | convenient constructor.+data S3Bucket =+  S3Bucket+  { _s3BucketAccessControl :: Maybe (Val CannedACL)+  , _s3BucketBucketName :: Maybe (Val Text)+  , _s3BucketCorsConfiguration :: Maybe S3BucketCorsConfiguration+  , _s3BucketLifecycleConfiguration :: Maybe S3BucketLifecycleConfiguration+  , _s3BucketLoggingConfiguration :: Maybe S3BucketLoggingConfiguration+  , _s3BucketNotificationConfiguration :: Maybe S3BucketNotificationConfiguration+  , _s3BucketReplicationConfiguration :: Maybe S3BucketReplicationConfiguration+  , _s3BucketTags :: Maybe [Tag]+  , _s3BucketVersioningConfiguration :: Maybe S3BucketVersioningConfiguration+  , _s3BucketWebsiteConfiguration :: Maybe S3BucketWebsiteConfiguration+  } deriving (Show, Generic)++instance ToJSON S3Bucket where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 9, omitNothingFields = True }++instance FromJSON S3Bucket where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 9, omitNothingFields = True }++-- | Constructor for 'S3Bucket' containing required fields as arguments.+s3Bucket+  :: S3Bucket+s3Bucket  =+  S3Bucket+  { _s3BucketAccessControl = Nothing+  , _s3BucketBucketName = Nothing+  , _s3BucketCorsConfiguration = Nothing+  , _s3BucketLifecycleConfiguration = Nothing+  , _s3BucketLoggingConfiguration = Nothing+  , _s3BucketNotificationConfiguration = Nothing+  , _s3BucketReplicationConfiguration = Nothing+  , _s3BucketTags = Nothing+  , _s3BucketVersioningConfiguration = Nothing+  , _s3BucketWebsiteConfiguration = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-accesscontrol+sbAccessControl :: Lens' S3Bucket (Maybe (Val CannedACL))+sbAccessControl = lens _s3BucketAccessControl (\s a -> s { _s3BucketAccessControl = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-name+sbBucketName :: Lens' S3Bucket (Maybe (Val Text))+sbBucketName = lens _s3BucketBucketName (\s a -> s { _s3BucketBucketName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-crossoriginconfig+sbCorsConfiguration :: Lens' S3Bucket (Maybe S3BucketCorsConfiguration)+sbCorsConfiguration = lens _s3BucketCorsConfiguration (\s a -> s { _s3BucketCorsConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-lifecycleconfig+sbLifecycleConfiguration :: Lens' S3Bucket (Maybe S3BucketLifecycleConfiguration)+sbLifecycleConfiguration = lens _s3BucketLifecycleConfiguration (\s a -> s { _s3BucketLifecycleConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-loggingconfig+sbLoggingConfiguration :: Lens' S3Bucket (Maybe S3BucketLoggingConfiguration)+sbLoggingConfiguration = lens _s3BucketLoggingConfiguration (\s a -> s { _s3BucketLoggingConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-notification+sbNotificationConfiguration :: Lens' S3Bucket (Maybe S3BucketNotificationConfiguration)+sbNotificationConfiguration = lens _s3BucketNotificationConfiguration (\s a -> s { _s3BucketNotificationConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-replicationconfiguration+sbReplicationConfiguration :: Lens' S3Bucket (Maybe S3BucketReplicationConfiguration)+sbReplicationConfiguration = lens _s3BucketReplicationConfiguration (\s a -> s { _s3BucketReplicationConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-tags+sbTags :: Lens' S3Bucket (Maybe [Tag])+sbTags = lens _s3BucketTags (\s a -> s { _s3BucketTags = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-versioning+sbVersioningConfiguration :: Lens' S3Bucket (Maybe S3BucketVersioningConfiguration)+sbVersioningConfiguration = lens _s3BucketVersioningConfiguration (\s a -> s { _s3BucketVersioningConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html#cfn-s3-bucket-websiteconfiguration+sbWebsiteConfiguration :: Lens' S3Bucket (Maybe S3BucketWebsiteConfiguration)+sbWebsiteConfiguration = lens _s3BucketWebsiteConfiguration (\s a -> s { _s3BucketWebsiteConfiguration = a })
library-gen/Stratosphere/Resources/S3BucketPolicy.hs view
@@ -1,9 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::S3::BucketPolicy type applies an Amazon S3 bucket policy to an--- Amazon S3 bucket. AWS::S3::BucketPolicy Snippet: Declaring an Amazon S3--- Bucket Policy+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html  module Stratosphere.Resources.S3BucketPolicy where @@ -17,7 +15,7 @@   -- | Full data type definition for S3BucketPolicy. See 's3BucketPolicy' for a--- more convenient constructor.+-- | more convenient constructor. data S3BucketPolicy =   S3BucketPolicy   { _s3BucketPolicyBucket :: Val Text@@ -41,12 +39,10 @@   , _s3BucketPolicyPolicyDocument = policyDocumentarg   } --- | The Amazon S3 bucket that the policy applies to.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html#cfn-s3-bucketpolicy-bucket sbpBucket :: Lens' S3BucketPolicy (Val Text) sbpBucket = lens _s3BucketPolicyBucket (\s a -> s { _s3BucketPolicyBucket = a }) --- | A policy document containing permissions to add to the specified bucket.--- For more information, see Access Policy Language Overview in the Amazon--- Simple Storage Service Developer Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-policy.html#cfn-s3-bucketpolicy-policydocument sbpPolicyDocument :: Lens' S3BucketPolicy Object sbpPolicyDocument = lens _s3BucketPolicyPolicyDocument (\s a -> s { _s3BucketPolicyPolicyDocument = a })
+ library-gen/Stratosphere/Resources/SDBDomain.hs view
@@ -0,0 +1,40 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-simpledb.html++module Stratosphere.Resources.SDBDomain where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for SDBDomain. See 'sdbDomain' for a more+-- | convenient constructor.+data SDBDomain =+  SDBDomain+  { _sDBDomainDescription :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON SDBDomain where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }++instance FromJSON SDBDomain where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }++-- | Constructor for 'SDBDomain' containing required fields as arguments.+sdbDomain+  :: SDBDomain+sdbDomain  =+  SDBDomain+  { _sDBDomainDescription = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-simpledb.html#cfn-sdb-domain-description+sdbdDescription :: Lens' SDBDomain (Maybe (Val Text))+sdbdDescription = lens _sDBDomainDescription (\s a -> s { _sDBDomainDescription = a })
library-gen/Stratosphere/Resources/SNSSubscription.hs view
@@ -1,9 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::SNS::Subscription resource subscribes an endpoint to an Amazon--- Simple Notification Service (Amazon SNS) topic. The owner of the endpoint--- must confirm the subscription before Amazon SNS creates the subscription.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html  module Stratosphere.Resources.SNSSubscription where @@ -17,11 +15,11 @@ import Stratosphere.Types  -- | Full data type definition for SNSSubscription. See 'snsSubscription' for--- a more convenient constructor.+-- | a more convenient constructor. data SNSSubscription =   SNSSubscription   { _sNSSubscriptionEndpoint :: Maybe (Val Text)-  , _sNSSubscriptionProtocol :: Maybe SNSProtocol+  , _sNSSubscriptionProtocol :: Maybe (Val SNSProtocol)   , _sNSSubscriptionTopicArn :: Maybe (Val Text)   } deriving (Show, Generic) @@ -32,7 +30,7 @@   parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }  -- | Constructor for 'SNSSubscription' containing required fields as--- arguments.+-- | arguments. snsSubscription   :: SNSSubscription snsSubscription  =@@ -42,18 +40,14 @@   , _sNSSubscriptionTopicArn = Nothing   } --- | The endpoint that receives notifications from the Amazon SNS topic. The--- endpoint value depends on the protocol that you specify. For more--- information, see the Subscribe Endpoint parameter in the Amazon Simple--- Notification Service API Reference.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-endpoint snssEndpoint :: Lens' SNSSubscription (Maybe (Val Text)) snssEndpoint = lens _sNSSubscriptionEndpoint (\s a -> s { _sNSSubscriptionEndpoint = a }) --- | The subscription's protocol. For more information, see the Subscribe--- Protocol parameter in the Amazon Simple Notification Service API Reference.-snssProtocol :: Lens' SNSSubscription (Maybe SNSProtocol)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#cfn-sns-protocol+snssProtocol :: Lens' SNSSubscription (Maybe (Val SNSProtocol)) snssProtocol = lens _sNSSubscriptionProtocol (\s a -> s { _sNSSubscriptionProtocol = a }) --- | The Amazon Resource Name (ARN) of the topic to subscribe to.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sns-subscription.html#topicarn snssTopicArn :: Lens' SNSSubscription (Maybe (Val Text)) snssTopicArn = lens _sNSSubscriptionTopicArn (\s a -> s { _sNSSubscriptionTopicArn = a })
library-gen/Stratosphere/Resources/SNSTopic.hs view
@@ -1,8 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::SNS::Topic type creates an Amazon Simple Notification Service--- (Amazon SNS) topic.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html  module Stratosphere.Resources.SNSTopic where @@ -16,7 +15,7 @@ import Stratosphere.ResourceProperties.SNSTopicSubscription  -- | Full data type definition for SNSTopic. See 'snsTopic' for a more--- convenient constructor.+-- | convenient constructor. data SNSTopic =   SNSTopic   { _sNSTopicDisplayName :: Maybe (Val Text)@@ -40,19 +39,14 @@   , _sNSTopicTopicName = Nothing   } --- | A developer-defined string that can be used to identify this SNS topic.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-displayname snstDisplayName :: Lens' SNSTopic (Maybe (Val Text)) snstDisplayName = lens _sNSTopicDisplayName (\s a -> s { _sNSTopicDisplayName = a }) --- | The SNS subscriptions (endpoints) for this topic.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-subscription snstSubscription :: Lens' SNSTopic (Maybe [SNSTopicSubscription]) snstSubscription = lens _sNSTopicSubscription (\s a -> s { _sNSTopicSubscription = a }) --- | A name for the topic. If you don't specify a name, AWS CloudFormation--- generates a unique physical ID and uses that ID for the topic name. For--- more information, see Name Type. Important If you specify a name, you--- cannot do updates that require this resource to be replaced. You can still--- do updates that require no or some interruption. If you must replace the--- resource, specify a new name.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-topic.html#cfn-sns-topic-topicname snstTopicName :: Lens' SNSTopic (Maybe (Val Text)) snstTopicName = lens _sNSTopicTopicName (\s a -> s { _sNSTopicTopicName = a })
library-gen/Stratosphere/Resources/SNSTopicPolicy.hs view
@@ -1,8 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::SNS::TopicPolicy resource associates Amazon SNS topics with a--- policy.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html  module Stratosphere.Resources.SNSTopicPolicy where @@ -16,11 +15,11 @@   -- | Full data type definition for SNSTopicPolicy. See 'snsTopicPolicy' for a--- more convenient constructor.+-- | more convenient constructor. data SNSTopicPolicy =   SNSTopicPolicy   { _sNSTopicPolicyPolicyDocument :: Object-  , _sNSTopicPolicyTopics :: [String]+  , _sNSTopicPolicyTopics :: [Val Text]   } deriving (Show, Generic)  instance ToJSON SNSTopicPolicy where@@ -32,7 +31,7 @@ -- | Constructor for 'SNSTopicPolicy' containing required fields as arguments. snsTopicPolicy   :: Object -- ^ 'snstpPolicyDocument'-  -> [String] -- ^ 'snstpTopics'+  -> [Val Text] -- ^ 'snstpTopics'   -> SNSTopicPolicy snsTopicPolicy policyDocumentarg topicsarg =   SNSTopicPolicy@@ -40,13 +39,10 @@   , _sNSTopicPolicyTopics = topicsarg   } --- | A policy document that contains permissions to add to the specified SNS--- topics.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html#cfn-sns-topicpolicy-policydocument snstpPolicyDocument :: Lens' SNSTopicPolicy Object snstpPolicyDocument = lens _sNSTopicPolicyPolicyDocument (\s a -> s { _sNSTopicPolicyPolicyDocument = a }) --- | The Amazon Resource Names (ARN) of the topics to which you want to add--- the policy. You can use the Ref function to specify an AWS::SNS::Topic--- resource.-snstpTopics :: Lens' SNSTopicPolicy [String]+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sns-policy.html#cfn-sns-topicpolicy-topics+snstpTopics :: Lens' SNSTopicPolicy [Val Text] snstpTopics = lens _sNSTopicPolicyTopics (\s a -> s { _sNSTopicPolicyTopics = a })
library-gen/Stratosphere/Resources/SQSQueue.hs view
@@ -1,7 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::SQS::Queue type creates an Amazon SQS queue.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html  module Stratosphere.Resources.SQSQueue where @@ -12,10 +12,10 @@ import GHC.Generics  import Stratosphere.Values-import Stratosphere.ResourceProperties.SQSRedrivePolicy + -- | Full data type definition for SQSQueue. See 'sqsQueue' for a more--- convenient constructor.+-- | convenient constructor. data SQSQueue =   SQSQueue   { _sQSQueueDelaySeconds :: Maybe (Val Integer')@@ -23,7 +23,7 @@   , _sQSQueueMessageRetentionPeriod :: Maybe (Val Integer')   , _sQSQueueQueueName :: Maybe (Val Text)   , _sQSQueueReceiveMessageWaitTimeSeconds :: Maybe (Val Integer')-  , _sQSQueueRedrivePolicy :: Maybe SQSRedrivePolicy+  , _sQSQueueRedrivePolicy :: Maybe Object   , _sQSQueueVisibilityTimeout :: Maybe (Val Integer')   } deriving (Show, Generic) @@ -47,55 +47,30 @@   , _sQSQueueVisibilityTimeout = Nothing   } --- | The time in seconds that the delivery of all messages in the queue will--- be delayed. You can specify an integer value of 0 to 900 (15 minutes). The--- default value is 0.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-delayseconds sqsqDelaySeconds :: Lens' SQSQueue (Maybe (Val Integer')) sqsqDelaySeconds = lens _sQSQueueDelaySeconds (\s a -> s { _sQSQueueDelaySeconds = a }) --- | The limit of how many bytes a message can contain before Amazon SQS--- rejects it. You can specify an integer value from 1024 bytes (1 KiB) to--- 262144 bytes (256 KiB). The default value is 262144 (256 KiB).+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-maxmesgsize sqsqMaximumMessageSize :: Lens' SQSQueue (Maybe (Val Integer')) sqsqMaximumMessageSize = lens _sQSQueueMaximumMessageSize (\s a -> s { _sQSQueueMaximumMessageSize = a }) --- | The number of seconds Amazon SQS retains a message. You can specify an--- integer value from 60 seconds (1 minute) to 1209600 seconds (14 days). The--- default value is 345600 seconds (4 days).+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-msgretentionperiod sqsqMessageRetentionPeriod :: Lens' SQSQueue (Maybe (Val Integer')) sqsqMessageRetentionPeriod = lens _sQSQueueMessageRetentionPeriod (\s a -> s { _sQSQueueMessageRetentionPeriod = a }) --- | A name for the queue. If you don't specify a name, AWS CloudFormation--- generates a unique physical ID and uses that ID for the queue name. For--- more information, see Name Type. Important If you specify a name, you--- cannot do updates that require this resource to be replaced. You can still--- do updates that require no or some interruption. If you must replace the--- resource, specify a new name.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-name sqsqQueueName :: Lens' SQSQueue (Maybe (Val Text)) sqsqQueueName = lens _sQSQueueQueueName (\s a -> s { _sQSQueueQueueName = a }) --- | Specifies the duration, in seconds, that the ReceiveMessage action call--- waits until a message is in the queue in order to include it in the--- response, as opposed to returning an empty response if a message is not yet--- available. You can specify an integer from 1 to 20. The short polling is--- used as the default or when you specify 0 for this property. For more--- information, see Amazon SQS Long Poll.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-receivemsgwaittime sqsqReceiveMessageWaitTimeSeconds :: Lens' SQSQueue (Maybe (Val Integer')) sqsqReceiveMessageWaitTimeSeconds = lens _sQSQueueReceiveMessageWaitTimeSeconds (\s a -> s { _sQSQueueReceiveMessageWaitTimeSeconds = a }) --- | Specifies an existing dead letter queue to receive messages after the--- source queue (this queue) fails to process a message a specified number of--- times.-sqsqRedrivePolicy :: Lens' SQSQueue (Maybe SQSRedrivePolicy)+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-redrive+sqsqRedrivePolicy :: Lens' SQSQueue (Maybe Object) sqsqRedrivePolicy = lens _sQSQueueRedrivePolicy (\s a -> s { _sQSQueueRedrivePolicy = a }) --- | The length of time during which a message will be unavailable once a--- message is delivered from the queue. This blocks other components from--- receiving the same message and gives the initial component time to process--- and delete the message from the queue. Values must be from 0 to 43200--- seconds (12 hours). If no value is specified, the default value of 30--- seconds will be used. For more information about SQS Queue visibility--- timeouts, see Visibility Timeout in the Amazon Simple Queue Service--- Developer Guide.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-queues.html#aws-sqs-queue-visiblitytimeout sqsqVisibilityTimeout :: Lens' SQSQueue (Maybe (Val Integer')) sqsqVisibilityTimeout = lens _sQSQueueVisibilityTimeout (\s a -> s { _sQSQueueVisibilityTimeout = a })
library-gen/Stratosphere/Resources/SQSQueuePolicy.hs view
@@ -1,8 +1,7 @@ {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE OverloadedStrings #-} --- | The AWS::SQS::QueuePolicy type applies a policy to SQS queues.--- AWS::SQS::QueuePolicy Snippet: Declaring an Amazon SQS Policy+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html  module Stratosphere.Resources.SQSQueuePolicy where @@ -16,7 +15,7 @@   -- | Full data type definition for SQSQueuePolicy. See 'sqsQueuePolicy' for a--- more convenient constructor.+-- | more convenient constructor. data SQSQueuePolicy =   SQSQueuePolicy   { _sQSQueuePolicyPolicyDocument :: Object@@ -40,12 +39,10 @@   , _sQSQueuePolicyQueues = queuesarg   } --- | A policy document containing permissions to add to the specified SQS--- queues.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html#cfn-sqs-queuepolicy-policydoc sqsqpPolicyDocument :: Lens' SQSQueuePolicy Object sqsqpPolicyDocument = lens _sQSQueuePolicyPolicyDocument (\s a -> s { _sQSQueuePolicyPolicyDocument = a }) --- | The URLs of the queues to which you want to add the policy. You can use--- the Ref function to specify an AWS::SQS::Queue resource.+-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sqs-policy.html#cfn-sqs-queuepolicy-queues sqsqpQueues :: Lens' SQSQueuePolicy [Val Text] sqsqpQueues = lens _sQSQueuePolicyQueues (\s a -> s { _sQSQueuePolicyQueues = a })
+ library-gen/Stratosphere/Resources/SSMAssociation.hs view
@@ -0,0 +1,72 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html++module Stratosphere.Resources.SSMAssociation where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.SSMAssociationParameterValues+import Stratosphere.ResourceProperties.SSMAssociationTarget++-- | Full data type definition for SSMAssociation. See 'ssmAssociation' for a+-- | more convenient constructor.+data SSMAssociation =+  SSMAssociation+  { _sSMAssociationDocumentVersion :: Maybe (Val Text)+  , _sSMAssociationInstanceId :: Maybe (Val Text)+  , _sSMAssociationName :: Val Text+  , _sSMAssociationParameters :: Maybe Object+  , _sSMAssociationScheduleExpression :: Maybe (Val Text)+  , _sSMAssociationTargets :: Maybe [SSMAssociationTarget]+  } deriving (Show, Generic)++instance ToJSON SSMAssociation where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++instance FromJSON SSMAssociation where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++-- | Constructor for 'SSMAssociation' containing required fields as arguments.+ssmAssociation+  :: Val Text -- ^ 'ssmaName'+  -> SSMAssociation+ssmAssociation namearg =+  SSMAssociation+  { _sSMAssociationDocumentVersion = Nothing+  , _sSMAssociationInstanceId = Nothing+  , _sSMAssociationName = namearg+  , _sSMAssociationParameters = Nothing+  , _sSMAssociationScheduleExpression = Nothing+  , _sSMAssociationTargets = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-documentversion+ssmaDocumentVersion :: Lens' SSMAssociation (Maybe (Val Text))+ssmaDocumentVersion = lens _sSMAssociationDocumentVersion (\s a -> s { _sSMAssociationDocumentVersion = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-instanceid+ssmaInstanceId :: Lens' SSMAssociation (Maybe (Val Text))+ssmaInstanceId = lens _sSMAssociationInstanceId (\s a -> s { _sSMAssociationInstanceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-name+ssmaName :: Lens' SSMAssociation (Val Text)+ssmaName = lens _sSMAssociationName (\s a -> s { _sSMAssociationName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-parameters+ssmaParameters :: Lens' SSMAssociation (Maybe Object)+ssmaParameters = lens _sSMAssociationParameters (\s a -> s { _sSMAssociationParameters = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-scheduleexpression+ssmaScheduleExpression :: Lens' SSMAssociation (Maybe (Val Text))+ssmaScheduleExpression = lens _sSMAssociationScheduleExpression (\s a -> s { _sSMAssociationScheduleExpression = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-association.html#cfn-ssm-association-targets+ssmaTargets :: Lens' SSMAssociation (Maybe [SSMAssociationTarget])+ssmaTargets = lens _sSMAssociationTargets (\s a -> s { _sSMAssociationTargets = a })
+ library-gen/Stratosphere/Resources/SSMDocument.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html++module Stratosphere.Resources.SSMDocument where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for SSMDocument. See 'ssmDocument' for a more+-- | convenient constructor.+data SSMDocument =+  SSMDocument+  { _sSMDocumentContent :: Object+  , _sSMDocumentDocumentType :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON SSMDocument where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 12, omitNothingFields = True }++instance FromJSON SSMDocument where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 12, omitNothingFields = True }++-- | Constructor for 'SSMDocument' containing required fields as arguments.+ssmDocument+  :: Object -- ^ 'ssmdContent'+  -> SSMDocument+ssmDocument contentarg =+  SSMDocument+  { _sSMDocumentContent = contentarg+  , _sSMDocumentDocumentType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html#cfn-ssm-document-content+ssmdContent :: Lens' SSMDocument Object+ssmdContent = lens _sSMDocumentContent (\s a -> s { _sSMDocumentContent = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-document.html#cfn-ssm-document-documenttype+ssmdDocumentType :: Lens' SSMDocument (Maybe (Val Text))+ssmdDocumentType = lens _sSMDocumentDocumentType (\s a -> s { _sSMDocumentDocumentType = a })
− library-gen/Stratosphere/Resources/ScalingPolicy.hs
@@ -1,121 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::AutoScaling::ScalingPolicy resource adds a scaling policy to an--- auto scaling group. A scaling policy specifies whether to scale the auto--- scaling group up or down, and by how much. For more information on scaling--- policies, see Scaling by Policy in the Auto Scaling Developer Guide. You--- can use a scaling policy together with an CloudWatch alarm. An CloudWatch--- alarm can automatically initiate actions on your behalf, based on--- parameters you specify. A scaling policy is one type of action that an--- alarm can initiate. For a snippet showing how to create an Auto Scaling--- policy that is triggered by an CloudWatch alarm, see Auto Scaling Policy--- Triggered by CloudWatch Alarm. This type supports updates. For more--- information about updating this resource, see PutScalingPolicy.--module Stratosphere.Resources.ScalingPolicy where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.StepAdjustments---- | Full data type definition for ScalingPolicy. See 'scalingPolicy' for a--- more convenient constructor.-data ScalingPolicy =-  ScalingPolicy-  { _scalingPolicyAdjustmentType :: Val Text-  , _scalingPolicyAutoScalingGroupName :: Val Text-  , _scalingPolicyCooldown :: Maybe (Val Text)-  , _scalingPolicyEstimatedInstanceWarmup :: Maybe (Val Integer')-  , _scalingPolicyMetricAggregationType :: Maybe (Val Text)-  , _scalingPolicyMinAdjustmentMagnitude :: Maybe (Val Integer')-  , _scalingPolicyPolicyType :: Maybe (Val Text)-  , _scalingPolicyScalingAdjustment :: Maybe (Val Integer')-  , _scalingPolicyStepAdjustments :: Maybe [StepAdjustments]-  } deriving (Show, Generic)--instance ToJSON ScalingPolicy where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }--instance FromJSON ScalingPolicy where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }---- | Constructor for 'ScalingPolicy' containing required fields as arguments.-scalingPolicy-  :: Val Text -- ^ 'spAdjustmentType'-  -> Val Text -- ^ 'spAutoScalingGroupName'-  -> ScalingPolicy-scalingPolicy adjustmentTypearg autoScalingGroupNamearg =-  ScalingPolicy-  { _scalingPolicyAdjustmentType = adjustmentTypearg-  , _scalingPolicyAutoScalingGroupName = autoScalingGroupNamearg-  , _scalingPolicyCooldown = Nothing-  , _scalingPolicyEstimatedInstanceWarmup = Nothing-  , _scalingPolicyMetricAggregationType = Nothing-  , _scalingPolicyMinAdjustmentMagnitude = Nothing-  , _scalingPolicyPolicyType = Nothing-  , _scalingPolicyScalingAdjustment = Nothing-  , _scalingPolicyStepAdjustments = Nothing-  }---- | Specifies whether the ScalingAdjustment is an absolute number or a--- percentage of the current capacity. Valid values are ChangeInCapacity,--- ExactCapacity, and PercentChangeInCapacity.-spAdjustmentType :: Lens' ScalingPolicy (Val Text)-spAdjustmentType = lens _scalingPolicyAdjustmentType (\s a -> s { _scalingPolicyAdjustmentType = a })---- | The name or Amazon Resource Name (ARN) of the Auto Scaling Group that you--- want to attach the policy to.-spAutoScalingGroupName :: Lens' ScalingPolicy (Val Text)-spAutoScalingGroupName = lens _scalingPolicyAutoScalingGroupName (\s a -> s { _scalingPolicyAutoScalingGroupName = a })---- | The amount of time, in seconds, after a scaling activity completes before--- any further trigger-related scaling activities can start. Do not specify--- this property if you are using the StepScaling policy type.-spCooldown :: Lens' ScalingPolicy (Maybe (Val Text))-spCooldown = lens _scalingPolicyCooldown (\s a -> s { _scalingPolicyCooldown = a })---- | The estimated time, in seconds, until a newly launched instance can send--- metrics to CloudWatch. By default, Auto Scaling uses the cooldown period,--- as specified in the Cooldown property. Do not specify this property if you--- are using the SimpleScaling policy type.-spEstimatedInstanceWarmup :: Lens' ScalingPolicy (Maybe (Val Integer'))-spEstimatedInstanceWarmup = lens _scalingPolicyEstimatedInstanceWarmup (\s a -> s { _scalingPolicyEstimatedInstanceWarmup = a })---- | The aggregation type for the CloudWatch metrics. You can specify Minimum,--- Maximum, or Average. By default, AWS CloudFormation specifies Average. Do--- not specify this property if you are using the SimpleScaling policy type.-spMetricAggregationType :: Lens' ScalingPolicy (Maybe (Val Text))-spMetricAggregationType = lens _scalingPolicyMetricAggregationType (\s a -> s { _scalingPolicyMetricAggregationType = a })---- | For the PercentChangeInCapacity adjustment type, the minimum number of--- instances to scale. The scaling policy changes the desired capacity of the--- Auto Scaling group by a minimum of this many instances. This property--- replaces the MinAdjustmentStep property.-spMinAdjustmentMagnitude :: Lens' ScalingPolicy (Maybe (Val Integer'))-spMinAdjustmentMagnitude = lens _scalingPolicyMinAdjustmentMagnitude (\s a -> s { _scalingPolicyMinAdjustmentMagnitude = a })---- | An Auto Scaling policy type. You can specify SimpleScaling or--- StepScaling. By default, AWS CloudFormation specifies SimpleScaling. For--- more information, see Scaling Policy Types in the Auto Scaling User Guide.-spPolicyType :: Lens' ScalingPolicy (Maybe (Val Text))-spPolicyType = lens _scalingPolicyPolicyType (\s a -> s { _scalingPolicyPolicyType = a })---- | The number of instances by which to scale. The AdjustmentType property--- determines whether AWS CloudFormation interprets this number as an absolute--- number (when the ExactCapacityvalue is specified) or as a percentage of the--- existing Auto Scaling group size (when the PercentChangeInCapacity value is--- specified). A positive value adds to the current capacity and a negative--- value subtracts from the current capacity.-spScalingAdjustment :: Lens' ScalingPolicy (Maybe (Val Integer'))-spScalingAdjustment = lens _scalingPolicyScalingAdjustment (\s a -> s { _scalingPolicyScalingAdjustment = a })---- | A set of adjustments that enable you to scale based on the size of the--- alarm breach.-spStepAdjustments :: Lens' ScalingPolicy (Maybe [StepAdjustments])-spStepAdjustments = lens _scalingPolicyStepAdjustments (\s a -> s { _scalingPolicyStepAdjustments = a })
− library-gen/Stratosphere/Resources/ScheduledAction.hs
@@ -1,87 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Creates a scheduled scaling action for an Auto Scaling group, changing--- the number of servers available for your application in response to--- predictable load changes.--module Stratosphere.Resources.ScheduledAction where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for ScheduledAction. See 'scheduledAction' for--- a more convenient constructor.-data ScheduledAction =-  ScheduledAction-  { _scheduledActionAutoScalingGroupName :: Val Text-  , _scheduledActionDesiredCapacity :: Maybe (Val Integer')-  , _scheduledActionEndTime :: Maybe (Val Text)-  , _scheduledActionMaxSize :: Maybe (Val Integer')-  , _scheduledActionMinSize :: Maybe (Val Integer')-  , _scheduledActionRecurrence :: Maybe (Val Text)-  , _scheduledActionStartTime :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON ScheduledAction where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }--instance FromJSON ScheduledAction where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }---- | Constructor for 'ScheduledAction' containing required fields as--- arguments.-scheduledAction-  :: Val Text -- ^ 'saAutoScalingGroupName'-  -> ScheduledAction-scheduledAction autoScalingGroupNamearg =-  ScheduledAction-  { _scheduledActionAutoScalingGroupName = autoScalingGroupNamearg-  , _scheduledActionDesiredCapacity = Nothing-  , _scheduledActionEndTime = Nothing-  , _scheduledActionMaxSize = Nothing-  , _scheduledActionMinSize = Nothing-  , _scheduledActionRecurrence = Nothing-  , _scheduledActionStartTime = Nothing-  }---- | The name or ARN of the Auto Scaling group.-saAutoScalingGroupName :: Lens' ScheduledAction (Val Text)-saAutoScalingGroupName = lens _scheduledActionAutoScalingGroupName (\s a -> s { _scheduledActionAutoScalingGroupName = a })---- | The number of Amazon EC2 instances that should be running in the Auto--- Scaling group.-saDesiredCapacity :: Lens' ScheduledAction (Maybe (Val Integer'))-saDesiredCapacity = lens _scheduledActionDesiredCapacity (\s a -> s { _scheduledActionDesiredCapacity = a })---- | The time in UTC for this schedule to end. For example,--- 2010-06-01T00:00:00Z.-saEndTime :: Lens' ScheduledAction (Maybe (Val Text))-saEndTime = lens _scheduledActionEndTime (\s a -> s { _scheduledActionEndTime = a })---- | The maximum number of Amazon EC2 instances in the Auto Scaling group.-saMaxSize :: Lens' ScheduledAction (Maybe (Val Integer'))-saMaxSize = lens _scheduledActionMaxSize (\s a -> s { _scheduledActionMaxSize = a })---- | The minimum number of Amazon EC2 instances in the Auto Scaling group.-saMinSize :: Lens' ScheduledAction (Maybe (Val Integer'))-saMinSize = lens _scheduledActionMinSize (\s a -> s { _scheduledActionMinSize = a })---- | The time in UTC when recurring future actions will start. You specify the--- start time by following the Unix cron syntax format. For more information--- about cron syntax, go to http://en.wikipedia.org/wiki/Cron. Specifying the--- StartTime and EndTime properties with Recurrence property forms the start--- and stop boundaries of the recurring action.-saRecurrence :: Lens' ScheduledAction (Maybe (Val Text))-saRecurrence = lens _scheduledActionRecurrence (\s a -> s { _scheduledActionRecurrence = a })---- | The time in UTC for this schedule to start. For example,--- 2010-06-01T00:00:00Z.-saStartTime :: Lens' ScheduledAction (Maybe (Val Text))-saStartTime = lens _scheduledActionStartTime (\s a -> s { _scheduledActionStartTime = a })
− library-gen/Stratosphere/Resources/SecurityGroup.hs
@@ -1,71 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Creates an Amazon EC2 security group. To create a VPC security group, use--- the VpcId property. This type supports updates. For more information about--- updating stacks, see AWS CloudFormation Stacks Updates.--module Stratosphere.Resources.SecurityGroup where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.SecurityGroupEgressRule-import Stratosphere.ResourceProperties.SecurityGroupIngressRule-import Stratosphere.ResourceProperties.ResourceTag---- | Full data type definition for SecurityGroup. See 'securityGroup' for a--- more convenient constructor.-data SecurityGroup =-  SecurityGroup-  { _securityGroupGroupDescription :: Val Text-  , _securityGroupSecurityGroupEgress :: Maybe [SecurityGroupEgressRule]-  , _securityGroupSecurityGroupIngress :: Maybe [SecurityGroupIngressRule]-  , _securityGroupTags :: Maybe [ResourceTag]-  , _securityGroupVpcId :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON SecurityGroup where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }--instance FromJSON SecurityGroup where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 14, omitNothingFields = True }---- | Constructor for 'SecurityGroup' containing required fields as arguments.-securityGroup-  :: Val Text -- ^ 'sgGroupDescription'-  -> SecurityGroup-securityGroup groupDescriptionarg =-  SecurityGroup-  { _securityGroupGroupDescription = groupDescriptionarg-  , _securityGroupSecurityGroupEgress = Nothing-  , _securityGroupSecurityGroupIngress = Nothing-  , _securityGroupTags = Nothing-  , _securityGroupVpcId = Nothing-  }---- | Description of the security group.-sgGroupDescription :: Lens' SecurityGroup (Val Text)-sgGroupDescription = lens _securityGroupGroupDescription (\s a -> s { _securityGroupGroupDescription = a })---- | A list of Amazon EC2 security group egress rules.-sgSecurityGroupEgress :: Lens' SecurityGroup (Maybe [SecurityGroupEgressRule])-sgSecurityGroupEgress = lens _securityGroupSecurityGroupEgress (\s a -> s { _securityGroupSecurityGroupEgress = a })---- | A list of Amazon EC2 security group ingress rules.-sgSecurityGroupIngress :: Lens' SecurityGroup (Maybe [SecurityGroupIngressRule])-sgSecurityGroupIngress = lens _securityGroupSecurityGroupIngress (\s a -> s { _securityGroupSecurityGroupIngress = a })---- | The tags that you want to attach to the resource.-sgTags :: Lens' SecurityGroup (Maybe [ResourceTag])-sgTags = lens _securityGroupTags (\s a -> s { _securityGroupTags = a })---- | The physical ID of the VPC. Can be obtained by using a reference to an--- AWS::EC2::VPC, such as: { "Ref" : "myVPC" }. For more information about--- using the Ref function, see Ref.-sgVpcId :: Lens' SecurityGroup (Maybe (Val Text))-sgVpcId = lens _securityGroupVpcId (\s a -> s { _securityGroupVpcId = a })
− library-gen/Stratosphere/Resources/SecurityGroupEgress.hs
@@ -1,84 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::EC2::SecurityGroupEgress resource adds an egress rule to an--- Amazon VPC security group.--module Stratosphere.Resources.SecurityGroupEgress where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for SecurityGroupEgress. See--- 'securityGroupEgress' for a more convenient constructor.-data SecurityGroupEgress =-  SecurityGroupEgress-  { _securityGroupEgressCidrIp :: Maybe (Val Text)-  , _securityGroupEgressDestinationSecurityGroupId :: Maybe (Val Text)-  , _securityGroupEgressFromPort :: Val Integer'-  , _securityGroupEgressGroupId :: Val Text-  , _securityGroupEgressIpProtocol :: Val Text-  , _securityGroupEgressToPort :: Val Integer'-  } deriving (Show, Generic)--instance ToJSON SecurityGroupEgress where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }--instance FromJSON SecurityGroupEgress where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }---- | Constructor for 'SecurityGroupEgress' containing required fields as--- arguments.-securityGroupEgress-  :: Val Integer' -- ^ 'sgeFromPort'-  -> Val Text -- ^ 'sgeGroupId'-  -> Val Text -- ^ 'sgeIpProtocol'-  -> Val Integer' -- ^ 'sgeToPort'-  -> SecurityGroupEgress-securityGroupEgress fromPortarg groupIdarg ipProtocolarg toPortarg =-  SecurityGroupEgress-  { _securityGroupEgressCidrIp = Nothing-  , _securityGroupEgressDestinationSecurityGroupId = Nothing-  , _securityGroupEgressFromPort = fromPortarg-  , _securityGroupEgressGroupId = groupIdarg-  , _securityGroupEgressIpProtocol = ipProtocolarg-  , _securityGroupEgressToPort = toPortarg-  }---- | CIDR range. Type: String-sgeCidrIp :: Lens' SecurityGroupEgress (Maybe (Val Text))-sgeCidrIp = lens _securityGroupEgressCidrIp (\s a -> s { _securityGroupEgressCidrIp = a })---- | Specifies the group ID of the destination Amazon VPC security group.--- Type: String-sgeDestinationSecurityGroupId :: Lens' SecurityGroupEgress (Maybe (Val Text))-sgeDestinationSecurityGroupId = lens _securityGroupEgressDestinationSecurityGroupId (\s a -> s { _securityGroupEgressDestinationSecurityGroupId = a })---- | Start of port range for the TCP and UDP protocols, or an ICMP type--- number. If you specify icmp for the IpProtocol property, you can specify -1--- as a wildcard (i.e., any ICMP type number). Type: Integer-sgeFromPort :: Lens' SecurityGroupEgress (Val Integer')-sgeFromPort = lens _securityGroupEgressFromPort (\s a -> s { _securityGroupEgressFromPort = a })---- | ID of the Amazon VPC security group to modify. This value can be a--- reference to an AWS::EC2::SecurityGroup resource that has a valid VpcId--- property or the ID of an existing Amazon VPC security group. Type: String-sgeGroupId :: Lens' SecurityGroupEgress (Val Text)-sgeGroupId = lens _securityGroupEgressGroupId (\s a -> s { _securityGroupEgressGroupId = a })---- | IP protocol name or number. For valid values, see the IpProtocol--- parameter in AuthorizeSecurityGroupIngress Type: String-sgeIpProtocol :: Lens' SecurityGroupEgress (Val Text)-sgeIpProtocol = lens _securityGroupEgressIpProtocol (\s a -> s { _securityGroupEgressIpProtocol = a })---- | End of port range for the TCP and UDP protocols, or an ICMP code. If you--- specify icmp for the IpProtocol property, you can specify -1 as a wildcard--- (i.e., any ICMP code). Type: Integer-sgeToPort :: Lens' SecurityGroupEgress (Val Integer')-sgeToPort = lens _securityGroupEgressToPort (\s a -> s { _securityGroupEgressToPort = a })
− library-gen/Stratosphere/Resources/SecurityGroupIngress.hs
@@ -1,107 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::EC2::SecurityGroupIngress resource adds an ingress rule to an--- Amazon EC2 or Amazon VPC security group.--module Stratosphere.Resources.SecurityGroupIngress where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for SecurityGroupIngress. See--- 'securityGroupIngress' for a more convenient constructor.-data SecurityGroupIngress =-  SecurityGroupIngress-  { _securityGroupIngressCidrIp :: Maybe (Val Text)-  , _securityGroupIngressFromPort :: Maybe (Val Integer')-  , _securityGroupIngressGroupId :: Maybe (Val Text)-  , _securityGroupIngressGroupName :: Maybe (Val Text)-  , _securityGroupIngressIpProtocol :: Val Text-  , _securityGroupIngressSourceSecurityGroupId :: Maybe (Val Text)-  , _securityGroupIngressSourceSecurityGroupName :: Maybe (Val Text)-  , _securityGroupIngressSourceSecurityGroupOwnerId :: Maybe (Val Text)-  , _securityGroupIngressToPort :: Maybe (Val Integer')-  } deriving (Show, Generic)--instance ToJSON SecurityGroupIngress where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }--instance FromJSON SecurityGroupIngress where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }---- | Constructor for 'SecurityGroupIngress' containing required fields as--- arguments.-securityGroupIngress-  :: Val Text -- ^ 'sgiIpProtocol'-  -> SecurityGroupIngress-securityGroupIngress ipProtocolarg =-  SecurityGroupIngress-  { _securityGroupIngressCidrIp = Nothing-  , _securityGroupIngressFromPort = Nothing-  , _securityGroupIngressGroupId = Nothing-  , _securityGroupIngressGroupName = Nothing-  , _securityGroupIngressIpProtocol = ipProtocolarg-  , _securityGroupIngressSourceSecurityGroupId = Nothing-  , _securityGroupIngressSourceSecurityGroupName = Nothing-  , _securityGroupIngressSourceSecurityGroupOwnerId = Nothing-  , _securityGroupIngressToPort = Nothing-  }---- | Specifies a CIDR range. For an overview of CIDR ranges, go to the--- Wikipedia Tutorial. Type: String-sgiCidrIp :: Lens' SecurityGroupIngress (Maybe (Val Text))-sgiCidrIp = lens _securityGroupIngressCidrIp (\s a -> s { _securityGroupIngressCidrIp = a })---- | Start of port range for the TCP and UDP protocols, or an ICMP type--- number. If you specify icmp for the IpProtocol property, you can specify -1--- as a wildcard (i.e., any ICMP type number). Type: Integer-sgiFromPort :: Lens' SecurityGroupIngress (Maybe (Val Integer'))-sgiFromPort = lens _securityGroupIngressFromPort (\s a -> s { _securityGroupIngressFromPort = a })---- | ID of the Amazon EC2 or VPC security group to modify. The group must--- belong to your account. Type: String-sgiGroupId :: Lens' SecurityGroupIngress (Maybe (Val Text))-sgiGroupId = lens _securityGroupIngressGroupId (\s a -> s { _securityGroupIngressGroupId = a })---- | Name of the Amazon EC2 security group (non-VPC security group) to modify.--- This value can be a reference to an AWS::EC2::SecurityGroup resource or the--- name of an existing Amazon EC2 security group. Type: String-sgiGroupName :: Lens' SecurityGroupIngress (Maybe (Val Text))-sgiGroupName = lens _securityGroupIngressGroupName (\s a -> s { _securityGroupIngressGroupName = a })---- | IP protocol name or number. For valid values, see the IpProtocol--- parameter in AuthorizeSecurityGroupIngress Type: String-sgiIpProtocol :: Lens' SecurityGroupIngress (Val Text)-sgiIpProtocol = lens _securityGroupIngressIpProtocol (\s a -> s { _securityGroupIngressIpProtocol = a })---- | Specifies the ID of the source security group or uses the Ref intrinsic--- function to refer to the logical ID of a security group defined in the same--- template. Type: String-sgiSourceSecurityGroupId :: Lens' SecurityGroupIngress (Maybe (Val Text))-sgiSourceSecurityGroupId = lens _securityGroupIngressSourceSecurityGroupId (\s a -> s { _securityGroupIngressSourceSecurityGroupId = a })---- | Specifies the name of the Amazon EC2 security group (non-VPC security--- group) to allow access or uses the Ref intrinsic function to refer to the--- logical name of a security group defined in the same template. For--- instances in a VPC, specify the SourceSecurityGroupId property. Type:--- String-sgiSourceSecurityGroupName :: Lens' SecurityGroupIngress (Maybe (Val Text))-sgiSourceSecurityGroupName = lens _securityGroupIngressSourceSecurityGroupName (\s a -> s { _securityGroupIngressSourceSecurityGroupName = a })---- | Specifies the AWS Account ID of the owner of the Amazon EC2 security--- group specified in the SourceSecurityGroupName property. Type: String-sgiSourceSecurityGroupOwnerId :: Lens' SecurityGroupIngress (Maybe (Val Text))-sgiSourceSecurityGroupOwnerId = lens _securityGroupIngressSourceSecurityGroupOwnerId (\s a -> s { _securityGroupIngressSourceSecurityGroupOwnerId = a })---- | End of port range for the TCP and UDP protocols, or an ICMP code. If you--- specify icmp for the IpProtocol property, you can specify -1 as a wildcard--- (i.e., any ICMP code). Type: Integer-sgiToPort :: Lens' SecurityGroupIngress (Maybe (Val Integer'))-sgiToPort = lens _securityGroupIngressToPort (\s a -> s { _securityGroupIngressToPort = a })
− library-gen/Stratosphere/Resources/Stack.hs
@@ -1,89 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::CloudFormation::Stack type nests a stack as a resource in a--- top-level template. You can add output values from a nested stack within--- the containing template. You use the GetAtt function with the nested--- stack's logical name and the name of the output value in the nested stack--- in the format Outputs.NestedStackOutputName. When you apply template--- changes to update a top-level stack, AWS CloudFormation updates the--- top-level stack and initiates an update to its nested stacks. AWS--- CloudFormation updates the resources of modified nested stacks, but does--- not update the resources of unmodified nested stacks. For more information,--- see AWS CloudFormation Stacks Updates.--module Stratosphere.Resources.Stack where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.ResourceTag-import Stratosphere.Parameters---- | Full data type definition for Stack. See 'stack' for a more convenient--- constructor.-data Stack =-  Stack-  { _stackNotificationARNs :: Maybe [Val Text]-  , _stackParameters :: Maybe Parameters-  , _stackResourceTags :: Maybe [ResourceTag]-  , _stackTemplateURL :: Val Text-  , _stackTimeoutInMinutes :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON Stack where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 6, omitNothingFields = True }--instance FromJSON Stack where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 6, omitNothingFields = True }---- | Constructor for 'Stack' containing required fields as arguments.-stack-  :: Val Text -- ^ 'sTemplateURL'-  -> Stack-stack templateURLarg =-  Stack-  { _stackNotificationARNs = Nothing-  , _stackParameters = Nothing-  , _stackResourceTags = Nothing-  , _stackTemplateURL = templateURLarg-  , _stackTimeoutInMinutes = Nothing-  }---- | A list of existing Amazon SNS topics where notifications about stack--- events are sent.-sNotificationARNs :: Lens' Stack (Maybe [Val Text])-sNotificationARNs = lens _stackNotificationARNs (\s a -> s { _stackNotificationARNs = a })---- | The set of parameters passed to AWS CloudFormation when this nested stack--- is created. Note If you use the ref function to pass a parameter value to a--- nested stack, comma-delimited list parameters must be of type String. In--- other words, you cannot pass values that are of type CommaDelimitedList to--- nested stacks.-sParameters :: Lens' Stack (Maybe Parameters)-sParameters = lens _stackParameters (\s a -> s { _stackParameters = a })---- | An arbitrary set of tags (key–value pairs) to describe this stack.-sResourceTags :: Lens' Stack (Maybe [ResourceTag])-sResourceTags = lens _stackResourceTags (\s a -> s { _stackResourceTags = a })---- | The URL of a template that specifies the stack that you want to create as--- a resource. The template must be stored on an Amazon S3 bucket, so the URL--- must have the form: https://s3.amazonaws.com/.../TemplateName.template-sTemplateURL :: Lens' Stack (Val Text)-sTemplateURL = lens _stackTemplateURL (\s a -> s { _stackTemplateURL = a })---- | The length of time, in minutes, that AWS CloudFormation waits for the--- nested stack to reach the CREATE_COMPLETE state. The default is no timeout.--- When AWS CloudFormation detects that the nested stack has reached the--- CREATE_COMPLETE state, it marks the nested stack resource as--- CREATE_COMPLETE in the parent stack and resumes creating the parent stack.--- If the timeout period expires before the nested stack reaches--- CREATE_COMPLETE, AWS CloudFormation marks the nested stack as failed and--- rolls back both the nested stack and parent stack.-sTimeoutInMinutes :: Lens' Stack (Maybe (Val Text))-sTimeoutInMinutes = lens _stackTimeoutInMinutes (\s a -> s { _stackTimeoutInMinutes = a })
− library-gen/Stratosphere/Resources/Subnet.hs
@@ -1,71 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Creates a subnet in an existing VPC.--module Stratosphere.Resources.Subnet where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.ResourceTag---- | Full data type definition for Subnet. See 'subnet' for a more convenient--- constructor.-data Subnet =-  Subnet-  { _subnetAvailabilityZone :: Maybe (Val Text)-  , _subnetCidrBlock :: Val Text-  , _subnetMapPublicIpOnLaunch :: Maybe (Val Bool')-  , _subnetTags :: Maybe [ResourceTag]-  , _subnetVpcId :: Val Text-  } deriving (Show, Generic)--instance ToJSON Subnet where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 7, omitNothingFields = True }--instance FromJSON Subnet where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 7, omitNothingFields = True }---- | Constructor for 'Subnet' containing required fields as arguments.-subnet-  :: Val Text -- ^ 'sCidrBlock'-  -> Val Text -- ^ 'sVpcId'-  -> Subnet-subnet cidrBlockarg vpcIdarg =-  Subnet-  { _subnetAvailabilityZone = Nothing-  , _subnetCidrBlock = cidrBlockarg-  , _subnetMapPublicIpOnLaunch = Nothing-  , _subnetTags = Nothing-  , _subnetVpcId = vpcIdarg-  }---- | The availability zone in which you want the subnet. Default: AWS selects--- a zone for you (recommended).-sAvailabilityZone :: Lens' Subnet (Maybe (Val Text))-sAvailabilityZone = lens _subnetAvailabilityZone (\s a -> s { _subnetAvailabilityZone = a })---- | The CIDR block that you want the subnet to cover (for example,--- "10.0.0.0/24").-sCidrBlock :: Lens' Subnet (Val Text)-sCidrBlock = lens _subnetCidrBlock (\s a -> s { _subnetCidrBlock = a })---- | Indicates whether instances that are launched in this subnet receive a--- public IP address. By default, the value is false.-sMapPublicIpOnLaunch :: Lens' Subnet (Maybe (Val Bool'))-sMapPublicIpOnLaunch = lens _subnetMapPublicIpOnLaunch (\s a -> s { _subnetMapPublicIpOnLaunch = a })---- | An arbitrary set of tags (key–value pairs) for this subnet.-sTags :: Lens' Subnet (Maybe [ResourceTag])-sTags = lens _subnetTags (\s a -> s { _subnetTags = a })---- | A Ref structure that contains the ID of the VPC on which you want to--- create the subnet. The VPC ID is provided as the value of the "Ref"--- property, as: { "Ref": "VPCID" }.-sVpcId :: Lens' Subnet (Val Text)-sVpcId = lens _subnetVpcId (\s a -> s { _subnetVpcId = a })
− library-gen/Stratosphere/Resources/SubnetRouteTableAssociation.hs
@@ -1,51 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Associates a subnet with a route table.--module Stratosphere.Resources.SubnetRouteTableAssociation where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for SubnetRouteTableAssociation. See--- 'subnetRouteTableAssociation' for a more convenient constructor.-data SubnetRouteTableAssociation =-  SubnetRouteTableAssociation-  { _subnetRouteTableAssociationRouteTableId :: Val Text-  , _subnetRouteTableAssociationSubnetId :: Val Text-  } deriving (Show, Generic)--instance ToJSON SubnetRouteTableAssociation where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }--instance FromJSON SubnetRouteTableAssociation where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 28, omitNothingFields = True }---- | Constructor for 'SubnetRouteTableAssociation' containing required fields--- as arguments.-subnetRouteTableAssociation-  :: Val Text -- ^ 'srtaRouteTableId'-  -> Val Text -- ^ 'srtaSubnetId'-  -> SubnetRouteTableAssociation-subnetRouteTableAssociation routeTableIdarg subnetIdarg =-  SubnetRouteTableAssociation-  { _subnetRouteTableAssociationRouteTableId = routeTableIdarg-  , _subnetRouteTableAssociationSubnetId = subnetIdarg-  }---- | The ID of the route table. This is commonly written as a reference to a--- route table declared elsewhere in the template. For example:-srtaRouteTableId :: Lens' SubnetRouteTableAssociation (Val Text)-srtaRouteTableId = lens _subnetRouteTableAssociationRouteTableId (\s a -> s { _subnetRouteTableAssociationRouteTableId = a })---- | The ID of the subnet. This is commonly written as a reference to a subnet--- declared elsewhere in the template. For example:-srtaSubnetId :: Lens' SubnetRouteTableAssociation (Val Text)-srtaSubnetId = lens _subnetRouteTableAssociationSubnetId (\s a -> s { _subnetRouteTableAssociationSubnetId = a })
− library-gen/Stratosphere/Resources/Trail.hs
@@ -1,123 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::CloudTrail::Trail resource creates a trail and specifies where--- logs are published. An AWS CloudTrail (CloudTrail) trail can capture AWS--- API calls made by your AWS account and publishes the logs to an Amazon S3--- bucket. For more information, see What is AWS CloudTrail? in the AWS--- CloudTrail User Guide.--module Stratosphere.Resources.Trail where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.ResourceTag---- | Full data type definition for Trail. See 'trail' for a more convenient--- constructor.-data Trail =-  Trail-  { _trailCloudWatchLogsLogGroupArn :: Maybe (Val Text)-  , _trailCloudWatchLogsRoleArn :: Maybe (Val Text)-  , _trailEnableLogFileValidation :: Maybe (Val Bool)-  , _trailIncludeGlobalServiceEvents :: Maybe (Val Bool)-  , _trailIsLogging :: Val Bool-  , _trailIsMultiRegionTrail :: Maybe (Val Bool)-  , _trailKMSKeyId :: Maybe (Val Text)-  , _trailS3BucketName :: Val Text-  , _trailS3KeyPrefix :: Maybe (Val Text)-  , _trailSnsTopicName :: Maybe (Val Text)-  , _trailTags :: Maybe [ResourceTag]-  } deriving (Show, Generic)--instance ToJSON Trail where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 6, omitNothingFields = True }--instance FromJSON Trail where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 6, omitNothingFields = True }---- | Constructor for 'Trail' containing required fields as arguments.-trail-  :: Val Bool -- ^ 'tIsLogging'-  -> Val Text -- ^ 'tS3BucketName'-  -> Trail-trail isLoggingarg s3BucketNamearg =-  Trail-  { _trailCloudWatchLogsLogGroupArn = Nothing-  , _trailCloudWatchLogsRoleArn = Nothing-  , _trailEnableLogFileValidation = Nothing-  , _trailIncludeGlobalServiceEvents = Nothing-  , _trailIsLogging = isLoggingarg-  , _trailIsMultiRegionTrail = Nothing-  , _trailKMSKeyId = Nothing-  , _trailS3BucketName = s3BucketNamearg-  , _trailS3KeyPrefix = Nothing-  , _trailSnsTopicName = Nothing-  , _trailTags = Nothing-  }---- | The Amazon Resource Name (ARN) of a log group to which CloudTrail logs--- will be delivered.-tCloudWatchLogsLogGroupArn :: Lens' Trail (Maybe (Val Text))-tCloudWatchLogsLogGroupArn = lens _trailCloudWatchLogsLogGroupArn (\s a -> s { _trailCloudWatchLogsLogGroupArn = a })---- | The role ARN that Amazon CloudWatch Logs (CloudWatch Logs) assumes to--- write logs to a log group. For more information, see Role Policy Document--- for CloudTrail to Use CloudWatch Logs for Monitoring in the AWS CloudTrail--- User Guide.-tCloudWatchLogsRoleArn :: Lens' Trail (Maybe (Val Text))-tCloudWatchLogsRoleArn = lens _trailCloudWatchLogsRoleArn (\s a -> s { _trailCloudWatchLogsRoleArn = a })---- | Indicates whether CloudTrail validates the integrity of log files. By--- default, AWS CloudFormation sets this value to false. When you disable log--- file integrity validation, CloudTrail stops creating digest files. For more--- information, see CreateTrail in the AWS CloudTrail API Reference.-tEnableLogFileValidation :: Lens' Trail (Maybe (Val Bool))-tEnableLogFileValidation = lens _trailEnableLogFileValidation (\s a -> s { _trailEnableLogFileValidation = a })---- | Indicates whether the trail is publishing events from global services,--- such as IAM, to the log files. By default, AWS CloudFormation sets this--- value to false.-tIncludeGlobalServiceEvents :: Lens' Trail (Maybe (Val Bool))-tIncludeGlobalServiceEvents = lens _trailIncludeGlobalServiceEvents (\s a -> s { _trailIncludeGlobalServiceEvents = a })---- | Indicates whether the CloudTrail trail is currently logging AWS API--- calls.-tIsLogging :: Lens' Trail (Val Bool)-tIsLogging = lens _trailIsLogging (\s a -> s { _trailIsLogging = a })---- | Indicates whether the CloudTrail trail is created in the region in which--- you create the stack (false) or in all regions (true). By default, AWS--- CloudFormation sets this value to false. For more information, see How Does--- CloudTrail Behave Regionally and Globally? in the AWS CloudTrail User--- Guide.-tIsMultiRegionTrail :: Lens' Trail (Maybe (Val Bool))-tIsMultiRegionTrail = lens _trailIsMultiRegionTrail (\s a -> s { _trailIsMultiRegionTrail = a })---- | The AWS Key Management Service (AWS KMS) key ID that you want to use to--- encrypt CloudTrail logs. You can specify an alias name (prefixed with--- alias/), an alias ARN, a key ARN, or a globally unique identifier.-tKMSKeyId :: Lens' Trail (Maybe (Val Text))-tKMSKeyId = lens _trailKMSKeyId (\s a -> s { _trailKMSKeyId = a })---- | The name of the Amazon S3 bucket where CloudTrail publishes log files.-tS3BucketName :: Lens' Trail (Val Text)-tS3BucketName = lens _trailS3BucketName (\s a -> s { _trailS3BucketName = a })---- | An Amazon S3 object key prefix that precedes the name of all log files.-tS3KeyPrefix :: Lens' Trail (Maybe (Val Text))-tS3KeyPrefix = lens _trailS3KeyPrefix (\s a -> s { _trailS3KeyPrefix = a })---- | The name of an Amazon SNS topic that is notified when new log files are--- published.-tSnsTopicName :: Lens' Trail (Maybe (Val Text))-tSnsTopicName = lens _trailSnsTopicName (\s a -> s { _trailSnsTopicName = a })---- | An arbitrary set of tags (key–value pairs) for this trail.-tTags :: Lens' Trail (Maybe [ResourceTag])-tTags = lens _trailTags (\s a -> s { _trailTags = a })
− library-gen/Stratosphere/Resources/User.hs
@@ -1,79 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::IAM::User type creates a user.--module Stratosphere.Resources.User where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.IAMPolicies-import Stratosphere.ResourceProperties.UserLoginProfile---- | Full data type definition for User. See 'user' for a more convenient--- constructor.-data User =-  User-  { _userGroups :: Maybe [Val Text]-  , _userLoginProfile :: Maybe UserLoginProfile-  , _userManagedPolicyArns :: Maybe [Val Text]-  , _userPath :: Maybe (Val Text)-  , _userPolicies :: Maybe [IAMPolicies]-  , _userUserName :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON User where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 5, omitNothingFields = True }--instance FromJSON User where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 5, omitNothingFields = True }---- | Constructor for 'User' containing required fields as arguments.-user-  :: User-user  =-  User-  { _userGroups = Nothing-  , _userLoginProfile = Nothing-  , _userManagedPolicyArns = Nothing-  , _userPath = Nothing-  , _userPolicies = Nothing-  , _userUserName = Nothing-  }---- | A name of a group to which you want to add the user.-uGroups :: Lens' User (Maybe [Val Text])-uGroups = lens _userGroups (\s a -> s { _userGroups = a })---- | Creates a login profile so that the user can access the AWS Management--- Console.-uLoginProfile :: Lens' User (Maybe UserLoginProfile)-uLoginProfile = lens _userLoginProfile (\s a -> s { _userLoginProfile = a })---- | One or more managed policy ARNs to attach to this user.-uManagedPolicyArns :: Lens' User (Maybe [Val Text])-uManagedPolicyArns = lens _userManagedPolicyArns (\s a -> s { _userManagedPolicyArns = a })---- | The path for the user name. For more information about paths, see--- Identifiers for IAM Entities in Using AWS Identity and Access Management.-uPath :: Lens' User (Maybe (Val Text))-uPath = lens _userPath (\s a -> s { _userPath = a })---- | The policies to associate with this user. For information about policies,--- see Overview of Policies in [Using IAM]. Note If you specify multiple--- polices, specify unique values for the policy name. If you don't, updates--- to the IAM user will fail.-uPolicies :: Lens' User (Maybe [IAMPolicies])-uPolicies = lens _userPolicies (\s a -> s { _userPolicies = a })---- | A name for the IAM user. For valid values, see the UserName parameter for--- the CreateUser action in the IAM API Reference. If you don't specify a--- name, AWS CloudFormation generates a unique physical ID and uses that ID--- for the group name.-uUserName :: Lens' User (Maybe (Val Text))-uUserName = lens _userUserName (\s a -> s { _userUserName = a })
− library-gen/Stratosphere/Resources/UserToGroupAddition.hs
@@ -1,51 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::IAM::UserToGroupAddition type adds AWS Identity and Access--- Management (IAM) users to a group. This type supports updates. For more--- information about updating stacks, see AWS CloudFormation Stacks Updates.--module Stratosphere.Resources.UserToGroupAddition where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for UserToGroupAddition. See--- 'userToGroupAddition' for a more convenient constructor.-data UserToGroupAddition =-  UserToGroupAddition-  { _userToGroupAdditionGroupName :: Val Text-  , _userToGroupAdditionUsers :: [Val Text]-  } deriving (Show, Generic)--instance ToJSON UserToGroupAddition where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }--instance FromJSON UserToGroupAddition where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }---- | Constructor for 'UserToGroupAddition' containing required fields as--- arguments.-userToGroupAddition-  :: Val Text -- ^ 'utgaGroupName'-  -> [Val Text] -- ^ 'utgaUsers'-  -> UserToGroupAddition-userToGroupAddition groupNamearg usersarg =-  UserToGroupAddition-  { _userToGroupAdditionGroupName = groupNamearg-  , _userToGroupAdditionUsers = usersarg-  }---- | The name of group to add users to.-utgaGroupName :: Lens' UserToGroupAddition (Val Text)-utgaGroupName = lens _userToGroupAdditionGroupName (\s a -> s { _userToGroupAdditionGroupName = a })---- |-utgaUsers :: Lens' UserToGroupAddition [Val Text]-utgaUsers = lens _userToGroupAdditionUsers (\s a -> s { _userToGroupAdditionUsers = a })
− library-gen/Stratosphere/Resources/VPC.hs
@@ -1,76 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Creates a Virtual Private Cloud (VPC) with the CIDR block that you--- specify.--module Stratosphere.Resources.VPC where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.ResourceTag---- | Full data type definition for VPC. See 'vpc' for a more convenient--- constructor.-data VPC =-  VPC-  { _vPCCidrBlock :: Val Text-  , _vPCEnableDnsSupport :: Maybe (Val Bool')-  , _vPCEnableDnsHostnames :: Maybe (Val Bool')-  , _vPCInstanceTenancy :: Maybe (Val Text)-  , _vPCTags :: Maybe [ResourceTag]-  } deriving (Show, Generic)--instance ToJSON VPC where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 4, omitNothingFields = True }--instance FromJSON VPC where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 4, omitNothingFields = True }---- | Constructor for 'VPC' containing required fields as arguments.-vpc-  :: Val Text -- ^ 'vpcCidrBlock'-  -> VPC-vpc cidrBlockarg =-  VPC-  { _vPCCidrBlock = cidrBlockarg-  , _vPCEnableDnsSupport = Nothing-  , _vPCEnableDnsHostnames = Nothing-  , _vPCInstanceTenancy = Nothing-  , _vPCTags = Nothing-  }---- | The CIDR block you want the VPC to cover. For example: "10.0.0.0/16".-vpcCidrBlock :: Lens' VPC (Val Text)-vpcCidrBlock = lens _vPCCidrBlock (\s a -> s { _vPCCidrBlock = a })---- | Specifies whether DNS resolution is supported for the VPC. If this--- attribute is true, the Amazon DNS server resolves DNS hostnames for your--- instances to their corresponding IP addresses; otherwise, it does not. By--- default the value is set to true.-vpcEnableDnsSupport :: Lens' VPC (Maybe (Val Bool'))-vpcEnableDnsSupport = lens _vPCEnableDnsSupport (\s a -> s { _vPCEnableDnsSupport = a })---- | Specifies whether the instances launched in the VPC get DNS hostnames. If--- this attribute is true, instances in the VPC get DNS hostnames; otherwise,--- they do not. You can only set EnableDnsHostnames to true if you also set--- the EnableDnsSupport attribute to true. By default, the value is set to--- false.-vpcEnableDnsHostnames :: Lens' VPC (Maybe (Val Bool'))-vpcEnableDnsHostnames = lens _vPCEnableDnsHostnames (\s a -> s { _vPCEnableDnsHostnames = a })---- | The allowed tenancy of instances launched into the VPC. "default":--- Instances can be launched with any tenancy. "dedicated": Any instance--- launched into the VPC will automatically be dedicated, regardless of the--- tenancy option you specify when you launch the instance.-vpcInstanceTenancy :: Lens' VPC (Maybe (Val Text))-vpcInstanceTenancy = lens _vPCInstanceTenancy (\s a -> s { _vPCInstanceTenancy = a })---- | An arbitrary set of tags (key–value pairs) for this VPC.-vpcTags :: Lens' VPC (Maybe [ResourceTag])-vpcTags = lens _vPCTags (\s a -> s { _vPCTags = a })
− library-gen/Stratosphere/Resources/VPCEndpoint.hs
@@ -1,68 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::EC2::VPCEndpoint resource creates a VPC endpoint that you can--- use to establish a private connection between your VPC and another AWS--- service without requiring access over the Internet, a VPN connection, or--- AWS Direct Connect.--module Stratosphere.Resources.VPCEndpoint where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for VPCEndpoint. See 'vpcEndpoint' for a more--- convenient constructor.-data VPCEndpoint =-  VPCEndpoint-  { _vPCEndpointPolicyDocument :: Maybe Object-  , _vPCEndpointRouteTableIds :: Maybe [Val Text]-  , _vPCEndpointServiceName :: Val Text-  , _vPCEndpointVpcId :: Val Text-  } deriving (Show, Generic)--instance ToJSON VPCEndpoint where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 12, omitNothingFields = True }--instance FromJSON VPCEndpoint where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 12, omitNothingFields = True }---- | Constructor for 'VPCEndpoint' containing required fields as arguments.-vpcEndpoint-  :: Val Text -- ^ 'vpceServiceName'-  -> Val Text -- ^ 'vpceVpcId'-  -> VPCEndpoint-vpcEndpoint serviceNamearg vpcIdarg =-  VPCEndpoint-  { _vPCEndpointPolicyDocument = Nothing-  , _vPCEndpointRouteTableIds = Nothing-  , _vPCEndpointServiceName = serviceNamearg-  , _vPCEndpointVpcId = vpcIdarg-  }---- | A policy to attach to the endpoint that controls access to the service.--- The policy must be valid JSON. The default policy allows full access to the--- AWS service. For more information, see Controlling Access to Services in--- the Amazon VPC User Guide.-vpcePolicyDocument :: Lens' VPCEndpoint (Maybe Object)-vpcePolicyDocument = lens _vPCEndpointPolicyDocument (\s a -> s { _vPCEndpointPolicyDocument = a })---- | One or more route table IDs that are used by the VPC to reach the--- endpoint.-vpceRouteTableIds :: Lens' VPCEndpoint (Maybe [Val Text])-vpceRouteTableIds = lens _vPCEndpointRouteTableIds (\s a -> s { _vPCEndpointRouteTableIds = a })---- | The AWS service to which you want to establish a connection. Specify the--- service name in the form of com.amazonaws.region.service.-vpceServiceName :: Lens' VPCEndpoint (Val Text)-vpceServiceName = lens _vPCEndpointServiceName (\s a -> s { _vPCEndpointServiceName = a })---- | The ID of the VPC in which the endpoint is used.-vpceVpcId :: Lens' VPCEndpoint (Val Text)-vpceVpcId = lens _vPCEndpointVpcId (\s a -> s { _vPCEndpointVpcId = a })
− library-gen/Stratosphere/Resources/VPCGatewayAttachment.hs
@@ -1,54 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Attaches a gateway to a VPC.--module Stratosphere.Resources.VPCGatewayAttachment where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for VPCGatewayAttachment. See--- 'vpcGatewayAttachment' for a more convenient constructor.-data VPCGatewayAttachment =-  VPCGatewayAttachment-  { _vPCGatewayAttachmentInternetGatewayId :: Maybe (Val Text)-  , _vPCGatewayAttachmentVpcId :: Val Text-  , _vPCGatewayAttachmentVpnGatewayId :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON VPCGatewayAttachment where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }--instance FromJSON VPCGatewayAttachment where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }---- | Constructor for 'VPCGatewayAttachment' containing required fields as--- arguments.-vpcGatewayAttachment-  :: Val Text -- ^ 'vpcgaVpcId'-  -> VPCGatewayAttachment-vpcGatewayAttachment vpcIdarg =-  VPCGatewayAttachment-  { _vPCGatewayAttachmentInternetGatewayId = Nothing-  , _vPCGatewayAttachmentVpcId = vpcIdarg-  , _vPCGatewayAttachmentVpnGatewayId = Nothing-  }---- | The ID of the Internet gateway.-vpcgaInternetGatewayId :: Lens' VPCGatewayAttachment (Maybe (Val Text))-vpcgaInternetGatewayId = lens _vPCGatewayAttachmentInternetGatewayId (\s a -> s { _vPCGatewayAttachmentInternetGatewayId = a })---- | The ID of the VPC to associate with this gateway.-vpcgaVpcId :: Lens' VPCGatewayAttachment (Val Text)-vpcgaVpcId = lens _vPCGatewayAttachmentVpcId (\s a -> s { _vPCGatewayAttachmentVpcId = a })---- | The ID of the virtual private network (VPN) gateway to attach to the VPC.-vpcgaVpnGatewayId :: Lens' VPCGatewayAttachment (Maybe (Val Text))-vpcgaVpnGatewayId = lens _vPCGatewayAttachmentVpnGatewayId (\s a -> s { _vPCGatewayAttachmentVpnGatewayId = a })
− library-gen/Stratosphere/Resources/Volume.hs
@@ -1,121 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | The AWS::EC2::Volume type creates a new Amazon Elastic Block Store--- (Amazon EBS) volume. You can set a deletion policy for your volume to--- control how AWS CloudFormation handles the volume when the stack is--- deleted. For Amazon EBS volumes, you can choose to retain the volume, to--- delete the volume, or to create a snapshot of the volume. For more--- information, see DeletionPolicy Attribute.--module Stratosphere.Resources.Volume where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values-import Stratosphere.ResourceProperties.ResourceTag---- | Full data type definition for Volume. See 'volume' for a more convenient--- constructor.-data Volume =-  Volume-  { _volumeAutoEnableIO :: Maybe (Val Bool')-  , _volumeAvailabilityZone :: Val Text-  , _volumeEncrypted :: Maybe (Val Bool')-  , _volumeIops :: Maybe (Val Integer')-  , _volumeKmsKeyId :: Maybe (Val Text)-  , _volumeSize :: Maybe (Val Text)-  , _volumeSnapshotId :: Maybe (Val Text)-  , _volumeTags :: Maybe [ResourceTag]-  , _volumeVolumeType :: Maybe (Val Text)-  } deriving (Show, Generic)--instance ToJSON Volume where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 7, omitNothingFields = True }--instance FromJSON Volume where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 7, omitNothingFields = True }---- | Constructor for 'Volume' containing required fields as arguments.-volume-  :: Val Text -- ^ 'vAvailabilityZone'-  -> Volume-volume availabilityZonearg =-  Volume-  { _volumeAutoEnableIO = Nothing-  , _volumeAvailabilityZone = availabilityZonearg-  , _volumeEncrypted = Nothing-  , _volumeIops = Nothing-  , _volumeKmsKeyId = Nothing-  , _volumeSize = Nothing-  , _volumeSnapshotId = Nothing-  , _volumeTags = Nothing-  , _volumeVolumeType = Nothing-  }---- | Indicates whether the volume is auto-enabled for I/O operations. By--- default, Amazon EBS disables I/O to the volume from attached EC2 instances--- when it determines that a volume's data is potentially inconsistent. If the--- consistency of the volume is not a concern, and you prefer that the volume--- be made available immediately if it's impaired, you can configure the--- volume to automatically enable I/O. For more information, see Working with--- the AutoEnableIO Volume Attribute in the Amazon EC2 User Guide for Linux--- Instances.-vAutoEnableIO :: Lens' Volume (Maybe (Val Bool'))-vAutoEnableIO = lens _volumeAutoEnableIO (\s a -> s { _volumeAutoEnableIO = a })---- | The Availability Zone in which to create the new volume.-vAvailabilityZone :: Lens' Volume (Val Text)-vAvailabilityZone = lens _volumeAvailabilityZone (\s a -> s { _volumeAvailabilityZone = a })---- | Indicates whether the volume is encrypted. Encrypted Amazon EBS volumes--- can only be attached to instance types that support Amazon EBS encryption.--- Volumes that are created from encrypted snapshots are automatically--- encrypted. You cannot create an encrypted volume from an unencrypted--- snapshot or vice versa. If your AMI uses encrypted volumes, you can only--- launch the AMI on supported instance types. For more information, see--- Amazon EBS encryption in the Amazon EC2 User Guide for Linux Instances.-vEncrypted :: Lens' Volume (Maybe (Val Bool'))-vEncrypted = lens _volumeEncrypted (\s a -> s { _volumeEncrypted = a })---- | The number of I/O operations per second (IOPS) that the volume supports.--- For more information about the valid sizes for each volume type, see the--- Iops parameter for the CreateVolume action in the Amazon EC2 API Reference.-vIops :: Lens' Volume (Maybe (Val Integer'))-vIops = lens _volumeIops (\s a -> s { _volumeIops = a })---- | The Amazon Resource Name (ARN) of the AWS Key Management Service master--- key that is used to create the encrypted volume, such as--- arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef.--- If you create an encrypted volume and don't specify this property, the--- default master key is used.-vKmsKeyId :: Lens' Volume (Maybe (Val Text))-vKmsKeyId = lens _volumeKmsKeyId (\s a -> s { _volumeKmsKeyId = a })---- | The size of the volume, in gibibytes (GiBs). For more information about--- the valid sizes for each volume type, see the Size parameter for the--- CreateVolume action in the Amazon EC2 API Reference. If you specify the--- SnapshotId property, specify a size that is equal to or greater than the--- snapshot size. If you don't specify a size, Amazon EC2 will use the size of--- the snapshot as the volume size.-vSize :: Lens' Volume (Maybe (Val Text))-vSize = lens _volumeSize (\s a -> s { _volumeSize = a })---- | The snapshot from which to create the new volume.-vSnapshotId :: Lens' Volume (Maybe (Val Text))-vSnapshotId = lens _volumeSnapshotId (\s a -> s { _volumeSnapshotId = a })---- | An arbitrary set of tags (key–value pairs) for this volume.-vTags :: Lens' Volume (Maybe [ResourceTag])-vTags = lens _volumeTags (\s a -> s { _volumeTags = a })---- | The volume type. You can specify standard, io1, or gp2. If you set the--- type to io1, you must also set the Iops property. For more information--- about these values and the default value, see the VolumeType parameter for--- the CreateVolume action in the Amazon EC2 API Reference.-vVolumeType :: Lens' Volume (Maybe (Val Text))-vVolumeType = lens _volumeVolumeType (\s a -> s { _volumeVolumeType = a })
− library-gen/Stratosphere/Resources/VolumeAttachment.hs
@@ -1,62 +0,0 @@-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE OverloadedStrings #-}---- | Attaches an Amazon EBS volume to a running instance and exposes it to the--- instance with the specified device name.--module Stratosphere.Resources.VolumeAttachment where--import Control.Lens-import Data.Aeson-import Data.Aeson.Types-import Data.Text-import GHC.Generics--import Stratosphere.Values----- | Full data type definition for VolumeAttachment. See 'volumeAttachment'--- for a more convenient constructor.-data VolumeAttachment =-  VolumeAttachment-  { _volumeAttachmentDevice :: Val Text-  , _volumeAttachmentInstanceId :: Val Text-  , _volumeAttachmentVolumeId :: Val Text-  } deriving (Show, Generic)--instance ToJSON VolumeAttachment where-  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }--instance FromJSON VolumeAttachment where-  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 17, omitNothingFields = True }---- | Constructor for 'VolumeAttachment' containing required fields as--- arguments.-volumeAttachment-  :: Val Text -- ^ 'vaDevice'-  -> Val Text -- ^ 'vaInstanceId'-  -> Val Text -- ^ 'vaVolumeId'-  -> VolumeAttachment-volumeAttachment devicearg instanceIdarg volumeIdarg =-  VolumeAttachment-  { _volumeAttachmentDevice = devicearg-  , _volumeAttachmentInstanceId = instanceIdarg-  , _volumeAttachmentVolumeId = volumeIdarg-  }---- | How the device is exposed to the instance (e.g., /dev/sdh, or xvdh).-vaDevice :: Lens' VolumeAttachment (Val Text)-vaDevice = lens _volumeAttachmentDevice (\s a -> s { _volumeAttachmentDevice = a })---- | The ID of the instance to which the volume attaches. This value can be a--- reference to an AWS::EC2::Instance resource, or it can be the physical ID--- of an existing EC2 instance.-vaInstanceId :: Lens' VolumeAttachment (Val Text)-vaInstanceId = lens _volumeAttachmentInstanceId (\s a -> s { _volumeAttachmentInstanceId = a })---- | The ID of the Amazon EBS volume. The volume and instance must be within--- the same Availability Zone. This value can be a reference to an--- AWS::EC2::Volume resource, or it can be the volume ID of an existing Amazon--- EBS volume.-vaVolumeId :: Lens' VolumeAttachment (Val Text)-vaVolumeId = lens _volumeAttachmentVolumeId (\s a -> s { _volumeAttachmentVolumeId = a })
+ library-gen/Stratosphere/Resources/WAFByteMatchSet.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-bytematchset.html++module Stratosphere.Resources.WAFByteMatchSet where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFByteMatchSetByteMatchTuple++-- | Full data type definition for WAFByteMatchSet. See 'wafByteMatchSet' for+-- | a more convenient constructor.+data WAFByteMatchSet =+  WAFByteMatchSet+  { _wAFByteMatchSetByteMatchTuples :: Maybe [WAFByteMatchSetByteMatchTuple]+  , _wAFByteMatchSetName :: Val Text+  } deriving (Show, Generic)++instance ToJSON WAFByteMatchSet where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++instance FromJSON WAFByteMatchSet where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 16, omitNothingFields = True }++-- | Constructor for 'WAFByteMatchSet' containing required fields as+-- | arguments.+wafByteMatchSet+  :: Val Text -- ^ 'wafbmsName'+  -> WAFByteMatchSet+wafByteMatchSet namearg =+  WAFByteMatchSet+  { _wAFByteMatchSetByteMatchTuples = Nothing+  , _wAFByteMatchSetName = namearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-bytematchset.html#cfn-waf-bytematchset-bytematchtuples+wafbmsByteMatchTuples :: Lens' WAFByteMatchSet (Maybe [WAFByteMatchSetByteMatchTuple])+wafbmsByteMatchTuples = lens _wAFByteMatchSetByteMatchTuples (\s a -> s { _wAFByteMatchSetByteMatchTuples = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-bytematchset.html#cfn-waf-bytematchset-name+wafbmsName :: Lens' WAFByteMatchSet (Val Text)+wafbmsName = lens _wAFByteMatchSetName (\s a -> s { _wAFByteMatchSetName = a })
+ library-gen/Stratosphere/Resources/WAFIPSet.hs view
@@ -0,0 +1,47 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-ipset.html++module Stratosphere.Resources.WAFIPSet where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFIPSetIPSetDescriptor++-- | Full data type definition for WAFIPSet. See 'wafipSet' for a more+-- | convenient constructor.+data WAFIPSet =+  WAFIPSet+  { _wAFIPSetIPSetDescriptors :: Maybe [WAFIPSetIPSetDescriptor]+  , _wAFIPSetName :: Val Text+  } deriving (Show, Generic)++instance ToJSON WAFIPSet where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 9, omitNothingFields = True }++instance FromJSON WAFIPSet where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 9, omitNothingFields = True }++-- | Constructor for 'WAFIPSet' containing required fields as arguments.+wafipSet+  :: Val Text -- ^ 'wafipsName'+  -> WAFIPSet+wafipSet namearg =+  WAFIPSet+  { _wAFIPSetIPSetDescriptors = Nothing+  , _wAFIPSetName = namearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-ipset.html#cfn-waf-ipset-ipsetdescriptors+wafipsIPSetDescriptors :: Lens' WAFIPSet (Maybe [WAFIPSetIPSetDescriptor])+wafipsIPSetDescriptors = lens _wAFIPSetIPSetDescriptors (\s a -> s { _wAFIPSetIPSetDescriptors = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-ipset.html#cfn-waf-ipset-name+wafipsName :: Lens' WAFIPSet (Val Text)+wafipsName = lens _wAFIPSetName (\s a -> s { _wAFIPSetName = a })
+ library-gen/Stratosphere/Resources/WAFRule.hs view
@@ -0,0 +1,54 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html++module Stratosphere.Resources.WAFRule where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFRulePredicate++-- | Full data type definition for WAFRule. See 'wafRule' for a more+-- | convenient constructor.+data WAFRule =+  WAFRule+  { _wAFRuleMetricName :: Val Text+  , _wAFRuleName :: Val Text+  , _wAFRulePredicates :: Maybe [WAFRulePredicate]+  } deriving (Show, Generic)++instance ToJSON WAFRule where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 8, omitNothingFields = True }++instance FromJSON WAFRule where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 8, omitNothingFields = True }++-- | Constructor for 'WAFRule' containing required fields as arguments.+wafRule+  :: Val Text -- ^ 'wafrMetricName'+  -> Val Text -- ^ 'wafrName'+  -> WAFRule+wafRule metricNamearg namearg =+  WAFRule+  { _wAFRuleMetricName = metricNamearg+  , _wAFRuleName = namearg+  , _wAFRulePredicates = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html#cfn-waf-rule-metricname+wafrMetricName :: Lens' WAFRule (Val Text)+wafrMetricName = lens _wAFRuleMetricName (\s a -> s { _wAFRuleMetricName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html#cfn-waf-rule-name+wafrName :: Lens' WAFRule (Val Text)+wafrName = lens _wAFRuleName (\s a -> s { _wAFRuleName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-rule.html#cfn-waf-rule-predicates+wafrPredicates :: Lens' WAFRule (Maybe [WAFRulePredicate])+wafrPredicates = lens _wAFRulePredicates (\s a -> s { _wAFRulePredicates = a })
+ library-gen/Stratosphere/Resources/WAFSizeConstraintSet.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sizeconstraintset.html++module Stratosphere.Resources.WAFSizeConstraintSet where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFSizeConstraintSetSizeConstraint++-- | Full data type definition for WAFSizeConstraintSet. See+-- | 'wafSizeConstraintSet' for a more convenient constructor.+data WAFSizeConstraintSet =+  WAFSizeConstraintSet+  { _wAFSizeConstraintSetName :: Val Text+  , _wAFSizeConstraintSetSizeConstraints :: [WAFSizeConstraintSetSizeConstraint]+  } deriving (Show, Generic)++instance ToJSON WAFSizeConstraintSet where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++instance FromJSON WAFSizeConstraintSet where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 21, omitNothingFields = True }++-- | Constructor for 'WAFSizeConstraintSet' containing required fields as+-- | arguments.+wafSizeConstraintSet+  :: Val Text -- ^ 'wafscsName'+  -> [WAFSizeConstraintSetSizeConstraint] -- ^ 'wafscsSizeConstraints'+  -> WAFSizeConstraintSet+wafSizeConstraintSet namearg sizeConstraintsarg =+  WAFSizeConstraintSet+  { _wAFSizeConstraintSetName = namearg+  , _wAFSizeConstraintSetSizeConstraints = sizeConstraintsarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sizeconstraintset.html#cfn-waf-sizeconstraintset-name+wafscsName :: Lens' WAFSizeConstraintSet (Val Text)+wafscsName = lens _wAFSizeConstraintSetName (\s a -> s { _wAFSizeConstraintSetName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sizeconstraintset.html#cfn-waf-sizeconstraintset-sizeconstraints+wafscsSizeConstraints :: Lens' WAFSizeConstraintSet [WAFSizeConstraintSetSizeConstraint]+wafscsSizeConstraints = lens _wAFSizeConstraintSetSizeConstraints (\s a -> s { _wAFSizeConstraintSetSizeConstraints = a })
+ library-gen/Stratosphere/Resources/WAFSqlInjectionMatchSet.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sqlinjectionmatchset.html++module Stratosphere.Resources.WAFSqlInjectionMatchSet where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFSqlInjectionMatchSetSqlInjectionMatchTuple++-- | Full data type definition for WAFSqlInjectionMatchSet. See+-- | 'wafSqlInjectionMatchSet' for a more convenient constructor.+data WAFSqlInjectionMatchSet =+  WAFSqlInjectionMatchSet+  { _wAFSqlInjectionMatchSetName :: Val Text+  , _wAFSqlInjectionMatchSetSqlInjectionMatchTuples :: Maybe [WAFSqlInjectionMatchSetSqlInjectionMatchTuple]+  } deriving (Show, Generic)++instance ToJSON WAFSqlInjectionMatchSet where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++instance FromJSON WAFSqlInjectionMatchSet where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 24, omitNothingFields = True }++-- | Constructor for 'WAFSqlInjectionMatchSet' containing required fields as+-- | arguments.+wafSqlInjectionMatchSet+  :: Val Text -- ^ 'wafsimsName'+  -> WAFSqlInjectionMatchSet+wafSqlInjectionMatchSet namearg =+  WAFSqlInjectionMatchSet+  { _wAFSqlInjectionMatchSetName = namearg+  , _wAFSqlInjectionMatchSetSqlInjectionMatchTuples = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sqlinjectionmatchset.html#cfn-waf-sqlinjectionmatchset-name+wafsimsName :: Lens' WAFSqlInjectionMatchSet (Val Text)+wafsimsName = lens _wAFSqlInjectionMatchSetName (\s a -> s { _wAFSqlInjectionMatchSetName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-sqlinjectionmatchset.html#cfn-waf-sqlinjectionmatchset-sqlinjectionmatchtuples+wafsimsSqlInjectionMatchTuples :: Lens' WAFSqlInjectionMatchSet (Maybe [WAFSqlInjectionMatchSetSqlInjectionMatchTuple])+wafsimsSqlInjectionMatchTuples = lens _wAFSqlInjectionMatchSetSqlInjectionMatchTuples (\s a -> s { _wAFSqlInjectionMatchSetSqlInjectionMatchTuples = a })
+ library-gen/Stratosphere/Resources/WAFWebACL.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html++module Stratosphere.Resources.WAFWebACL where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFWebACLWafAction+import Stratosphere.ResourceProperties.WAFWebACLActivatedRule++-- | Full data type definition for WAFWebACL. See 'wafWebACL' for a more+-- | convenient constructor.+data WAFWebACL =+  WAFWebACL+  { _wAFWebACLDefaultAction :: WAFWebACLWafAction+  , _wAFWebACLMetricName :: Val Text+  , _wAFWebACLName :: Val Text+  , _wAFWebACLRules :: Maybe [WAFWebACLActivatedRule]+  } deriving (Show, Generic)++instance ToJSON WAFWebACL where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }++instance FromJSON WAFWebACL where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 10, omitNothingFields = True }++-- | Constructor for 'WAFWebACL' containing required fields as arguments.+wafWebACL+  :: WAFWebACLWafAction -- ^ 'wafwaclDefaultAction'+  -> Val Text -- ^ 'wafwaclMetricName'+  -> Val Text -- ^ 'wafwaclName'+  -> WAFWebACL+wafWebACL defaultActionarg metricNamearg namearg =+  WAFWebACL+  { _wAFWebACLDefaultAction = defaultActionarg+  , _wAFWebACLMetricName = metricNamearg+  , _wAFWebACLName = namearg+  , _wAFWebACLRules = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html#cfn-waf-webacl-defaultaction+wafwaclDefaultAction :: Lens' WAFWebACL WAFWebACLWafAction+wafwaclDefaultAction = lens _wAFWebACLDefaultAction (\s a -> s { _wAFWebACLDefaultAction = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html#cfn-waf-webacl-metricname+wafwaclMetricName :: Lens' WAFWebACL (Val Text)+wafwaclMetricName = lens _wAFWebACLMetricName (\s a -> s { _wAFWebACLMetricName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html#cfn-waf-webacl-name+wafwaclName :: Lens' WAFWebACL (Val Text)+wafwaclName = lens _wAFWebACLName (\s a -> s { _wAFWebACLName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-webacl.html#cfn-waf-webacl-rules+wafwaclRules :: Lens' WAFWebACL (Maybe [WAFWebACLActivatedRule])+wafwaclRules = lens _wAFWebACLRules (\s a -> s { _wAFWebACLRules = a })
+ library-gen/Stratosphere/Resources/WAFXssMatchSet.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-xssmatchset.html++module Stratosphere.Resources.WAFXssMatchSet where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFXssMatchSetXssMatchTuple++-- | Full data type definition for WAFXssMatchSet. See 'wafXssMatchSet' for a+-- | more convenient constructor.+data WAFXssMatchSet =+  WAFXssMatchSet+  { _wAFXssMatchSetName :: Val Text+  , _wAFXssMatchSetXssMatchTuples :: [WAFXssMatchSetXssMatchTuple]+  } deriving (Show, Generic)++instance ToJSON WAFXssMatchSet where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++instance FromJSON WAFXssMatchSet where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++-- | Constructor for 'WAFXssMatchSet' containing required fields as arguments.+wafXssMatchSet+  :: Val Text -- ^ 'wafxmsName'+  -> [WAFXssMatchSetXssMatchTuple] -- ^ 'wafxmsXssMatchTuples'+  -> WAFXssMatchSet+wafXssMatchSet namearg xssMatchTuplesarg =+  WAFXssMatchSet+  { _wAFXssMatchSetName = namearg+  , _wAFXssMatchSetXssMatchTuples = xssMatchTuplesarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-xssmatchset.html#cfn-waf-xssmatchset-name+wafxmsName :: Lens' WAFXssMatchSet (Val Text)+wafxmsName = lens _wAFXssMatchSetName (\s a -> s { _wAFXssMatchSetName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-waf-xssmatchset.html#cfn-waf-xssmatchset-xssmatchtuples+wafxmsXssMatchTuples :: Lens' WAFXssMatchSet [WAFXssMatchSetXssMatchTuple]+wafxmsXssMatchTuples = lens _wAFXssMatchSetXssMatchTuples (\s a -> s { _wAFXssMatchSetXssMatchTuples = a })
+ library-gen/Stratosphere/Resources/WorkSpacesWorkspace.hs view
@@ -0,0 +1,74 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html++module Stratosphere.Resources.WorkSpacesWorkspace where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for WorkSpacesWorkspace. See+-- | 'workSpacesWorkspace' for a more convenient constructor.+data WorkSpacesWorkspace =+  WorkSpacesWorkspace+  { _workSpacesWorkspaceBundleId :: Val Text+  , _workSpacesWorkspaceDirectoryId :: Val Text+  , _workSpacesWorkspaceRootVolumeEncryptionEnabled :: Maybe (Val Bool')+  , _workSpacesWorkspaceUserName :: Val Text+  , _workSpacesWorkspaceUserVolumeEncryptionEnabled :: Maybe (Val Bool')+  , _workSpacesWorkspaceVolumeEncryptionKey :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON WorkSpacesWorkspace where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++instance FromJSON WorkSpacesWorkspace where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 20, omitNothingFields = True }++-- | Constructor for 'WorkSpacesWorkspace' containing required fields as+-- | arguments.+workSpacesWorkspace+  :: Val Text -- ^ 'wswBundleId'+  -> Val Text -- ^ 'wswDirectoryId'+  -> Val Text -- ^ 'wswUserName'+  -> WorkSpacesWorkspace+workSpacesWorkspace bundleIdarg directoryIdarg userNamearg =+  WorkSpacesWorkspace+  { _workSpacesWorkspaceBundleId = bundleIdarg+  , _workSpacesWorkspaceDirectoryId = directoryIdarg+  , _workSpacesWorkspaceRootVolumeEncryptionEnabled = Nothing+  , _workSpacesWorkspaceUserName = userNamearg+  , _workSpacesWorkspaceUserVolumeEncryptionEnabled = Nothing+  , _workSpacesWorkspaceVolumeEncryptionKey = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-bundleid+wswBundleId :: Lens' WorkSpacesWorkspace (Val Text)+wswBundleId = lens _workSpacesWorkspaceBundleId (\s a -> s { _workSpacesWorkspaceBundleId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-directoryid+wswDirectoryId :: Lens' WorkSpacesWorkspace (Val Text)+wswDirectoryId = lens _workSpacesWorkspaceDirectoryId (\s a -> s { _workSpacesWorkspaceDirectoryId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-rootvolumeencryptionenabled+wswRootVolumeEncryptionEnabled :: Lens' WorkSpacesWorkspace (Maybe (Val Bool'))+wswRootVolumeEncryptionEnabled = lens _workSpacesWorkspaceRootVolumeEncryptionEnabled (\s a -> s { _workSpacesWorkspaceRootVolumeEncryptionEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-username+wswUserName :: Lens' WorkSpacesWorkspace (Val Text)+wswUserName = lens _workSpacesWorkspaceUserName (\s a -> s { _workSpacesWorkspaceUserName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-uservolumeencryptionenabled+wswUserVolumeEncryptionEnabled :: Lens' WorkSpacesWorkspace (Maybe (Val Bool'))+wswUserVolumeEncryptionEnabled = lens _workSpacesWorkspaceUserVolumeEncryptionEnabled (\s a -> s { _workSpacesWorkspaceUserVolumeEncryptionEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-volumeencryptionkey+wswVolumeEncryptionKey :: Lens' WorkSpacesWorkspace (Maybe (Val Text))+wswVolumeEncryptionKey = lens _workSpacesWorkspaceVolumeEncryptionKey (\s a -> s { _workSpacesWorkspaceVolumeEncryptionKey = a })
+ library/Stratosphere/ResourceAttributes/AutoScalingReplacingUpdatePolicy.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | To specify how AWS CloudFormation handles replacing updates for an Auto+-- Scaling group, use the AutoScalingReplacingUpdate policy.++module Stratosphere.ResourceAttributes.AutoScalingReplacingUpdatePolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for AutoScalingReplacingUpdatePolicy. See+-- 'autoScalingReplacingUpdatePolicy' for a more convenient constructor.+data AutoScalingReplacingUpdatePolicy =+  AutoScalingReplacingUpdatePolicy+  { _autoScalingReplacingUpdatePolicyWillReplace :: Maybe (Val Bool')+  } deriving (Show, Generic)++instance ToJSON AutoScalingReplacingUpdatePolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON AutoScalingReplacingUpdatePolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'AutoScalingReplacingUpdatePolicy' containing required fields+-- as arguments.+autoScalingReplacingUpdatePolicy+  :: AutoScalingReplacingUpdatePolicy+autoScalingReplacingUpdatePolicy  =+  AutoScalingReplacingUpdatePolicy+  { _autoScalingReplacingUpdatePolicyWillReplace = Nothing+  }++-- | Specifies whether an Auto Scaling group and the instances it contains are+-- replaced during an update. During replacement, AWS CloudFormation retains+-- the old group until it finishes creating the new one. This allows AWS+-- CloudFormation to roll back to the old Auto Scaling group if the update+-- doesn't succeed. While AWS CloudFormation creates the new group, it doesn't+-- detach or attach any instances. After creating the new Auto Scaling group,+-- AWS CloudFormation removes the old Auto Scaling group during the cleanup+-- process. If the update doesn't succeed, AWS CloudFormation removes the new+-- Auto Scaling group.+asrupWillReplace :: Lens' AutoScalingReplacingUpdatePolicy (Maybe (Val Bool'))+asrupWillReplace = lens _autoScalingReplacingUpdatePolicyWillReplace (\s a -> s { _autoScalingReplacingUpdatePolicyWillReplace = a })
+ library/Stratosphere/ResourceAttributes/AutoScalingRollingUpdatePolicy.hs view
@@ -0,0 +1,108 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | To specify how AWS CloudFormation handles rolling updates for an Auto+-- Scaling group, use the AutoScalingRollingUpdatePolicy policy.++module Stratosphere.ResourceAttributes.AutoScalingRollingUpdatePolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for AutoScalingRollingUpdatePolicy. See+-- 'autoScalingRollingUpdatePolicy' for a more convenient constructor.+data AutoScalingRollingUpdatePolicy =+  AutoScalingRollingUpdatePolicy+  { _autoScalingRollingUpdatePolicyMaxBatchSize :: Maybe (Val Integer')+  , _autoScalingRollingUpdatePolicyMinInstancesInService :: Maybe (Val Integer')+  , _autoScalingRollingUpdatePolicyMinSuccessfulInstancesPercent :: Maybe (Val Integer')+  , _autoScalingRollingUpdatePolicyPauseTime :: Maybe (Val Text)+  , _autoScalingRollingUpdatePolicySuspendProcess :: Maybe [Val Text]+  , _autoScalingRollingUpdatePolicyWaitOnResourceSignals :: Maybe (Val Bool')+  } deriving (Show, Generic)++instance ToJSON AutoScalingRollingUpdatePolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++instance FromJSON AutoScalingRollingUpdatePolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 25, omitNothingFields = True }++-- | Constructor for 'AutoScalingRollingUpdatePolicy' containing required fields as+-- arguments.+autoScalingRollingUpdatePolicy+  :: AutoScalingRollingUpdatePolicy+autoScalingRollingUpdatePolicy  =+  AutoScalingRollingUpdatePolicy+  { _autoScalingRollingUpdatePolicyMaxBatchSize = Nothing+  , _autoScalingRollingUpdatePolicyMinInstancesInService = Nothing+  , _autoScalingRollingUpdatePolicyMinSuccessfulInstancesPercent = Nothing+  , _autoScalingRollingUpdatePolicyPauseTime = Nothing+  , _autoScalingRollingUpdatePolicySuspendProcess = Nothing+  , _autoScalingRollingUpdatePolicyWaitOnResourceSignals = Nothing+  }++-- | Specifies the maximum number of instances that AWS CloudFormation+-- terminates.+asrupMaxBatchSize :: Lens' AutoScalingRollingUpdatePolicy (Maybe (Val Integer'))+asrupMaxBatchSize = lens _autoScalingRollingUpdatePolicyMaxBatchSize (\s a -> s { _autoScalingRollingUpdatePolicyMaxBatchSize = a })++-- | Specifies the minimum number of instances that must be in service within+-- the Auto Scaling group while AWS CloudFormation terminates obsolete+-- instances.+asrupMinInstancesInService :: Lens' AutoScalingRollingUpdatePolicy (Maybe (Val Integer'))+asrupMinInstancesInService = lens _autoScalingRollingUpdatePolicyMinInstancesInService (\s a -> s { _autoScalingRollingUpdatePolicyMinInstancesInService = a })++-- | Specifies the percentage of instances in an Auto Scaling rolling update+-- that must signal success for an update to succeed. You can specify a value+-- from 0 to 100. AWS CloudFormation rounds to the nearest tenth of a percent.+-- For example, if you update five instances with a minimum successful+-- percentage of 50, three instances must signal success. If an instance+-- doesn't send a signal within the time specified using the PauseTime+-- property, AWS CloudFormation assumes that the instance wasn't successfully+-- updated. If you specify this property, you must also enable the+-- WaitOnResourceSignals and PauseTime properties.+asrupMinSuccessfulInstancesPercent :: Lens' AutoScalingRollingUpdatePolicy (Maybe (Val Integer'))+asrupMinSuccessfulInstancesPercent = lens _autoScalingRollingUpdatePolicyMinSuccessfulInstancesPercent (\s a -> s { _autoScalingRollingUpdatePolicyMinSuccessfulInstancesPercent = a })++-- | Specifies the amount of time that AWS CloudFormation should pause after+-- making a change to a batch of instances to give these instances time to+-- start software applications. For example, you might need PauseTime when+-- scaling up the number of instances in an Auto Scaling group. If you enable+-- the WaitOnResourceSignals property, PauseTime is the amount of time AWS+-- CloudFormation should wait for the Auto Scaling group to receive the+-- required number of valid signals from added or replaced instances. If the+-- PauseTime is exceeded before the Auto Scaling group receives the required+-- number of signals, the update fails. For best results, specify a time+-- period that gives your instances sufficient time to get started. If the+-- update needs to be rolled back, a short PauseTime can cause the rollback to+-- fail. Specify PauseTime in the ISO8601 duration format (in the format+-- PT#H#M#S, where each # is the number of hours, minutes, and seconds,+-- respectively). The maximum PauseTime is one hour (PT1H).+asrupPauseTime :: Lens' AutoScalingRollingUpdatePolicy (Maybe (Val Text))+asrupPauseTime = lens _autoScalingRollingUpdatePolicyPauseTime (\s a -> s { _autoScalingRollingUpdatePolicyPauseTime = a })++-- | Specifies the Auto Scaling processes to suspend during a stack update.+-- Suspending processes prevents Auto Scaling from interfering with a stack+-- update. For example, you can suspend alarming so that Auto Scaling doesn't+-- execute scaling policies associated with an alarm. For valid values, see+-- the ScalingProcesses.member.N parameter for the SuspendProcesses action in+-- the Auto Scaling API Reference.+asrupSuspendProcess :: Lens' AutoScalingRollingUpdatePolicy (Maybe [Val Text])+asrupSuspendProcess = lens _autoScalingRollingUpdatePolicySuspendProcess (\s a -> s { _autoScalingRollingUpdatePolicySuspendProcess = a })++-- | Specifies whether the Auto Scaling group waits on signals from new+-- instances during an update. AWS CloudFormation suspends the update of an+-- Auto Scaling group after new Amazon EC2 instances are launched into the+-- group. AWS CloudFormation must receive a signal from each new instance+-- within the specified PauseTime before continuing the update. To signal the+-- Auto Scaling group, use the cfn-signal helper script or SignalResource API.+-- Use this property to ensure that instances have completed installing and+-- configuring applications before the Auto Scaling group update proceeds.+asrupWaitOnResourceSignals :: Lens' AutoScalingRollingUpdatePolicy (Maybe (Val Bool'))+asrupWaitOnResourceSignals = lens _autoScalingRollingUpdatePolicyWaitOnResourceSignals (\s a -> s { _autoScalingRollingUpdatePolicyWaitOnResourceSignals = a })
+ library/Stratosphere/ResourceAttributes/AutoScalingScheduledActionPolicy.hs view
@@ -0,0 +1,60 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | To specify how AWS CloudFormation handles updates for the MinSize,+-- MaxSize, and DesiredCapacity properties when the+-- AWS::AutoScaling::AutoScalingGroup resource has an associated scheduled+-- action, use the AutoScalingScheduledAction policy. With scheduled actions,+-- the group size properties of an Auto Scaling group can change at any time.+-- When you update a stack with an Auto Scaling group and scheduled action,+-- AWS CloudFormation always sets the group size property values of your Auto+-- Scaling group to the values that are defined in the+-- AWS::AutoScaling::AutoScalingGroup resource of your template, even if a+-- scheduled action is in effect. If you do not want AWS CloudFormation to+-- change any of the group size property values when you have a scheduled+-- action in effect, use the AutoScalingScheduledAction update policy to+-- prevent AWS CloudFormation from changing the MinSize, MaxSize, or+-- DesiredCapacity properties unless you have modified these values in your+-- template.++module Stratosphere.ResourceAttributes.AutoScalingScheduledActionPolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for AutoScalingScheduledActionPolicy. See+-- 'autoScalingScheduledActionPolicy' for a more convenient constructor.+data AutoScalingScheduledActionPolicy =+  AutoScalingScheduledActionPolicy+  { _autoScalingScheduledActionPolicyIgnoreUnmodifiedGroupSizeProperties :: Maybe (Val Bool')+  } deriving (Show, Generic)++instance ToJSON AutoScalingScheduledActionPolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++instance FromJSON AutoScalingScheduledActionPolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 27, omitNothingFields = True }++-- | Constructor for 'AutoScalingScheduledActionPolicy' containing required fields+-- as arguments.+autoScalingScheduledActionPolicy+  :: AutoScalingScheduledActionPolicy+autoScalingScheduledActionPolicy  =+  AutoScalingScheduledActionPolicy+  { _autoScalingScheduledActionPolicyIgnoreUnmodifiedGroupSizeProperties = Nothing+  }++-- | Specifies whether AWS CloudFormation ignores differences in group size+-- properties between your current Auto Scaling group and the Auto Scaling+-- group described in the AWS::AutoScaling::AutoScalingGroup resource of your+-- template during a stack update. If you modify any of the group size+-- property values in your template, AWS CloudFormation uses the modified+-- values and updates your Auto Scaling group.+assapIgnoreUnmodifiedGroupSizeProperties :: Lens' AutoScalingScheduledActionPolicy (Maybe (Val Bool'))+assapIgnoreUnmodifiedGroupSizeProperties = lens _autoScalingScheduledActionPolicyIgnoreUnmodifiedGroupSizeProperties (\s a -> s { _autoScalingScheduledActionPolicyIgnoreUnmodifiedGroupSizeProperties = a })
+ library/Stratosphere/ResourceAttributes/CreationPolicy.hs view
@@ -0,0 +1,58 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | You associate the CreationPolicy attribute with a resource to prevent its+-- status from reaching create complete until AWS CloudFormation receives a+-- specified number of success signals or the timeout period is exceeded. To+-- signal a resource, you can use the cfn-signal helper script or+-- SignalResource API. AWS CloudFormation publishes valid signals to the stack+-- events so that you track the number of signals sent. The creation policy is+-- invoked only when AWS CloudFormation creates the associated resource.+-- Currently, the only AWS CloudFormation resources that support creation+-- policies are AWS::AutoScaling::AutoScalingGroup, AWS::EC2::Instance, and+-- AWS::CloudFormation::WaitCondition. The CreationPolicy attribute is helpful+-- when you want to wait on resource configuration actions before stack+-- creation proceeds. For example, if you install and configure software+-- applications on an Amazon EC2 instance, you might want those applications+-- up and running before proceeding. In such cases, you can add a+-- CreationPolicy attribute to the instance and then send a success signal to+-- the instance after the applications are installed and configured. For a+-- detailed example, see Deploying Applications on Amazon EC2 with AWS+-- CloudFormation.++module Stratosphere.ResourceAttributes.CreationPolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceAttributes.ResourceSignal++-- | Full data type definition for CreationPolicy. See 'creationPolicy' for a+-- more convenient constructor.+data CreationPolicy =+  CreationPolicy+  { _creationPolicyResourceSignal :: ResourceSignal+  } deriving (Show, Generic)++instance ToJSON CreationPolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++instance FromJSON CreationPolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++-- | Constructor for 'CreationPolicy' containing required fields as arguments.+creationPolicy+  :: ResourceSignal -- ^ 'cpResourceSignal'+  -> CreationPolicy+creationPolicy resourceSignalarg =+  CreationPolicy+  { _creationPolicyResourceSignal = resourceSignalarg+  }++-- |+cpResourceSignal :: Lens' CreationPolicy ResourceSignal+cpResourceSignal = lens _creationPolicyResourceSignal (\s a -> s { _creationPolicyResourceSignal = a })
+ library/Stratosphere/ResourceAttributes/ResourceSignal.hs view
@@ -0,0 +1,58 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- |++module Stratosphere.ResourceAttributes.ResourceSignal where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+++-- | Full data type definition for ResourceSignal. See 'resourceSignal' for a+-- more convenient constructor.+data ResourceSignal =+  ResourceSignal+  { _resourceSignalCount :: Maybe (Val Integer')+  , _resourceSignalTimeout :: Maybe (Val Text)+  } deriving (Show, Generic)++instance ToJSON ResourceSignal where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++instance FromJSON ResourceSignal where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 15, omitNothingFields = True }++-- | Constructor for 'ResourceSignal' containing required fields as arguments.+resourceSignal+  :: ResourceSignal+resourceSignal  =+  ResourceSignal+  { _resourceSignalCount = Nothing+  , _resourceSignalTimeout = Nothing+  }++-- | The number of success signals AWS CloudFormation must receive before it+-- sets the resource status as CREATE_COMPLETE. If the resource receives a+-- failure signal or doesn't receive the specified number of signals before+-- the timeout period expires, the resource creation fails and AWS+-- CloudFormation rolls the stack back.+rsCount :: Lens' ResourceSignal (Maybe (Val Integer'))+rsCount = lens _resourceSignalCount (\s a -> s { _resourceSignalCount = a })++-- | The length of time that AWS CloudFormation waits for the number of+-- signals that was specified in the Count property. The timeout period starts+-- after AWS CloudFormation starts creating the resource, and the timeout+-- expires no sooner than the time you specify but can occur shortly+-- thereafter. The maximum time that you can specify is 12 hours. The value+-- must be in ISO8601 duration format, in the form: "PT#H#M#S", where each #+-- is the number of hours, minutes, and seconds, respectively. For best+-- results, specify a period of time that gives your instances plenty of time+-- to get up and running. A shorter timeout can cause a rollback.+rsTimeout :: Lens' ResourceSignal (Maybe (Val Text))+rsTimeout = lens _resourceSignalTimeout (\s a -> s { _resourceSignalTimeout = a })
+ library/Stratosphere/ResourceAttributes/UpdatePolicy.hs view
@@ -0,0 +1,58 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}++-- | Use the UpdatePolicy attribute to specify how AWS CloudFormation handles+-- updates to the AWS::AutoScaling::AutoScalingGroup resource. AWS+-- CloudFormation invokes one of three update policies depending on the type+-- of change you make or on whether a scheduled action is associated with the+-- Auto Scaling group.++module Stratosphere.ResourceAttributes.UpdatePolicy where++import Control.Lens+import Data.Aeson+import Data.Aeson.Types+import Data.Text+import GHC.Generics++import Stratosphere.Values+import Stratosphere.ResourceAttributes.AutoScalingReplacingUpdatePolicy+import Stratosphere.ResourceAttributes.AutoScalingRollingUpdatePolicy+import Stratosphere.ResourceAttributes.AutoScalingScheduledActionPolicy++-- | Full data type definition for UpdatePolicy. See 'updatePolicy' for a more+-- convenient constructor.+data UpdatePolicy =+  UpdatePolicy+  { _updatePolicyAutoScalingReplacingUpdate :: Maybe AutoScalingReplacingUpdatePolicy+  , _updatePolicyAutoScalingRollingUpdate :: Maybe AutoScalingRollingUpdatePolicy+  , _updatePolicyAutoScalingScheduledAction :: Maybe AutoScalingScheduledActionPolicy+  } deriving (Show, Generic)++instance ToJSON UpdatePolicy where+  toJSON = genericToJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }++instance FromJSON UpdatePolicy where+  parseJSON = genericParseJSON defaultOptions { fieldLabelModifier = Prelude.drop 13, omitNothingFields = True }++-- | Constructor for 'UpdatePolicy' containing required fields as arguments.+updatePolicy+  :: UpdatePolicy+updatePolicy  =+  UpdatePolicy+  { _updatePolicyAutoScalingReplacingUpdate = Nothing+  , _updatePolicyAutoScalingRollingUpdate = Nothing+  , _updatePolicyAutoScalingScheduledAction = Nothing+  }++-- |+upAutoScalingReplacingUpdate :: Lens' UpdatePolicy (Maybe AutoScalingReplacingUpdatePolicy)+upAutoScalingReplacingUpdate = lens _updatePolicyAutoScalingReplacingUpdate (\s a -> s { _updatePolicyAutoScalingReplacingUpdate = a })++-- |+upAutoScalingRollingUpdate :: Lens' UpdatePolicy (Maybe AutoScalingRollingUpdatePolicy)+upAutoScalingRollingUpdate = lens _updatePolicyAutoScalingRollingUpdate (\s a -> s { _updatePolicyAutoScalingRollingUpdate = a })++-- |+upAutoScalingScheduledAction :: Lens' UpdatePolicy (Maybe AutoScalingScheduledActionPolicy)+upAutoScalingScheduledAction = lens _updatePolicyAutoScalingScheduledAction (\s a -> s { _updatePolicyAutoScalingScheduledAction = a })
stack.yaml view
@@ -1,6 +1,4 @@-resolver: nightly-2016-11-23  # Make sure to remove hlint from extra-deps if this changes+resolver: nightly-2016-11-26 packages:   - '.'-extra-deps:-  # TODO: Remove this once hlint-1.9.38 is in latest nightly-  - hlint-1.9.38+extra-deps: []
stratosphere.cabal view
@@ -3,7 +3,7 @@ -- see: https://github.com/sol/hpack  name:           stratosphere-version:        0.2.2+version:        0.3.0 synopsis:       EDSL for AWS CloudFormation description:    EDSL for AWS CloudFormation category:       AWS, Cloud@@ -51,101 +51,288 @@       Stratosphere.Helpers       Stratosphere.Outputs       Stratosphere.Parameters-      Stratosphere.Template-      Stratosphere.Types-      Stratosphere.Values-      Stratosphere.ResourceAttributes.AutoScalingReplacingUpdate-      Stratosphere.ResourceAttributes.AutoScalingRollingUpdate-      Stratosphere.ResourceAttributes.AutoScalingScheduledAction+      Stratosphere.ResourceAttributes.AutoScalingReplacingUpdatePolicy+      Stratosphere.ResourceAttributes.AutoScalingRollingUpdatePolicy+      Stratosphere.ResourceAttributes.AutoScalingScheduledActionPolicy       Stratosphere.ResourceAttributes.CreationPolicy       Stratosphere.ResourceAttributes.ResourceSignal       Stratosphere.ResourceAttributes.UpdatePolicy-      Stratosphere.ResourceProperties.AccessLoggingPolicy-      Stratosphere.ResourceProperties.AliasTarget-      Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescription-      Stratosphere.ResourceProperties.APIGatewayDeploymentStageDescriptionMethodSetting-      Stratosphere.ResourceProperties.ApiGatewayIntegration-      Stratosphere.ResourceProperties.ApiGatewayIntegrationResponse-      Stratosphere.ResourceProperties.ApiGatewayMethodResponse+      Stratosphere.Template+      Stratosphere.Types+      Stratosphere.Values+      Stratosphere.ResourceProperties.ApiGatewayApiKeyStageKey+      Stratosphere.ResourceProperties.ApiGatewayDeploymentMethodSetting+      Stratosphere.ResourceProperties.ApiGatewayDeploymentStageDescription+      Stratosphere.ResourceProperties.ApiGatewayMethodIntegration+      Stratosphere.ResourceProperties.ApiGatewayMethodIntegrationResponse+      Stratosphere.ResourceProperties.ApiGatewayMethodMethodResponse       Stratosphere.ResourceProperties.ApiGatewayRestApiS3Location       Stratosphere.ResourceProperties.ApiGatewayStageMethodSetting       Stratosphere.ResourceProperties.ApiGatewayUsagePlanApiStage       Stratosphere.ResourceProperties.ApiGatewayUsagePlanQuotaSettings       Stratosphere.ResourceProperties.ApiGatewayUsagePlanThrottleSettings-      Stratosphere.ResourceProperties.AppCookieStickinessPolicy-      Stratosphere.ResourceProperties.AutoScalingBlockDeviceMapping-      Stratosphere.ResourceProperties.AutoScalingEBSBlockDevice-      Stratosphere.ResourceProperties.AutoScalingMetricsCollection-      Stratosphere.ResourceProperties.AutoScalingNotificationConfigurations-      Stratosphere.ResourceProperties.AutoScalingTags-      Stratosphere.ResourceProperties.ConnectionDrainingPolicy-      Stratosphere.ResourceProperties.ConnectionSettings-      Stratosphere.ResourceProperties.DynamoDBAttributeDefinition-      Stratosphere.ResourceProperties.DynamoDBGlobalSecondaryIndex-      Stratosphere.ResourceProperties.DynamoDBKeySchema-      Stratosphere.ResourceProperties.DynamoDBLocalSecondaryIndex-      Stratosphere.ResourceProperties.DynamoDBProjectionObject-      Stratosphere.ResourceProperties.DynamoDBProvisionedThroughput-      Stratosphere.ResourceProperties.DynamoDBStreamSpecification-      Stratosphere.ResourceProperties.EBSBlockDevice-      Stratosphere.ResourceProperties.EC2BlockDeviceMapping-      Stratosphere.ResourceProperties.EC2MountPoint-      Stratosphere.ResourceProperties.EC2SsmAssociationParameters-      Stratosphere.ResourceProperties.EC2SsmAssociations-      Stratosphere.ResourceProperties.ELBPolicy-      Stratosphere.ResourceProperties.HealthCheck-      Stratosphere.ResourceProperties.IAMPolicies-      Stratosphere.ResourceProperties.KinesisFirehoseBufferingHints-      Stratosphere.ResourceProperties.KinesisFirehoseCloudWatchLoggingOptions-      Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchDestinationConfiguration-      Stratosphere.ResourceProperties.KinesisFirehoseElasticsearchRetryOptions-      Stratosphere.ResourceProperties.KinesisFirehoseRedshiftCopyCommand-      Stratosphere.ResourceProperties.KinesisFirehoseRedshiftDestinationConfiguration-      Stratosphere.ResourceProperties.KinesisFirehoseS3DestinationConfiguration-      Stratosphere.ResourceProperties.KinesisFirehoseS3EncryptionConfiguration-      Stratosphere.ResourceProperties.KinesisFirehoseS3KMSEncryptionConfig+      Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepAdjustment+      Stratosphere.ResourceProperties.ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration+      Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupMetricsCollection+      Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupNotificationConfigurations+      Stratosphere.ResourceProperties.AutoScalingAutoScalingGroupTagProperty+      Stratosphere.ResourceProperties.AutoScalingLaunchConfigurationBlockDevice+      Stratosphere.ResourceProperties.AutoScalingLaunchConfigurationBlockDeviceMapping+      Stratosphere.ResourceProperties.AutoScalingScalingPolicyStepAdjustment+      Stratosphere.ResourceProperties.CertificateManagerCertificateDomainValidationOption+      Stratosphere.ResourceProperties.CloudFrontDistributionCacheBehavior+      Stratosphere.ResourceProperties.CloudFrontDistributionCookies+      Stratosphere.ResourceProperties.CloudFrontDistributionCustomErrorResponse+      Stratosphere.ResourceProperties.CloudFrontDistributionCustomOriginConfig+      Stratosphere.ResourceProperties.CloudFrontDistributionDefaultCacheBehavior+      Stratosphere.ResourceProperties.CloudFrontDistributionDistributionConfig+      Stratosphere.ResourceProperties.CloudFrontDistributionForwardedValues+      Stratosphere.ResourceProperties.CloudFrontDistributionGeoRestriction+      Stratosphere.ResourceProperties.CloudFrontDistributionLogging+      Stratosphere.ResourceProperties.CloudFrontDistributionOrigin+      Stratosphere.ResourceProperties.CloudFrontDistributionOriginCustomHeader+      Stratosphere.ResourceProperties.CloudFrontDistributionRestrictions+      Stratosphere.ResourceProperties.CloudFrontDistributionS3OriginConfig+      Stratosphere.ResourceProperties.CloudFrontDistributionViewerCertificate+      Stratosphere.ResourceProperties.CloudWatchAlarmDimension+      Stratosphere.ResourceProperties.CodeBuildProjectArtifacts+      Stratosphere.ResourceProperties.CodeBuildProjectEnvironment+      Stratosphere.ResourceProperties.CodeBuildProjectEnvironmentVariable+      Stratosphere.ResourceProperties.CodeBuildProjectSource+      Stratosphere.ResourceProperties.CodeBuildProjectSourceAuth+      Stratosphere.ResourceProperties.CodeCommitRepositoryRepositoryTrigger+      Stratosphere.ResourceProperties.CodeDeployDeploymentConfigMinimumHealthyHosts+      Stratosphere.ResourceProperties.CodeDeployDeploymentGroupDeployment+      Stratosphere.ResourceProperties.CodeDeployDeploymentGroupEc2TagFilter+      Stratosphere.ResourceProperties.CodeDeployDeploymentGroupGitHubLocation+      Stratosphere.ResourceProperties.CodeDeployDeploymentGroupOnPremisesInstanceTagFilter+      Stratosphere.ResourceProperties.CodeDeployDeploymentGroupRevision+      Stratosphere.ResourceProperties.CodeDeployDeploymentGroupS3Location+      Stratosphere.ResourceProperties.CodePipelineCustomActionTypeArtifactDetails+      Stratosphere.ResourceProperties.CodePipelineCustomActionTypeConfigurationProperties+      Stratosphere.ResourceProperties.CodePipelineCustomActionTypeSettings+      Stratosphere.ResourceProperties.CodePipelinePipelineActionDeclaration+      Stratosphere.ResourceProperties.CodePipelinePipelineActionTypeId+      Stratosphere.ResourceProperties.CodePipelinePipelineArtifactStore+      Stratosphere.ResourceProperties.CodePipelinePipelineBlockerDeclaration+      Stratosphere.ResourceProperties.CodePipelinePipelineEncryptionKey+      Stratosphere.ResourceProperties.CodePipelinePipelineInputArtifact+      Stratosphere.ResourceProperties.CodePipelinePipelineOutputArtifact+      Stratosphere.ResourceProperties.CodePipelinePipelineStageDeclaration+      Stratosphere.ResourceProperties.CodePipelinePipelineStageTransition+      Stratosphere.ResourceProperties.ConfigConfigRuleScope+      Stratosphere.ResourceProperties.ConfigConfigRuleSource+      Stratosphere.ResourceProperties.ConfigConfigRuleSourceDetail+      Stratosphere.ResourceProperties.ConfigConfigurationRecorderRecordingGroup+      Stratosphere.ResourceProperties.ConfigDeliveryChannelConfigSnapshotDeliveryProperties+      Stratosphere.ResourceProperties.DataPipelinePipelineField+      Stratosphere.ResourceProperties.DataPipelinePipelineParameterAttribute+      Stratosphere.ResourceProperties.DataPipelinePipelineParameterObject+      Stratosphere.ResourceProperties.DataPipelinePipelineParameterValue+      Stratosphere.ResourceProperties.DataPipelinePipelinePipelineObject+      Stratosphere.ResourceProperties.DataPipelinePipelinePipelineTag+      Stratosphere.ResourceProperties.DirectoryServiceMicrosoftADVpcSettings+      Stratosphere.ResourceProperties.DirectoryServiceSimpleADVpcSettings+      Stratosphere.ResourceProperties.DynamoDBTableAttributeDefinition+      Stratosphere.ResourceProperties.DynamoDBTableGlobalSecondaryIndex+      Stratosphere.ResourceProperties.DynamoDBTableKeySchema+      Stratosphere.ResourceProperties.DynamoDBTableLocalSecondaryIndex+      Stratosphere.ResourceProperties.DynamoDBTableProjection+      Stratosphere.ResourceProperties.DynamoDBTableProvisionedThroughput+      Stratosphere.ResourceProperties.DynamoDBTableStreamSpecification+      Stratosphere.ResourceProperties.EC2DHCPOptionsTag+      Stratosphere.ResourceProperties.EC2InstanceAssociationParameter+      Stratosphere.ResourceProperties.EC2InstanceBlockDeviceMapping+      Stratosphere.ResourceProperties.EC2InstanceEbs+      Stratosphere.ResourceProperties.EC2InstanceInstanceIpv6Address+      Stratosphere.ResourceProperties.EC2InstanceNetworkInterface+      Stratosphere.ResourceProperties.EC2InstanceNoDevice+      Stratosphere.ResourceProperties.EC2InstancePrivateIpAddressSpecification+      Stratosphere.ResourceProperties.EC2InstanceSsmAssociation+      Stratosphere.ResourceProperties.EC2InstanceVolume+      Stratosphere.ResourceProperties.EC2NetworkAclEntryIcmp+      Stratosphere.ResourceProperties.EC2NetworkAclEntryPortRange+      Stratosphere.ResourceProperties.EC2NetworkInterfaceInstanceIpv6Address+      Stratosphere.ResourceProperties.EC2NetworkInterfacePrivateIpAddressSpecification+      Stratosphere.ResourceProperties.EC2SecurityGroupRule+      Stratosphere.ResourceProperties.EC2SpotFleetBlockDeviceMappings+      Stratosphere.ResourceProperties.EC2SpotFleetEbs+      Stratosphere.ResourceProperties.EC2SpotFleetIamInstanceProfile+      Stratosphere.ResourceProperties.EC2SpotFleetInstanceIpv6Address+      Stratosphere.ResourceProperties.EC2SpotFleetLaunchSpecifications+      Stratosphere.ResourceProperties.EC2SpotFleetMonitoring+      Stratosphere.ResourceProperties.EC2SpotFleetNetworkInterfaces+      Stratosphere.ResourceProperties.EC2SpotFleetPlacement+      Stratosphere.ResourceProperties.EC2SpotFleetPrivateIpAddresses+      Stratosphere.ResourceProperties.EC2SpotFleetSecurityGroups+      Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetRequestConfigData+      Stratosphere.ResourceProperties.ECSServiceDeploymentConfiguration+      Stratosphere.ResourceProperties.ECSServiceLoadBalancer+      Stratosphere.ResourceProperties.ECSTaskDefinitionContainerDefinition+      Stratosphere.ResourceProperties.ECSTaskDefinitionHostEntry+      Stratosphere.ResourceProperties.ECSTaskDefinitionHostVolumeProperties+      Stratosphere.ResourceProperties.ECSTaskDefinitionKeyValuePair+      Stratosphere.ResourceProperties.ECSTaskDefinitionLogConfiguration+      Stratosphere.ResourceProperties.ECSTaskDefinitionMountPoint+      Stratosphere.ResourceProperties.ECSTaskDefinitionPortMapping+      Stratosphere.ResourceProperties.ECSTaskDefinitionUlimit+      Stratosphere.ResourceProperties.ECSTaskDefinitionVolume+      Stratosphere.ResourceProperties.ECSTaskDefinitionVolumeFrom+      Stratosphere.ResourceProperties.EFSFileSystemElasticFileSystemTag+      Stratosphere.ResourceProperties.ElastiCacheReplicationGroupNodeGroupConfiguration+      Stratosphere.ResourceProperties.ElasticBeanstalkApplicationVersionSourceBundle+      Stratosphere.ResourceProperties.ElasticBeanstalkConfigurationTemplateConfigurationOptionSetting+      Stratosphere.ResourceProperties.ElasticBeanstalkConfigurationTemplateSourceConfiguration+      Stratosphere.ResourceProperties.ElasticBeanstalkEnvironmentOptionSettings+      Stratosphere.ResourceProperties.ElasticBeanstalkEnvironmentTier+      Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerAccessLoggingPolicy+      Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerAppCookieStickinessPolicy+      Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerConnectionDrainingPolicy+      Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerConnectionSettings+      Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerHealthCheck+      Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerLBCookieStickinessPolicy+      Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerListeners+      Stratosphere.ResourceProperties.ElasticLoadBalancingLoadBalancerPolicies+      Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerAction+      Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerCertificate+      Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerRuleAction+      Stratosphere.ResourceProperties.ElasticLoadBalancingV2ListenerRuleRuleCondition+      Stratosphere.ResourceProperties.ElasticLoadBalancingV2LoadBalancerLoadBalancerAttribute+      Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupMatcher+      Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupTargetDescription+      Stratosphere.ResourceProperties.ElasticLoadBalancingV2TargetGroupTargetGroupAttribute+      Stratosphere.ResourceProperties.ElasticsearchDomainEBSOptions+      Stratosphere.ResourceProperties.ElasticsearchDomainElasticsearchClusterConfig+      Stratosphere.ResourceProperties.ElasticsearchDomainSnapshotOptions+      Stratosphere.ResourceProperties.EMRClusterApplication+      Stratosphere.ResourceProperties.EMRClusterBootstrapActionConfig+      Stratosphere.ResourceProperties.EMRClusterConfiguration+      Stratosphere.ResourceProperties.EMRClusterEbsBlockDeviceConfig+      Stratosphere.ResourceProperties.EMRClusterEbsConfiguration+      Stratosphere.ResourceProperties.EMRClusterInstanceGroupConfig+      Stratosphere.ResourceProperties.EMRClusterJobFlowInstancesConfig+      Stratosphere.ResourceProperties.EMRClusterPlacementType+      Stratosphere.ResourceProperties.EMRClusterScriptBootstrapActionConfig+      Stratosphere.ResourceProperties.EMRClusterVolumeSpecification+      Stratosphere.ResourceProperties.EMRInstanceGroupConfigConfiguration+      Stratosphere.ResourceProperties.EMRInstanceGroupConfigEbsBlockDeviceConfig+      Stratosphere.ResourceProperties.EMRInstanceGroupConfigEbsConfiguration+      Stratosphere.ResourceProperties.EMRInstanceGroupConfigVolumeSpecification+      Stratosphere.ResourceProperties.EMRStepHadoopJarStepConfig+      Stratosphere.ResourceProperties.EMRStepKeyValue+      Stratosphere.ResourceProperties.EventsRuleTarget+      Stratosphere.ResourceProperties.GameLiftAliasRoutingStrategy+      Stratosphere.ResourceProperties.GameLiftBuildS3Location+      Stratosphere.ResourceProperties.GameLiftFleetIpPermission+      Stratosphere.ResourceProperties.IAMGroupPolicy+      Stratosphere.ResourceProperties.IAMRolePolicy+      Stratosphere.ResourceProperties.IAMUserLoginProfile+      Stratosphere.ResourceProperties.IAMUserPolicy+      Stratosphere.ResourceProperties.IoTThingAttributePayload+      Stratosphere.ResourceProperties.IoTTopicRuleAction+      Stratosphere.ResourceProperties.IoTTopicRuleCloudwatchAlarmAction+      Stratosphere.ResourceProperties.IoTTopicRuleCloudwatchMetricAction+      Stratosphere.ResourceProperties.IoTTopicRuleDynamoDBAction+      Stratosphere.ResourceProperties.IoTTopicRuleElasticsearchAction+      Stratosphere.ResourceProperties.IoTTopicRuleFirehoseAction+      Stratosphere.ResourceProperties.IoTTopicRuleKinesisAction+      Stratosphere.ResourceProperties.IoTTopicRuleLambdaAction+      Stratosphere.ResourceProperties.IoTTopicRuleRepublishAction+      Stratosphere.ResourceProperties.IoTTopicRuleS3Action+      Stratosphere.ResourceProperties.IoTTopicRuleSnsAction+      Stratosphere.ResourceProperties.IoTTopicRuleSqsAction+      Stratosphere.ResourceProperties.IoTTopicRuleTopicRulePayload+      Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamBufferingHints+      Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamCloudWatchLoggingOptions+      Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamCopyCommand+      Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamElasticsearchBufferingHints+      Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamElasticsearchDestinationConfiguration+      Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamElasticsearchRetryOptions+      Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamEncryptionConfiguration+      Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamKMSEncryptionConfig+      Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamRedshiftDestinationConfiguration+      Stratosphere.ResourceProperties.KinesisFirehoseDeliveryStreamS3DestinationConfiguration       Stratosphere.ResourceProperties.LambdaFunctionCode-      Stratosphere.ResourceProperties.LambdaFunctionVPCConfig-      Stratosphere.ResourceProperties.LBCookieStickinessPolicy-      Stratosphere.ResourceProperties.ListenerProperty-      Stratosphere.ResourceProperties.NameValuePair-      Stratosphere.ResourceProperties.NetworkInterface-      Stratosphere.ResourceProperties.PrivateIpAddressSpecification-      Stratosphere.ResourceProperties.RDSSecurityGroupRule-      Stratosphere.ResourceProperties.RecordSetGeoLocation-      Stratosphere.ResourceProperties.ResourceTag-      Stratosphere.ResourceProperties.S3CorsConfiguration-      Stratosphere.ResourceProperties.S3CorsConfigurationRule-      Stratosphere.ResourceProperties.S3LifecycleConfiguration-      Stratosphere.ResourceProperties.S3LifecycleRule-      Stratosphere.ResourceProperties.S3LifecycleRuleNoncurrentVersionTransition-      Stratosphere.ResourceProperties.S3LifecycleRuleTransition-      Stratosphere.ResourceProperties.S3LoggingConfiguration-      Stratosphere.ResourceProperties.S3NotificationConfiguration-      Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilter-      Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3Key-      Stratosphere.ResourceProperties.S3NotificationConfigurationConfigFilterS3KeyRules-      Stratosphere.ResourceProperties.S3NotificationConfigurationLambdaConfiguration-      Stratosphere.ResourceProperties.S3NotificationConfigurationQueueConfiguration-      Stratosphere.ResourceProperties.S3NotificationConfigurationTopicConfiguration-      Stratosphere.ResourceProperties.S3ReplicationConfiguration-      Stratosphere.ResourceProperties.S3ReplicationConfigurationRule-      Stratosphere.ResourceProperties.S3ReplicationConfigurationRulesDestination-      Stratosphere.ResourceProperties.S3VersioningConfiguration-      Stratosphere.ResourceProperties.S3WebsiteConfiguration-      Stratosphere.ResourceProperties.S3WebsiteRedirectAllRequestsTo-      Stratosphere.ResourceProperties.S3WebsiteRedirectRule-      Stratosphere.ResourceProperties.S3WebsiteRoutingRuleCondition-      Stratosphere.ResourceProperties.S3WebsiteRoutingRules-      Stratosphere.ResourceProperties.SecurityGroupEgressRule-      Stratosphere.ResourceProperties.SecurityGroupIngressRule+      Stratosphere.ResourceProperties.LambdaFunctionEnvironment+      Stratosphere.ResourceProperties.LambdaFunctionVpcConfig+      Stratosphere.ResourceProperties.LogsMetricFilterMetricTransformation+      Stratosphere.ResourceProperties.OpsWorksAppDataSource+      Stratosphere.ResourceProperties.OpsWorksAppEnvironmentVariable+      Stratosphere.ResourceProperties.OpsWorksAppSource+      Stratosphere.ResourceProperties.OpsWorksAppSslConfiguration+      Stratosphere.ResourceProperties.OpsWorksInstanceBlockDeviceMapping+      Stratosphere.ResourceProperties.OpsWorksInstanceEbsBlockDevice+      Stratosphere.ResourceProperties.OpsWorksInstanceTimeBasedAutoScaling+      Stratosphere.ResourceProperties.OpsWorksLayerAutoScalingThresholds+      Stratosphere.ResourceProperties.OpsWorksLayerLifecycleEventConfiguration+      Stratosphere.ResourceProperties.OpsWorksLayerLoadBasedAutoScaling+      Stratosphere.ResourceProperties.OpsWorksLayerRecipes+      Stratosphere.ResourceProperties.OpsWorksLayerShutdownEventConfiguration+      Stratosphere.ResourceProperties.OpsWorksLayerVolumeConfiguration+      Stratosphere.ResourceProperties.OpsWorksStackChefConfiguration+      Stratosphere.ResourceProperties.OpsWorksStackElasticIp+      Stratosphere.ResourceProperties.OpsWorksStackRdsDbInstance+      Stratosphere.ResourceProperties.OpsWorksStackSource+      Stratosphere.ResourceProperties.OpsWorksStackStackConfigurationManager+      Stratosphere.ResourceProperties.RDSDBSecurityGroupIngressProperty+      Stratosphere.ResourceProperties.RDSOptionGroupOptionConfiguration+      Stratosphere.ResourceProperties.RDSOptionGroupOptionSetting+      Stratosphere.ResourceProperties.RedshiftClusterParameterGroupParameter+      Stratosphere.ResourceProperties.Route53HealthCheckHealthCheckConfig+      Stratosphere.ResourceProperties.Route53HealthCheckHealthCheckTag+      Stratosphere.ResourceProperties.Route53HostedZoneHostedZoneConfig+      Stratosphere.ResourceProperties.Route53HostedZoneHostedZoneTag+      Stratosphere.ResourceProperties.Route53HostedZoneVPC+      Stratosphere.ResourceProperties.Route53RecordSetAliasTarget+      Stratosphere.ResourceProperties.Route53RecordSetGeoLocation+      Stratosphere.ResourceProperties.Route53RecordSetGroupAliasTarget+      Stratosphere.ResourceProperties.Route53RecordSetGroupGeoLocation+      Stratosphere.ResourceProperties.Route53RecordSetGroupRecordSet+      Stratosphere.ResourceProperties.S3BucketCorsConfiguration+      Stratosphere.ResourceProperties.S3BucketCorsRule+      Stratosphere.ResourceProperties.S3BucketFilterRule+      Stratosphere.ResourceProperties.S3BucketLambdaConfiguration+      Stratosphere.ResourceProperties.S3BucketLifecycleConfiguration+      Stratosphere.ResourceProperties.S3BucketLoggingConfiguration+      Stratosphere.ResourceProperties.S3BucketNoncurrentVersionTransition+      Stratosphere.ResourceProperties.S3BucketNotificationConfiguration+      Stratosphere.ResourceProperties.S3BucketNotificationFilter+      Stratosphere.ResourceProperties.S3BucketQueueConfiguration+      Stratosphere.ResourceProperties.S3BucketRedirectAllRequestsTo+      Stratosphere.ResourceProperties.S3BucketRedirectRule+      Stratosphere.ResourceProperties.S3BucketReplicationConfiguration+      Stratosphere.ResourceProperties.S3BucketReplicationDestination+      Stratosphere.ResourceProperties.S3BucketReplicationRule+      Stratosphere.ResourceProperties.S3BucketRoutingRule+      Stratosphere.ResourceProperties.S3BucketRoutingRuleCondition+      Stratosphere.ResourceProperties.S3BucketRule+      Stratosphere.ResourceProperties.S3BucketS3KeyFilter+      Stratosphere.ResourceProperties.S3BucketTopicConfiguration+      Stratosphere.ResourceProperties.S3BucketTransition+      Stratosphere.ResourceProperties.S3BucketVersioningConfiguration+      Stratosphere.ResourceProperties.S3BucketWebsiteConfiguration       Stratosphere.ResourceProperties.SNSTopicSubscription-      Stratosphere.ResourceProperties.SQSRedrivePolicy-      Stratosphere.ResourceProperties.StepAdjustments-      Stratosphere.ResourceProperties.UserLoginProfile+      Stratosphere.ResourceProperties.SSMAssociationParameterValues+      Stratosphere.ResourceProperties.SSMAssociationTarget+      Stratosphere.ResourceProperties.Tag+      Stratosphere.ResourceProperties.WAFByteMatchSetByteMatchTuple+      Stratosphere.ResourceProperties.WAFByteMatchSetFieldToMatch+      Stratosphere.ResourceProperties.WAFIPSetIPSetDescriptor+      Stratosphere.ResourceProperties.WAFRulePredicate+      Stratosphere.ResourceProperties.WAFSizeConstraintSetFieldToMatch+      Stratosphere.ResourceProperties.WAFSizeConstraintSetSizeConstraint+      Stratosphere.ResourceProperties.WAFSqlInjectionMatchSetFieldToMatch+      Stratosphere.ResourceProperties.WAFSqlInjectionMatchSetSqlInjectionMatchTuple+      Stratosphere.ResourceProperties.WAFWebACLActivatedRule+      Stratosphere.ResourceProperties.WAFWebACLWafAction+      Stratosphere.ResourceProperties.WAFXssMatchSetFieldToMatch+      Stratosphere.ResourceProperties.WAFXssMatchSetXssMatchTuple       Stratosphere.Resources-      Stratosphere.Resources.AccessKey       Stratosphere.Resources.ApiGatewayAccount+      Stratosphere.Resources.ApiGatewayApiKey+      Stratosphere.Resources.ApiGatewayAuthorizer+      Stratosphere.Resources.ApiGatewayBasePathMapping+      Stratosphere.Resources.ApiGatewayClientCertificate       Stratosphere.Resources.ApiGatewayDeployment       Stratosphere.Resources.ApiGatewayMethod       Stratosphere.Resources.ApiGatewayModel@@ -153,88 +340,175 @@       Stratosphere.Resources.ApiGatewayRestApi       Stratosphere.Resources.ApiGatewayStage       Stratosphere.Resources.ApiGatewayUsagePlan-      Stratosphere.Resources.AutoScalingGroup-      Stratosphere.Resources.Bucket-      Stratosphere.Resources.CacheCluster-      Stratosphere.Resources.CacheSubnetGroup-      Stratosphere.Resources.DBInstance-      Stratosphere.Resources.DBParameterGroup-      Stratosphere.Resources.DBSecurityGroup-      Stratosphere.Resources.DBSecurityGroupIngress-      Stratosphere.Resources.DBSubnetGroup-      Stratosphere.Resources.DeliveryStream+      Stratosphere.Resources.ApplicationAutoScalingScalableTarget+      Stratosphere.Resources.ApplicationAutoScalingScalingPolicy+      Stratosphere.Resources.AutoScalingAutoScalingGroup+      Stratosphere.Resources.AutoScalingLaunchConfiguration+      Stratosphere.Resources.AutoScalingLifecycleHook+      Stratosphere.Resources.AutoScalingScalingPolicy+      Stratosphere.Resources.AutoScalingScheduledAction+      Stratosphere.Resources.CertificateManagerCertificate+      Stratosphere.Resources.CloudFormationCustomResource+      Stratosphere.Resources.CloudFormationStack+      Stratosphere.Resources.CloudFormationWaitCondition+      Stratosphere.Resources.CloudFormationWaitConditionHandle+      Stratosphere.Resources.CloudFrontDistribution+      Stratosphere.Resources.CloudTrailTrail+      Stratosphere.Resources.CloudWatchAlarm+      Stratosphere.Resources.CodeBuildProject+      Stratosphere.Resources.CodeCommitRepository+      Stratosphere.Resources.CodeDeployApplication+      Stratosphere.Resources.CodeDeployDeploymentConfig+      Stratosphere.Resources.CodeDeployDeploymentGroup+      Stratosphere.Resources.CodePipelineCustomActionType+      Stratosphere.Resources.CodePipelinePipeline+      Stratosphere.Resources.ConfigConfigRule+      Stratosphere.Resources.ConfigConfigurationRecorder+      Stratosphere.Resources.ConfigDeliveryChannel+      Stratosphere.Resources.DataPipelinePipeline+      Stratosphere.Resources.DirectoryServiceMicrosoftAD+      Stratosphere.Resources.DirectoryServiceSimpleAD       Stratosphere.Resources.DynamoDBTable+      Stratosphere.Resources.EC2CustomerGateway+      Stratosphere.Resources.EC2DHCPOptions+      Stratosphere.Resources.EC2EIP+      Stratosphere.Resources.EC2EIPAssociation+      Stratosphere.Resources.EC2FlowLog+      Stratosphere.Resources.EC2Host       Stratosphere.Resources.EC2Instance-      Stratosphere.Resources.EIP-      Stratosphere.Resources.EIPAssociation+      Stratosphere.Resources.EC2InternetGateway+      Stratosphere.Resources.EC2NatGateway+      Stratosphere.Resources.EC2NetworkAcl+      Stratosphere.Resources.EC2NetworkAclEntry+      Stratosphere.Resources.EC2NetworkInterface+      Stratosphere.Resources.EC2NetworkInterfaceAttachment+      Stratosphere.Resources.EC2PlacementGroup+      Stratosphere.Resources.EC2Route+      Stratosphere.Resources.EC2RouteTable+      Stratosphere.Resources.EC2SecurityGroup+      Stratosphere.Resources.EC2SecurityGroupEgress+      Stratosphere.Resources.EC2SecurityGroupIngress+      Stratosphere.Resources.EC2SpotFleet+      Stratosphere.Resources.EC2Subnet+      Stratosphere.Resources.EC2SubnetCidrBlock+      Stratosphere.Resources.EC2SubnetNetworkAclAssociation+      Stratosphere.Resources.EC2SubnetRouteTableAssociation+      Stratosphere.Resources.EC2Volume+      Stratosphere.Resources.EC2VolumeAttachment+      Stratosphere.Resources.EC2VPC+      Stratosphere.Resources.EC2VPCCidrBlock+      Stratosphere.Resources.EC2VPCDHCPOptionsAssociation+      Stratosphere.Resources.EC2VPCEndpoint+      Stratosphere.Resources.EC2VPCGatewayAttachment+      Stratosphere.Resources.EC2VPCPeeringConnection+      Stratosphere.Resources.EC2VPNConnection+      Stratosphere.Resources.EC2VPNConnectionRoute+      Stratosphere.Resources.EC2VPNGateway+      Stratosphere.Resources.EC2VPNGatewayRoutePropagation+      Stratosphere.Resources.ECRRepository+      Stratosphere.Resources.ECSCluster+      Stratosphere.Resources.ECSService+      Stratosphere.Resources.ECSTaskDefinition+      Stratosphere.Resources.EFSFileSystem+      Stratosphere.Resources.EFSMountTarget+      Stratosphere.Resources.ElastiCacheCacheCluster+      Stratosphere.Resources.ElastiCacheParameterGroup+      Stratosphere.Resources.ElastiCacheReplicationGroup+      Stratosphere.Resources.ElastiCacheSecurityGroup+      Stratosphere.Resources.ElastiCacheSecurityGroupIngress+      Stratosphere.Resources.ElastiCacheSubnetGroup+      Stratosphere.Resources.ElasticBeanstalkApplication+      Stratosphere.Resources.ElasticBeanstalkApplicationVersion+      Stratosphere.Resources.ElasticBeanstalkConfigurationTemplate+      Stratosphere.Resources.ElasticBeanstalkEnvironment+      Stratosphere.Resources.ElasticLoadBalancingLoadBalancer+      Stratosphere.Resources.ElasticLoadBalancingV2Listener+      Stratosphere.Resources.ElasticLoadBalancingV2ListenerRule+      Stratosphere.Resources.ElasticLoadBalancingV2LoadBalancer+      Stratosphere.Resources.ElasticLoadBalancingV2TargetGroup+      Stratosphere.Resources.ElasticsearchDomain+      Stratosphere.Resources.EMRCluster+      Stratosphere.Resources.EMRInstanceGroupConfig+      Stratosphere.Resources.EMRStep       Stratosphere.Resources.EventsRule-      Stratosphere.Resources.Group+      Stratosphere.Resources.GameLiftAlias+      Stratosphere.Resources.GameLiftBuild+      Stratosphere.Resources.GameLiftFleet+      Stratosphere.Resources.IAMAccessKey+      Stratosphere.Resources.IAMGroup+      Stratosphere.Resources.IAMInstanceProfile+      Stratosphere.Resources.IAMManagedPolicy+      Stratosphere.Resources.IAMPolicy       Stratosphere.Resources.IAMRole-      Stratosphere.Resources.InstanceProfile-      Stratosphere.Resources.InternetGateway+      Stratosphere.Resources.IAMUser+      Stratosphere.Resources.IAMUserToGroupAddition+      Stratosphere.Resources.IoTCertificate+      Stratosphere.Resources.IoTPolicy+      Stratosphere.Resources.IoTPolicyPrincipalAttachment+      Stratosphere.Resources.IoTThing+      Stratosphere.Resources.IoTThingPrincipalAttachment+      Stratosphere.Resources.IoTTopicRule+      Stratosphere.Resources.KinesisFirehoseDeliveryStream       Stratosphere.Resources.KinesisStream+      Stratosphere.Resources.KMSAlias+      Stratosphere.Resources.KMSKey       Stratosphere.Resources.LambdaAlias+      Stratosphere.Resources.LambdaEventSourceMapping       Stratosphere.Resources.LambdaFunction       Stratosphere.Resources.LambdaPermission       Stratosphere.Resources.LambdaVersion-      Stratosphere.Resources.LaunchConfiguration-      Stratosphere.Resources.LifecycleHook-      Stratosphere.Resources.LoadBalancer-      Stratosphere.Resources.LogGroup-      Stratosphere.Resources.LogStream-      Stratosphere.Resources.ManagedPolicy-      Stratosphere.Resources.NatGateway-      Stratosphere.Resources.Policy-      Stratosphere.Resources.RecordSet-      Stratosphere.Resources.RecordSetGroup-      Stratosphere.Resources.Route-      Stratosphere.Resources.RouteTable+      Stratosphere.Resources.LogsDestination+      Stratosphere.Resources.LogsLogGroup+      Stratosphere.Resources.LogsLogStream+      Stratosphere.Resources.LogsMetricFilter+      Stratosphere.Resources.LogsSubscriptionFilter+      Stratosphere.Resources.OpsWorksApp+      Stratosphere.Resources.OpsWorksElasticLoadBalancerAttachment+      Stratosphere.Resources.OpsWorksInstance+      Stratosphere.Resources.OpsWorksLayer+      Stratosphere.Resources.OpsWorksStack+      Stratosphere.Resources.OpsWorksUserProfile+      Stratosphere.Resources.OpsWorksVolume+      Stratosphere.Resources.RDSDBCluster+      Stratosphere.Resources.RDSDBClusterParameterGroup+      Stratosphere.Resources.RDSDBInstance+      Stratosphere.Resources.RDSDBParameterGroup+      Stratosphere.Resources.RDSDBSecurityGroup+      Stratosphere.Resources.RDSDBSecurityGroupIngress+      Stratosphere.Resources.RDSDBSubnetGroup+      Stratosphere.Resources.RDSEventSubscription+      Stratosphere.Resources.RDSOptionGroup+      Stratosphere.Resources.RedshiftCluster+      Stratosphere.Resources.RedshiftClusterParameterGroup+      Stratosphere.Resources.RedshiftClusterSecurityGroup+      Stratosphere.Resources.RedshiftClusterSecurityGroupIngress+      Stratosphere.Resources.RedshiftClusterSubnetGroup+      Stratosphere.Resources.Route53HealthCheck+      Stratosphere.Resources.Route53HostedZone+      Stratosphere.Resources.Route53RecordSet+      Stratosphere.Resources.Route53RecordSetGroup+      Stratosphere.Resources.S3Bucket       Stratosphere.Resources.S3BucketPolicy-      Stratosphere.Resources.ScalingPolicy-      Stratosphere.Resources.ScheduledAction-      Stratosphere.Resources.SecurityGroup-      Stratosphere.Resources.SecurityGroupEgress-      Stratosphere.Resources.SecurityGroupIngress+      Stratosphere.Resources.SDBDomain       Stratosphere.Resources.SNSSubscription       Stratosphere.Resources.SNSTopic       Stratosphere.Resources.SNSTopicPolicy       Stratosphere.Resources.SQSQueue       Stratosphere.Resources.SQSQueuePolicy-      Stratosphere.Resources.Stack-      Stratosphere.Resources.Subnet-      Stratosphere.Resources.SubnetRouteTableAssociation-      Stratosphere.Resources.Trail-      Stratosphere.Resources.User-      Stratosphere.Resources.UserToGroupAddition-      Stratosphere.Resources.Volume-      Stratosphere.Resources.VolumeAttachment-      Stratosphere.Resources.VPC-      Stratosphere.Resources.VPCEndpoint-      Stratosphere.Resources.VPCGatewayAttachment+      Stratosphere.Resources.SSMAssociation+      Stratosphere.Resources.SSMDocument+      Stratosphere.Resources.WAFByteMatchSet+      Stratosphere.Resources.WAFIPSet+      Stratosphere.Resources.WAFRule+      Stratosphere.Resources.WAFSizeConstraintSet+      Stratosphere.Resources.WAFSqlInjectionMatchSet+      Stratosphere.Resources.WAFWebACL+      Stratosphere.Resources.WAFXssMatchSet+      Stratosphere.Resources.WorkSpacesWorkspace   default-language: Haskell2010  executable apigw-lambda-dynamodb   main-is: apigw-lambda-dynamodb.hs-  hs-source-dirs:-      examples-  ghc-options: -Wall-  build-depends:-      base >= 4.8 && < 5-    , aeson >= 0.11-    , aeson-pretty >= 0.8-    , bytestring-    , hashable-    , lens >= 4.5-    , template-haskell >= 2.0-    , text >= 1.1-    , unordered-containers >= 0.2-    , stratosphere-  if flag(library-only)-    buildable: False-  default-language: Haskell2010--executable apigw-lambda-s3-  main-is: apigw-lambda-s3.hs   hs-source-dirs:       examples   ghc-options: -Wall
tests/HLint.hs view
@@ -1,21 +1,17 @@ module Main (main) where  import Language.Haskell.HLint (hlint)-import System.Directory (doesDirectoryExist) import System.Exit (exitFailure, exitSuccess)  arguments :: [String] arguments =-    [ "library"-    , "tests"-    ]+  [ "library"+  , "library-gen"+  , "tests"+  , "-i", "Use newtype instead of data"+  ]  main :: IO () main = do-    -- Need to check for existence of gen directory, because it is not present-    -- in the cabal distribution.-    genExists <- doesDirectoryExist "gen"-    let args = if genExists then "gen" : arguments else arguments--    hints <- hlint args-    if null hints then exitSuccess else exitFailure+  hints <- hlint arguments+  if null hints then exitSuccess else exitFailure