packages feed

stratosphere 0.4.2 → 0.4.3

raw patch · 116 files changed

+6108/−827 lines, 116 files

Files

CHANGELOG.md view
@@ -1,5 +1,9 @@ # Change Log +## 0.4.3++* Update the resource specification document to version `1.4.1`+ ## 0.4.2  * Update the resource specification document to version `1.2.1`
examples/ec2-with-eip.hs view
@@ -45,7 +45,7 @@     EC2EIPAssociationProperties $     ec2EIPAssociation     & eceipaInstanceId ?~ Ref "EC2Instance"-    & eceipaEip ?~ Ref "IPAddress"+    & eceipaEIP ?~ Ref "IPAddress"   ]   & description ?~ "See https://s3.amazonaws.com/cloudformation-templates-us-east-1/EIP_With_Association.template"   & formatVersion ?~ "2010-09-09"
+ library-gen/Stratosphere/ResourceProperties/CodeDeployDeploymentGroupAlarm.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarm.html++module Stratosphere.ResourceProperties.CodeDeployDeploymentGroupAlarm where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CodeDeployDeploymentGroupAlarm. See+-- 'codeDeployDeploymentGroupAlarm' for a more convenient constructor.+data CodeDeployDeploymentGroupAlarm =+  CodeDeployDeploymentGroupAlarm+  { _codeDeployDeploymentGroupAlarmName :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON CodeDeployDeploymentGroupAlarm where+  toJSON CodeDeployDeploymentGroupAlarm{..} =+    object $+    catMaybes+    [ ("Name" .=) <$> _codeDeployDeploymentGroupAlarmName+    ]++instance FromJSON CodeDeployDeploymentGroupAlarm where+  parseJSON (Object obj) =+    CodeDeployDeploymentGroupAlarm <$>+      obj .:? "Name"+  parseJSON _ = mempty++-- | Constructor for 'CodeDeployDeploymentGroupAlarm' containing required+-- fields as arguments.+codeDeployDeploymentGroupAlarm+  :: CodeDeployDeploymentGroupAlarm+codeDeployDeploymentGroupAlarm  =+  CodeDeployDeploymentGroupAlarm+  { _codeDeployDeploymentGroupAlarmName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarm.html#cfn-codedeploy-deploymentgroup-alarm-name+cddgaName :: Lens' CodeDeployDeploymentGroupAlarm (Maybe (Val Text))+cddgaName = lens _codeDeployDeploymentGroupAlarmName (\s a -> s { _codeDeployDeploymentGroupAlarmName = a })
+ library-gen/Stratosphere/ResourceProperties/CodeDeployDeploymentGroupAlarmConfiguration.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html++module Stratosphere.ResourceProperties.CodeDeployDeploymentGroupAlarmConfiguration where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupAlarm++-- | Full data type definition for+-- CodeDeployDeploymentGroupAlarmConfiguration. See+-- 'codeDeployDeploymentGroupAlarmConfiguration' for a more convenient+-- constructor.+data CodeDeployDeploymentGroupAlarmConfiguration =+  CodeDeployDeploymentGroupAlarmConfiguration+  { _codeDeployDeploymentGroupAlarmConfigurationAlarms :: Maybe [CodeDeployDeploymentGroupAlarm]+  , _codeDeployDeploymentGroupAlarmConfigurationEnabled :: Maybe (Val Bool')+  , _codeDeployDeploymentGroupAlarmConfigurationIgnorePollAlarmFailure :: Maybe (Val Bool')+  } deriving (Show, Eq)++instance ToJSON CodeDeployDeploymentGroupAlarmConfiguration where+  toJSON CodeDeployDeploymentGroupAlarmConfiguration{..} =+    object $+    catMaybes+    [ ("Alarms" .=) <$> _codeDeployDeploymentGroupAlarmConfigurationAlarms+    , ("Enabled" .=) <$> _codeDeployDeploymentGroupAlarmConfigurationEnabled+    , ("IgnorePollAlarmFailure" .=) <$> _codeDeployDeploymentGroupAlarmConfigurationIgnorePollAlarmFailure+    ]++instance FromJSON CodeDeployDeploymentGroupAlarmConfiguration where+  parseJSON (Object obj) =+    CodeDeployDeploymentGroupAlarmConfiguration <$>+      obj .:? "Alarms" <*>+      obj .:? "Enabled" <*>+      obj .:? "IgnorePollAlarmFailure"+  parseJSON _ = mempty++-- | Constructor for 'CodeDeployDeploymentGroupAlarmConfiguration' containing+-- required fields as arguments.+codeDeployDeploymentGroupAlarmConfiguration+  :: CodeDeployDeploymentGroupAlarmConfiguration+codeDeployDeploymentGroupAlarmConfiguration  =+  CodeDeployDeploymentGroupAlarmConfiguration+  { _codeDeployDeploymentGroupAlarmConfigurationAlarms = Nothing+  , _codeDeployDeploymentGroupAlarmConfigurationEnabled = Nothing+  , _codeDeployDeploymentGroupAlarmConfigurationIgnorePollAlarmFailure = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html#cfn-codedeploy-deploymentgroup-alarmconfiguration-alarms+cddgacAlarms :: Lens' CodeDeployDeploymentGroupAlarmConfiguration (Maybe [CodeDeployDeploymentGroupAlarm])+cddgacAlarms = lens _codeDeployDeploymentGroupAlarmConfigurationAlarms (\s a -> s { _codeDeployDeploymentGroupAlarmConfigurationAlarms = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html#cfn-codedeploy-deploymentgroup-alarmconfiguration-enabled+cddgacEnabled :: Lens' CodeDeployDeploymentGroupAlarmConfiguration (Maybe (Val Bool'))+cddgacEnabled = lens _codeDeployDeploymentGroupAlarmConfigurationEnabled (\s a -> s { _codeDeployDeploymentGroupAlarmConfigurationEnabled = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-alarmconfiguration.html#cfn-codedeploy-deploymentgroup-alarmconfiguration-ignorepollalarmfailure+cddgacIgnorePollAlarmFailure :: Lens' CodeDeployDeploymentGroupAlarmConfiguration (Maybe (Val Bool'))+cddgacIgnorePollAlarmFailure = lens _codeDeployDeploymentGroupAlarmConfigurationIgnorePollAlarmFailure (\s a -> s { _codeDeployDeploymentGroupAlarmConfigurationIgnorePollAlarmFailure = a })
+ library-gen/Stratosphere/ResourceProperties/CodeDeployDeploymentGroupTriggerConfig.hs view
@@ -0,0 +1,65 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-triggerconfig.html++module Stratosphere.ResourceProperties.CodeDeployDeploymentGroupTriggerConfig where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CodeDeployDeploymentGroupTriggerConfig. See+-- 'codeDeployDeploymentGroupTriggerConfig' for a more convenient+-- constructor.+data CodeDeployDeploymentGroupTriggerConfig =+  CodeDeployDeploymentGroupTriggerConfig+  { _codeDeployDeploymentGroupTriggerConfigTriggerEvents :: Maybe [Val Text]+  , _codeDeployDeploymentGroupTriggerConfigTriggerName :: Maybe (Val Text)+  , _codeDeployDeploymentGroupTriggerConfigTriggerTargetArn :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON CodeDeployDeploymentGroupTriggerConfig where+  toJSON CodeDeployDeploymentGroupTriggerConfig{..} =+    object $+    catMaybes+    [ ("TriggerEvents" .=) <$> _codeDeployDeploymentGroupTriggerConfigTriggerEvents+    , ("TriggerName" .=) <$> _codeDeployDeploymentGroupTriggerConfigTriggerName+    , ("TriggerTargetArn" .=) <$> _codeDeployDeploymentGroupTriggerConfigTriggerTargetArn+    ]++instance FromJSON CodeDeployDeploymentGroupTriggerConfig where+  parseJSON (Object obj) =+    CodeDeployDeploymentGroupTriggerConfig <$>+      obj .:? "TriggerEvents" <*>+      obj .:? "TriggerName" <*>+      obj .:? "TriggerTargetArn"+  parseJSON _ = mempty++-- | Constructor for 'CodeDeployDeploymentGroupTriggerConfig' containing+-- required fields as arguments.+codeDeployDeploymentGroupTriggerConfig+  :: CodeDeployDeploymentGroupTriggerConfig+codeDeployDeploymentGroupTriggerConfig  =+  CodeDeployDeploymentGroupTriggerConfig+  { _codeDeployDeploymentGroupTriggerConfigTriggerEvents = Nothing+  , _codeDeployDeploymentGroupTriggerConfigTriggerName = Nothing+  , _codeDeployDeploymentGroupTriggerConfigTriggerTargetArn = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-triggerconfig.html#cfn-codedeploy-deploymentgroup-triggerconfig-triggerevents+cddgtcTriggerEvents :: Lens' CodeDeployDeploymentGroupTriggerConfig (Maybe [Val Text])+cddgtcTriggerEvents = lens _codeDeployDeploymentGroupTriggerConfigTriggerEvents (\s a -> s { _codeDeployDeploymentGroupTriggerConfigTriggerEvents = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-triggerconfig.html#cfn-codedeploy-deploymentgroup-triggerconfig-triggername+cddgtcTriggerName :: Lens' CodeDeployDeploymentGroupTriggerConfig (Maybe (Val Text))+cddgtcTriggerName = lens _codeDeployDeploymentGroupTriggerConfigTriggerName (\s a -> s { _codeDeployDeploymentGroupTriggerConfigTriggerName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-triggerconfig.html#cfn-codedeploy-deploymentgroup-triggerconfig-triggertargetarn+cddgtcTriggerTargetArn :: Lens' CodeDeployDeploymentGroupTriggerConfig (Maybe (Val Text))+cddgtcTriggerTargetArn = lens _codeDeployDeploymentGroupTriggerConfigTriggerTargetArn (\s a -> s { _codeDeployDeploymentGroupTriggerConfigTriggerTargetArn = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoIdentityPoolCognitoIdentityProvider.hs view
@@ -0,0 +1,65 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html++module Stratosphere.ResourceProperties.CognitoIdentityPoolCognitoIdentityProvider where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoIdentityPoolCognitoIdentityProvider.+-- See 'cognitoIdentityPoolCognitoIdentityProvider' for a more convenient+-- constructor.+data CognitoIdentityPoolCognitoIdentityProvider =+  CognitoIdentityPoolCognitoIdentityProvider+  { _cognitoIdentityPoolCognitoIdentityProviderClientId :: Maybe (Val Text)+  , _cognitoIdentityPoolCognitoIdentityProviderProviderName :: Maybe (Val Text)+  , _cognitoIdentityPoolCognitoIdentityProviderServerSideTokenCheck :: Maybe (Val Bool')+  } deriving (Show, Eq)++instance ToJSON CognitoIdentityPoolCognitoIdentityProvider where+  toJSON CognitoIdentityPoolCognitoIdentityProvider{..} =+    object $+    catMaybes+    [ ("ClientId" .=) <$> _cognitoIdentityPoolCognitoIdentityProviderClientId+    , ("ProviderName" .=) <$> _cognitoIdentityPoolCognitoIdentityProviderProviderName+    , ("ServerSideTokenCheck" .=) <$> _cognitoIdentityPoolCognitoIdentityProviderServerSideTokenCheck+    ]++instance FromJSON CognitoIdentityPoolCognitoIdentityProvider where+  parseJSON (Object obj) =+    CognitoIdentityPoolCognitoIdentityProvider <$>+      obj .:? "ClientId" <*>+      obj .:? "ProviderName" <*>+      obj .:? "ServerSideTokenCheck"+  parseJSON _ = mempty++-- | Constructor for 'CognitoIdentityPoolCognitoIdentityProvider' containing+-- required fields as arguments.+cognitoIdentityPoolCognitoIdentityProvider+  :: CognitoIdentityPoolCognitoIdentityProvider+cognitoIdentityPoolCognitoIdentityProvider  =+  CognitoIdentityPoolCognitoIdentityProvider+  { _cognitoIdentityPoolCognitoIdentityProviderClientId = Nothing+  , _cognitoIdentityPoolCognitoIdentityProviderProviderName = Nothing+  , _cognitoIdentityPoolCognitoIdentityProviderServerSideTokenCheck = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html#cfn-cognito-identitypool-cognitoidentityprovider-clientid+cipcipClientId :: Lens' CognitoIdentityPoolCognitoIdentityProvider (Maybe (Val Text))+cipcipClientId = lens _cognitoIdentityPoolCognitoIdentityProviderClientId (\s a -> s { _cognitoIdentityPoolCognitoIdentityProviderClientId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html#cfn-cognito-identitypool-cognitoidentityprovider-providername+cipcipProviderName :: Lens' CognitoIdentityPoolCognitoIdentityProvider (Maybe (Val Text))+cipcipProviderName = lens _cognitoIdentityPoolCognitoIdentityProviderProviderName (\s a -> s { _cognitoIdentityPoolCognitoIdentityProviderProviderName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitoidentityprovider.html#cfn-cognito-identitypool-cognitoidentityprovider-serversidetokencheck+cipcipServerSideTokenCheck :: Lens' CognitoIdentityPoolCognitoIdentityProvider (Maybe (Val Bool'))+cipcipServerSideTokenCheck = lens _cognitoIdentityPoolCognitoIdentityProviderServerSideTokenCheck (\s a -> s { _cognitoIdentityPoolCognitoIdentityProviderServerSideTokenCheck = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoIdentityPoolCognitoStreams.hs view
@@ -0,0 +1,64 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitostreams.html++module Stratosphere.ResourceProperties.CognitoIdentityPoolCognitoStreams where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoIdentityPoolCognitoStreams. See+-- 'cognitoIdentityPoolCognitoStreams' for a more convenient constructor.+data CognitoIdentityPoolCognitoStreams =+  CognitoIdentityPoolCognitoStreams+  { _cognitoIdentityPoolCognitoStreamsRoleArn :: Maybe (Val Text)+  , _cognitoIdentityPoolCognitoStreamsStreamName :: Maybe (Val Text)+  , _cognitoIdentityPoolCognitoStreamsStreamingStatus :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON CognitoIdentityPoolCognitoStreams where+  toJSON CognitoIdentityPoolCognitoStreams{..} =+    object $+    catMaybes+    [ ("RoleArn" .=) <$> _cognitoIdentityPoolCognitoStreamsRoleArn+    , ("StreamName" .=) <$> _cognitoIdentityPoolCognitoStreamsStreamName+    , ("StreamingStatus" .=) <$> _cognitoIdentityPoolCognitoStreamsStreamingStatus+    ]++instance FromJSON CognitoIdentityPoolCognitoStreams where+  parseJSON (Object obj) =+    CognitoIdentityPoolCognitoStreams <$>+      obj .:? "RoleArn" <*>+      obj .:? "StreamName" <*>+      obj .:? "StreamingStatus"+  parseJSON _ = mempty++-- | Constructor for 'CognitoIdentityPoolCognitoStreams' containing required+-- fields as arguments.+cognitoIdentityPoolCognitoStreams+  :: CognitoIdentityPoolCognitoStreams+cognitoIdentityPoolCognitoStreams  =+  CognitoIdentityPoolCognitoStreams+  { _cognitoIdentityPoolCognitoStreamsRoleArn = Nothing+  , _cognitoIdentityPoolCognitoStreamsStreamName = Nothing+  , _cognitoIdentityPoolCognitoStreamsStreamingStatus = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitostreams.html#cfn-cognito-identitypool-cognitostreams-rolearn+cipcsRoleArn :: Lens' CognitoIdentityPoolCognitoStreams (Maybe (Val Text))+cipcsRoleArn = lens _cognitoIdentityPoolCognitoStreamsRoleArn (\s a -> s { _cognitoIdentityPoolCognitoStreamsRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitostreams.html#cfn-cognito-identitypool-cognitostreams-streamname+cipcsStreamName :: Lens' CognitoIdentityPoolCognitoStreams (Maybe (Val Text))+cipcsStreamName = lens _cognitoIdentityPoolCognitoStreamsStreamName (\s a -> s { _cognitoIdentityPoolCognitoStreamsStreamName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-cognitostreams.html#cfn-cognito-identitypool-cognitostreams-streamingstatus+cipcsStreamingStatus :: Lens' CognitoIdentityPoolCognitoStreams (Maybe (Val Text))+cipcsStreamingStatus = lens _cognitoIdentityPoolCognitoStreamsStreamingStatus (\s a -> s { _cognitoIdentityPoolCognitoStreamsStreamingStatus = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoIdentityPoolPushSync.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-pushsync.html++module Stratosphere.ResourceProperties.CognitoIdentityPoolPushSync where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoIdentityPoolPushSync. See+-- 'cognitoIdentityPoolPushSync' for a more convenient constructor.+data CognitoIdentityPoolPushSync =+  CognitoIdentityPoolPushSync+  { _cognitoIdentityPoolPushSyncApplicationArns :: Maybe [Val Text]+  , _cognitoIdentityPoolPushSyncRoleArn :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON CognitoIdentityPoolPushSync where+  toJSON CognitoIdentityPoolPushSync{..} =+    object $+    catMaybes+    [ ("ApplicationArns" .=) <$> _cognitoIdentityPoolPushSyncApplicationArns+    , ("RoleArn" .=) <$> _cognitoIdentityPoolPushSyncRoleArn+    ]++instance FromJSON CognitoIdentityPoolPushSync where+  parseJSON (Object obj) =+    CognitoIdentityPoolPushSync <$>+      obj .:? "ApplicationArns" <*>+      obj .:? "RoleArn"+  parseJSON _ = mempty++-- | Constructor for 'CognitoIdentityPoolPushSync' containing required fields+-- as arguments.+cognitoIdentityPoolPushSync+  :: CognitoIdentityPoolPushSync+cognitoIdentityPoolPushSync  =+  CognitoIdentityPoolPushSync+  { _cognitoIdentityPoolPushSyncApplicationArns = Nothing+  , _cognitoIdentityPoolPushSyncRoleArn = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-pushsync.html#cfn-cognito-identitypool-pushsync-applicationarns+cippsApplicationArns :: Lens' CognitoIdentityPoolPushSync (Maybe [Val Text])+cippsApplicationArns = lens _cognitoIdentityPoolPushSyncApplicationArns (\s a -> s { _cognitoIdentityPoolPushSyncApplicationArns = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypool-pushsync.html#cfn-cognito-identitypool-pushsync-rolearn+cippsRoleArn :: Lens' CognitoIdentityPoolPushSync (Maybe (Val Text))+cippsRoleArn = lens _cognitoIdentityPoolPushSyncRoleArn (\s a -> s { _cognitoIdentityPoolPushSyncRoleArn = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoIdentityPoolRoleAttachmentMappingRule.hs view
@@ -0,0 +1,78 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html++module Stratosphere.ResourceProperties.CognitoIdentityPoolRoleAttachmentMappingRule where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for+-- CognitoIdentityPoolRoleAttachmentMappingRule. See+-- 'cognitoIdentityPoolRoleAttachmentMappingRule' for a more convenient+-- constructor.+data CognitoIdentityPoolRoleAttachmentMappingRule =+  CognitoIdentityPoolRoleAttachmentMappingRule+  { _cognitoIdentityPoolRoleAttachmentMappingRuleClaim :: Val Text+  , _cognitoIdentityPoolRoleAttachmentMappingRuleMatchType :: Val Text+  , _cognitoIdentityPoolRoleAttachmentMappingRuleRoleARN :: Val Text+  , _cognitoIdentityPoolRoleAttachmentMappingRuleValue :: Val Text+  } deriving (Show, Eq)++instance ToJSON CognitoIdentityPoolRoleAttachmentMappingRule where+  toJSON CognitoIdentityPoolRoleAttachmentMappingRule{..} =+    object $+    catMaybes+    [ Just ("Claim" .= _cognitoIdentityPoolRoleAttachmentMappingRuleClaim)+    , Just ("MatchType" .= _cognitoIdentityPoolRoleAttachmentMappingRuleMatchType)+    , Just ("RoleARN" .= _cognitoIdentityPoolRoleAttachmentMappingRuleRoleARN)+    , Just ("Value" .= _cognitoIdentityPoolRoleAttachmentMappingRuleValue)+    ]++instance FromJSON CognitoIdentityPoolRoleAttachmentMappingRule where+  parseJSON (Object obj) =+    CognitoIdentityPoolRoleAttachmentMappingRule <$>+      obj .: "Claim" <*>+      obj .: "MatchType" <*>+      obj .: "RoleARN" <*>+      obj .: "Value"+  parseJSON _ = mempty++-- | Constructor for 'CognitoIdentityPoolRoleAttachmentMappingRule' containing+-- required fields as arguments.+cognitoIdentityPoolRoleAttachmentMappingRule+  :: Val Text -- ^ 'cipramrClaim'+  -> Val Text -- ^ 'cipramrMatchType'+  -> Val Text -- ^ 'cipramrRoleARN'+  -> Val Text -- ^ 'cipramrValue'+  -> CognitoIdentityPoolRoleAttachmentMappingRule+cognitoIdentityPoolRoleAttachmentMappingRule claimarg matchTypearg roleARNarg valuearg =+  CognitoIdentityPoolRoleAttachmentMappingRule+  { _cognitoIdentityPoolRoleAttachmentMappingRuleClaim = claimarg+  , _cognitoIdentityPoolRoleAttachmentMappingRuleMatchType = matchTypearg+  , _cognitoIdentityPoolRoleAttachmentMappingRuleRoleARN = roleARNarg+  , _cognitoIdentityPoolRoleAttachmentMappingRuleValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-claim+cipramrClaim :: Lens' CognitoIdentityPoolRoleAttachmentMappingRule (Val Text)+cipramrClaim = lens _cognitoIdentityPoolRoleAttachmentMappingRuleClaim (\s a -> s { _cognitoIdentityPoolRoleAttachmentMappingRuleClaim = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-matchtype+cipramrMatchType :: Lens' CognitoIdentityPoolRoleAttachmentMappingRule (Val Text)+cipramrMatchType = lens _cognitoIdentityPoolRoleAttachmentMappingRuleMatchType (\s a -> s { _cognitoIdentityPoolRoleAttachmentMappingRuleMatchType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-rolearn+cipramrRoleARN :: Lens' CognitoIdentityPoolRoleAttachmentMappingRule (Val Text)+cipramrRoleARN = lens _cognitoIdentityPoolRoleAttachmentMappingRuleRoleARN (\s a -> s { _cognitoIdentityPoolRoleAttachmentMappingRuleRoleARN = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-mappingrule.html#cfn-cognito-identitypoolroleattachment-mappingrule-value+cipramrValue :: Lens' CognitoIdentityPoolRoleAttachmentMappingRule (Val Text)+cipramrValue = lens _cognitoIdentityPoolRoleAttachmentMappingRuleValue (\s a -> s { _cognitoIdentityPoolRoleAttachmentMappingRuleValue = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoIdentityPoolRoleAttachmentRoleMapping.hs view
@@ -0,0 +1,67 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html++module Stratosphere.ResourceProperties.CognitoIdentityPoolRoleAttachmentRoleMapping where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.CognitoIdentityPoolRoleAttachmentRulesConfigurationType++-- | Full data type definition for+-- CognitoIdentityPoolRoleAttachmentRoleMapping. See+-- 'cognitoIdentityPoolRoleAttachmentRoleMapping' for a more convenient+-- constructor.+data CognitoIdentityPoolRoleAttachmentRoleMapping =+  CognitoIdentityPoolRoleAttachmentRoleMapping+  { _cognitoIdentityPoolRoleAttachmentRoleMappingAmbiguousRoleResolution :: Maybe (Val Text)+  , _cognitoIdentityPoolRoleAttachmentRoleMappingRulesConfiguration :: Maybe CognitoIdentityPoolRoleAttachmentRulesConfigurationType+  , _cognitoIdentityPoolRoleAttachmentRoleMappingType :: Val Text+  } deriving (Show, Eq)++instance ToJSON CognitoIdentityPoolRoleAttachmentRoleMapping where+  toJSON CognitoIdentityPoolRoleAttachmentRoleMapping{..} =+    object $+    catMaybes+    [ ("AmbiguousRoleResolution" .=) <$> _cognitoIdentityPoolRoleAttachmentRoleMappingAmbiguousRoleResolution+    , ("RulesConfiguration" .=) <$> _cognitoIdentityPoolRoleAttachmentRoleMappingRulesConfiguration+    , Just ("Type" .= _cognitoIdentityPoolRoleAttachmentRoleMappingType)+    ]++instance FromJSON CognitoIdentityPoolRoleAttachmentRoleMapping where+  parseJSON (Object obj) =+    CognitoIdentityPoolRoleAttachmentRoleMapping <$>+      obj .:? "AmbiguousRoleResolution" <*>+      obj .:? "RulesConfiguration" <*>+      obj .: "Type"+  parseJSON _ = mempty++-- | Constructor for 'CognitoIdentityPoolRoleAttachmentRoleMapping' containing+-- required fields as arguments.+cognitoIdentityPoolRoleAttachmentRoleMapping+  :: Val Text -- ^ 'ciprarmType'+  -> CognitoIdentityPoolRoleAttachmentRoleMapping+cognitoIdentityPoolRoleAttachmentRoleMapping typearg =+  CognitoIdentityPoolRoleAttachmentRoleMapping+  { _cognitoIdentityPoolRoleAttachmentRoleMappingAmbiguousRoleResolution = Nothing+  , _cognitoIdentityPoolRoleAttachmentRoleMappingRulesConfiguration = Nothing+  , _cognitoIdentityPoolRoleAttachmentRoleMappingType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-ambiguousroleresolution+ciprarmAmbiguousRoleResolution :: Lens' CognitoIdentityPoolRoleAttachmentRoleMapping (Maybe (Val Text))+ciprarmAmbiguousRoleResolution = lens _cognitoIdentityPoolRoleAttachmentRoleMappingAmbiguousRoleResolution (\s a -> s { _cognitoIdentityPoolRoleAttachmentRoleMappingAmbiguousRoleResolution = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-rulesconfiguration+ciprarmRulesConfiguration :: Lens' CognitoIdentityPoolRoleAttachmentRoleMapping (Maybe CognitoIdentityPoolRoleAttachmentRulesConfigurationType)+ciprarmRulesConfiguration = lens _cognitoIdentityPoolRoleAttachmentRoleMappingRulesConfiguration (\s a -> s { _cognitoIdentityPoolRoleAttachmentRoleMappingRulesConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping.html#cfn-cognito-identitypoolroleattachment-rolemapping-type+ciprarmType :: Lens' CognitoIdentityPoolRoleAttachmentRoleMapping (Val Text)+ciprarmType = lens _cognitoIdentityPoolRoleAttachmentRoleMappingType (\s a -> s { _cognitoIdentityPoolRoleAttachmentRoleMappingType = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoIdentityPoolRoleAttachmentRulesConfigurationType.hs view
@@ -0,0 +1,51 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping-rulesconfiguration.html++module Stratosphere.ResourceProperties.CognitoIdentityPoolRoleAttachmentRulesConfigurationType where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.CognitoIdentityPoolRoleAttachmentMappingRule++-- | Full data type definition for+-- CognitoIdentityPoolRoleAttachmentRulesConfigurationType. See+-- 'cognitoIdentityPoolRoleAttachmentRulesConfigurationType' for a more+-- convenient constructor.+data CognitoIdentityPoolRoleAttachmentRulesConfigurationType =+  CognitoIdentityPoolRoleAttachmentRulesConfigurationType+  { _cognitoIdentityPoolRoleAttachmentRulesConfigurationTypeRules :: [CognitoIdentityPoolRoleAttachmentMappingRule]+  } deriving (Show, Eq)++instance ToJSON CognitoIdentityPoolRoleAttachmentRulesConfigurationType where+  toJSON CognitoIdentityPoolRoleAttachmentRulesConfigurationType{..} =+    object $+    catMaybes+    [ Just ("Rules" .= _cognitoIdentityPoolRoleAttachmentRulesConfigurationTypeRules)+    ]++instance FromJSON CognitoIdentityPoolRoleAttachmentRulesConfigurationType where+  parseJSON (Object obj) =+    CognitoIdentityPoolRoleAttachmentRulesConfigurationType <$>+      obj .: "Rules"+  parseJSON _ = mempty++-- | Constructor for 'CognitoIdentityPoolRoleAttachmentRulesConfigurationType'+-- containing required fields as arguments.+cognitoIdentityPoolRoleAttachmentRulesConfigurationType+  :: [CognitoIdentityPoolRoleAttachmentMappingRule] -- ^ 'ciprarctRules'+  -> CognitoIdentityPoolRoleAttachmentRulesConfigurationType+cognitoIdentityPoolRoleAttachmentRulesConfigurationType rulesarg =+  CognitoIdentityPoolRoleAttachmentRulesConfigurationType+  { _cognitoIdentityPoolRoleAttachmentRulesConfigurationTypeRules = rulesarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-identitypoolroleattachment-rolemapping-rulesconfiguration.html#cfn-cognito-identitypoolroleattachment-rolemapping-rulesconfiguration-rules+ciprarctRules :: Lens' CognitoIdentityPoolRoleAttachmentRulesConfigurationType [CognitoIdentityPoolRoleAttachmentMappingRule]+ciprarctRules = lens _cognitoIdentityPoolRoleAttachmentRulesConfigurationTypeRules (\s a -> s { _cognitoIdentityPoolRoleAttachmentRulesConfigurationTypeRules = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoUserPoolAdminCreateUserConfig.hs view
@@ -0,0 +1,64 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html++module Stratosphere.ResourceProperties.CognitoUserPoolAdminCreateUserConfig where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.CognitoUserPoolInviteMessageTemplate++-- | Full data type definition for CognitoUserPoolAdminCreateUserConfig. See+-- 'cognitoUserPoolAdminCreateUserConfig' for a more convenient constructor.+data CognitoUserPoolAdminCreateUserConfig =+  CognitoUserPoolAdminCreateUserConfig+  { _cognitoUserPoolAdminCreateUserConfigAllowAdminCreateUserOnly :: Maybe (Val Bool')+  , _cognitoUserPoolAdminCreateUserConfigInviteMessageTemplate :: Maybe CognitoUserPoolInviteMessageTemplate+  , _cognitoUserPoolAdminCreateUserConfigUnusedAccountValidityDays :: Maybe (Val Double')+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolAdminCreateUserConfig where+  toJSON CognitoUserPoolAdminCreateUserConfig{..} =+    object $+    catMaybes+    [ ("AllowAdminCreateUserOnly" .=) <$> _cognitoUserPoolAdminCreateUserConfigAllowAdminCreateUserOnly+    , ("InviteMessageTemplate" .=) <$> _cognitoUserPoolAdminCreateUserConfigInviteMessageTemplate+    , ("UnusedAccountValidityDays" .=) <$> _cognitoUserPoolAdminCreateUserConfigUnusedAccountValidityDays+    ]++instance FromJSON CognitoUserPoolAdminCreateUserConfig where+  parseJSON (Object obj) =+    CognitoUserPoolAdminCreateUserConfig <$>+      obj .:? "AllowAdminCreateUserOnly" <*>+      obj .:? "InviteMessageTemplate" <*>+      obj .:? "UnusedAccountValidityDays"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolAdminCreateUserConfig' containing+-- required fields as arguments.+cognitoUserPoolAdminCreateUserConfig+  :: CognitoUserPoolAdminCreateUserConfig+cognitoUserPoolAdminCreateUserConfig  =+  CognitoUserPoolAdminCreateUserConfig+  { _cognitoUserPoolAdminCreateUserConfigAllowAdminCreateUserOnly = Nothing+  , _cognitoUserPoolAdminCreateUserConfigInviteMessageTemplate = Nothing+  , _cognitoUserPoolAdminCreateUserConfigUnusedAccountValidityDays = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html#cfn-cognito-userpool-admincreateuserconfig-allowadmincreateuseronly+cupacucAllowAdminCreateUserOnly :: Lens' CognitoUserPoolAdminCreateUserConfig (Maybe (Val Bool'))+cupacucAllowAdminCreateUserOnly = lens _cognitoUserPoolAdminCreateUserConfigAllowAdminCreateUserOnly (\s a -> s { _cognitoUserPoolAdminCreateUserConfigAllowAdminCreateUserOnly = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html#cfn-cognito-userpool-admincreateuserconfig-invitemessagetemplate+cupacucInviteMessageTemplate :: Lens' CognitoUserPoolAdminCreateUserConfig (Maybe CognitoUserPoolInviteMessageTemplate)+cupacucInviteMessageTemplate = lens _cognitoUserPoolAdminCreateUserConfigInviteMessageTemplate (\s a -> s { _cognitoUserPoolAdminCreateUserConfigInviteMessageTemplate = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-admincreateuserconfig.html#cfn-cognito-userpool-admincreateuserconfig-unusedaccountvaliditydays+cupacucUnusedAccountValidityDays :: Lens' CognitoUserPoolAdminCreateUserConfig (Maybe (Val Double'))+cupacucUnusedAccountValidityDays = lens _cognitoUserPoolAdminCreateUserConfigUnusedAccountValidityDays (\s a -> s { _cognitoUserPoolAdminCreateUserConfigUnusedAccountValidityDays = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoUserPoolDeviceConfiguration.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-deviceconfiguration.html++module Stratosphere.ResourceProperties.CognitoUserPoolDeviceConfiguration where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoUserPoolDeviceConfiguration. See+-- 'cognitoUserPoolDeviceConfiguration' for a more convenient constructor.+data CognitoUserPoolDeviceConfiguration =+  CognitoUserPoolDeviceConfiguration+  { _cognitoUserPoolDeviceConfigurationChallengeRequiredOnNewDevice :: Maybe (Val Bool')+  , _cognitoUserPoolDeviceConfigurationDeviceOnlyRememberedOnUserPrompt :: Maybe (Val Bool')+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolDeviceConfiguration where+  toJSON CognitoUserPoolDeviceConfiguration{..} =+    object $+    catMaybes+    [ ("ChallengeRequiredOnNewDevice" .=) <$> _cognitoUserPoolDeviceConfigurationChallengeRequiredOnNewDevice+    , ("DeviceOnlyRememberedOnUserPrompt" .=) <$> _cognitoUserPoolDeviceConfigurationDeviceOnlyRememberedOnUserPrompt+    ]++instance FromJSON CognitoUserPoolDeviceConfiguration where+  parseJSON (Object obj) =+    CognitoUserPoolDeviceConfiguration <$>+      obj .:? "ChallengeRequiredOnNewDevice" <*>+      obj .:? "DeviceOnlyRememberedOnUserPrompt"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolDeviceConfiguration' containing required+-- fields as arguments.+cognitoUserPoolDeviceConfiguration+  :: CognitoUserPoolDeviceConfiguration+cognitoUserPoolDeviceConfiguration  =+  CognitoUserPoolDeviceConfiguration+  { _cognitoUserPoolDeviceConfigurationChallengeRequiredOnNewDevice = Nothing+  , _cognitoUserPoolDeviceConfigurationDeviceOnlyRememberedOnUserPrompt = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-deviceconfiguration.html#cfn-cognito-userpool-deviceconfiguration-challengerequiredonnewdevice+cupdcChallengeRequiredOnNewDevice :: Lens' CognitoUserPoolDeviceConfiguration (Maybe (Val Bool'))+cupdcChallengeRequiredOnNewDevice = lens _cognitoUserPoolDeviceConfigurationChallengeRequiredOnNewDevice (\s a -> s { _cognitoUserPoolDeviceConfigurationChallengeRequiredOnNewDevice = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-deviceconfiguration.html#cfn-cognito-userpool-deviceconfiguration-deviceonlyrememberedonuserprompt+cupdcDeviceOnlyRememberedOnUserPrompt :: Lens' CognitoUserPoolDeviceConfiguration (Maybe (Val Bool'))+cupdcDeviceOnlyRememberedOnUserPrompt = lens _cognitoUserPoolDeviceConfigurationDeviceOnlyRememberedOnUserPrompt (\s a -> s { _cognitoUserPoolDeviceConfigurationDeviceOnlyRememberedOnUserPrompt = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoUserPoolEmailConfiguration.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-emailconfiguration.html++module Stratosphere.ResourceProperties.CognitoUserPoolEmailConfiguration where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoUserPoolEmailConfiguration. See+-- 'cognitoUserPoolEmailConfiguration' for a more convenient constructor.+data CognitoUserPoolEmailConfiguration =+  CognitoUserPoolEmailConfiguration+  { _cognitoUserPoolEmailConfigurationReplyToEmailAddress :: Maybe (Val Text)+  , _cognitoUserPoolEmailConfigurationSourceArn :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolEmailConfiguration where+  toJSON CognitoUserPoolEmailConfiguration{..} =+    object $+    catMaybes+    [ ("ReplyToEmailAddress" .=) <$> _cognitoUserPoolEmailConfigurationReplyToEmailAddress+    , ("SourceArn" .=) <$> _cognitoUserPoolEmailConfigurationSourceArn+    ]++instance FromJSON CognitoUserPoolEmailConfiguration where+  parseJSON (Object obj) =+    CognitoUserPoolEmailConfiguration <$>+      obj .:? "ReplyToEmailAddress" <*>+      obj .:? "SourceArn"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolEmailConfiguration' containing required+-- fields as arguments.+cognitoUserPoolEmailConfiguration+  :: CognitoUserPoolEmailConfiguration+cognitoUserPoolEmailConfiguration  =+  CognitoUserPoolEmailConfiguration+  { _cognitoUserPoolEmailConfigurationReplyToEmailAddress = Nothing+  , _cognitoUserPoolEmailConfigurationSourceArn = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-emailconfiguration.html#cfn-cognito-userpool-emailconfiguration-replytoemailaddress+cupecReplyToEmailAddress :: Lens' CognitoUserPoolEmailConfiguration (Maybe (Val Text))+cupecReplyToEmailAddress = lens _cognitoUserPoolEmailConfigurationReplyToEmailAddress (\s a -> s { _cognitoUserPoolEmailConfigurationReplyToEmailAddress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-emailconfiguration.html#cfn-cognito-userpool-emailconfiguration-sourcearn+cupecSourceArn :: Lens' CognitoUserPoolEmailConfiguration (Maybe (Val Text))+cupecSourceArn = lens _cognitoUserPoolEmailConfigurationSourceArn (\s a -> s { _cognitoUserPoolEmailConfigurationSourceArn = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoUserPoolInviteMessageTemplate.hs view
@@ -0,0 +1,64 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-invitemessagetemplate.html++module Stratosphere.ResourceProperties.CognitoUserPoolInviteMessageTemplate where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoUserPoolInviteMessageTemplate. See+-- 'cognitoUserPoolInviteMessageTemplate' for a more convenient constructor.+data CognitoUserPoolInviteMessageTemplate =+  CognitoUserPoolInviteMessageTemplate+  { _cognitoUserPoolInviteMessageTemplateEmailMessage :: Maybe (Val Text)+  , _cognitoUserPoolInviteMessageTemplateEmailSubject :: Maybe (Val Text)+  , _cognitoUserPoolInviteMessageTemplateSMSMessage :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolInviteMessageTemplate where+  toJSON CognitoUserPoolInviteMessageTemplate{..} =+    object $+    catMaybes+    [ ("EmailMessage" .=) <$> _cognitoUserPoolInviteMessageTemplateEmailMessage+    , ("EmailSubject" .=) <$> _cognitoUserPoolInviteMessageTemplateEmailSubject+    , ("SMSMessage" .=) <$> _cognitoUserPoolInviteMessageTemplateSMSMessage+    ]++instance FromJSON CognitoUserPoolInviteMessageTemplate where+  parseJSON (Object obj) =+    CognitoUserPoolInviteMessageTemplate <$>+      obj .:? "EmailMessage" <*>+      obj .:? "EmailSubject" <*>+      obj .:? "SMSMessage"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolInviteMessageTemplate' containing+-- required fields as arguments.+cognitoUserPoolInviteMessageTemplate+  :: CognitoUserPoolInviteMessageTemplate+cognitoUserPoolInviteMessageTemplate  =+  CognitoUserPoolInviteMessageTemplate+  { _cognitoUserPoolInviteMessageTemplateEmailMessage = Nothing+  , _cognitoUserPoolInviteMessageTemplateEmailSubject = Nothing+  , _cognitoUserPoolInviteMessageTemplateSMSMessage = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-invitemessagetemplate.html#cfn-cognito-userpool-invitemessagetemplate-emailmessage+cupimtEmailMessage :: Lens' CognitoUserPoolInviteMessageTemplate (Maybe (Val Text))+cupimtEmailMessage = lens _cognitoUserPoolInviteMessageTemplateEmailMessage (\s a -> s { _cognitoUserPoolInviteMessageTemplateEmailMessage = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-invitemessagetemplate.html#cfn-cognito-userpool-invitemessagetemplate-emailsubject+cupimtEmailSubject :: Lens' CognitoUserPoolInviteMessageTemplate (Maybe (Val Text))+cupimtEmailSubject = lens _cognitoUserPoolInviteMessageTemplateEmailSubject (\s a -> s { _cognitoUserPoolInviteMessageTemplateEmailSubject = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-invitemessagetemplate.html#cfn-cognito-userpool-invitemessagetemplate-smsmessage+cupimtSMSMessage :: Lens' CognitoUserPoolInviteMessageTemplate (Maybe (Val Text))+cupimtSMSMessage = lens _cognitoUserPoolInviteMessageTemplateSMSMessage (\s a -> s { _cognitoUserPoolInviteMessageTemplateSMSMessage = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoUserPoolLambdaConfig.hs view
@@ -0,0 +1,104 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html++module Stratosphere.ResourceProperties.CognitoUserPoolLambdaConfig where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoUserPoolLambdaConfig. See+-- 'cognitoUserPoolLambdaConfig' for a more convenient constructor.+data CognitoUserPoolLambdaConfig =+  CognitoUserPoolLambdaConfig+  { _cognitoUserPoolLambdaConfigCreateAuthChallenge :: Maybe (Val Text)+  , _cognitoUserPoolLambdaConfigCustomMessage :: Maybe (Val Text)+  , _cognitoUserPoolLambdaConfigDefineAuthChallenge :: Maybe (Val Text)+  , _cognitoUserPoolLambdaConfigPostAuthentication :: Maybe (Val Text)+  , _cognitoUserPoolLambdaConfigPostConfirmation :: Maybe (Val Text)+  , _cognitoUserPoolLambdaConfigPreAuthentication :: Maybe (Val Text)+  , _cognitoUserPoolLambdaConfigPreSignUp :: Maybe (Val Text)+  , _cognitoUserPoolLambdaConfigVerifyAuthChallengeResponse :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolLambdaConfig where+  toJSON CognitoUserPoolLambdaConfig{..} =+    object $+    catMaybes+    [ ("CreateAuthChallenge" .=) <$> _cognitoUserPoolLambdaConfigCreateAuthChallenge+    , ("CustomMessage" .=) <$> _cognitoUserPoolLambdaConfigCustomMessage+    , ("DefineAuthChallenge" .=) <$> _cognitoUserPoolLambdaConfigDefineAuthChallenge+    , ("PostAuthentication" .=) <$> _cognitoUserPoolLambdaConfigPostAuthentication+    , ("PostConfirmation" .=) <$> _cognitoUserPoolLambdaConfigPostConfirmation+    , ("PreAuthentication" .=) <$> _cognitoUserPoolLambdaConfigPreAuthentication+    , ("PreSignUp" .=) <$> _cognitoUserPoolLambdaConfigPreSignUp+    , ("VerifyAuthChallengeResponse" .=) <$> _cognitoUserPoolLambdaConfigVerifyAuthChallengeResponse+    ]++instance FromJSON CognitoUserPoolLambdaConfig where+  parseJSON (Object obj) =+    CognitoUserPoolLambdaConfig <$>+      obj .:? "CreateAuthChallenge" <*>+      obj .:? "CustomMessage" <*>+      obj .:? "DefineAuthChallenge" <*>+      obj .:? "PostAuthentication" <*>+      obj .:? "PostConfirmation" <*>+      obj .:? "PreAuthentication" <*>+      obj .:? "PreSignUp" <*>+      obj .:? "VerifyAuthChallengeResponse"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolLambdaConfig' containing required fields+-- as arguments.+cognitoUserPoolLambdaConfig+  :: CognitoUserPoolLambdaConfig+cognitoUserPoolLambdaConfig  =+  CognitoUserPoolLambdaConfig+  { _cognitoUserPoolLambdaConfigCreateAuthChallenge = Nothing+  , _cognitoUserPoolLambdaConfigCustomMessage = Nothing+  , _cognitoUserPoolLambdaConfigDefineAuthChallenge = Nothing+  , _cognitoUserPoolLambdaConfigPostAuthentication = Nothing+  , _cognitoUserPoolLambdaConfigPostConfirmation = Nothing+  , _cognitoUserPoolLambdaConfigPreAuthentication = Nothing+  , _cognitoUserPoolLambdaConfigPreSignUp = Nothing+  , _cognitoUserPoolLambdaConfigVerifyAuthChallengeResponse = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-createauthchallenge+cuplcCreateAuthChallenge :: Lens' CognitoUserPoolLambdaConfig (Maybe (Val Text))+cuplcCreateAuthChallenge = lens _cognitoUserPoolLambdaConfigCreateAuthChallenge (\s a -> s { _cognitoUserPoolLambdaConfigCreateAuthChallenge = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-custommessage+cuplcCustomMessage :: Lens' CognitoUserPoolLambdaConfig (Maybe (Val Text))+cuplcCustomMessage = lens _cognitoUserPoolLambdaConfigCustomMessage (\s a -> s { _cognitoUserPoolLambdaConfigCustomMessage = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-defineauthchallenge+cuplcDefineAuthChallenge :: Lens' CognitoUserPoolLambdaConfig (Maybe (Val Text))+cuplcDefineAuthChallenge = lens _cognitoUserPoolLambdaConfigDefineAuthChallenge (\s a -> s { _cognitoUserPoolLambdaConfigDefineAuthChallenge = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-postauthentication+cuplcPostAuthentication :: Lens' CognitoUserPoolLambdaConfig (Maybe (Val Text))+cuplcPostAuthentication = lens _cognitoUserPoolLambdaConfigPostAuthentication (\s a -> s { _cognitoUserPoolLambdaConfigPostAuthentication = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-postconfirmation+cuplcPostConfirmation :: Lens' CognitoUserPoolLambdaConfig (Maybe (Val Text))+cuplcPostConfirmation = lens _cognitoUserPoolLambdaConfigPostConfirmation (\s a -> s { _cognitoUserPoolLambdaConfigPostConfirmation = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-preauthentication+cuplcPreAuthentication :: Lens' CognitoUserPoolLambdaConfig (Maybe (Val Text))+cuplcPreAuthentication = lens _cognitoUserPoolLambdaConfigPreAuthentication (\s a -> s { _cognitoUserPoolLambdaConfigPreAuthentication = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-presignup+cuplcPreSignUp :: Lens' CognitoUserPoolLambdaConfig (Maybe (Val Text))+cuplcPreSignUp = lens _cognitoUserPoolLambdaConfigPreSignUp (\s a -> s { _cognitoUserPoolLambdaConfigPreSignUp = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-lambdaconfig.html#cfn-cognito-userpool-lambdaconfig-verifyauthchallengeresponse+cuplcVerifyAuthChallengeResponse :: Lens' CognitoUserPoolLambdaConfig (Maybe (Val Text))+cuplcVerifyAuthChallengeResponse = lens _cognitoUserPoolLambdaConfigVerifyAuthChallengeResponse (\s a -> s { _cognitoUserPoolLambdaConfigVerifyAuthChallengeResponse = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoUserPoolNumberAttributeConstraints.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-numberattributeconstraints.html++module Stratosphere.ResourceProperties.CognitoUserPoolNumberAttributeConstraints where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoUserPoolNumberAttributeConstraints.+-- See 'cognitoUserPoolNumberAttributeConstraints' for a more convenient+-- constructor.+data CognitoUserPoolNumberAttributeConstraints =+  CognitoUserPoolNumberAttributeConstraints+  { _cognitoUserPoolNumberAttributeConstraintsMaxValue :: Maybe (Val Text)+  , _cognitoUserPoolNumberAttributeConstraintsMinValue :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolNumberAttributeConstraints where+  toJSON CognitoUserPoolNumberAttributeConstraints{..} =+    object $+    catMaybes+    [ ("MaxValue" .=) <$> _cognitoUserPoolNumberAttributeConstraintsMaxValue+    , ("MinValue" .=) <$> _cognitoUserPoolNumberAttributeConstraintsMinValue+    ]++instance FromJSON CognitoUserPoolNumberAttributeConstraints where+  parseJSON (Object obj) =+    CognitoUserPoolNumberAttributeConstraints <$>+      obj .:? "MaxValue" <*>+      obj .:? "MinValue"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolNumberAttributeConstraints' containing+-- required fields as arguments.+cognitoUserPoolNumberAttributeConstraints+  :: CognitoUserPoolNumberAttributeConstraints+cognitoUserPoolNumberAttributeConstraints  =+  CognitoUserPoolNumberAttributeConstraints+  { _cognitoUserPoolNumberAttributeConstraintsMaxValue = Nothing+  , _cognitoUserPoolNumberAttributeConstraintsMinValue = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-numberattributeconstraints.html#cfn-cognito-userpool-numberattributeconstraints-maxvalue+cupnacMaxValue :: Lens' CognitoUserPoolNumberAttributeConstraints (Maybe (Val Text))+cupnacMaxValue = lens _cognitoUserPoolNumberAttributeConstraintsMaxValue (\s a -> s { _cognitoUserPoolNumberAttributeConstraintsMaxValue = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-numberattributeconstraints.html#cfn-cognito-userpool-numberattributeconstraints-minvalue+cupnacMinValue :: Lens' CognitoUserPoolNumberAttributeConstraints (Maybe (Val Text))+cupnacMinValue = lens _cognitoUserPoolNumberAttributeConstraintsMinValue (\s a -> s { _cognitoUserPoolNumberAttributeConstraintsMinValue = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoUserPoolPasswordPolicy.hs view
@@ -0,0 +1,80 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html++module Stratosphere.ResourceProperties.CognitoUserPoolPasswordPolicy where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoUserPoolPasswordPolicy. See+-- 'cognitoUserPoolPasswordPolicy' for a more convenient constructor.+data CognitoUserPoolPasswordPolicy =+  CognitoUserPoolPasswordPolicy+  { _cognitoUserPoolPasswordPolicyMinimumLength :: Maybe (Val Integer')+  , _cognitoUserPoolPasswordPolicyRequireLowercase :: Maybe (Val Bool')+  , _cognitoUserPoolPasswordPolicyRequireNumbers :: Maybe (Val Bool')+  , _cognitoUserPoolPasswordPolicyRequireSymbols :: Maybe (Val Bool')+  , _cognitoUserPoolPasswordPolicyRequireUppercase :: Maybe (Val Bool')+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolPasswordPolicy where+  toJSON CognitoUserPoolPasswordPolicy{..} =+    object $+    catMaybes+    [ ("MinimumLength" .=) <$> _cognitoUserPoolPasswordPolicyMinimumLength+    , ("RequireLowercase" .=) <$> _cognitoUserPoolPasswordPolicyRequireLowercase+    , ("RequireNumbers" .=) <$> _cognitoUserPoolPasswordPolicyRequireNumbers+    , ("RequireSymbols" .=) <$> _cognitoUserPoolPasswordPolicyRequireSymbols+    , ("RequireUppercase" .=) <$> _cognitoUserPoolPasswordPolicyRequireUppercase+    ]++instance FromJSON CognitoUserPoolPasswordPolicy where+  parseJSON (Object obj) =+    CognitoUserPoolPasswordPolicy <$>+      obj .:? "MinimumLength" <*>+      obj .:? "RequireLowercase" <*>+      obj .:? "RequireNumbers" <*>+      obj .:? "RequireSymbols" <*>+      obj .:? "RequireUppercase"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolPasswordPolicy' containing required+-- fields as arguments.+cognitoUserPoolPasswordPolicy+  :: CognitoUserPoolPasswordPolicy+cognitoUserPoolPasswordPolicy  =+  CognitoUserPoolPasswordPolicy+  { _cognitoUserPoolPasswordPolicyMinimumLength = Nothing+  , _cognitoUserPoolPasswordPolicyRequireLowercase = Nothing+  , _cognitoUserPoolPasswordPolicyRequireNumbers = Nothing+  , _cognitoUserPoolPasswordPolicyRequireSymbols = Nothing+  , _cognitoUserPoolPasswordPolicyRequireUppercase = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-minimumlength+cupppMinimumLength :: Lens' CognitoUserPoolPasswordPolicy (Maybe (Val Integer'))+cupppMinimumLength = lens _cognitoUserPoolPasswordPolicyMinimumLength (\s a -> s { _cognitoUserPoolPasswordPolicyMinimumLength = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-requirelowercase+cupppRequireLowercase :: Lens' CognitoUserPoolPasswordPolicy (Maybe (Val Bool'))+cupppRequireLowercase = lens _cognitoUserPoolPasswordPolicyRequireLowercase (\s a -> s { _cognitoUserPoolPasswordPolicyRequireLowercase = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-requirenumbers+cupppRequireNumbers :: Lens' CognitoUserPoolPasswordPolicy (Maybe (Val Bool'))+cupppRequireNumbers = lens _cognitoUserPoolPasswordPolicyRequireNumbers (\s a -> s { _cognitoUserPoolPasswordPolicyRequireNumbers = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-requiresymbols+cupppRequireSymbols :: Lens' CognitoUserPoolPasswordPolicy (Maybe (Val Bool'))+cupppRequireSymbols = lens _cognitoUserPoolPasswordPolicyRequireSymbols (\s a -> s { _cognitoUserPoolPasswordPolicyRequireSymbols = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-passwordpolicy.html#cfn-cognito-userpool-passwordpolicy-requireuppercase+cupppRequireUppercase :: Lens' CognitoUserPoolPasswordPolicy (Maybe (Val Bool'))+cupppRequireUppercase = lens _cognitoUserPoolPasswordPolicyRequireUppercase (\s a -> s { _cognitoUserPoolPasswordPolicyRequireUppercase = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoUserPoolPolicies.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-policies.html++module Stratosphere.ResourceProperties.CognitoUserPoolPolicies where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.CognitoUserPoolPasswordPolicy++-- | Full data type definition for CognitoUserPoolPolicies. See+-- 'cognitoUserPoolPolicies' for a more convenient constructor.+data CognitoUserPoolPolicies =+  CognitoUserPoolPolicies+  { _cognitoUserPoolPoliciesPasswordPolicy :: Maybe CognitoUserPoolPasswordPolicy+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolPolicies where+  toJSON CognitoUserPoolPolicies{..} =+    object $+    catMaybes+    [ ("PasswordPolicy" .=) <$> _cognitoUserPoolPoliciesPasswordPolicy+    ]++instance FromJSON CognitoUserPoolPolicies where+  parseJSON (Object obj) =+    CognitoUserPoolPolicies <$>+      obj .:? "PasswordPolicy"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolPolicies' containing required fields as+-- arguments.+cognitoUserPoolPolicies+  :: CognitoUserPoolPolicies+cognitoUserPoolPolicies  =+  CognitoUserPoolPolicies+  { _cognitoUserPoolPoliciesPasswordPolicy = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-policies.html#cfn-cognito-userpool-policies-passwordpolicy+cuppPasswordPolicy :: Lens' CognitoUserPoolPolicies (Maybe CognitoUserPoolPasswordPolicy)+cuppPasswordPolicy = lens _cognitoUserPoolPoliciesPasswordPolicy (\s a -> s { _cognitoUserPoolPoliciesPasswordPolicy = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoUserPoolSchemaAttribute.hs view
@@ -0,0 +1,97 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html++module Stratosphere.ResourceProperties.CognitoUserPoolSchemaAttribute where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.CognitoUserPoolNumberAttributeConstraints+import Stratosphere.ResourceProperties.CognitoUserPoolStringAttributeConstraints++-- | Full data type definition for CognitoUserPoolSchemaAttribute. See+-- 'cognitoUserPoolSchemaAttribute' for a more convenient constructor.+data CognitoUserPoolSchemaAttribute =+  CognitoUserPoolSchemaAttribute+  { _cognitoUserPoolSchemaAttributeAttributeDataType :: Maybe (Val Text)+  , _cognitoUserPoolSchemaAttributeDeveloperOnlyAttribute :: Maybe (Val Bool')+  , _cognitoUserPoolSchemaAttributeMutable :: Maybe (Val Bool')+  , _cognitoUserPoolSchemaAttributeName :: Maybe (Val Text)+  , _cognitoUserPoolSchemaAttributeNumberAttributeConstraints :: Maybe CognitoUserPoolNumberAttributeConstraints+  , _cognitoUserPoolSchemaAttributeRequired :: Maybe (Val Bool')+  , _cognitoUserPoolSchemaAttributeStringAttributeConstraints :: Maybe CognitoUserPoolStringAttributeConstraints+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolSchemaAttribute where+  toJSON CognitoUserPoolSchemaAttribute{..} =+    object $+    catMaybes+    [ ("AttributeDataType" .=) <$> _cognitoUserPoolSchemaAttributeAttributeDataType+    , ("DeveloperOnlyAttribute" .=) <$> _cognitoUserPoolSchemaAttributeDeveloperOnlyAttribute+    , ("Mutable" .=) <$> _cognitoUserPoolSchemaAttributeMutable+    , ("Name" .=) <$> _cognitoUserPoolSchemaAttributeName+    , ("NumberAttributeConstraints" .=) <$> _cognitoUserPoolSchemaAttributeNumberAttributeConstraints+    , ("Required" .=) <$> _cognitoUserPoolSchemaAttributeRequired+    , ("StringAttributeConstraints" .=) <$> _cognitoUserPoolSchemaAttributeStringAttributeConstraints+    ]++instance FromJSON CognitoUserPoolSchemaAttribute where+  parseJSON (Object obj) =+    CognitoUserPoolSchemaAttribute <$>+      obj .:? "AttributeDataType" <*>+      obj .:? "DeveloperOnlyAttribute" <*>+      obj .:? "Mutable" <*>+      obj .:? "Name" <*>+      obj .:? "NumberAttributeConstraints" <*>+      obj .:? "Required" <*>+      obj .:? "StringAttributeConstraints"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolSchemaAttribute' containing required+-- fields as arguments.+cognitoUserPoolSchemaAttribute+  :: CognitoUserPoolSchemaAttribute+cognitoUserPoolSchemaAttribute  =+  CognitoUserPoolSchemaAttribute+  { _cognitoUserPoolSchemaAttributeAttributeDataType = Nothing+  , _cognitoUserPoolSchemaAttributeDeveloperOnlyAttribute = Nothing+  , _cognitoUserPoolSchemaAttributeMutable = Nothing+  , _cognitoUserPoolSchemaAttributeName = Nothing+  , _cognitoUserPoolSchemaAttributeNumberAttributeConstraints = Nothing+  , _cognitoUserPoolSchemaAttributeRequired = Nothing+  , _cognitoUserPoolSchemaAttributeStringAttributeConstraints = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-attributedatatype+cupsaAttributeDataType :: Lens' CognitoUserPoolSchemaAttribute (Maybe (Val Text))+cupsaAttributeDataType = lens _cognitoUserPoolSchemaAttributeAttributeDataType (\s a -> s { _cognitoUserPoolSchemaAttributeAttributeDataType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-developeronlyattribute+cupsaDeveloperOnlyAttribute :: Lens' CognitoUserPoolSchemaAttribute (Maybe (Val Bool'))+cupsaDeveloperOnlyAttribute = lens _cognitoUserPoolSchemaAttributeDeveloperOnlyAttribute (\s a -> s { _cognitoUserPoolSchemaAttributeDeveloperOnlyAttribute = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-mutable+cupsaMutable :: Lens' CognitoUserPoolSchemaAttribute (Maybe (Val Bool'))+cupsaMutable = lens _cognitoUserPoolSchemaAttributeMutable (\s a -> s { _cognitoUserPoolSchemaAttributeMutable = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-name+cupsaName :: Lens' CognitoUserPoolSchemaAttribute (Maybe (Val Text))+cupsaName = lens _cognitoUserPoolSchemaAttributeName (\s a -> s { _cognitoUserPoolSchemaAttributeName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-numberattributeconstraints+cupsaNumberAttributeConstraints :: Lens' CognitoUserPoolSchemaAttribute (Maybe CognitoUserPoolNumberAttributeConstraints)+cupsaNumberAttributeConstraints = lens _cognitoUserPoolSchemaAttributeNumberAttributeConstraints (\s a -> s { _cognitoUserPoolSchemaAttributeNumberAttributeConstraints = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-required+cupsaRequired :: Lens' CognitoUserPoolSchemaAttribute (Maybe (Val Bool'))+cupsaRequired = lens _cognitoUserPoolSchemaAttributeRequired (\s a -> s { _cognitoUserPoolSchemaAttributeRequired = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-schemaattribute.html#cfn-cognito-userpool-schemaattribute-stringattributeconstraints+cupsaStringAttributeConstraints :: Lens' CognitoUserPoolSchemaAttribute (Maybe CognitoUserPoolStringAttributeConstraints)+cupsaStringAttributeConstraints = lens _cognitoUserPoolSchemaAttributeStringAttributeConstraints (\s a -> s { _cognitoUserPoolSchemaAttributeStringAttributeConstraints = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoUserPoolSmsConfiguration.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-smsconfiguration.html++module Stratosphere.ResourceProperties.CognitoUserPoolSmsConfiguration where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoUserPoolSmsConfiguration. See+-- 'cognitoUserPoolSmsConfiguration' for a more convenient constructor.+data CognitoUserPoolSmsConfiguration =+  CognitoUserPoolSmsConfiguration+  { _cognitoUserPoolSmsConfigurationExternalId :: Maybe (Val Text)+  , _cognitoUserPoolSmsConfigurationSnsCallerArn :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolSmsConfiguration where+  toJSON CognitoUserPoolSmsConfiguration{..} =+    object $+    catMaybes+    [ ("ExternalId" .=) <$> _cognitoUserPoolSmsConfigurationExternalId+    , ("SnsCallerArn" .=) <$> _cognitoUserPoolSmsConfigurationSnsCallerArn+    ]++instance FromJSON CognitoUserPoolSmsConfiguration where+  parseJSON (Object obj) =+    CognitoUserPoolSmsConfiguration <$>+      obj .:? "ExternalId" <*>+      obj .:? "SnsCallerArn"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolSmsConfiguration' containing required+-- fields as arguments.+cognitoUserPoolSmsConfiguration+  :: CognitoUserPoolSmsConfiguration+cognitoUserPoolSmsConfiguration  =+  CognitoUserPoolSmsConfiguration+  { _cognitoUserPoolSmsConfigurationExternalId = Nothing+  , _cognitoUserPoolSmsConfigurationSnsCallerArn = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-smsconfiguration.html#cfn-cognito-userpool-smsconfiguration-externalid+cupscExternalId :: Lens' CognitoUserPoolSmsConfiguration (Maybe (Val Text))+cupscExternalId = lens _cognitoUserPoolSmsConfigurationExternalId (\s a -> s { _cognitoUserPoolSmsConfigurationExternalId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-smsconfiguration.html#cfn-cognito-userpool-smsconfiguration-snscallerarn+cupscSnsCallerArn :: Lens' CognitoUserPoolSmsConfiguration (Maybe (Val Text))+cupscSnsCallerArn = lens _cognitoUserPoolSmsConfigurationSnsCallerArn (\s a -> s { _cognitoUserPoolSmsConfigurationSnsCallerArn = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoUserPoolStringAttributeConstraints.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-stringattributeconstraints.html++module Stratosphere.ResourceProperties.CognitoUserPoolStringAttributeConstraints where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoUserPoolStringAttributeConstraints.+-- See 'cognitoUserPoolStringAttributeConstraints' for a more convenient+-- constructor.+data CognitoUserPoolStringAttributeConstraints =+  CognitoUserPoolStringAttributeConstraints+  { _cognitoUserPoolStringAttributeConstraintsMaxLength :: Maybe (Val Text)+  , _cognitoUserPoolStringAttributeConstraintsMinLength :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolStringAttributeConstraints where+  toJSON CognitoUserPoolStringAttributeConstraints{..} =+    object $+    catMaybes+    [ ("MaxLength" .=) <$> _cognitoUserPoolStringAttributeConstraintsMaxLength+    , ("MinLength" .=) <$> _cognitoUserPoolStringAttributeConstraintsMinLength+    ]++instance FromJSON CognitoUserPoolStringAttributeConstraints where+  parseJSON (Object obj) =+    CognitoUserPoolStringAttributeConstraints <$>+      obj .:? "MaxLength" <*>+      obj .:? "MinLength"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolStringAttributeConstraints' containing+-- required fields as arguments.+cognitoUserPoolStringAttributeConstraints+  :: CognitoUserPoolStringAttributeConstraints+cognitoUserPoolStringAttributeConstraints  =+  CognitoUserPoolStringAttributeConstraints+  { _cognitoUserPoolStringAttributeConstraintsMaxLength = Nothing+  , _cognitoUserPoolStringAttributeConstraintsMinLength = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-stringattributeconstraints.html#cfn-cognito-userpool-stringattributeconstraints-maxlength+cupsacMaxLength :: Lens' CognitoUserPoolStringAttributeConstraints (Maybe (Val Text))+cupsacMaxLength = lens _cognitoUserPoolStringAttributeConstraintsMaxLength (\s a -> s { _cognitoUserPoolStringAttributeConstraintsMaxLength = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpool-stringattributeconstraints.html#cfn-cognito-userpool-stringattributeconstraints-minlength+cupsacMinLength :: Lens' CognitoUserPoolStringAttributeConstraints (Maybe (Val Text))+cupsacMinLength = lens _cognitoUserPoolStringAttributeConstraintsMinLength (\s a -> s { _cognitoUserPoolStringAttributeConstraintsMinLength = a })
+ library-gen/Stratosphere/ResourceProperties/CognitoUserPoolUserAttributeType.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooluser-attributetype.html++module Stratosphere.ResourceProperties.CognitoUserPoolUserAttributeType where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoUserPoolUserAttributeType. See+-- 'cognitoUserPoolUserAttributeType' for a more convenient constructor.+data CognitoUserPoolUserAttributeType =+  CognitoUserPoolUserAttributeType+  { _cognitoUserPoolUserAttributeTypeName :: Maybe (Val Text)+  , _cognitoUserPoolUserAttributeTypeValue :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolUserAttributeType where+  toJSON CognitoUserPoolUserAttributeType{..} =+    object $+    catMaybes+    [ ("Name" .=) <$> _cognitoUserPoolUserAttributeTypeName+    , ("Value" .=) <$> _cognitoUserPoolUserAttributeTypeValue+    ]++instance FromJSON CognitoUserPoolUserAttributeType where+  parseJSON (Object obj) =+    CognitoUserPoolUserAttributeType <$>+      obj .:? "Name" <*>+      obj .:? "Value"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolUserAttributeType' containing required+-- fields as arguments.+cognitoUserPoolUserAttributeType+  :: CognitoUserPoolUserAttributeType+cognitoUserPoolUserAttributeType  =+  CognitoUserPoolUserAttributeType+  { _cognitoUserPoolUserAttributeTypeName = Nothing+  , _cognitoUserPoolUserAttributeTypeValue = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooluser-attributetype.html#cfn-cognito-userpooluser-attributetype-name+cupuatName :: Lens' CognitoUserPoolUserAttributeType (Maybe (Val Text))+cupuatName = lens _cognitoUserPoolUserAttributeTypeName (\s a -> s { _cognitoUserPoolUserAttributeTypeName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooluser-attributetype.html#cfn-cognito-userpooluser-attributetype-value+cupuatValue :: Lens' CognitoUserPoolUserAttributeType (Maybe (Val Text))+cupuatValue = lens _cognitoUserPoolUserAttributeTypeValue (\s a -> s { _cognitoUserPoolUserAttributeTypeValue = a })
library-gen/Stratosphere/ResourceProperties/ConfigConfigRuleSourceDetail.hs view
@@ -19,6 +19,7 @@ data ConfigConfigRuleSourceDetail =   ConfigConfigRuleSourceDetail   { _configConfigRuleSourceDetailEventSource :: Val Text+  , _configConfigRuleSourceDetailMaximumExecutionFrequency :: Maybe (Val Text)   , _configConfigRuleSourceDetailMessageType :: Val Text   } deriving (Show, Eq) @@ -27,6 +28,7 @@     object $     catMaybes     [ Just ("EventSource" .= _configConfigRuleSourceDetailEventSource)+    , ("MaximumExecutionFrequency" .=) <$> _configConfigRuleSourceDetailMaximumExecutionFrequency     , Just ("MessageType" .= _configConfigRuleSourceDetailMessageType)     ] @@ -34,6 +36,7 @@   parseJSON (Object obj) =     ConfigConfigRuleSourceDetail <$>       obj .: "EventSource" <*>+      obj .:? "MaximumExecutionFrequency" <*>       obj .: "MessageType"   parseJSON _ = mempty @@ -46,12 +49,17 @@ configConfigRuleSourceDetail eventSourcearg messageTypearg =   ConfigConfigRuleSourceDetail   { _configConfigRuleSourceDetailEventSource = eventSourcearg+  , _configConfigRuleSourceDetailMaximumExecutionFrequency = Nothing   , _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-sourcedetail-maximumexecutionfrequency+ccrsdMaximumExecutionFrequency :: Lens' ConfigConfigRuleSourceDetail (Maybe (Val Text))+ccrsdMaximumExecutionFrequency = lens _configConfigRuleSourceDetailMaximumExecutionFrequency (\s a -> s { _configConfigRuleSourceDetailMaximumExecutionFrequency = 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)
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetBlockDeviceMapping.hs view
@@ -0,0 +1,73 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html++module Stratosphere.ResourceProperties.EC2SpotFleetBlockDeviceMapping where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.EC2SpotFleetEbsBlockDevice++-- | Full data type definition for EC2SpotFleetBlockDeviceMapping. See+-- 'ec2SpotFleetBlockDeviceMapping' for a more convenient constructor.+data EC2SpotFleetBlockDeviceMapping =+  EC2SpotFleetBlockDeviceMapping+  { _eC2SpotFleetBlockDeviceMappingDeviceName :: Val Text+  , _eC2SpotFleetBlockDeviceMappingEbs :: Maybe EC2SpotFleetEbsBlockDevice+  , _eC2SpotFleetBlockDeviceMappingNoDevice :: Maybe (Val Text)+  , _eC2SpotFleetBlockDeviceMappingVirtualName :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON EC2SpotFleetBlockDeviceMapping where+  toJSON EC2SpotFleetBlockDeviceMapping{..} =+    object $+    catMaybes+    [ Just ("DeviceName" .= _eC2SpotFleetBlockDeviceMappingDeviceName)+    , ("Ebs" .=) <$> _eC2SpotFleetBlockDeviceMappingEbs+    , ("NoDevice" .=) <$> _eC2SpotFleetBlockDeviceMappingNoDevice+    , ("VirtualName" .=) <$> _eC2SpotFleetBlockDeviceMappingVirtualName+    ]++instance FromJSON EC2SpotFleetBlockDeviceMapping where+  parseJSON (Object obj) =+    EC2SpotFleetBlockDeviceMapping <$>+      obj .: "DeviceName" <*>+      obj .:? "Ebs" <*>+      obj .:? "NoDevice" <*>+      obj .:? "VirtualName"+  parseJSON _ = mempty++-- | Constructor for 'EC2SpotFleetBlockDeviceMapping' containing required+-- fields as arguments.+ec2SpotFleetBlockDeviceMapping+  :: Val Text -- ^ 'ecsfbdmDeviceName'+  -> EC2SpotFleetBlockDeviceMapping+ec2SpotFleetBlockDeviceMapping deviceNamearg =+  EC2SpotFleetBlockDeviceMapping+  { _eC2SpotFleetBlockDeviceMappingDeviceName = deviceNamearg+  , _eC2SpotFleetBlockDeviceMappingEbs = Nothing+  , _eC2SpotFleetBlockDeviceMappingNoDevice = Nothing+  , _eC2SpotFleetBlockDeviceMappingVirtualName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemapping-devicename+ecsfbdmDeviceName :: Lens' EC2SpotFleetBlockDeviceMapping (Val Text)+ecsfbdmDeviceName = lens _eC2SpotFleetBlockDeviceMappingDeviceName (\s a -> s { _eC2SpotFleetBlockDeviceMappingDeviceName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemapping-ebs+ecsfbdmEbs :: Lens' EC2SpotFleetBlockDeviceMapping (Maybe EC2SpotFleetEbsBlockDevice)+ecsfbdmEbs = lens _eC2SpotFleetBlockDeviceMappingEbs (\s a -> s { _eC2SpotFleetBlockDeviceMappingEbs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemapping-nodevice+ecsfbdmNoDevice :: Lens' EC2SpotFleetBlockDeviceMapping (Maybe (Val Text))+ecsfbdmNoDevice = lens _eC2SpotFleetBlockDeviceMappingNoDevice (\s a -> s { _eC2SpotFleetBlockDeviceMappingNoDevice = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html#cfn-ec2-spotfleet-blockdevicemapping-virtualname+ecsfbdmVirtualName :: Lens' EC2SpotFleetBlockDeviceMapping (Maybe (Val Text))+ecsfbdmVirtualName = lens _eC2SpotFleetBlockDeviceMappingVirtualName (\s a -> s { _eC2SpotFleetBlockDeviceMappingVirtualName = a })
− library-gen/Stratosphere/ResourceProperties/EC2SpotFleetBlockDeviceMappings.hs
@@ -1,73 +0,0 @@-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}---- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings.html--module Stratosphere.ResourceProperties.EC2SpotFleetBlockDeviceMappings where--import Control.Lens hiding ((.=))-import Data.Aeson-import Data.Maybe (catMaybes)-import Data.Monoid (mempty)-import Data.Text--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, Eq)--instance ToJSON EC2SpotFleetBlockDeviceMappings where-  toJSON EC2SpotFleetBlockDeviceMappings{..} =-    object $-    catMaybes-    [ Just ("DeviceName" .= _eC2SpotFleetBlockDeviceMappingsDeviceName)-    , ("Ebs" .=) <$> _eC2SpotFleetBlockDeviceMappingsEbs-    , ("NoDevice" .=) <$> _eC2SpotFleetBlockDeviceMappingsNoDevice-    , ("VirtualName" .=) <$> _eC2SpotFleetBlockDeviceMappingsVirtualName-    ]--instance FromJSON EC2SpotFleetBlockDeviceMappings where-  parseJSON (Object obj) =-    EC2SpotFleetBlockDeviceMappings <$>-      obj .: "DeviceName" <*>-      obj .:? "Ebs" <*>-      obj .:? "NoDevice" <*>-      obj .:? "VirtualName"-  parseJSON _ = mempty---- | 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
@@ -1,88 +0,0 @@-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}---- | 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 hiding ((.=))-import Data.Aeson-import Data.Maybe (catMaybes)-import Data.Monoid (mempty)-import Data.Text--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, Eq)--instance ToJSON EC2SpotFleetEbs where-  toJSON EC2SpotFleetEbs{..} =-    object $-    catMaybes-    [ ("DeleteOnTermination" .=) <$> _eC2SpotFleetEbsDeleteOnTermination-    , ("Encrypted" .=) <$> _eC2SpotFleetEbsEncrypted-    , ("Iops" .=) <$> _eC2SpotFleetEbsIops-    , ("SnapshotId" .=) <$> _eC2SpotFleetEbsSnapshotId-    , ("VolumeSize" .=) <$> _eC2SpotFleetEbsVolumeSize-    , ("VolumeType" .=) <$> _eC2SpotFleetEbsVolumeType-    ]--instance FromJSON EC2SpotFleetEbs where-  parseJSON (Object obj) =-    EC2SpotFleetEbs <$>-      obj .:? "DeleteOnTermination" <*>-      obj .:? "Encrypted" <*>-      obj .:? "Iops" <*>-      obj .:? "SnapshotId" <*>-      obj .:? "VolumeSize" <*>-      obj .:? "VolumeType"-  parseJSON _ = mempty---- | 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/EC2SpotFleetEbsBlockDevice.hs view
@@ -0,0 +1,88 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html++module Stratosphere.ResourceProperties.EC2SpotFleetEbsBlockDevice where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for EC2SpotFleetEbsBlockDevice. See+-- 'ec2SpotFleetEbsBlockDevice' for a more convenient constructor.+data EC2SpotFleetEbsBlockDevice =+  EC2SpotFleetEbsBlockDevice+  { _eC2SpotFleetEbsBlockDeviceDeleteOnTermination :: Maybe (Val Bool')+  , _eC2SpotFleetEbsBlockDeviceEncrypted :: Maybe (Val Bool')+  , _eC2SpotFleetEbsBlockDeviceIops :: Maybe (Val Integer')+  , _eC2SpotFleetEbsBlockDeviceSnapshotId :: Maybe (Val Text)+  , _eC2SpotFleetEbsBlockDeviceVolumeSize :: Maybe (Val Integer')+  , _eC2SpotFleetEbsBlockDeviceVolumeType :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON EC2SpotFleetEbsBlockDevice where+  toJSON EC2SpotFleetEbsBlockDevice{..} =+    object $+    catMaybes+    [ ("DeleteOnTermination" .=) <$> _eC2SpotFleetEbsBlockDeviceDeleteOnTermination+    , ("Encrypted" .=) <$> _eC2SpotFleetEbsBlockDeviceEncrypted+    , ("Iops" .=) <$> _eC2SpotFleetEbsBlockDeviceIops+    , ("SnapshotId" .=) <$> _eC2SpotFleetEbsBlockDeviceSnapshotId+    , ("VolumeSize" .=) <$> _eC2SpotFleetEbsBlockDeviceVolumeSize+    , ("VolumeType" .=) <$> _eC2SpotFleetEbsBlockDeviceVolumeType+    ]++instance FromJSON EC2SpotFleetEbsBlockDevice where+  parseJSON (Object obj) =+    EC2SpotFleetEbsBlockDevice <$>+      obj .:? "DeleteOnTermination" <*>+      obj .:? "Encrypted" <*>+      obj .:? "Iops" <*>+      obj .:? "SnapshotId" <*>+      obj .:? "VolumeSize" <*>+      obj .:? "VolumeType"+  parseJSON _ = mempty++-- | Constructor for 'EC2SpotFleetEbsBlockDevice' containing required fields+-- as arguments.+ec2SpotFleetEbsBlockDevice+  :: EC2SpotFleetEbsBlockDevice+ec2SpotFleetEbsBlockDevice  =+  EC2SpotFleetEbsBlockDevice+  { _eC2SpotFleetEbsBlockDeviceDeleteOnTermination = Nothing+  , _eC2SpotFleetEbsBlockDeviceEncrypted = Nothing+  , _eC2SpotFleetEbsBlockDeviceIops = Nothing+  , _eC2SpotFleetEbsBlockDeviceSnapshotId = Nothing+  , _eC2SpotFleetEbsBlockDeviceVolumeSize = Nothing+  , _eC2SpotFleetEbsBlockDeviceVolumeType = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-deleteontermination+ecsfebdDeleteOnTermination :: Lens' EC2SpotFleetEbsBlockDevice (Maybe (Val Bool'))+ecsfebdDeleteOnTermination = lens _eC2SpotFleetEbsBlockDeviceDeleteOnTermination (\s a -> s { _eC2SpotFleetEbsBlockDeviceDeleteOnTermination = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-encrypted+ecsfebdEncrypted :: Lens' EC2SpotFleetEbsBlockDevice (Maybe (Val Bool'))+ecsfebdEncrypted = lens _eC2SpotFleetEbsBlockDeviceEncrypted (\s a -> s { _eC2SpotFleetEbsBlockDeviceEncrypted = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-iops+ecsfebdIops :: Lens' EC2SpotFleetEbsBlockDevice (Maybe (Val Integer'))+ecsfebdIops = lens _eC2SpotFleetEbsBlockDeviceIops (\s a -> s { _eC2SpotFleetEbsBlockDeviceIops = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-snapshotid+ecsfebdSnapshotId :: Lens' EC2SpotFleetEbsBlockDevice (Maybe (Val Text))+ecsfebdSnapshotId = lens _eC2SpotFleetEbsBlockDeviceSnapshotId (\s a -> s { _eC2SpotFleetEbsBlockDeviceSnapshotId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-volumesize+ecsfebdVolumeSize :: Lens' EC2SpotFleetEbsBlockDevice (Maybe (Val Integer'))+ecsfebdVolumeSize = lens _eC2SpotFleetEbsBlockDeviceVolumeSize (\s a -> s { _eC2SpotFleetEbsBlockDeviceVolumeSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-blockdevicemappings-ebs.html#cfn-ec2-spotfleet-ebsblockdevice-volumetype+ecsfebdVolumeType :: Lens' EC2SpotFleetEbsBlockDevice (Maybe (Val Text))+ecsfebdVolumeType = lens _eC2SpotFleetEbsBlockDeviceVolumeType (\s a -> s { _eC2SpotFleetEbsBlockDeviceVolumeType = a })
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetGroupIdentifier.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-securitygroups.html++module Stratosphere.ResourceProperties.EC2SpotFleetGroupIdentifier where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for EC2SpotFleetGroupIdentifier. See+-- 'ec2SpotFleetGroupIdentifier' for a more convenient constructor.+data EC2SpotFleetGroupIdentifier =+  EC2SpotFleetGroupIdentifier+  { _eC2SpotFleetGroupIdentifierGroupId :: Val Text+  } deriving (Show, Eq)++instance ToJSON EC2SpotFleetGroupIdentifier where+  toJSON EC2SpotFleetGroupIdentifier{..} =+    object $+    catMaybes+    [ Just ("GroupId" .= _eC2SpotFleetGroupIdentifierGroupId)+    ]++instance FromJSON EC2SpotFleetGroupIdentifier where+  parseJSON (Object obj) =+    EC2SpotFleetGroupIdentifier <$>+      obj .: "GroupId"+  parseJSON _ = mempty++-- | Constructor for 'EC2SpotFleetGroupIdentifier' containing required fields+-- as arguments.+ec2SpotFleetGroupIdentifier+  :: Val Text -- ^ 'ecsfgiGroupId'+  -> EC2SpotFleetGroupIdentifier+ec2SpotFleetGroupIdentifier groupIdarg =+  EC2SpotFleetGroupIdentifier+  { _eC2SpotFleetGroupIdentifierGroupId = groupIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-securitygroups.html#cfn-ec2-spotfleet-groupidentifier-groupid+ecsfgiGroupId :: Lens' EC2SpotFleetGroupIdentifier (Val Text)+ecsfgiGroupId = lens _eC2SpotFleetGroupIdentifierGroupId (\s a -> s { _eC2SpotFleetGroupIdentifierGroupId = a })
− library-gen/Stratosphere/ResourceProperties/EC2SpotFleetIamInstanceProfile.hs
@@ -1,48 +0,0 @@-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}---- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-iaminstanceprofile.html--module Stratosphere.ResourceProperties.EC2SpotFleetIamInstanceProfile where--import Control.Lens hiding ((.=))-import Data.Aeson-import Data.Maybe (catMaybes)-import Data.Monoid (mempty)-import Data.Text--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, Eq)--instance ToJSON EC2SpotFleetIamInstanceProfile where-  toJSON EC2SpotFleetIamInstanceProfile{..} =-    object $-    catMaybes-    [ ("Arn" .=) <$> _eC2SpotFleetIamInstanceProfileArn-    ]--instance FromJSON EC2SpotFleetIamInstanceProfile where-  parseJSON (Object obj) =-    EC2SpotFleetIamInstanceProfile <$>-      obj .:? "Arn"-  parseJSON _ = mempty---- | 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/EC2SpotFleetIamInstanceProfileSpecification.hs view
@@ -0,0 +1,50 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-iaminstanceprofile.html++module Stratosphere.ResourceProperties.EC2SpotFleetIamInstanceProfileSpecification where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for+-- EC2SpotFleetIamInstanceProfileSpecification. See+-- 'ec2SpotFleetIamInstanceProfileSpecification' for a more convenient+-- constructor.+data EC2SpotFleetIamInstanceProfileSpecification =+  EC2SpotFleetIamInstanceProfileSpecification+  { _eC2SpotFleetIamInstanceProfileSpecificationArn :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON EC2SpotFleetIamInstanceProfileSpecification where+  toJSON EC2SpotFleetIamInstanceProfileSpecification{..} =+    object $+    catMaybes+    [ ("Arn" .=) <$> _eC2SpotFleetIamInstanceProfileSpecificationArn+    ]++instance FromJSON EC2SpotFleetIamInstanceProfileSpecification where+  parseJSON (Object obj) =+    EC2SpotFleetIamInstanceProfileSpecification <$>+      obj .:? "Arn"+  parseJSON _ = mempty++-- | Constructor for 'EC2SpotFleetIamInstanceProfileSpecification' containing+-- required fields as arguments.+ec2SpotFleetIamInstanceProfileSpecification+  :: EC2SpotFleetIamInstanceProfileSpecification+ec2SpotFleetIamInstanceProfileSpecification  =+  EC2SpotFleetIamInstanceProfileSpecification+  { _eC2SpotFleetIamInstanceProfileSpecificationArn = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-iaminstanceprofile.html#cfn-ec2-spotfleet-iaminstanceprofilespecification-arn+ecsfiipsArn :: Lens' EC2SpotFleetIamInstanceProfileSpecification (Maybe (Val Text))+ecsfiipsArn = lens _eC2SpotFleetIamInstanceProfileSpecificationArn (\s a -> s { _eC2SpotFleetIamInstanceProfileSpecificationArn = a })
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetInstanceNetworkInterfaceSpecification.hs view
@@ -0,0 +1,131 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html++module Stratosphere.ResourceProperties.EC2SpotFleetInstanceNetworkInterfaceSpecification where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.EC2SpotFleetInstanceIpv6Address+import Stratosphere.ResourceProperties.EC2SpotFleetPrivateIpAddressSpecification++-- | Full data type definition for+-- EC2SpotFleetInstanceNetworkInterfaceSpecification. See+-- 'ec2SpotFleetInstanceNetworkInterfaceSpecification' for a more convenient+-- constructor.+data EC2SpotFleetInstanceNetworkInterfaceSpecification =+  EC2SpotFleetInstanceNetworkInterfaceSpecification+  { _eC2SpotFleetInstanceNetworkInterfaceSpecificationAssociatePublicIpAddress :: Maybe (Val Bool')+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationDeleteOnTermination :: Maybe (Val Bool')+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationDescription :: Maybe (Val Text)+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationDeviceIndex :: Maybe (Val Integer')+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationGroups :: Maybe [Val Text]+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationIpv6AddressCount :: Maybe (Val Integer')+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationIpv6Addresses :: Maybe [EC2SpotFleetInstanceIpv6Address]+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationNetworkInterfaceId :: Maybe (Val Text)+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationPrivateIpAddresses :: Maybe [EC2SpotFleetPrivateIpAddressSpecification]+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationSecondaryPrivateIpAddressCount :: Maybe (Val Integer')+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationSubnetId :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON EC2SpotFleetInstanceNetworkInterfaceSpecification where+  toJSON EC2SpotFleetInstanceNetworkInterfaceSpecification{..} =+    object $+    catMaybes+    [ ("AssociatePublicIpAddress" .=) <$> _eC2SpotFleetInstanceNetworkInterfaceSpecificationAssociatePublicIpAddress+    , ("DeleteOnTermination" .=) <$> _eC2SpotFleetInstanceNetworkInterfaceSpecificationDeleteOnTermination+    , ("Description" .=) <$> _eC2SpotFleetInstanceNetworkInterfaceSpecificationDescription+    , ("DeviceIndex" .=) <$> _eC2SpotFleetInstanceNetworkInterfaceSpecificationDeviceIndex+    , ("Groups" .=) <$> _eC2SpotFleetInstanceNetworkInterfaceSpecificationGroups+    , ("Ipv6AddressCount" .=) <$> _eC2SpotFleetInstanceNetworkInterfaceSpecificationIpv6AddressCount+    , ("Ipv6Addresses" .=) <$> _eC2SpotFleetInstanceNetworkInterfaceSpecificationIpv6Addresses+    , ("NetworkInterfaceId" .=) <$> _eC2SpotFleetInstanceNetworkInterfaceSpecificationNetworkInterfaceId+    , ("PrivateIpAddresses" .=) <$> _eC2SpotFleetInstanceNetworkInterfaceSpecificationPrivateIpAddresses+    , ("SecondaryPrivateIpAddressCount" .=) <$> _eC2SpotFleetInstanceNetworkInterfaceSpecificationSecondaryPrivateIpAddressCount+    , ("SubnetId" .=) <$> _eC2SpotFleetInstanceNetworkInterfaceSpecificationSubnetId+    ]++instance FromJSON EC2SpotFleetInstanceNetworkInterfaceSpecification where+  parseJSON (Object obj) =+    EC2SpotFleetInstanceNetworkInterfaceSpecification <$>+      obj .:? "AssociatePublicIpAddress" <*>+      obj .:? "DeleteOnTermination" <*>+      obj .:? "Description" <*>+      obj .:? "DeviceIndex" <*>+      obj .:? "Groups" <*>+      obj .:? "Ipv6AddressCount" <*>+      obj .:? "Ipv6Addresses" <*>+      obj .:? "NetworkInterfaceId" <*>+      obj .:? "PrivateIpAddresses" <*>+      obj .:? "SecondaryPrivateIpAddressCount" <*>+      obj .:? "SubnetId"+  parseJSON _ = mempty++-- | Constructor for 'EC2SpotFleetInstanceNetworkInterfaceSpecification'+-- containing required fields as arguments.+ec2SpotFleetInstanceNetworkInterfaceSpecification+  :: EC2SpotFleetInstanceNetworkInterfaceSpecification+ec2SpotFleetInstanceNetworkInterfaceSpecification  =+  EC2SpotFleetInstanceNetworkInterfaceSpecification+  { _eC2SpotFleetInstanceNetworkInterfaceSpecificationAssociatePublicIpAddress = Nothing+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationDeleteOnTermination = Nothing+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationDescription = Nothing+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationDeviceIndex = Nothing+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationGroups = Nothing+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationIpv6AddressCount = Nothing+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationIpv6Addresses = Nothing+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationNetworkInterfaceId = Nothing+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationPrivateIpAddresses = Nothing+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationSecondaryPrivateIpAddressCount = Nothing+  , _eC2SpotFleetInstanceNetworkInterfaceSpecificationSubnetId = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-associatepublicipaddress+ecsfinisAssociatePublicIpAddress :: Lens' EC2SpotFleetInstanceNetworkInterfaceSpecification (Maybe (Val Bool'))+ecsfinisAssociatePublicIpAddress = lens _eC2SpotFleetInstanceNetworkInterfaceSpecificationAssociatePublicIpAddress (\s a -> s { _eC2SpotFleetInstanceNetworkInterfaceSpecificationAssociatePublicIpAddress = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-deleteontermination+ecsfinisDeleteOnTermination :: Lens' EC2SpotFleetInstanceNetworkInterfaceSpecification (Maybe (Val Bool'))+ecsfinisDeleteOnTermination = lens _eC2SpotFleetInstanceNetworkInterfaceSpecificationDeleteOnTermination (\s a -> s { _eC2SpotFleetInstanceNetworkInterfaceSpecificationDeleteOnTermination = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-description+ecsfinisDescription :: Lens' EC2SpotFleetInstanceNetworkInterfaceSpecification (Maybe (Val Text))+ecsfinisDescription = lens _eC2SpotFleetInstanceNetworkInterfaceSpecificationDescription (\s a -> s { _eC2SpotFleetInstanceNetworkInterfaceSpecificationDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-deviceindex+ecsfinisDeviceIndex :: Lens' EC2SpotFleetInstanceNetworkInterfaceSpecification (Maybe (Val Integer'))+ecsfinisDeviceIndex = lens _eC2SpotFleetInstanceNetworkInterfaceSpecificationDeviceIndex (\s a -> s { _eC2SpotFleetInstanceNetworkInterfaceSpecificationDeviceIndex = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-groups+ecsfinisGroups :: Lens' EC2SpotFleetInstanceNetworkInterfaceSpecification (Maybe [Val Text])+ecsfinisGroups = lens _eC2SpotFleetInstanceNetworkInterfaceSpecificationGroups (\s a -> s { _eC2SpotFleetInstanceNetworkInterfaceSpecificationGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-ipv6addresscount+ecsfinisIpv6AddressCount :: Lens' EC2SpotFleetInstanceNetworkInterfaceSpecification (Maybe (Val Integer'))+ecsfinisIpv6AddressCount = lens _eC2SpotFleetInstanceNetworkInterfaceSpecificationIpv6AddressCount (\s a -> s { _eC2SpotFleetInstanceNetworkInterfaceSpecificationIpv6AddressCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-ipv6addresses+ecsfinisIpv6Addresses :: Lens' EC2SpotFleetInstanceNetworkInterfaceSpecification (Maybe [EC2SpotFleetInstanceIpv6Address])+ecsfinisIpv6Addresses = lens _eC2SpotFleetInstanceNetworkInterfaceSpecificationIpv6Addresses (\s a -> s { _eC2SpotFleetInstanceNetworkInterfaceSpecificationIpv6Addresses = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-networkinterfaceid+ecsfinisNetworkInterfaceId :: Lens' EC2SpotFleetInstanceNetworkInterfaceSpecification (Maybe (Val Text))+ecsfinisNetworkInterfaceId = lens _eC2SpotFleetInstanceNetworkInterfaceSpecificationNetworkInterfaceId (\s a -> s { _eC2SpotFleetInstanceNetworkInterfaceSpecificationNetworkInterfaceId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-privateipaddresses+ecsfinisPrivateIpAddresses :: Lens' EC2SpotFleetInstanceNetworkInterfaceSpecification (Maybe [EC2SpotFleetPrivateIpAddressSpecification])+ecsfinisPrivateIpAddresses = lens _eC2SpotFleetInstanceNetworkInterfaceSpecificationPrivateIpAddresses (\s a -> s { _eC2SpotFleetInstanceNetworkInterfaceSpecificationPrivateIpAddresses = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-secondaryprivateipaddresscount+ecsfinisSecondaryPrivateIpAddressCount :: Lens' EC2SpotFleetInstanceNetworkInterfaceSpecification (Maybe (Val Integer'))+ecsfinisSecondaryPrivateIpAddressCount = lens _eC2SpotFleetInstanceNetworkInterfaceSpecificationSecondaryPrivateIpAddressCount (\s a -> s { _eC2SpotFleetInstanceNetworkInterfaceSpecificationSecondaryPrivateIpAddressCount = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html#cfn-ec2-spotfleet-instancenetworkinterfacespecification-subnetid+ecsfinisSubnetId :: Lens' EC2SpotFleetInstanceNetworkInterfaceSpecification (Maybe (Val Text))+ecsfinisSubnetId = lens _eC2SpotFleetInstanceNetworkInterfaceSpecificationSubnetId (\s a -> s { _eC2SpotFleetInstanceNetworkInterfaceSpecificationSubnetId = a })
− library-gen/Stratosphere/ResourceProperties/EC2SpotFleetLaunchSpecifications.hs
@@ -1,175 +0,0 @@-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}---- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html--module Stratosphere.ResourceProperties.EC2SpotFleetLaunchSpecifications where--import Control.Lens hiding ((.=))-import Data.Aeson-import Data.Maybe (catMaybes)-import Data.Monoid (mempty)-import Data.Text--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, Eq)--instance ToJSON EC2SpotFleetLaunchSpecifications where-  toJSON EC2SpotFleetLaunchSpecifications{..} =-    object $-    catMaybes-    [ ("BlockDeviceMappings" .=) <$> _eC2SpotFleetLaunchSpecificationsBlockDeviceMappings-    , ("EbsOptimized" .=) <$> _eC2SpotFleetLaunchSpecificationsEbsOptimized-    , ("IamInstanceProfile" .=) <$> _eC2SpotFleetLaunchSpecificationsIamInstanceProfile-    , Just ("ImageId" .= _eC2SpotFleetLaunchSpecificationsImageId)-    , Just ("InstanceType" .= _eC2SpotFleetLaunchSpecificationsInstanceType)-    , ("KernelId" .=) <$> _eC2SpotFleetLaunchSpecificationsKernelId-    , ("KeyName" .=) <$> _eC2SpotFleetLaunchSpecificationsKeyName-    , ("Monitoring" .=) <$> _eC2SpotFleetLaunchSpecificationsMonitoring-    , ("NetworkInterfaces" .=) <$> _eC2SpotFleetLaunchSpecificationsNetworkInterfaces-    , ("Placement" .=) <$> _eC2SpotFleetLaunchSpecificationsPlacement-    , ("RamdiskId" .=) <$> _eC2SpotFleetLaunchSpecificationsRamdiskId-    , ("SecurityGroups" .=) <$> _eC2SpotFleetLaunchSpecificationsSecurityGroups-    , ("SpotPrice" .=) <$> _eC2SpotFleetLaunchSpecificationsSpotPrice-    , ("SubnetId" .=) <$> _eC2SpotFleetLaunchSpecificationsSubnetId-    , ("UserData" .=) <$> _eC2SpotFleetLaunchSpecificationsUserData-    , ("WeightedCapacity" .=) <$> _eC2SpotFleetLaunchSpecificationsWeightedCapacity-    ]--instance FromJSON EC2SpotFleetLaunchSpecifications where-  parseJSON (Object obj) =-    EC2SpotFleetLaunchSpecifications <$>-      obj .:? "BlockDeviceMappings" <*>-      obj .:? "EbsOptimized" <*>-      obj .:? "IamInstanceProfile" <*>-      obj .: "ImageId" <*>-      obj .: "InstanceType" <*>-      obj .:? "KernelId" <*>-      obj .:? "KeyName" <*>-      obj .:? "Monitoring" <*>-      obj .:? "NetworkInterfaces" <*>-      obj .:? "Placement" <*>-      obj .:? "RamdiskId" <*>-      obj .:? "SecurityGroups" <*>-      obj .:? "SpotPrice" <*>-      obj .:? "SubnetId" <*>-      obj .:? "UserData" <*>-      obj .:? "WeightedCapacity"-  parseJSON _ = mempty---- | 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
@@ -1,48 +0,0 @@-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}---- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-monitoring.html--module Stratosphere.ResourceProperties.EC2SpotFleetMonitoring where--import Control.Lens hiding ((.=))-import Data.Aeson-import Data.Maybe (catMaybes)-import Data.Monoid (mempty)-import Data.Text--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, Eq)--instance ToJSON EC2SpotFleetMonitoring where-  toJSON EC2SpotFleetMonitoring{..} =-    object $-    catMaybes-    [ ("Enabled" .=) <$> _eC2SpotFleetMonitoringEnabled-    ]--instance FromJSON EC2SpotFleetMonitoring where-  parseJSON (Object obj) =-    EC2SpotFleetMonitoring <$>-      obj .:? "Enabled"-  parseJSON _ = mempty---- | 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
@@ -1,130 +0,0 @@-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}---- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces.html--module Stratosphere.ResourceProperties.EC2SpotFleetNetworkInterfaces where--import Control.Lens hiding ((.=))-import Data.Aeson-import Data.Maybe (catMaybes)-import Data.Monoid (mempty)-import Data.Text--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, Eq)--instance ToJSON EC2SpotFleetNetworkInterfaces where-  toJSON EC2SpotFleetNetworkInterfaces{..} =-    object $-    catMaybes-    [ ("AssociatePublicIpAddress" .=) <$> _eC2SpotFleetNetworkInterfacesAssociatePublicIpAddress-    , ("DeleteOnTermination" .=) <$> _eC2SpotFleetNetworkInterfacesDeleteOnTermination-    , ("Description" .=) <$> _eC2SpotFleetNetworkInterfacesDescription-    , Just ("DeviceIndex" .= _eC2SpotFleetNetworkInterfacesDeviceIndex)-    , ("Groups" .=) <$> _eC2SpotFleetNetworkInterfacesGroups-    , ("Ipv6AddressCount" .=) <$> _eC2SpotFleetNetworkInterfacesIpv6AddressCount-    , ("Ipv6Addresses" .=) <$> _eC2SpotFleetNetworkInterfacesIpv6Addresses-    , ("NetworkInterfaceId" .=) <$> _eC2SpotFleetNetworkInterfacesNetworkInterfaceId-    , ("PrivateIpAddresses" .=) <$> _eC2SpotFleetNetworkInterfacesPrivateIpAddresses-    , ("SecondaryPrivateIpAddressCount" .=) <$> _eC2SpotFleetNetworkInterfacesSecondaryPrivateIpAddressCount-    , ("SubnetId" .=) <$> _eC2SpotFleetNetworkInterfacesSubnetId-    ]--instance FromJSON EC2SpotFleetNetworkInterfaces where-  parseJSON (Object obj) =-    EC2SpotFleetNetworkInterfaces <$>-      obj .:? "AssociatePublicIpAddress" <*>-      obj .:? "DeleteOnTermination" <*>-      obj .:? "Description" <*>-      obj .: "DeviceIndex" <*>-      obj .:? "Groups" <*>-      obj .:? "Ipv6AddressCount" <*>-      obj .:? "Ipv6Addresses" <*>-      obj .:? "NetworkInterfaceId" <*>-      obj .:? "PrivateIpAddresses" <*>-      obj .:? "SecondaryPrivateIpAddressCount" <*>-      obj .:? "SubnetId"-  parseJSON _ = mempty---- | 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
@@ -1,56 +0,0 @@-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}---- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html--module Stratosphere.ResourceProperties.EC2SpotFleetPlacement where--import Control.Lens hiding ((.=))-import Data.Aeson-import Data.Maybe (catMaybes)-import Data.Monoid (mempty)-import Data.Text--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, Eq)--instance ToJSON EC2SpotFleetPlacement where-  toJSON EC2SpotFleetPlacement{..} =-    object $-    catMaybes-    [ ("AvailabilityZone" .=) <$> _eC2SpotFleetPlacementAvailabilityZone-    , ("GroupName" .=) <$> _eC2SpotFleetPlacementGroupName-    ]--instance FromJSON EC2SpotFleetPlacement where-  parseJSON (Object obj) =-    EC2SpotFleetPlacement <$>-      obj .:? "AvailabilityZone" <*>-      obj .:? "GroupName"-  parseJSON _ = mempty---- | 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/EC2SpotFleetPrivateIpAddressSpecification.hs view
@@ -0,0 +1,58 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html++module Stratosphere.ResourceProperties.EC2SpotFleetPrivateIpAddressSpecification where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for EC2SpotFleetPrivateIpAddressSpecification.+-- See 'ec2SpotFleetPrivateIpAddressSpecification' for a more convenient+-- constructor.+data EC2SpotFleetPrivateIpAddressSpecification =+  EC2SpotFleetPrivateIpAddressSpecification+  { _eC2SpotFleetPrivateIpAddressSpecificationPrimary :: Maybe (Val Bool')+  , _eC2SpotFleetPrivateIpAddressSpecificationPrivateIpAddress :: Val Text+  } deriving (Show, Eq)++instance ToJSON EC2SpotFleetPrivateIpAddressSpecification where+  toJSON EC2SpotFleetPrivateIpAddressSpecification{..} =+    object $+    catMaybes+    [ ("Primary" .=) <$> _eC2SpotFleetPrivateIpAddressSpecificationPrimary+    , Just ("PrivateIpAddress" .= _eC2SpotFleetPrivateIpAddressSpecificationPrivateIpAddress)+    ]++instance FromJSON EC2SpotFleetPrivateIpAddressSpecification where+  parseJSON (Object obj) =+    EC2SpotFleetPrivateIpAddressSpecification <$>+      obj .:? "Primary" <*>+      obj .: "PrivateIpAddress"+  parseJSON _ = mempty++-- | Constructor for 'EC2SpotFleetPrivateIpAddressSpecification' containing+-- required fields as arguments.+ec2SpotFleetPrivateIpAddressSpecification+  :: Val Text -- ^ 'ecsfpiasPrivateIpAddress'+  -> EC2SpotFleetPrivateIpAddressSpecification+ec2SpotFleetPrivateIpAddressSpecification privateIpAddressarg =+  EC2SpotFleetPrivateIpAddressSpecification+  { _eC2SpotFleetPrivateIpAddressSpecificationPrimary = Nothing+  , _eC2SpotFleetPrivateIpAddressSpecificationPrivateIpAddress = privateIpAddressarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html#cfn-ec2-spotfleet-privateipaddressspecification-primary+ecsfpiasPrimary :: Lens' EC2SpotFleetPrivateIpAddressSpecification (Maybe (Val Bool'))+ecsfpiasPrimary = lens _eC2SpotFleetPrivateIpAddressSpecificationPrimary (\s a -> s { _eC2SpotFleetPrivateIpAddressSpecificationPrimary = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-networkinterfaces-privateipaddresses.html#cfn-ec2-spotfleet-privateipaddressspecification-privateipaddress+ecsfpiasPrivateIpAddress :: Lens' EC2SpotFleetPrivateIpAddressSpecification (Val Text)+ecsfpiasPrivateIpAddress = lens _eC2SpotFleetPrivateIpAddressSpecificationPrivateIpAddress (\s a -> s { _eC2SpotFleetPrivateIpAddressSpecificationPrivateIpAddress = a })
− library-gen/Stratosphere/ResourceProperties/EC2SpotFleetPrivateIpAddresses.hs
@@ -1,57 +0,0 @@-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}---- | 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 hiding ((.=))-import Data.Aeson-import Data.Maybe (catMaybes)-import Data.Monoid (mempty)-import Data.Text--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, Eq)--instance ToJSON EC2SpotFleetPrivateIpAddresses where-  toJSON EC2SpotFleetPrivateIpAddresses{..} =-    object $-    catMaybes-    [ ("Primary" .=) <$> _eC2SpotFleetPrivateIpAddressesPrimary-    , Just ("PrivateIpAddress" .= _eC2SpotFleetPrivateIpAddressesPrivateIpAddress)-    ]--instance FromJSON EC2SpotFleetPrivateIpAddresses where-  parseJSON (Object obj) =-    EC2SpotFleetPrivateIpAddresses <$>-      obj .:? "Primary" <*>-      obj .: "PrivateIpAddress"-  parseJSON _ = mempty---- | 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
@@ -1,48 +0,0 @@-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}---- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-securitygroups.html--module Stratosphere.ResourceProperties.EC2SpotFleetSecurityGroups where--import Control.Lens hiding ((.=))-import Data.Aeson-import Data.Maybe (catMaybes)-import Data.Monoid (mempty)-import Data.Text--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, Eq)--instance ToJSON EC2SpotFleetSecurityGroups where-  toJSON EC2SpotFleetSecurityGroups{..} =-    object $-    catMaybes-    [ ("GroupId" .=) <$> _eC2SpotFleetSecurityGroupsGroupId-    ]--instance FromJSON EC2SpotFleetSecurityGroups where-  parseJSON (Object obj) =-    EC2SpotFleetSecurityGroups <$>-      obj .:? "GroupId"-  parseJSON _ = mempty---- | 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/EC2SpotFleetSpotFleetLaunchSpecification.hs view
@@ -0,0 +1,176 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html++module Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetLaunchSpecification where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.EC2SpotFleetBlockDeviceMapping+import Stratosphere.ResourceProperties.EC2SpotFleetIamInstanceProfileSpecification+import Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetMonitoring+import Stratosphere.ResourceProperties.EC2SpotFleetInstanceNetworkInterfaceSpecification+import Stratosphere.ResourceProperties.EC2SpotFleetSpotPlacement+import Stratosphere.ResourceProperties.EC2SpotFleetGroupIdentifier++-- | Full data type definition for EC2SpotFleetSpotFleetLaunchSpecification.+-- See 'ec2SpotFleetSpotFleetLaunchSpecification' for a more convenient+-- constructor.+data EC2SpotFleetSpotFleetLaunchSpecification =+  EC2SpotFleetSpotFleetLaunchSpecification+  { _eC2SpotFleetSpotFleetLaunchSpecificationBlockDeviceMappings :: Maybe [EC2SpotFleetBlockDeviceMapping]+  , _eC2SpotFleetSpotFleetLaunchSpecificationEbsOptimized :: Maybe (Val Bool')+  , _eC2SpotFleetSpotFleetLaunchSpecificationIamInstanceProfile :: Maybe EC2SpotFleetIamInstanceProfileSpecification+  , _eC2SpotFleetSpotFleetLaunchSpecificationImageId :: Val Text+  , _eC2SpotFleetSpotFleetLaunchSpecificationInstanceType :: Val Text+  , _eC2SpotFleetSpotFleetLaunchSpecificationKernelId :: Maybe (Val Text)+  , _eC2SpotFleetSpotFleetLaunchSpecificationKeyName :: Maybe (Val Text)+  , _eC2SpotFleetSpotFleetLaunchSpecificationMonitoring :: Maybe EC2SpotFleetSpotFleetMonitoring+  , _eC2SpotFleetSpotFleetLaunchSpecificationNetworkInterfaces :: Maybe [EC2SpotFleetInstanceNetworkInterfaceSpecification]+  , _eC2SpotFleetSpotFleetLaunchSpecificationPlacement :: Maybe EC2SpotFleetSpotPlacement+  , _eC2SpotFleetSpotFleetLaunchSpecificationRamdiskId :: Maybe (Val Text)+  , _eC2SpotFleetSpotFleetLaunchSpecificationSecurityGroups :: Maybe [EC2SpotFleetGroupIdentifier]+  , _eC2SpotFleetSpotFleetLaunchSpecificationSpotPrice :: Maybe (Val Text)+  , _eC2SpotFleetSpotFleetLaunchSpecificationSubnetId :: Maybe (Val Text)+  , _eC2SpotFleetSpotFleetLaunchSpecificationUserData :: Maybe (Val Text)+  , _eC2SpotFleetSpotFleetLaunchSpecificationWeightedCapacity :: Maybe (Val Double')+  } deriving (Show, Eq)++instance ToJSON EC2SpotFleetSpotFleetLaunchSpecification where+  toJSON EC2SpotFleetSpotFleetLaunchSpecification{..} =+    object $+    catMaybes+    [ ("BlockDeviceMappings" .=) <$> _eC2SpotFleetSpotFleetLaunchSpecificationBlockDeviceMappings+    , ("EbsOptimized" .=) <$> _eC2SpotFleetSpotFleetLaunchSpecificationEbsOptimized+    , ("IamInstanceProfile" .=) <$> _eC2SpotFleetSpotFleetLaunchSpecificationIamInstanceProfile+    , Just ("ImageId" .= _eC2SpotFleetSpotFleetLaunchSpecificationImageId)+    , Just ("InstanceType" .= _eC2SpotFleetSpotFleetLaunchSpecificationInstanceType)+    , ("KernelId" .=) <$> _eC2SpotFleetSpotFleetLaunchSpecificationKernelId+    , ("KeyName" .=) <$> _eC2SpotFleetSpotFleetLaunchSpecificationKeyName+    , ("Monitoring" .=) <$> _eC2SpotFleetSpotFleetLaunchSpecificationMonitoring+    , ("NetworkInterfaces" .=) <$> _eC2SpotFleetSpotFleetLaunchSpecificationNetworkInterfaces+    , ("Placement" .=) <$> _eC2SpotFleetSpotFleetLaunchSpecificationPlacement+    , ("RamdiskId" .=) <$> _eC2SpotFleetSpotFleetLaunchSpecificationRamdiskId+    , ("SecurityGroups" .=) <$> _eC2SpotFleetSpotFleetLaunchSpecificationSecurityGroups+    , ("SpotPrice" .=) <$> _eC2SpotFleetSpotFleetLaunchSpecificationSpotPrice+    , ("SubnetId" .=) <$> _eC2SpotFleetSpotFleetLaunchSpecificationSubnetId+    , ("UserData" .=) <$> _eC2SpotFleetSpotFleetLaunchSpecificationUserData+    , ("WeightedCapacity" .=) <$> _eC2SpotFleetSpotFleetLaunchSpecificationWeightedCapacity+    ]++instance FromJSON EC2SpotFleetSpotFleetLaunchSpecification where+  parseJSON (Object obj) =+    EC2SpotFleetSpotFleetLaunchSpecification <$>+      obj .:? "BlockDeviceMappings" <*>+      obj .:? "EbsOptimized" <*>+      obj .:? "IamInstanceProfile" <*>+      obj .: "ImageId" <*>+      obj .: "InstanceType" <*>+      obj .:? "KernelId" <*>+      obj .:? "KeyName" <*>+      obj .:? "Monitoring" <*>+      obj .:? "NetworkInterfaces" <*>+      obj .:? "Placement" <*>+      obj .:? "RamdiskId" <*>+      obj .:? "SecurityGroups" <*>+      obj .:? "SpotPrice" <*>+      obj .:? "SubnetId" <*>+      obj .:? "UserData" <*>+      obj .:? "WeightedCapacity"+  parseJSON _ = mempty++-- | Constructor for 'EC2SpotFleetSpotFleetLaunchSpecification' containing+-- required fields as arguments.+ec2SpotFleetSpotFleetLaunchSpecification+  :: Val Text -- ^ 'ecsfsflsImageId'+  -> Val Text -- ^ 'ecsfsflsInstanceType'+  -> EC2SpotFleetSpotFleetLaunchSpecification+ec2SpotFleetSpotFleetLaunchSpecification imageIdarg instanceTypearg =+  EC2SpotFleetSpotFleetLaunchSpecification+  { _eC2SpotFleetSpotFleetLaunchSpecificationBlockDeviceMappings = Nothing+  , _eC2SpotFleetSpotFleetLaunchSpecificationEbsOptimized = Nothing+  , _eC2SpotFleetSpotFleetLaunchSpecificationIamInstanceProfile = Nothing+  , _eC2SpotFleetSpotFleetLaunchSpecificationImageId = imageIdarg+  , _eC2SpotFleetSpotFleetLaunchSpecificationInstanceType = instanceTypearg+  , _eC2SpotFleetSpotFleetLaunchSpecificationKernelId = Nothing+  , _eC2SpotFleetSpotFleetLaunchSpecificationKeyName = Nothing+  , _eC2SpotFleetSpotFleetLaunchSpecificationMonitoring = Nothing+  , _eC2SpotFleetSpotFleetLaunchSpecificationNetworkInterfaces = Nothing+  , _eC2SpotFleetSpotFleetLaunchSpecificationPlacement = Nothing+  , _eC2SpotFleetSpotFleetLaunchSpecificationRamdiskId = Nothing+  , _eC2SpotFleetSpotFleetLaunchSpecificationSecurityGroups = Nothing+  , _eC2SpotFleetSpotFleetLaunchSpecificationSpotPrice = Nothing+  , _eC2SpotFleetSpotFleetLaunchSpecificationSubnetId = Nothing+  , _eC2SpotFleetSpotFleetLaunchSpecificationUserData = Nothing+  , _eC2SpotFleetSpotFleetLaunchSpecificationWeightedCapacity = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-blockdevicemappings+ecsfsflsBlockDeviceMappings :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Maybe [EC2SpotFleetBlockDeviceMapping])+ecsfsflsBlockDeviceMappings = lens _eC2SpotFleetSpotFleetLaunchSpecificationBlockDeviceMappings (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationBlockDeviceMappings = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-ebsoptimized+ecsfsflsEbsOptimized :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Maybe (Val Bool'))+ecsfsflsEbsOptimized = lens _eC2SpotFleetSpotFleetLaunchSpecificationEbsOptimized (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationEbsOptimized = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-iaminstanceprofile+ecsfsflsIamInstanceProfile :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Maybe EC2SpotFleetIamInstanceProfileSpecification)+ecsfsflsIamInstanceProfile = lens _eC2SpotFleetSpotFleetLaunchSpecificationIamInstanceProfile (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationIamInstanceProfile = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-imageid+ecsfsflsImageId :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Val Text)+ecsfsflsImageId = lens _eC2SpotFleetSpotFleetLaunchSpecificationImageId (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationImageId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-instancetype+ecsfsflsInstanceType :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Val Text)+ecsfsflsInstanceType = lens _eC2SpotFleetSpotFleetLaunchSpecificationInstanceType (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationInstanceType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-kernelid+ecsfsflsKernelId :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Maybe (Val Text))+ecsfsflsKernelId = lens _eC2SpotFleetSpotFleetLaunchSpecificationKernelId (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationKernelId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-keyname+ecsfsflsKeyName :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Maybe (Val Text))+ecsfsflsKeyName = lens _eC2SpotFleetSpotFleetLaunchSpecificationKeyName (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationKeyName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-monitoring+ecsfsflsMonitoring :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Maybe EC2SpotFleetSpotFleetMonitoring)+ecsfsflsMonitoring = lens _eC2SpotFleetSpotFleetLaunchSpecificationMonitoring (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationMonitoring = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-networkinterfaces+ecsfsflsNetworkInterfaces :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Maybe [EC2SpotFleetInstanceNetworkInterfaceSpecification])+ecsfsflsNetworkInterfaces = lens _eC2SpotFleetSpotFleetLaunchSpecificationNetworkInterfaces (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationNetworkInterfaces = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-placement+ecsfsflsPlacement :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Maybe EC2SpotFleetSpotPlacement)+ecsfsflsPlacement = lens _eC2SpotFleetSpotFleetLaunchSpecificationPlacement (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationPlacement = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-ramdiskid+ecsfsflsRamdiskId :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Maybe (Val Text))+ecsfsflsRamdiskId = lens _eC2SpotFleetSpotFleetLaunchSpecificationRamdiskId (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationRamdiskId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-securitygroups+ecsfsflsSecurityGroups :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Maybe [EC2SpotFleetGroupIdentifier])+ecsfsflsSecurityGroups = lens _eC2SpotFleetSpotFleetLaunchSpecificationSecurityGroups (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationSecurityGroups = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-spotprice+ecsfsflsSpotPrice :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Maybe (Val Text))+ecsfsflsSpotPrice = lens _eC2SpotFleetSpotFleetLaunchSpecificationSpotPrice (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationSpotPrice = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-subnetid+ecsfsflsSubnetId :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Maybe (Val Text))+ecsfsflsSubnetId = lens _eC2SpotFleetSpotFleetLaunchSpecificationSubnetId (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationSubnetId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-userdata+ecsfsflsUserData :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Maybe (Val Text))+ecsfsflsUserData = lens _eC2SpotFleetSpotFleetLaunchSpecificationUserData (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationUserData = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications.html#cfn-ec2-spotfleet-spotfleetlaunchspecification-weightedcapacity+ecsfsflsWeightedCapacity :: Lens' EC2SpotFleetSpotFleetLaunchSpecification (Maybe (Val Double'))+ecsfsflsWeightedCapacity = lens _eC2SpotFleetSpotFleetLaunchSpecificationWeightedCapacity (\s a -> s { _eC2SpotFleetSpotFleetLaunchSpecificationWeightedCapacity = a })
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetSpotFleetMonitoring.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-monitoring.html++module Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetMonitoring where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for EC2SpotFleetSpotFleetMonitoring. See+-- 'ec2SpotFleetSpotFleetMonitoring' for a more convenient constructor.+data EC2SpotFleetSpotFleetMonitoring =+  EC2SpotFleetSpotFleetMonitoring+  { _eC2SpotFleetSpotFleetMonitoringEnabled :: Maybe (Val Bool')+  } deriving (Show, Eq)++instance ToJSON EC2SpotFleetSpotFleetMonitoring where+  toJSON EC2SpotFleetSpotFleetMonitoring{..} =+    object $+    catMaybes+    [ ("Enabled" .=) <$> _eC2SpotFleetSpotFleetMonitoringEnabled+    ]++instance FromJSON EC2SpotFleetSpotFleetMonitoring where+  parseJSON (Object obj) =+    EC2SpotFleetSpotFleetMonitoring <$>+      obj .:? "Enabled"+  parseJSON _ = mempty++-- | Constructor for 'EC2SpotFleetSpotFleetMonitoring' containing required+-- fields as arguments.+ec2SpotFleetSpotFleetMonitoring+  :: EC2SpotFleetSpotFleetMonitoring+ec2SpotFleetSpotFleetMonitoring  =+  EC2SpotFleetSpotFleetMonitoring+  { _eC2SpotFleetSpotFleetMonitoringEnabled = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-monitoring.html#cfn-ec2-spotfleet-spotfleetmonitoring-enabled+ecsfsfmEnabled :: Lens' EC2SpotFleetSpotFleetMonitoring (Maybe (Val Bool'))+ecsfsfmEnabled = lens _eC2SpotFleetSpotFleetMonitoringEnabled (\s a -> s { _eC2SpotFleetSpotFleetMonitoringEnabled = a })
library-gen/Stratosphere/ResourceProperties/EC2SpotFleetSpotFleetRequestConfigData.hs view
@@ -12,7 +12,7 @@ import Data.Text  import Stratosphere.Values-import Stratosphere.ResourceProperties.EC2SpotFleetLaunchSpecifications+import Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetLaunchSpecification  -- | Full data type definition for EC2SpotFleetSpotFleetRequestConfigData. See -- 'ec2SpotFleetSpotFleetRequestConfigData' for a more convenient@@ -22,7 +22,7 @@   { _eC2SpotFleetSpotFleetRequestConfigDataAllocationStrategy :: Maybe (Val Text)   , _eC2SpotFleetSpotFleetRequestConfigDataExcessCapacityTerminationPolicy :: Maybe (Val Text)   , _eC2SpotFleetSpotFleetRequestConfigDataIamFleetRole :: Val Text-  , _eC2SpotFleetSpotFleetRequestConfigDataLaunchSpecifications :: [EC2SpotFleetLaunchSpecifications]+  , _eC2SpotFleetSpotFleetRequestConfigDataLaunchSpecifications :: [EC2SpotFleetSpotFleetLaunchSpecification]   , _eC2SpotFleetSpotFleetRequestConfigDataSpotPrice :: Val Text   , _eC2SpotFleetSpotFleetRequestConfigDataTargetCapacity :: Val Integer'   , _eC2SpotFleetSpotFleetRequestConfigDataTerminateInstancesWithExpiration :: Maybe (Val Bool')@@ -63,7 +63,7 @@ -- required fields as arguments. ec2SpotFleetSpotFleetRequestConfigData   :: Val Text -- ^ 'ecsfsfrcdIamFleetRole'-  -> [EC2SpotFleetLaunchSpecifications] -- ^ 'ecsfsfrcdLaunchSpecifications'+  -> [EC2SpotFleetSpotFleetLaunchSpecification] -- ^ 'ecsfsfrcdLaunchSpecifications'   -> Val Text -- ^ 'ecsfsfrcdSpotPrice'   -> Val Integer' -- ^ 'ecsfsfrcdTargetCapacity'   -> EC2SpotFleetSpotFleetRequestConfigData@@ -93,7 +93,7 @@ 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' EC2SpotFleetSpotFleetRequestConfigData [EC2SpotFleetSpotFleetLaunchSpecification] 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
+ library-gen/Stratosphere/ResourceProperties/EC2SpotFleetSpotPlacement.hs view
@@ -0,0 +1,56 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html++module Stratosphere.ResourceProperties.EC2SpotFleetSpotPlacement where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for EC2SpotFleetSpotPlacement. See+-- 'ec2SpotFleetSpotPlacement' for a more convenient constructor.+data EC2SpotFleetSpotPlacement =+  EC2SpotFleetSpotPlacement+  { _eC2SpotFleetSpotPlacementAvailabilityZone :: Maybe (Val Text)+  , _eC2SpotFleetSpotPlacementGroupName :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON EC2SpotFleetSpotPlacement where+  toJSON EC2SpotFleetSpotPlacement{..} =+    object $+    catMaybes+    [ ("AvailabilityZone" .=) <$> _eC2SpotFleetSpotPlacementAvailabilityZone+    , ("GroupName" .=) <$> _eC2SpotFleetSpotPlacementGroupName+    ]++instance FromJSON EC2SpotFleetSpotPlacement where+  parseJSON (Object obj) =+    EC2SpotFleetSpotPlacement <$>+      obj .:? "AvailabilityZone" <*>+      obj .:? "GroupName"+  parseJSON _ = mempty++-- | Constructor for 'EC2SpotFleetSpotPlacement' containing required fields as+-- arguments.+ec2SpotFleetSpotPlacement+  :: EC2SpotFleetSpotPlacement+ec2SpotFleetSpotPlacement  =+  EC2SpotFleetSpotPlacement+  { _eC2SpotFleetSpotPlacementAvailabilityZone = Nothing+  , _eC2SpotFleetSpotPlacementGroupName = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html#cfn-ec2-spotfleet-spotplacement-availabilityzone+ecsfspAvailabilityZone :: Lens' EC2SpotFleetSpotPlacement (Maybe (Val Text))+ecsfspAvailabilityZone = lens _eC2SpotFleetSpotPlacementAvailabilityZone (\s a -> s { _eC2SpotFleetSpotPlacementAvailabilityZone = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-spotfleet-spotfleetrequestconfigdata-launchspecifications-placement.html#cfn-ec2-spotfleet-spotplacement-groupname+ecsfspGroupName :: Lens' EC2SpotFleetSpotPlacement (Maybe (Val Text))+ecsfspGroupName = lens _eC2SpotFleetSpotPlacementGroupName (\s a -> s { _eC2SpotFleetSpotPlacementGroupName = a })
+ library-gen/Stratosphere/ResourceProperties/ECSServicePlacementConstraint.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html++module Stratosphere.ResourceProperties.ECSServicePlacementConstraint where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for ECSServicePlacementConstraint. See+-- 'ecsServicePlacementConstraint' for a more convenient constructor.+data ECSServicePlacementConstraint =+  ECSServicePlacementConstraint+  { _eCSServicePlacementConstraintExpression :: Maybe (Val Text)+  , _eCSServicePlacementConstraintType :: Val Text+  } deriving (Show, Eq)++instance ToJSON ECSServicePlacementConstraint where+  toJSON ECSServicePlacementConstraint{..} =+    object $+    catMaybes+    [ ("Expression" .=) <$> _eCSServicePlacementConstraintExpression+    , Just ("Type" .= _eCSServicePlacementConstraintType)+    ]++instance FromJSON ECSServicePlacementConstraint where+  parseJSON (Object obj) =+    ECSServicePlacementConstraint <$>+      obj .:? "Expression" <*>+      obj .: "Type"+  parseJSON _ = mempty++-- | Constructor for 'ECSServicePlacementConstraint' containing required+-- fields as arguments.+ecsServicePlacementConstraint+  :: Val Text -- ^ 'ecsspcType'+  -> ECSServicePlacementConstraint+ecsServicePlacementConstraint typearg =+  ECSServicePlacementConstraint+  { _eCSServicePlacementConstraintExpression = Nothing+  , _eCSServicePlacementConstraintType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html#cfn-ecs-service-placementconstraint-expression+ecsspcExpression :: Lens' ECSServicePlacementConstraint (Maybe (Val Text))+ecsspcExpression = lens _eCSServicePlacementConstraintExpression (\s a -> s { _eCSServicePlacementConstraintExpression = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementconstraint.html#cfn-ecs-service-placementconstraint-type+ecsspcType :: Lens' ECSServicePlacementConstraint (Val Text)+ecsspcType = lens _eCSServicePlacementConstraintType (\s a -> s { _eCSServicePlacementConstraintType = a })
+ library-gen/Stratosphere/ResourceProperties/ECSServicePlacementStrategy.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html++module Stratosphere.ResourceProperties.ECSServicePlacementStrategy where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for ECSServicePlacementStrategy. See+-- 'ecsServicePlacementStrategy' for a more convenient constructor.+data ECSServicePlacementStrategy =+  ECSServicePlacementStrategy+  { _eCSServicePlacementStrategyField :: Maybe (Val Text)+  , _eCSServicePlacementStrategyType :: Val Text+  } deriving (Show, Eq)++instance ToJSON ECSServicePlacementStrategy where+  toJSON ECSServicePlacementStrategy{..} =+    object $+    catMaybes+    [ ("Field" .=) <$> _eCSServicePlacementStrategyField+    , Just ("Type" .= _eCSServicePlacementStrategyType)+    ]++instance FromJSON ECSServicePlacementStrategy where+  parseJSON (Object obj) =+    ECSServicePlacementStrategy <$>+      obj .:? "Field" <*>+      obj .: "Type"+  parseJSON _ = mempty++-- | Constructor for 'ECSServicePlacementStrategy' containing required fields+-- as arguments.+ecsServicePlacementStrategy+  :: Val Text -- ^ 'ecsspsType'+  -> ECSServicePlacementStrategy+ecsServicePlacementStrategy typearg =+  ECSServicePlacementStrategy+  { _eCSServicePlacementStrategyField = Nothing+  , _eCSServicePlacementStrategyType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html#cfn-ecs-service-placementstrategy-field+ecsspsField :: Lens' ECSServicePlacementStrategy (Maybe (Val Text))+ecsspsField = lens _eCSServicePlacementStrategyField (\s a -> s { _eCSServicePlacementStrategyField = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-placementstrategy.html#cfn-ecs-service-placementstrategy-type+ecsspsType :: Lens' ECSServicePlacementStrategy (Val Text)+ecsspsType = lens _eCSServicePlacementStrategyType (\s a -> s { _eCSServicePlacementStrategyType = a })
+ library-gen/Stratosphere/ResourceProperties/ECSTaskDefinitionTaskDefinitionPlacementConstraint.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html++module Stratosphere.ResourceProperties.ECSTaskDefinitionTaskDefinitionPlacementConstraint where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for+-- ECSTaskDefinitionTaskDefinitionPlacementConstraint. See+-- 'ecsTaskDefinitionTaskDefinitionPlacementConstraint' for a more+-- convenient constructor.+data ECSTaskDefinitionTaskDefinitionPlacementConstraint =+  ECSTaskDefinitionTaskDefinitionPlacementConstraint+  { _eCSTaskDefinitionTaskDefinitionPlacementConstraintExpression :: Maybe (Val Text)+  , _eCSTaskDefinitionTaskDefinitionPlacementConstraintType :: Val Text+  } deriving (Show, Eq)++instance ToJSON ECSTaskDefinitionTaskDefinitionPlacementConstraint where+  toJSON ECSTaskDefinitionTaskDefinitionPlacementConstraint{..} =+    object $+    catMaybes+    [ ("Expression" .=) <$> _eCSTaskDefinitionTaskDefinitionPlacementConstraintExpression+    , Just ("Type" .= _eCSTaskDefinitionTaskDefinitionPlacementConstraintType)+    ]++instance FromJSON ECSTaskDefinitionTaskDefinitionPlacementConstraint where+  parseJSON (Object obj) =+    ECSTaskDefinitionTaskDefinitionPlacementConstraint <$>+      obj .:? "Expression" <*>+      obj .: "Type"+  parseJSON _ = mempty++-- | Constructor for 'ECSTaskDefinitionTaskDefinitionPlacementConstraint'+-- containing required fields as arguments.+ecsTaskDefinitionTaskDefinitionPlacementConstraint+  :: Val Text -- ^ 'ecstdtdpcType'+  -> ECSTaskDefinitionTaskDefinitionPlacementConstraint+ecsTaskDefinitionTaskDefinitionPlacementConstraint typearg =+  ECSTaskDefinitionTaskDefinitionPlacementConstraint+  { _eCSTaskDefinitionTaskDefinitionPlacementConstraintExpression = Nothing+  , _eCSTaskDefinitionTaskDefinitionPlacementConstraintType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html#cfn-ecs-taskdefinition-taskdefinitionplacementconstraint-expression+ecstdtdpcExpression :: Lens' ECSTaskDefinitionTaskDefinitionPlacementConstraint (Maybe (Val Text))+ecstdtdpcExpression = lens _eCSTaskDefinitionTaskDefinitionPlacementConstraintExpression (\s a -> s { _eCSTaskDefinitionTaskDefinitionPlacementConstraintExpression = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-taskdefinitionplacementconstraint.html#cfn-ecs-taskdefinition-taskdefinitionplacementconstraint-type+ecstdtdpcType :: Lens' ECSTaskDefinitionTaskDefinitionPlacementConstraint (Val Text)+ecstdtdpcType = lens _eCSTaskDefinitionTaskDefinitionPlacementConstraintType (\s a -> s { _eCSTaskDefinitionTaskDefinitionPlacementConstraintType = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterAutoScalingPolicy.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html++module Stratosphere.ResourceProperties.EMRClusterAutoScalingPolicy where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRClusterScalingConstraints+import Stratosphere.ResourceProperties.EMRClusterScalingRule++-- | Full data type definition for EMRClusterAutoScalingPolicy. See+-- 'emrClusterAutoScalingPolicy' for a more convenient constructor.+data EMRClusterAutoScalingPolicy =+  EMRClusterAutoScalingPolicy+  { _eMRClusterAutoScalingPolicyConstraints :: EMRClusterScalingConstraints+  , _eMRClusterAutoScalingPolicyRules :: [EMRClusterScalingRule]+  } deriving (Show, Eq)++instance ToJSON EMRClusterAutoScalingPolicy where+  toJSON EMRClusterAutoScalingPolicy{..} =+    object $+    catMaybes+    [ Just ("Constraints" .= _eMRClusterAutoScalingPolicyConstraints)+    , Just ("Rules" .= _eMRClusterAutoScalingPolicyRules)+    ]++instance FromJSON EMRClusterAutoScalingPolicy where+  parseJSON (Object obj) =+    EMRClusterAutoScalingPolicy <$>+      obj .: "Constraints" <*>+      obj .: "Rules"+  parseJSON _ = mempty++-- | Constructor for 'EMRClusterAutoScalingPolicy' containing required fields+-- as arguments.+emrClusterAutoScalingPolicy+  :: EMRClusterScalingConstraints -- ^ 'emrcaspConstraints'+  -> [EMRClusterScalingRule] -- ^ 'emrcaspRules'+  -> EMRClusterAutoScalingPolicy+emrClusterAutoScalingPolicy constraintsarg rulesarg =+  EMRClusterAutoScalingPolicy+  { _eMRClusterAutoScalingPolicyConstraints = constraintsarg+  , _eMRClusterAutoScalingPolicyRules = rulesarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html#cfn-elasticmapreduce-cluster-autoscalingpolicy-constraints+emrcaspConstraints :: Lens' EMRClusterAutoScalingPolicy EMRClusterScalingConstraints+emrcaspConstraints = lens _eMRClusterAutoScalingPolicyConstraints (\s a -> s { _eMRClusterAutoScalingPolicyConstraints = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-autoscalingpolicy.html#cfn-elasticmapreduce-cluster-autoscalingpolicy-rules+emrcaspRules :: Lens' EMRClusterAutoScalingPolicy [EMRClusterScalingRule]+emrcaspRules = lens _eMRClusterAutoScalingPolicyRules (\s a -> s { _eMRClusterAutoScalingPolicyRules = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterCloudWatchAlarmDefinition.hs view
@@ -0,0 +1,116 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html++module Stratosphere.ResourceProperties.EMRClusterCloudWatchAlarmDefinition where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRClusterMetricDimension++-- | Full data type definition for EMRClusterCloudWatchAlarmDefinition. See+-- 'emrClusterCloudWatchAlarmDefinition' for a more convenient constructor.+data EMRClusterCloudWatchAlarmDefinition =+  EMRClusterCloudWatchAlarmDefinition+  { _eMRClusterCloudWatchAlarmDefinitionComparisonOperator :: Val Text+  , _eMRClusterCloudWatchAlarmDefinitionDimensions :: Maybe [EMRClusterMetricDimension]+  , _eMRClusterCloudWatchAlarmDefinitionEvaluationPeriods :: Maybe (Val Integer')+  , _eMRClusterCloudWatchAlarmDefinitionMetricName :: Val Text+  , _eMRClusterCloudWatchAlarmDefinitionNamespace :: Maybe (Val Text)+  , _eMRClusterCloudWatchAlarmDefinitionPeriod :: Val Integer'+  , _eMRClusterCloudWatchAlarmDefinitionStatistic :: Maybe (Val Text)+  , _eMRClusterCloudWatchAlarmDefinitionThreshold :: Val Double'+  , _eMRClusterCloudWatchAlarmDefinitionUnit :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON EMRClusterCloudWatchAlarmDefinition where+  toJSON EMRClusterCloudWatchAlarmDefinition{..} =+    object $+    catMaybes+    [ Just ("ComparisonOperator" .= _eMRClusterCloudWatchAlarmDefinitionComparisonOperator)+    , ("Dimensions" .=) <$> _eMRClusterCloudWatchAlarmDefinitionDimensions+    , ("EvaluationPeriods" .=) <$> _eMRClusterCloudWatchAlarmDefinitionEvaluationPeriods+    , Just ("MetricName" .= _eMRClusterCloudWatchAlarmDefinitionMetricName)+    , ("Namespace" .=) <$> _eMRClusterCloudWatchAlarmDefinitionNamespace+    , Just ("Period" .= _eMRClusterCloudWatchAlarmDefinitionPeriod)+    , ("Statistic" .=) <$> _eMRClusterCloudWatchAlarmDefinitionStatistic+    , Just ("Threshold" .= _eMRClusterCloudWatchAlarmDefinitionThreshold)+    , ("Unit" .=) <$> _eMRClusterCloudWatchAlarmDefinitionUnit+    ]++instance FromJSON EMRClusterCloudWatchAlarmDefinition where+  parseJSON (Object obj) =+    EMRClusterCloudWatchAlarmDefinition <$>+      obj .: "ComparisonOperator" <*>+      obj .:? "Dimensions" <*>+      obj .:? "EvaluationPeriods" <*>+      obj .: "MetricName" <*>+      obj .:? "Namespace" <*>+      obj .: "Period" <*>+      obj .:? "Statistic" <*>+      obj .: "Threshold" <*>+      obj .:? "Unit"+  parseJSON _ = mempty++-- | Constructor for 'EMRClusterCloudWatchAlarmDefinition' containing required+-- fields as arguments.+emrClusterCloudWatchAlarmDefinition+  :: Val Text -- ^ 'emrccwadComparisonOperator'+  -> Val Text -- ^ 'emrccwadMetricName'+  -> Val Integer' -- ^ 'emrccwadPeriod'+  -> Val Double' -- ^ 'emrccwadThreshold'+  -> EMRClusterCloudWatchAlarmDefinition+emrClusterCloudWatchAlarmDefinition comparisonOperatorarg metricNamearg periodarg thresholdarg =+  EMRClusterCloudWatchAlarmDefinition+  { _eMRClusterCloudWatchAlarmDefinitionComparisonOperator = comparisonOperatorarg+  , _eMRClusterCloudWatchAlarmDefinitionDimensions = Nothing+  , _eMRClusterCloudWatchAlarmDefinitionEvaluationPeriods = Nothing+  , _eMRClusterCloudWatchAlarmDefinitionMetricName = metricNamearg+  , _eMRClusterCloudWatchAlarmDefinitionNamespace = Nothing+  , _eMRClusterCloudWatchAlarmDefinitionPeriod = periodarg+  , _eMRClusterCloudWatchAlarmDefinitionStatistic = Nothing+  , _eMRClusterCloudWatchAlarmDefinitionThreshold = thresholdarg+  , _eMRClusterCloudWatchAlarmDefinitionUnit = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-comparisonoperator+emrccwadComparisonOperator :: Lens' EMRClusterCloudWatchAlarmDefinition (Val Text)+emrccwadComparisonOperator = lens _eMRClusterCloudWatchAlarmDefinitionComparisonOperator (\s a -> s { _eMRClusterCloudWatchAlarmDefinitionComparisonOperator = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-dimensions+emrccwadDimensions :: Lens' EMRClusterCloudWatchAlarmDefinition (Maybe [EMRClusterMetricDimension])+emrccwadDimensions = lens _eMRClusterCloudWatchAlarmDefinitionDimensions (\s a -> s { _eMRClusterCloudWatchAlarmDefinitionDimensions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-evaluationperiods+emrccwadEvaluationPeriods :: Lens' EMRClusterCloudWatchAlarmDefinition (Maybe (Val Integer'))+emrccwadEvaluationPeriods = lens _eMRClusterCloudWatchAlarmDefinitionEvaluationPeriods (\s a -> s { _eMRClusterCloudWatchAlarmDefinitionEvaluationPeriods = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-metricname+emrccwadMetricName :: Lens' EMRClusterCloudWatchAlarmDefinition (Val Text)+emrccwadMetricName = lens _eMRClusterCloudWatchAlarmDefinitionMetricName (\s a -> s { _eMRClusterCloudWatchAlarmDefinitionMetricName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-namespace+emrccwadNamespace :: Lens' EMRClusterCloudWatchAlarmDefinition (Maybe (Val Text))+emrccwadNamespace = lens _eMRClusterCloudWatchAlarmDefinitionNamespace (\s a -> s { _eMRClusterCloudWatchAlarmDefinitionNamespace = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-period+emrccwadPeriod :: Lens' EMRClusterCloudWatchAlarmDefinition (Val Integer')+emrccwadPeriod = lens _eMRClusterCloudWatchAlarmDefinitionPeriod (\s a -> s { _eMRClusterCloudWatchAlarmDefinitionPeriod = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-statistic+emrccwadStatistic :: Lens' EMRClusterCloudWatchAlarmDefinition (Maybe (Val Text))+emrccwadStatistic = lens _eMRClusterCloudWatchAlarmDefinitionStatistic (\s a -> s { _eMRClusterCloudWatchAlarmDefinitionStatistic = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-threshold+emrccwadThreshold :: Lens' EMRClusterCloudWatchAlarmDefinition (Val Double')+emrccwadThreshold = lens _eMRClusterCloudWatchAlarmDefinitionThreshold (\s a -> s { _eMRClusterCloudWatchAlarmDefinitionThreshold = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-cluster-cloudwatchalarmdefinition-unit+emrccwadUnit :: Lens' EMRClusterCloudWatchAlarmDefinition (Maybe (Val Text))+emrccwadUnit = lens _eMRClusterCloudWatchAlarmDefinitionUnit (\s a -> s { _eMRClusterCloudWatchAlarmDefinitionUnit = a })
library-gen/Stratosphere/ResourceProperties/EMRClusterInstanceGroupConfig.hs view
@@ -12,6 +12,7 @@ import Data.Text  import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRClusterAutoScalingPolicy import Stratosphere.ResourceProperties.EMRClusterConfiguration import Stratosphere.ResourceProperties.EMRClusterEbsConfiguration @@ -19,7 +20,8 @@ -- 'emrClusterInstanceGroupConfig' for a more convenient constructor. data EMRClusterInstanceGroupConfig =   EMRClusterInstanceGroupConfig-  { _eMRClusterInstanceGroupConfigBidPrice :: Maybe (Val Text)+  { _eMRClusterInstanceGroupConfigAutoScalingPolicy :: Maybe EMRClusterAutoScalingPolicy+  , _eMRClusterInstanceGroupConfigBidPrice :: Maybe (Val Text)   , _eMRClusterInstanceGroupConfigConfigurations :: Maybe [EMRClusterConfiguration]   , _eMRClusterInstanceGroupConfigEbsConfiguration :: Maybe EMRClusterEbsConfiguration   , _eMRClusterInstanceGroupConfigInstanceCount :: Val Integer'@@ -32,7 +34,8 @@   toJSON EMRClusterInstanceGroupConfig{..} =     object $     catMaybes-    [ ("BidPrice" .=) <$> _eMRClusterInstanceGroupConfigBidPrice+    [ ("AutoScalingPolicy" .=) <$> _eMRClusterInstanceGroupConfigAutoScalingPolicy+    , ("BidPrice" .=) <$> _eMRClusterInstanceGroupConfigBidPrice     , ("Configurations" .=) <$> _eMRClusterInstanceGroupConfigConfigurations     , ("EbsConfiguration" .=) <$> _eMRClusterInstanceGroupConfigEbsConfiguration     , Just ("InstanceCount" .= _eMRClusterInstanceGroupConfigInstanceCount)@@ -44,6 +47,7 @@ instance FromJSON EMRClusterInstanceGroupConfig where   parseJSON (Object obj) =     EMRClusterInstanceGroupConfig <$>+      obj .:? "AutoScalingPolicy" <*>       obj .:? "BidPrice" <*>       obj .:? "Configurations" <*>       obj .:? "EbsConfiguration" <*>@@ -61,7 +65,8 @@   -> EMRClusterInstanceGroupConfig emrClusterInstanceGroupConfig instanceCountarg instanceTypearg =   EMRClusterInstanceGroupConfig-  { _eMRClusterInstanceGroupConfigBidPrice = Nothing+  { _eMRClusterInstanceGroupConfigAutoScalingPolicy = Nothing+  , _eMRClusterInstanceGroupConfigBidPrice = Nothing   , _eMRClusterInstanceGroupConfigConfigurations = Nothing   , _eMRClusterInstanceGroupConfigEbsConfiguration = Nothing   , _eMRClusterInstanceGroupConfigInstanceCount = instanceCountarg@@ -69,6 +74,10 @@   , _eMRClusterInstanceGroupConfigMarket = Nothing   , _eMRClusterInstanceGroupConfigName = Nothing   }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-emr-cluster-jobflowinstancesconfig-instancegroupconfig.html#cfn-elasticmapreduce-cluster-instancegroupconfig-autoscalingpolicy+emrcigcAutoScalingPolicy :: Lens' EMRClusterInstanceGroupConfig (Maybe EMRClusterAutoScalingPolicy)+emrcigcAutoScalingPolicy = lens _eMRClusterInstanceGroupConfigAutoScalingPolicy (\s a -> s { _eMRClusterInstanceGroupConfigAutoScalingPolicy = a })  -- | 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))
library-gen/Stratosphere/ResourceProperties/EMRClusterJobFlowInstancesConfig.hs view
@@ -21,7 +21,7 @@   EMRClusterJobFlowInstancesConfig   { _eMRClusterJobFlowInstancesConfigAdditionalMasterSecurityGroups :: Maybe [Val Text]   , _eMRClusterJobFlowInstancesConfigAdditionalSlaveSecurityGroups :: Maybe [Val Text]-  , _eMRClusterJobFlowInstancesConfigCoreInstanceGroup :: EMRClusterInstanceGroupConfig+  , _eMRClusterJobFlowInstancesConfigCoreInstanceGroup :: Maybe EMRClusterInstanceGroupConfig   , _eMRClusterJobFlowInstancesConfigEc2KeyName :: Maybe (Val Text)   , _eMRClusterJobFlowInstancesConfigEc2SubnetId :: Maybe (Val Text)   , _eMRClusterJobFlowInstancesConfigEmrManagedMasterSecurityGroup :: Maybe (Val Text)@@ -39,7 +39,7 @@     catMaybes     [ ("AdditionalMasterSecurityGroups" .=) <$> _eMRClusterJobFlowInstancesConfigAdditionalMasterSecurityGroups     , ("AdditionalSlaveSecurityGroups" .=) <$> _eMRClusterJobFlowInstancesConfigAdditionalSlaveSecurityGroups-    , Just ("CoreInstanceGroup" .= _eMRClusterJobFlowInstancesConfigCoreInstanceGroup)+    , ("CoreInstanceGroup" .=) <$> _eMRClusterJobFlowInstancesConfigCoreInstanceGroup     , ("Ec2KeyName" .=) <$> _eMRClusterJobFlowInstancesConfigEc2KeyName     , ("Ec2SubnetId" .=) <$> _eMRClusterJobFlowInstancesConfigEc2SubnetId     , ("EmrManagedMasterSecurityGroup" .=) <$> _eMRClusterJobFlowInstancesConfigEmrManagedMasterSecurityGroup@@ -56,7 +56,7 @@     EMRClusterJobFlowInstancesConfig <$>       obj .:? "AdditionalMasterSecurityGroups" <*>       obj .:? "AdditionalSlaveSecurityGroups" <*>-      obj .: "CoreInstanceGroup" <*>+      obj .:? "CoreInstanceGroup" <*>       obj .:? "Ec2KeyName" <*>       obj .:? "Ec2SubnetId" <*>       obj .:? "EmrManagedMasterSecurityGroup" <*>@@ -71,14 +71,13 @@ -- | Constructor for 'EMRClusterJobFlowInstancesConfig' containing required -- fields as arguments. emrClusterJobFlowInstancesConfig-  :: EMRClusterInstanceGroupConfig -- ^ 'emrcjficCoreInstanceGroup'-  -> EMRClusterInstanceGroupConfig -- ^ 'emrcjficMasterInstanceGroup'+  :: EMRClusterInstanceGroupConfig -- ^ 'emrcjficMasterInstanceGroup'   -> EMRClusterJobFlowInstancesConfig-emrClusterJobFlowInstancesConfig coreInstanceGrouparg masterInstanceGrouparg =+emrClusterJobFlowInstancesConfig masterInstanceGrouparg =   EMRClusterJobFlowInstancesConfig   { _eMRClusterJobFlowInstancesConfigAdditionalMasterSecurityGroups = Nothing   , _eMRClusterJobFlowInstancesConfigAdditionalSlaveSecurityGroups = Nothing-  , _eMRClusterJobFlowInstancesConfigCoreInstanceGroup = coreInstanceGrouparg+  , _eMRClusterJobFlowInstancesConfigCoreInstanceGroup = Nothing   , _eMRClusterJobFlowInstancesConfigEc2KeyName = Nothing   , _eMRClusterJobFlowInstancesConfigEc2SubnetId = Nothing   , _eMRClusterJobFlowInstancesConfigEmrManagedMasterSecurityGroup = Nothing@@ -99,7 +98,7 @@ 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' EMRClusterJobFlowInstancesConfig (Maybe 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
+ library-gen/Stratosphere/ResourceProperties/EMRClusterMetricDimension.hs view
@@ -0,0 +1,58 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-metricdimension.html++module Stratosphere.ResourceProperties.EMRClusterMetricDimension where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for EMRClusterMetricDimension. See+-- 'emrClusterMetricDimension' for a more convenient constructor.+data EMRClusterMetricDimension =+  EMRClusterMetricDimension+  { _eMRClusterMetricDimensionKey :: Val Text+  , _eMRClusterMetricDimensionValue :: Val Text+  } deriving (Show, Eq)++instance ToJSON EMRClusterMetricDimension where+  toJSON EMRClusterMetricDimension{..} =+    object $+    catMaybes+    [ Just ("Key" .= _eMRClusterMetricDimensionKey)+    , Just ("Value" .= _eMRClusterMetricDimensionValue)+    ]++instance FromJSON EMRClusterMetricDimension where+  parseJSON (Object obj) =+    EMRClusterMetricDimension <$>+      obj .: "Key" <*>+      obj .: "Value"+  parseJSON _ = mempty++-- | Constructor for 'EMRClusterMetricDimension' containing required fields as+-- arguments.+emrClusterMetricDimension+  :: Val Text -- ^ 'emrcmdKey'+  -> Val Text -- ^ 'emrcmdValue'+  -> EMRClusterMetricDimension+emrClusterMetricDimension keyarg valuearg =+  EMRClusterMetricDimension+  { _eMRClusterMetricDimensionKey = keyarg+  , _eMRClusterMetricDimensionValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-metricdimension.html#cfn-elasticmapreduce-cluster-metricdimension-key+emrcmdKey :: Lens' EMRClusterMetricDimension (Val Text)+emrcmdKey = lens _eMRClusterMetricDimensionKey (\s a -> s { _eMRClusterMetricDimensionKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-metricdimension.html#cfn-elasticmapreduce-cluster-metricdimension-value+emrcmdValue :: Lens' EMRClusterMetricDimension (Val Text)+emrcmdValue = lens _eMRClusterMetricDimensionValue (\s a -> s { _eMRClusterMetricDimensionValue = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterScalingAction.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html++module Stratosphere.ResourceProperties.EMRClusterScalingAction where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRClusterSimpleScalingPolicyConfiguration++-- | Full data type definition for EMRClusterScalingAction. See+-- 'emrClusterScalingAction' for a more convenient constructor.+data EMRClusterScalingAction =+  EMRClusterScalingAction+  { _eMRClusterScalingActionMarket :: Maybe (Val Text)+  , _eMRClusterScalingActionSimpleScalingPolicyConfiguration :: EMRClusterSimpleScalingPolicyConfiguration+  } deriving (Show, Eq)++instance ToJSON EMRClusterScalingAction where+  toJSON EMRClusterScalingAction{..} =+    object $+    catMaybes+    [ ("Market" .=) <$> _eMRClusterScalingActionMarket+    , Just ("SimpleScalingPolicyConfiguration" .= _eMRClusterScalingActionSimpleScalingPolicyConfiguration)+    ]++instance FromJSON EMRClusterScalingAction where+  parseJSON (Object obj) =+    EMRClusterScalingAction <$>+      obj .:? "Market" <*>+      obj .: "SimpleScalingPolicyConfiguration"+  parseJSON _ = mempty++-- | Constructor for 'EMRClusterScalingAction' containing required fields as+-- arguments.+emrClusterScalingAction+  :: EMRClusterSimpleScalingPolicyConfiguration -- ^ 'emrcsaSimpleScalingPolicyConfiguration'+  -> EMRClusterScalingAction+emrClusterScalingAction simpleScalingPolicyConfigurationarg =+  EMRClusterScalingAction+  { _eMRClusterScalingActionMarket = Nothing+  , _eMRClusterScalingActionSimpleScalingPolicyConfiguration = simpleScalingPolicyConfigurationarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html#cfn-elasticmapreduce-cluster-scalingaction-market+emrcsaMarket :: Lens' EMRClusterScalingAction (Maybe (Val Text))+emrcsaMarket = lens _eMRClusterScalingActionMarket (\s a -> s { _eMRClusterScalingActionMarket = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingaction.html#cfn-elasticmapreduce-cluster-scalingaction-simplescalingpolicyconfiguration+emrcsaSimpleScalingPolicyConfiguration :: Lens' EMRClusterScalingAction EMRClusterSimpleScalingPolicyConfiguration+emrcsaSimpleScalingPolicyConfiguration = lens _eMRClusterScalingActionSimpleScalingPolicyConfiguration (\s a -> s { _eMRClusterScalingActionSimpleScalingPolicyConfiguration = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterScalingConstraints.hs view
@@ -0,0 +1,58 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html++module Stratosphere.ResourceProperties.EMRClusterScalingConstraints where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for EMRClusterScalingConstraints. See+-- 'emrClusterScalingConstraints' for a more convenient constructor.+data EMRClusterScalingConstraints =+  EMRClusterScalingConstraints+  { _eMRClusterScalingConstraintsMaxCapacity :: Val Integer'+  , _eMRClusterScalingConstraintsMinCapacity :: Val Integer'+  } deriving (Show, Eq)++instance ToJSON EMRClusterScalingConstraints where+  toJSON EMRClusterScalingConstraints{..} =+    object $+    catMaybes+    [ Just ("MaxCapacity" .= _eMRClusterScalingConstraintsMaxCapacity)+    , Just ("MinCapacity" .= _eMRClusterScalingConstraintsMinCapacity)+    ]++instance FromJSON EMRClusterScalingConstraints where+  parseJSON (Object obj) =+    EMRClusterScalingConstraints <$>+      obj .: "MaxCapacity" <*>+      obj .: "MinCapacity"+  parseJSON _ = mempty++-- | Constructor for 'EMRClusterScalingConstraints' containing required fields+-- as arguments.+emrClusterScalingConstraints+  :: Val Integer' -- ^ 'emrcscMaxCapacity'+  -> Val Integer' -- ^ 'emrcscMinCapacity'+  -> EMRClusterScalingConstraints+emrClusterScalingConstraints maxCapacityarg minCapacityarg =+  EMRClusterScalingConstraints+  { _eMRClusterScalingConstraintsMaxCapacity = maxCapacityarg+  , _eMRClusterScalingConstraintsMinCapacity = minCapacityarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html#cfn-elasticmapreduce-cluster-scalingconstraints-maxcapacity+emrcscMaxCapacity :: Lens' EMRClusterScalingConstraints (Val Integer')+emrcscMaxCapacity = lens _eMRClusterScalingConstraintsMaxCapacity (\s a -> s { _eMRClusterScalingConstraintsMaxCapacity = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingconstraints.html#cfn-elasticmapreduce-cluster-scalingconstraints-mincapacity+emrcscMinCapacity :: Lens' EMRClusterScalingConstraints (Val Integer')+emrcscMinCapacity = lens _eMRClusterScalingConstraintsMinCapacity (\s a -> s { _eMRClusterScalingConstraintsMinCapacity = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterScalingRule.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html++module Stratosphere.ResourceProperties.EMRClusterScalingRule where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRClusterScalingAction+import Stratosphere.ResourceProperties.EMRClusterScalingTrigger++-- | Full data type definition for EMRClusterScalingRule. See+-- 'emrClusterScalingRule' for a more convenient constructor.+data EMRClusterScalingRule =+  EMRClusterScalingRule+  { _eMRClusterScalingRuleAction :: EMRClusterScalingAction+  , _eMRClusterScalingRuleDescription :: Maybe (Val Text)+  , _eMRClusterScalingRuleName :: Val Text+  , _eMRClusterScalingRuleTrigger :: EMRClusterScalingTrigger+  } deriving (Show, Eq)++instance ToJSON EMRClusterScalingRule where+  toJSON EMRClusterScalingRule{..} =+    object $+    catMaybes+    [ Just ("Action" .= _eMRClusterScalingRuleAction)+    , ("Description" .=) <$> _eMRClusterScalingRuleDescription+    , Just ("Name" .= _eMRClusterScalingRuleName)+    , Just ("Trigger" .= _eMRClusterScalingRuleTrigger)+    ]++instance FromJSON EMRClusterScalingRule where+  parseJSON (Object obj) =+    EMRClusterScalingRule <$>+      obj .: "Action" <*>+      obj .:? "Description" <*>+      obj .: "Name" <*>+      obj .: "Trigger"+  parseJSON _ = mempty++-- | Constructor for 'EMRClusterScalingRule' containing required fields as+-- arguments.+emrClusterScalingRule+  :: EMRClusterScalingAction -- ^ 'emrcsrAction'+  -> Val Text -- ^ 'emrcsrName'+  -> EMRClusterScalingTrigger -- ^ 'emrcsrTrigger'+  -> EMRClusterScalingRule+emrClusterScalingRule actionarg namearg triggerarg =+  EMRClusterScalingRule+  { _eMRClusterScalingRuleAction = actionarg+  , _eMRClusterScalingRuleDescription = Nothing+  , _eMRClusterScalingRuleName = namearg+  , _eMRClusterScalingRuleTrigger = triggerarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-action+emrcsrAction :: Lens' EMRClusterScalingRule EMRClusterScalingAction+emrcsrAction = lens _eMRClusterScalingRuleAction (\s a -> s { _eMRClusterScalingRuleAction = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-description+emrcsrDescription :: Lens' EMRClusterScalingRule (Maybe (Val Text))+emrcsrDescription = lens _eMRClusterScalingRuleDescription (\s a -> s { _eMRClusterScalingRuleDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-name+emrcsrName :: Lens' EMRClusterScalingRule (Val Text)+emrcsrName = lens _eMRClusterScalingRuleName (\s a -> s { _eMRClusterScalingRuleName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingrule.html#cfn-elasticmapreduce-cluster-scalingrule-trigger+emrcsrTrigger :: Lens' EMRClusterScalingRule EMRClusterScalingTrigger+emrcsrTrigger = lens _eMRClusterScalingRuleTrigger (\s a -> s { _eMRClusterScalingRuleTrigger = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterScalingTrigger.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingtrigger.html++module Stratosphere.ResourceProperties.EMRClusterScalingTrigger where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRClusterCloudWatchAlarmDefinition++-- | Full data type definition for EMRClusterScalingTrigger. See+-- 'emrClusterScalingTrigger' for a more convenient constructor.+data EMRClusterScalingTrigger =+  EMRClusterScalingTrigger+  { _eMRClusterScalingTriggerCloudWatchAlarmDefinition :: EMRClusterCloudWatchAlarmDefinition+  } deriving (Show, Eq)++instance ToJSON EMRClusterScalingTrigger where+  toJSON EMRClusterScalingTrigger{..} =+    object $+    catMaybes+    [ Just ("CloudWatchAlarmDefinition" .= _eMRClusterScalingTriggerCloudWatchAlarmDefinition)+    ]++instance FromJSON EMRClusterScalingTrigger where+  parseJSON (Object obj) =+    EMRClusterScalingTrigger <$>+      obj .: "CloudWatchAlarmDefinition"+  parseJSON _ = mempty++-- | Constructor for 'EMRClusterScalingTrigger' containing required fields as+-- arguments.+emrClusterScalingTrigger+  :: EMRClusterCloudWatchAlarmDefinition -- ^ 'emrcstCloudWatchAlarmDefinition'+  -> EMRClusterScalingTrigger+emrClusterScalingTrigger cloudWatchAlarmDefinitionarg =+  EMRClusterScalingTrigger+  { _eMRClusterScalingTriggerCloudWatchAlarmDefinition = cloudWatchAlarmDefinitionarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-scalingtrigger.html#cfn-elasticmapreduce-cluster-scalingtrigger-cloudwatchalarmdefinition+emrcstCloudWatchAlarmDefinition :: Lens' EMRClusterScalingTrigger EMRClusterCloudWatchAlarmDefinition+emrcstCloudWatchAlarmDefinition = lens _eMRClusterScalingTriggerCloudWatchAlarmDefinition (\s a -> s { _eMRClusterScalingTriggerCloudWatchAlarmDefinition = a })
+ library-gen/Stratosphere/ResourceProperties/EMRClusterSimpleScalingPolicyConfiguration.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html++module Stratosphere.ResourceProperties.EMRClusterSimpleScalingPolicyConfiguration where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for EMRClusterSimpleScalingPolicyConfiguration.+-- See 'emrClusterSimpleScalingPolicyConfiguration' for a more convenient+-- constructor.+data EMRClusterSimpleScalingPolicyConfiguration =+  EMRClusterSimpleScalingPolicyConfiguration+  { _eMRClusterSimpleScalingPolicyConfigurationAdjustmentType :: Maybe (Val Text)+  , _eMRClusterSimpleScalingPolicyConfigurationCoolDown :: Maybe (Val Integer')+  , _eMRClusterSimpleScalingPolicyConfigurationScalingAdjustment :: Val Integer'+  } deriving (Show, Eq)++instance ToJSON EMRClusterSimpleScalingPolicyConfiguration where+  toJSON EMRClusterSimpleScalingPolicyConfiguration{..} =+    object $+    catMaybes+    [ ("AdjustmentType" .=) <$> _eMRClusterSimpleScalingPolicyConfigurationAdjustmentType+    , ("CoolDown" .=) <$> _eMRClusterSimpleScalingPolicyConfigurationCoolDown+    , Just ("ScalingAdjustment" .= _eMRClusterSimpleScalingPolicyConfigurationScalingAdjustment)+    ]++instance FromJSON EMRClusterSimpleScalingPolicyConfiguration where+  parseJSON (Object obj) =+    EMRClusterSimpleScalingPolicyConfiguration <$>+      obj .:? "AdjustmentType" <*>+      obj .:? "CoolDown" <*>+      obj .: "ScalingAdjustment"+  parseJSON _ = mempty++-- | Constructor for 'EMRClusterSimpleScalingPolicyConfiguration' containing+-- required fields as arguments.+emrClusterSimpleScalingPolicyConfiguration+  :: Val Integer' -- ^ 'emrcsspcScalingAdjustment'+  -> EMRClusterSimpleScalingPolicyConfiguration+emrClusterSimpleScalingPolicyConfiguration scalingAdjustmentarg =+  EMRClusterSimpleScalingPolicyConfiguration+  { _eMRClusterSimpleScalingPolicyConfigurationAdjustmentType = Nothing+  , _eMRClusterSimpleScalingPolicyConfigurationCoolDown = Nothing+  , _eMRClusterSimpleScalingPolicyConfigurationScalingAdjustment = scalingAdjustmentarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-cluster-simplescalingpolicyconfiguration-adjustmenttype+emrcsspcAdjustmentType :: Lens' EMRClusterSimpleScalingPolicyConfiguration (Maybe (Val Text))+emrcsspcAdjustmentType = lens _eMRClusterSimpleScalingPolicyConfigurationAdjustmentType (\s a -> s { _eMRClusterSimpleScalingPolicyConfigurationAdjustmentType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-cluster-simplescalingpolicyconfiguration-cooldown+emrcsspcCoolDown :: Lens' EMRClusterSimpleScalingPolicyConfiguration (Maybe (Val Integer'))+emrcsspcCoolDown = lens _eMRClusterSimpleScalingPolicyConfigurationCoolDown (\s a -> s { _eMRClusterSimpleScalingPolicyConfigurationCoolDown = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-cluster-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-cluster-simplescalingpolicyconfiguration-scalingadjustment+emrcsspcScalingAdjustment :: Lens' EMRClusterSimpleScalingPolicyConfiguration (Val Integer')+emrcsspcScalingAdjustment = lens _eMRClusterSimpleScalingPolicyConfigurationScalingAdjustment (\s a -> s { _eMRClusterSimpleScalingPolicyConfigurationScalingAdjustment = a })
+ library-gen/Stratosphere/ResourceProperties/EMRInstanceGroupConfigAutoScalingPolicy.hs view
@@ -0,0 +1,60 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html++module Stratosphere.ResourceProperties.EMRInstanceGroupConfigAutoScalingPolicy where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingConstraints+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingRule++-- | Full data type definition for EMRInstanceGroupConfigAutoScalingPolicy.+-- See 'emrInstanceGroupConfigAutoScalingPolicy' for a more convenient+-- constructor.+data EMRInstanceGroupConfigAutoScalingPolicy =+  EMRInstanceGroupConfigAutoScalingPolicy+  { _eMRInstanceGroupConfigAutoScalingPolicyConstraints :: EMRInstanceGroupConfigScalingConstraints+  , _eMRInstanceGroupConfigAutoScalingPolicyRules :: [EMRInstanceGroupConfigScalingRule]+  } deriving (Show, Eq)++instance ToJSON EMRInstanceGroupConfigAutoScalingPolicy where+  toJSON EMRInstanceGroupConfigAutoScalingPolicy{..} =+    object $+    catMaybes+    [ Just ("Constraints" .= _eMRInstanceGroupConfigAutoScalingPolicyConstraints)+    , Just ("Rules" .= _eMRInstanceGroupConfigAutoScalingPolicyRules)+    ]++instance FromJSON EMRInstanceGroupConfigAutoScalingPolicy where+  parseJSON (Object obj) =+    EMRInstanceGroupConfigAutoScalingPolicy <$>+      obj .: "Constraints" <*>+      obj .: "Rules"+  parseJSON _ = mempty++-- | Constructor for 'EMRInstanceGroupConfigAutoScalingPolicy' containing+-- required fields as arguments.+emrInstanceGroupConfigAutoScalingPolicy+  :: EMRInstanceGroupConfigScalingConstraints -- ^ 'emrigcaspConstraints'+  -> [EMRInstanceGroupConfigScalingRule] -- ^ 'emrigcaspRules'+  -> EMRInstanceGroupConfigAutoScalingPolicy+emrInstanceGroupConfigAutoScalingPolicy constraintsarg rulesarg =+  EMRInstanceGroupConfigAutoScalingPolicy+  { _eMRInstanceGroupConfigAutoScalingPolicyConstraints = constraintsarg+  , _eMRInstanceGroupConfigAutoScalingPolicyRules = rulesarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy-constraints+emrigcaspConstraints :: Lens' EMRInstanceGroupConfigAutoScalingPolicy EMRInstanceGroupConfigScalingConstraints+emrigcaspConstraints = lens _eMRInstanceGroupConfigAutoScalingPolicyConstraints (\s a -> s { _eMRInstanceGroupConfigAutoScalingPolicyConstraints = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-autoscalingpolicy.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy-rules+emrigcaspRules :: Lens' EMRInstanceGroupConfigAutoScalingPolicy [EMRInstanceGroupConfigScalingRule]+emrigcaspRules = lens _eMRInstanceGroupConfigAutoScalingPolicyRules (\s a -> s { _eMRInstanceGroupConfigAutoScalingPolicyRules = a })
+ library-gen/Stratosphere/ResourceProperties/EMRInstanceGroupConfigCloudWatchAlarmDefinition.hs view
@@ -0,0 +1,118 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html++module Stratosphere.ResourceProperties.EMRInstanceGroupConfigCloudWatchAlarmDefinition where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigMetricDimension++-- | Full data type definition for+-- EMRInstanceGroupConfigCloudWatchAlarmDefinition. See+-- 'emrInstanceGroupConfigCloudWatchAlarmDefinition' for a more convenient+-- constructor.+data EMRInstanceGroupConfigCloudWatchAlarmDefinition =+  EMRInstanceGroupConfigCloudWatchAlarmDefinition+  { _eMRInstanceGroupConfigCloudWatchAlarmDefinitionComparisonOperator :: Val Text+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionDimensions :: Maybe [EMRInstanceGroupConfigMetricDimension]+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionEvaluationPeriods :: Maybe (Val Integer')+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionMetricName :: Val Text+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionNamespace :: Maybe (Val Text)+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionPeriod :: Val Integer'+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionStatistic :: Maybe (Val Text)+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionThreshold :: Val Double'+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionUnit :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON EMRInstanceGroupConfigCloudWatchAlarmDefinition where+  toJSON EMRInstanceGroupConfigCloudWatchAlarmDefinition{..} =+    object $+    catMaybes+    [ Just ("ComparisonOperator" .= _eMRInstanceGroupConfigCloudWatchAlarmDefinitionComparisonOperator)+    , ("Dimensions" .=) <$> _eMRInstanceGroupConfigCloudWatchAlarmDefinitionDimensions+    , ("EvaluationPeriods" .=) <$> _eMRInstanceGroupConfigCloudWatchAlarmDefinitionEvaluationPeriods+    , Just ("MetricName" .= _eMRInstanceGroupConfigCloudWatchAlarmDefinitionMetricName)+    , ("Namespace" .=) <$> _eMRInstanceGroupConfigCloudWatchAlarmDefinitionNamespace+    , Just ("Period" .= _eMRInstanceGroupConfigCloudWatchAlarmDefinitionPeriod)+    , ("Statistic" .=) <$> _eMRInstanceGroupConfigCloudWatchAlarmDefinitionStatistic+    , Just ("Threshold" .= _eMRInstanceGroupConfigCloudWatchAlarmDefinitionThreshold)+    , ("Unit" .=) <$> _eMRInstanceGroupConfigCloudWatchAlarmDefinitionUnit+    ]++instance FromJSON EMRInstanceGroupConfigCloudWatchAlarmDefinition where+  parseJSON (Object obj) =+    EMRInstanceGroupConfigCloudWatchAlarmDefinition <$>+      obj .: "ComparisonOperator" <*>+      obj .:? "Dimensions" <*>+      obj .:? "EvaluationPeriods" <*>+      obj .: "MetricName" <*>+      obj .:? "Namespace" <*>+      obj .: "Period" <*>+      obj .:? "Statistic" <*>+      obj .: "Threshold" <*>+      obj .:? "Unit"+  parseJSON _ = mempty++-- | Constructor for 'EMRInstanceGroupConfigCloudWatchAlarmDefinition'+-- containing required fields as arguments.+emrInstanceGroupConfigCloudWatchAlarmDefinition+  :: Val Text -- ^ 'emrigccwadComparisonOperator'+  -> Val Text -- ^ 'emrigccwadMetricName'+  -> Val Integer' -- ^ 'emrigccwadPeriod'+  -> Val Double' -- ^ 'emrigccwadThreshold'+  -> EMRInstanceGroupConfigCloudWatchAlarmDefinition+emrInstanceGroupConfigCloudWatchAlarmDefinition comparisonOperatorarg metricNamearg periodarg thresholdarg =+  EMRInstanceGroupConfigCloudWatchAlarmDefinition+  { _eMRInstanceGroupConfigCloudWatchAlarmDefinitionComparisonOperator = comparisonOperatorarg+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionDimensions = Nothing+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionEvaluationPeriods = Nothing+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionMetricName = metricNamearg+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionNamespace = Nothing+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionPeriod = periodarg+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionStatistic = Nothing+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionThreshold = thresholdarg+  , _eMRInstanceGroupConfigCloudWatchAlarmDefinitionUnit = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-comparisonoperator+emrigccwadComparisonOperator :: Lens' EMRInstanceGroupConfigCloudWatchAlarmDefinition (Val Text)+emrigccwadComparisonOperator = lens _eMRInstanceGroupConfigCloudWatchAlarmDefinitionComparisonOperator (\s a -> s { _eMRInstanceGroupConfigCloudWatchAlarmDefinitionComparisonOperator = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-dimensions+emrigccwadDimensions :: Lens' EMRInstanceGroupConfigCloudWatchAlarmDefinition (Maybe [EMRInstanceGroupConfigMetricDimension])+emrigccwadDimensions = lens _eMRInstanceGroupConfigCloudWatchAlarmDefinitionDimensions (\s a -> s { _eMRInstanceGroupConfigCloudWatchAlarmDefinitionDimensions = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-evaluationperiods+emrigccwadEvaluationPeriods :: Lens' EMRInstanceGroupConfigCloudWatchAlarmDefinition (Maybe (Val Integer'))+emrigccwadEvaluationPeriods = lens _eMRInstanceGroupConfigCloudWatchAlarmDefinitionEvaluationPeriods (\s a -> s { _eMRInstanceGroupConfigCloudWatchAlarmDefinitionEvaluationPeriods = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-metricname+emrigccwadMetricName :: Lens' EMRInstanceGroupConfigCloudWatchAlarmDefinition (Val Text)+emrigccwadMetricName = lens _eMRInstanceGroupConfigCloudWatchAlarmDefinitionMetricName (\s a -> s { _eMRInstanceGroupConfigCloudWatchAlarmDefinitionMetricName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-namespace+emrigccwadNamespace :: Lens' EMRInstanceGroupConfigCloudWatchAlarmDefinition (Maybe (Val Text))+emrigccwadNamespace = lens _eMRInstanceGroupConfigCloudWatchAlarmDefinitionNamespace (\s a -> s { _eMRInstanceGroupConfigCloudWatchAlarmDefinitionNamespace = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-period+emrigccwadPeriod :: Lens' EMRInstanceGroupConfigCloudWatchAlarmDefinition (Val Integer')+emrigccwadPeriod = lens _eMRInstanceGroupConfigCloudWatchAlarmDefinitionPeriod (\s a -> s { _eMRInstanceGroupConfigCloudWatchAlarmDefinitionPeriod = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-statistic+emrigccwadStatistic :: Lens' EMRInstanceGroupConfigCloudWatchAlarmDefinition (Maybe (Val Text))+emrigccwadStatistic = lens _eMRInstanceGroupConfigCloudWatchAlarmDefinitionStatistic (\s a -> s { _eMRInstanceGroupConfigCloudWatchAlarmDefinitionStatistic = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-threshold+emrigccwadThreshold :: Lens' EMRInstanceGroupConfigCloudWatchAlarmDefinition (Val Double')+emrigccwadThreshold = lens _eMRInstanceGroupConfigCloudWatchAlarmDefinitionThreshold (\s a -> s { _eMRInstanceGroupConfigCloudWatchAlarmDefinitionThreshold = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition.html#cfn-elasticmapreduce-instancegroupconfig-cloudwatchalarmdefinition-unit+emrigccwadUnit :: Lens' EMRInstanceGroupConfigCloudWatchAlarmDefinition (Maybe (Val Text))+emrigccwadUnit = lens _eMRInstanceGroupConfigCloudWatchAlarmDefinitionUnit (\s a -> s { _eMRInstanceGroupConfigCloudWatchAlarmDefinitionUnit = a })
+ library-gen/Stratosphere/ResourceProperties/EMRInstanceGroupConfigMetricDimension.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html++module Stratosphere.ResourceProperties.EMRInstanceGroupConfigMetricDimension where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for EMRInstanceGroupConfigMetricDimension. See+-- 'emrInstanceGroupConfigMetricDimension' for a more convenient+-- constructor.+data EMRInstanceGroupConfigMetricDimension =+  EMRInstanceGroupConfigMetricDimension+  { _eMRInstanceGroupConfigMetricDimensionKey :: Val Text+  , _eMRInstanceGroupConfigMetricDimensionValue :: Val Text+  } deriving (Show, Eq)++instance ToJSON EMRInstanceGroupConfigMetricDimension where+  toJSON EMRInstanceGroupConfigMetricDimension{..} =+    object $+    catMaybes+    [ Just ("Key" .= _eMRInstanceGroupConfigMetricDimensionKey)+    , Just ("Value" .= _eMRInstanceGroupConfigMetricDimensionValue)+    ]++instance FromJSON EMRInstanceGroupConfigMetricDimension where+  parseJSON (Object obj) =+    EMRInstanceGroupConfigMetricDimension <$>+      obj .: "Key" <*>+      obj .: "Value"+  parseJSON _ = mempty++-- | Constructor for 'EMRInstanceGroupConfigMetricDimension' containing+-- required fields as arguments.+emrInstanceGroupConfigMetricDimension+  :: Val Text -- ^ 'emrigcmdKey'+  -> Val Text -- ^ 'emrigcmdValue'+  -> EMRInstanceGroupConfigMetricDimension+emrInstanceGroupConfigMetricDimension keyarg valuearg =+  EMRInstanceGroupConfigMetricDimension+  { _eMRInstanceGroupConfigMetricDimensionKey = keyarg+  , _eMRInstanceGroupConfigMetricDimensionValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html#cfn-elasticmapreduce-instancegroupconfig-metricdimension-key+emrigcmdKey :: Lens' EMRInstanceGroupConfigMetricDimension (Val Text)+emrigcmdKey = lens _eMRInstanceGroupConfigMetricDimensionKey (\s a -> s { _eMRInstanceGroupConfigMetricDimensionKey = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-metricdimension.html#cfn-elasticmapreduce-instancegroupconfig-metricdimension-value+emrigcmdValue :: Lens' EMRInstanceGroupConfigMetricDimension (Val Text)+emrigcmdValue = lens _eMRInstanceGroupConfigMetricDimensionValue (\s a -> s { _eMRInstanceGroupConfigMetricDimensionValue = a })
+ library-gen/Stratosphere/ResourceProperties/EMRInstanceGroupConfigScalingAction.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html++module Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingAction where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigSimpleScalingPolicyConfiguration++-- | Full data type definition for EMRInstanceGroupConfigScalingAction. See+-- 'emrInstanceGroupConfigScalingAction' for a more convenient constructor.+data EMRInstanceGroupConfigScalingAction =+  EMRInstanceGroupConfigScalingAction+  { _eMRInstanceGroupConfigScalingActionMarket :: Maybe (Val Text)+  , _eMRInstanceGroupConfigScalingActionSimpleScalingPolicyConfiguration :: EMRInstanceGroupConfigSimpleScalingPolicyConfiguration+  } deriving (Show, Eq)++instance ToJSON EMRInstanceGroupConfigScalingAction where+  toJSON EMRInstanceGroupConfigScalingAction{..} =+    object $+    catMaybes+    [ ("Market" .=) <$> _eMRInstanceGroupConfigScalingActionMarket+    , Just ("SimpleScalingPolicyConfiguration" .= _eMRInstanceGroupConfigScalingActionSimpleScalingPolicyConfiguration)+    ]++instance FromJSON EMRInstanceGroupConfigScalingAction where+  parseJSON (Object obj) =+    EMRInstanceGroupConfigScalingAction <$>+      obj .:? "Market" <*>+      obj .: "SimpleScalingPolicyConfiguration"+  parseJSON _ = mempty++-- | Constructor for 'EMRInstanceGroupConfigScalingAction' containing required+-- fields as arguments.+emrInstanceGroupConfigScalingAction+  :: EMRInstanceGroupConfigSimpleScalingPolicyConfiguration -- ^ 'emrigcsaSimpleScalingPolicyConfiguration'+  -> EMRInstanceGroupConfigScalingAction+emrInstanceGroupConfigScalingAction simpleScalingPolicyConfigurationarg =+  EMRInstanceGroupConfigScalingAction+  { _eMRInstanceGroupConfigScalingActionMarket = Nothing+  , _eMRInstanceGroupConfigScalingActionSimpleScalingPolicyConfiguration = simpleScalingPolicyConfigurationarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html#cfn-elasticmapreduce-instancegroupconfig-scalingaction-market+emrigcsaMarket :: Lens' EMRInstanceGroupConfigScalingAction (Maybe (Val Text))+emrigcsaMarket = lens _eMRInstanceGroupConfigScalingActionMarket (\s a -> s { _eMRInstanceGroupConfigScalingActionMarket = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingaction.html#cfn-elasticmapreduce-instancegroupconfig-scalingaction-simplescalingpolicyconfiguration+emrigcsaSimpleScalingPolicyConfiguration :: Lens' EMRInstanceGroupConfigScalingAction EMRInstanceGroupConfigSimpleScalingPolicyConfiguration+emrigcsaSimpleScalingPolicyConfiguration = lens _eMRInstanceGroupConfigScalingActionSimpleScalingPolicyConfiguration (\s a -> s { _eMRInstanceGroupConfigScalingActionSimpleScalingPolicyConfiguration = a })
+ library-gen/Stratosphere/ResourceProperties/EMRInstanceGroupConfigScalingConstraints.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html++module Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingConstraints where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for EMRInstanceGroupConfigScalingConstraints.+-- See 'emrInstanceGroupConfigScalingConstraints' for a more convenient+-- constructor.+data EMRInstanceGroupConfigScalingConstraints =+  EMRInstanceGroupConfigScalingConstraints+  { _eMRInstanceGroupConfigScalingConstraintsMaxCapacity :: Val Integer'+  , _eMRInstanceGroupConfigScalingConstraintsMinCapacity :: Val Integer'+  } deriving (Show, Eq)++instance ToJSON EMRInstanceGroupConfigScalingConstraints where+  toJSON EMRInstanceGroupConfigScalingConstraints{..} =+    object $+    catMaybes+    [ Just ("MaxCapacity" .= _eMRInstanceGroupConfigScalingConstraintsMaxCapacity)+    , Just ("MinCapacity" .= _eMRInstanceGroupConfigScalingConstraintsMinCapacity)+    ]++instance FromJSON EMRInstanceGroupConfigScalingConstraints where+  parseJSON (Object obj) =+    EMRInstanceGroupConfigScalingConstraints <$>+      obj .: "MaxCapacity" <*>+      obj .: "MinCapacity"+  parseJSON _ = mempty++-- | Constructor for 'EMRInstanceGroupConfigScalingConstraints' containing+-- required fields as arguments.+emrInstanceGroupConfigScalingConstraints+  :: Val Integer' -- ^ 'emrigcscMaxCapacity'+  -> Val Integer' -- ^ 'emrigcscMinCapacity'+  -> EMRInstanceGroupConfigScalingConstraints+emrInstanceGroupConfigScalingConstraints maxCapacityarg minCapacityarg =+  EMRInstanceGroupConfigScalingConstraints+  { _eMRInstanceGroupConfigScalingConstraintsMaxCapacity = maxCapacityarg+  , _eMRInstanceGroupConfigScalingConstraintsMinCapacity = minCapacityarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html#cfn-elasticmapreduce-instancegroupconfig-scalingconstraints-maxcapacity+emrigcscMaxCapacity :: Lens' EMRInstanceGroupConfigScalingConstraints (Val Integer')+emrigcscMaxCapacity = lens _eMRInstanceGroupConfigScalingConstraintsMaxCapacity (\s a -> s { _eMRInstanceGroupConfigScalingConstraintsMaxCapacity = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingconstraints.html#cfn-elasticmapreduce-instancegroupconfig-scalingconstraints-mincapacity+emrigcscMinCapacity :: Lens' EMRInstanceGroupConfigScalingConstraints (Val Integer')+emrigcscMinCapacity = lens _eMRInstanceGroupConfigScalingConstraintsMinCapacity (\s a -> s { _eMRInstanceGroupConfigScalingConstraintsMinCapacity = a })
+ library-gen/Stratosphere/ResourceProperties/EMRInstanceGroupConfigScalingRule.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html++module Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingRule where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingAction+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingTrigger++-- | Full data type definition for EMRInstanceGroupConfigScalingRule. See+-- 'emrInstanceGroupConfigScalingRule' for a more convenient constructor.+data EMRInstanceGroupConfigScalingRule =+  EMRInstanceGroupConfigScalingRule+  { _eMRInstanceGroupConfigScalingRuleAction :: EMRInstanceGroupConfigScalingAction+  , _eMRInstanceGroupConfigScalingRuleDescription :: Maybe (Val Text)+  , _eMRInstanceGroupConfigScalingRuleName :: Val Text+  , _eMRInstanceGroupConfigScalingRuleTrigger :: EMRInstanceGroupConfigScalingTrigger+  } deriving (Show, Eq)++instance ToJSON EMRInstanceGroupConfigScalingRule where+  toJSON EMRInstanceGroupConfigScalingRule{..} =+    object $+    catMaybes+    [ Just ("Action" .= _eMRInstanceGroupConfigScalingRuleAction)+    , ("Description" .=) <$> _eMRInstanceGroupConfigScalingRuleDescription+    , Just ("Name" .= _eMRInstanceGroupConfigScalingRuleName)+    , Just ("Trigger" .= _eMRInstanceGroupConfigScalingRuleTrigger)+    ]++instance FromJSON EMRInstanceGroupConfigScalingRule where+  parseJSON (Object obj) =+    EMRInstanceGroupConfigScalingRule <$>+      obj .: "Action" <*>+      obj .:? "Description" <*>+      obj .: "Name" <*>+      obj .: "Trigger"+  parseJSON _ = mempty++-- | Constructor for 'EMRInstanceGroupConfigScalingRule' containing required+-- fields as arguments.+emrInstanceGroupConfigScalingRule+  :: EMRInstanceGroupConfigScalingAction -- ^ 'emrigcsrAction'+  -> Val Text -- ^ 'emrigcsrName'+  -> EMRInstanceGroupConfigScalingTrigger -- ^ 'emrigcsrTrigger'+  -> EMRInstanceGroupConfigScalingRule+emrInstanceGroupConfigScalingRule actionarg namearg triggerarg =+  EMRInstanceGroupConfigScalingRule+  { _eMRInstanceGroupConfigScalingRuleAction = actionarg+  , _eMRInstanceGroupConfigScalingRuleDescription = Nothing+  , _eMRInstanceGroupConfigScalingRuleName = namearg+  , _eMRInstanceGroupConfigScalingRuleTrigger = triggerarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-action+emrigcsrAction :: Lens' EMRInstanceGroupConfigScalingRule EMRInstanceGroupConfigScalingAction+emrigcsrAction = lens _eMRInstanceGroupConfigScalingRuleAction (\s a -> s { _eMRInstanceGroupConfigScalingRuleAction = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-description+emrigcsrDescription :: Lens' EMRInstanceGroupConfigScalingRule (Maybe (Val Text))+emrigcsrDescription = lens _eMRInstanceGroupConfigScalingRuleDescription (\s a -> s { _eMRInstanceGroupConfigScalingRuleDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-name+emrigcsrName :: Lens' EMRInstanceGroupConfigScalingRule (Val Text)+emrigcsrName = lens _eMRInstanceGroupConfigScalingRuleName (\s a -> s { _eMRInstanceGroupConfigScalingRuleName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingrule.html#cfn-elasticmapreduce-instancegroupconfig-scalingrule-trigger+emrigcsrTrigger :: Lens' EMRInstanceGroupConfigScalingRule EMRInstanceGroupConfigScalingTrigger+emrigcsrTrigger = lens _eMRInstanceGroupConfigScalingRuleTrigger (\s a -> s { _eMRInstanceGroupConfigScalingRuleTrigger = a })
+ library-gen/Stratosphere/ResourceProperties/EMRInstanceGroupConfigScalingTrigger.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingtrigger.html++module Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingTrigger where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigCloudWatchAlarmDefinition++-- | Full data type definition for EMRInstanceGroupConfigScalingTrigger. See+-- 'emrInstanceGroupConfigScalingTrigger' for a more convenient constructor.+data EMRInstanceGroupConfigScalingTrigger =+  EMRInstanceGroupConfigScalingTrigger+  { _eMRInstanceGroupConfigScalingTriggerCloudWatchAlarmDefinition :: EMRInstanceGroupConfigCloudWatchAlarmDefinition+  } deriving (Show, Eq)++instance ToJSON EMRInstanceGroupConfigScalingTrigger where+  toJSON EMRInstanceGroupConfigScalingTrigger{..} =+    object $+    catMaybes+    [ Just ("CloudWatchAlarmDefinition" .= _eMRInstanceGroupConfigScalingTriggerCloudWatchAlarmDefinition)+    ]++instance FromJSON EMRInstanceGroupConfigScalingTrigger where+  parseJSON (Object obj) =+    EMRInstanceGroupConfigScalingTrigger <$>+      obj .: "CloudWatchAlarmDefinition"+  parseJSON _ = mempty++-- | Constructor for 'EMRInstanceGroupConfigScalingTrigger' containing+-- required fields as arguments.+emrInstanceGroupConfigScalingTrigger+  :: EMRInstanceGroupConfigCloudWatchAlarmDefinition -- ^ 'emrigcstCloudWatchAlarmDefinition'+  -> EMRInstanceGroupConfigScalingTrigger+emrInstanceGroupConfigScalingTrigger cloudWatchAlarmDefinitionarg =+  EMRInstanceGroupConfigScalingTrigger+  { _eMRInstanceGroupConfigScalingTriggerCloudWatchAlarmDefinition = cloudWatchAlarmDefinitionarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-scalingtrigger.html#cfn-elasticmapreduce-instancegroupconfig-scalingtrigger-cloudwatchalarmdefinition+emrigcstCloudWatchAlarmDefinition :: Lens' EMRInstanceGroupConfigScalingTrigger EMRInstanceGroupConfigCloudWatchAlarmDefinition+emrigcstCloudWatchAlarmDefinition = lens _eMRInstanceGroupConfigScalingTriggerCloudWatchAlarmDefinition (\s a -> s { _eMRInstanceGroupConfigScalingTriggerCloudWatchAlarmDefinition = a })
+ library-gen/Stratosphere/ResourceProperties/EMRInstanceGroupConfigSimpleScalingPolicyConfiguration.hs view
@@ -0,0 +1,67 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html++module Stratosphere.ResourceProperties.EMRInstanceGroupConfigSimpleScalingPolicyConfiguration where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for+-- EMRInstanceGroupConfigSimpleScalingPolicyConfiguration. See+-- 'emrInstanceGroupConfigSimpleScalingPolicyConfiguration' for a more+-- convenient constructor.+data EMRInstanceGroupConfigSimpleScalingPolicyConfiguration =+  EMRInstanceGroupConfigSimpleScalingPolicyConfiguration+  { _eMRInstanceGroupConfigSimpleScalingPolicyConfigurationAdjustmentType :: Maybe (Val Text)+  , _eMRInstanceGroupConfigSimpleScalingPolicyConfigurationCoolDown :: Maybe (Val Integer')+  , _eMRInstanceGroupConfigSimpleScalingPolicyConfigurationScalingAdjustment :: Val Integer'+  } deriving (Show, Eq)++instance ToJSON EMRInstanceGroupConfigSimpleScalingPolicyConfiguration where+  toJSON EMRInstanceGroupConfigSimpleScalingPolicyConfiguration{..} =+    object $+    catMaybes+    [ ("AdjustmentType" .=) <$> _eMRInstanceGroupConfigSimpleScalingPolicyConfigurationAdjustmentType+    , ("CoolDown" .=) <$> _eMRInstanceGroupConfigSimpleScalingPolicyConfigurationCoolDown+    , Just ("ScalingAdjustment" .= _eMRInstanceGroupConfigSimpleScalingPolicyConfigurationScalingAdjustment)+    ]++instance FromJSON EMRInstanceGroupConfigSimpleScalingPolicyConfiguration where+  parseJSON (Object obj) =+    EMRInstanceGroupConfigSimpleScalingPolicyConfiguration <$>+      obj .:? "AdjustmentType" <*>+      obj .:? "CoolDown" <*>+      obj .: "ScalingAdjustment"+  parseJSON _ = mempty++-- | Constructor for 'EMRInstanceGroupConfigSimpleScalingPolicyConfiguration'+-- containing required fields as arguments.+emrInstanceGroupConfigSimpleScalingPolicyConfiguration+  :: Val Integer' -- ^ 'emrigcsspcScalingAdjustment'+  -> EMRInstanceGroupConfigSimpleScalingPolicyConfiguration+emrInstanceGroupConfigSimpleScalingPolicyConfiguration scalingAdjustmentarg =+  EMRInstanceGroupConfigSimpleScalingPolicyConfiguration+  { _eMRInstanceGroupConfigSimpleScalingPolicyConfigurationAdjustmentType = Nothing+  , _eMRInstanceGroupConfigSimpleScalingPolicyConfigurationCoolDown = Nothing+  , _eMRInstanceGroupConfigSimpleScalingPolicyConfigurationScalingAdjustment = scalingAdjustmentarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-adjustmenttype+emrigcsspcAdjustmentType :: Lens' EMRInstanceGroupConfigSimpleScalingPolicyConfiguration (Maybe (Val Text))+emrigcsspcAdjustmentType = lens _eMRInstanceGroupConfigSimpleScalingPolicyConfigurationAdjustmentType (\s a -> s { _eMRInstanceGroupConfigSimpleScalingPolicyConfigurationAdjustmentType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-cooldown+emrigcsspcCoolDown :: Lens' EMRInstanceGroupConfigSimpleScalingPolicyConfiguration (Maybe (Val Integer'))+emrigcsspcCoolDown = lens _eMRInstanceGroupConfigSimpleScalingPolicyConfigurationCoolDown (\s a -> s { _eMRInstanceGroupConfigSimpleScalingPolicyConfigurationCoolDown = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration.html#cfn-elasticmapreduce-instancegroupconfig-simplescalingpolicyconfiguration-scalingadjustment+emrigcsspcScalingAdjustment :: Lens' EMRInstanceGroupConfigSimpleScalingPolicyConfiguration (Val Integer')+emrigcsspcScalingAdjustment = lens _eMRInstanceGroupConfigSimpleScalingPolicyConfigurationScalingAdjustment (\s a -> s { _eMRInstanceGroupConfigSimpleScalingPolicyConfigurationScalingAdjustment = a })
library-gen/Stratosphere/ResourceProperties/EventsRuleTarget.hs view
@@ -22,6 +22,7 @@   , _eventsRuleTargetId :: Val Text   , _eventsRuleTargetInput :: Maybe (Val Text)   , _eventsRuleTargetInputPath :: Maybe (Val Text)+  , _eventsRuleTargetRoleArn :: Maybe (Val Text)   } deriving (Show, Eq)  instance ToJSON EventsRuleTarget where@@ -32,6 +33,7 @@     , Just ("Id" .= _eventsRuleTargetId)     , ("Input" .=) <$> _eventsRuleTargetInput     , ("InputPath" .=) <$> _eventsRuleTargetInputPath+    , ("RoleArn" .=) <$> _eventsRuleTargetRoleArn     ]  instance FromJSON EventsRuleTarget where@@ -40,7 +42,8 @@       obj .: "Arn" <*>       obj .: "Id" <*>       obj .:? "Input" <*>-      obj .:? "InputPath"+      obj .:? "InputPath" <*>+      obj .:? "RoleArn"   parseJSON _ = mempty  -- | Constructor for 'EventsRuleTarget' containing required fields as@@ -55,6 +58,7 @@   , _eventsRuleTargetId = idarg   , _eventsRuleTargetInput = Nothing   , _eventsRuleTargetInputPath = Nothing+  , _eventsRuleTargetRoleArn = Nothing   }  -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-arn@@ -72,3 +76,7 @@ -- | 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 })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-events-rule-target.html#cfn-events-rule-target-rolearn+ertRoleArn :: Lens' EventsRuleTarget (Maybe (Val Text))+ertRoleArn = lens _eventsRuleTargetRoleArn (\s a -> s { _eventsRuleTargetRoleArn = a })
+ library-gen/Stratosphere/ResourceProperties/LambdaFunctionTracingConfig.hs view
@@ -0,0 +1,48 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tracingconfig.html++module Stratosphere.ResourceProperties.LambdaFunctionTracingConfig where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for LambdaFunctionTracingConfig. See+-- 'lambdaFunctionTracingConfig' for a more convenient constructor.+data LambdaFunctionTracingConfig =+  LambdaFunctionTracingConfig+  { _lambdaFunctionTracingConfigMode :: Maybe (Val Text)+  } deriving (Show, Eq)++instance ToJSON LambdaFunctionTracingConfig where+  toJSON LambdaFunctionTracingConfig{..} =+    object $+    catMaybes+    [ ("Mode" .=) <$> _lambdaFunctionTracingConfigMode+    ]++instance FromJSON LambdaFunctionTracingConfig where+  parseJSON (Object obj) =+    LambdaFunctionTracingConfig <$>+      obj .:? "Mode"+  parseJSON _ = mempty++-- | Constructor for 'LambdaFunctionTracingConfig' containing required fields+-- as arguments.+lambdaFunctionTracingConfig+  :: LambdaFunctionTracingConfig+lambdaFunctionTracingConfig  =+  LambdaFunctionTracingConfig+  { _lambdaFunctionTracingConfigMode = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-tracingconfig.html#cfn-lambda-function-tracingconfig-mode+lftcMode :: Lens' LambdaFunctionTracingConfig (Maybe (Val Text))+lftcMode = lens _lambdaFunctionTracingConfigMode (\s a -> s { _lambdaFunctionTracingConfigMode = a })
library-gen/Stratosphere/ResourceProperties/RDSDBSecurityGroupIngressProperty.hs view
@@ -18,7 +18,7 @@ -- 'rdsdbSecurityGroupIngressProperty' for a more convenient constructor. data RDSDBSecurityGroupIngressProperty =   RDSDBSecurityGroupIngressProperty-  { _rDSDBSecurityGroupIngressPropertyCDIRIP :: Maybe (Val Text)+  { _rDSDBSecurityGroupIngressPropertyCIDRIP :: Maybe (Val Text)   , _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupId :: Maybe (Val Text)   , _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupName :: Maybe (Val Text)   , _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupOwnerId :: Maybe (Val Text)@@ -28,7 +28,7 @@   toJSON RDSDBSecurityGroupIngressProperty{..} =     object $     catMaybes-    [ ("CDIRIP" .=) <$> _rDSDBSecurityGroupIngressPropertyCDIRIP+    [ ("CIDRIP" .=) <$> _rDSDBSecurityGroupIngressPropertyCIDRIP     , ("EC2SecurityGroupId" .=) <$> _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupId     , ("EC2SecurityGroupName" .=) <$> _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupName     , ("EC2SecurityGroupOwnerId" .=) <$> _rDSDBSecurityGroupIngressPropertyEC2SecurityGroupOwnerId@@ -37,7 +37,7 @@ instance FromJSON RDSDBSecurityGroupIngressProperty where   parseJSON (Object obj) =     RDSDBSecurityGroupIngressProperty <$>-      obj .:? "CDIRIP" <*>+      obj .:? "CIDRIP" <*>       obj .:? "EC2SecurityGroupId" <*>       obj .:? "EC2SecurityGroupName" <*>       obj .:? "EC2SecurityGroupOwnerId"@@ -49,15 +49,15 @@   :: RDSDBSecurityGroupIngressProperty rdsdbSecurityGroupIngressProperty  =   RDSDBSecurityGroupIngressProperty-  { _rDSDBSecurityGroupIngressPropertyCDIRIP = Nothing+  { _rDSDBSecurityGroupIngressPropertyCIDRIP = 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 })+rdsdbsgipCIDRIP :: Lens' RDSDBSecurityGroupIngressProperty (Maybe (Val Text))+rdsdbsgipCIDRIP = lens _rDSDBSecurityGroupIngressPropertyCIDRIP (\s a -> s { _rDSDBSecurityGroupIngressPropertyCIDRIP = 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))
+ library-gen/Stratosphere/ResourceProperties/WAFRegionalByteMatchSetByteMatchTuple.hs view
@@ -0,0 +1,84 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html++module Stratosphere.ResourceProperties.WAFRegionalByteMatchSetByteMatchTuple where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFRegionalByteMatchSetFieldToMatch++-- | Full data type definition for WAFRegionalByteMatchSetByteMatchTuple. See+-- 'wafRegionalByteMatchSetByteMatchTuple' for a more convenient+-- constructor.+data WAFRegionalByteMatchSetByteMatchTuple =+  WAFRegionalByteMatchSetByteMatchTuple+  { _wAFRegionalByteMatchSetByteMatchTupleFieldToMatch :: WAFRegionalByteMatchSetFieldToMatch+  , _wAFRegionalByteMatchSetByteMatchTuplePositionalConstraint :: Val Text+  , _wAFRegionalByteMatchSetByteMatchTupleTargetString :: Maybe (Val Text)+  , _wAFRegionalByteMatchSetByteMatchTupleTargetStringBase64 :: Maybe (Val Text)+  , _wAFRegionalByteMatchSetByteMatchTupleTextTransformation :: Val Text+  } deriving (Show, Eq)++instance ToJSON WAFRegionalByteMatchSetByteMatchTuple where+  toJSON WAFRegionalByteMatchSetByteMatchTuple{..} =+    object $+    catMaybes+    [ Just ("FieldToMatch" .= _wAFRegionalByteMatchSetByteMatchTupleFieldToMatch)+    , Just ("PositionalConstraint" .= _wAFRegionalByteMatchSetByteMatchTuplePositionalConstraint)+    , ("TargetString" .=) <$> _wAFRegionalByteMatchSetByteMatchTupleTargetString+    , ("TargetStringBase64" .=) <$> _wAFRegionalByteMatchSetByteMatchTupleTargetStringBase64+    , Just ("TextTransformation" .= _wAFRegionalByteMatchSetByteMatchTupleTextTransformation)+    ]++instance FromJSON WAFRegionalByteMatchSetByteMatchTuple where+  parseJSON (Object obj) =+    WAFRegionalByteMatchSetByteMatchTuple <$>+      obj .: "FieldToMatch" <*>+      obj .: "PositionalConstraint" <*>+      obj .:? "TargetString" <*>+      obj .:? "TargetStringBase64" <*>+      obj .: "TextTransformation"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalByteMatchSetByteMatchTuple' containing+-- required fields as arguments.+wafRegionalByteMatchSetByteMatchTuple+  :: WAFRegionalByteMatchSetFieldToMatch -- ^ 'wafrbmsbmtFieldToMatch'+  -> Val Text -- ^ 'wafrbmsbmtPositionalConstraint'+  -> Val Text -- ^ 'wafrbmsbmtTextTransformation'+  -> WAFRegionalByteMatchSetByteMatchTuple+wafRegionalByteMatchSetByteMatchTuple fieldToMatcharg positionalConstraintarg textTransformationarg =+  WAFRegionalByteMatchSetByteMatchTuple+  { _wAFRegionalByteMatchSetByteMatchTupleFieldToMatch = fieldToMatcharg+  , _wAFRegionalByteMatchSetByteMatchTuplePositionalConstraint = positionalConstraintarg+  , _wAFRegionalByteMatchSetByteMatchTupleTargetString = Nothing+  , _wAFRegionalByteMatchSetByteMatchTupleTargetStringBase64 = Nothing+  , _wAFRegionalByteMatchSetByteMatchTupleTextTransformation = textTransformationarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-fieldtomatch+wafrbmsbmtFieldToMatch :: Lens' WAFRegionalByteMatchSetByteMatchTuple WAFRegionalByteMatchSetFieldToMatch+wafrbmsbmtFieldToMatch = lens _wAFRegionalByteMatchSetByteMatchTupleFieldToMatch (\s a -> s { _wAFRegionalByteMatchSetByteMatchTupleFieldToMatch = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-positionalconstraint+wafrbmsbmtPositionalConstraint :: Lens' WAFRegionalByteMatchSetByteMatchTuple (Val Text)+wafrbmsbmtPositionalConstraint = lens _wAFRegionalByteMatchSetByteMatchTuplePositionalConstraint (\s a -> s { _wAFRegionalByteMatchSetByteMatchTuplePositionalConstraint = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-targetstring+wafrbmsbmtTargetString :: Lens' WAFRegionalByteMatchSetByteMatchTuple (Maybe (Val Text))+wafrbmsbmtTargetString = lens _wAFRegionalByteMatchSetByteMatchTupleTargetString (\s a -> s { _wAFRegionalByteMatchSetByteMatchTupleTargetString = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-targetstringbase64+wafrbmsbmtTargetStringBase64 :: Lens' WAFRegionalByteMatchSetByteMatchTuple (Maybe (Val Text))+wafrbmsbmtTargetStringBase64 = lens _wAFRegionalByteMatchSetByteMatchTupleTargetStringBase64 (\s a -> s { _wAFRegionalByteMatchSetByteMatchTupleTargetStringBase64 = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-bytematchtuple.html#cfn-wafregional-bytematchset-bytematchtuple-texttransformation+wafrbmsbmtTextTransformation :: Lens' WAFRegionalByteMatchSetByteMatchTuple (Val Text)+wafrbmsbmtTextTransformation = lens _wAFRegionalByteMatchSetByteMatchTupleTextTransformation (\s a -> s { _wAFRegionalByteMatchSetByteMatchTupleTextTransformation = a })
+ library-gen/Stratosphere/ResourceProperties/WAFRegionalByteMatchSetFieldToMatch.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-fieldtomatch.html++module Stratosphere.ResourceProperties.WAFRegionalByteMatchSetFieldToMatch where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for WAFRegionalByteMatchSetFieldToMatch. See+-- 'wafRegionalByteMatchSetFieldToMatch' for a more convenient constructor.+data WAFRegionalByteMatchSetFieldToMatch =+  WAFRegionalByteMatchSetFieldToMatch+  { _wAFRegionalByteMatchSetFieldToMatchData :: Maybe (Val Text)+  , _wAFRegionalByteMatchSetFieldToMatchType :: Val Text+  } deriving (Show, Eq)++instance ToJSON WAFRegionalByteMatchSetFieldToMatch where+  toJSON WAFRegionalByteMatchSetFieldToMatch{..} =+    object $+    catMaybes+    [ ("Data" .=) <$> _wAFRegionalByteMatchSetFieldToMatchData+    , Just ("Type" .= _wAFRegionalByteMatchSetFieldToMatchType)+    ]++instance FromJSON WAFRegionalByteMatchSetFieldToMatch where+  parseJSON (Object obj) =+    WAFRegionalByteMatchSetFieldToMatch <$>+      obj .:? "Data" <*>+      obj .: "Type"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalByteMatchSetFieldToMatch' containing required+-- fields as arguments.+wafRegionalByteMatchSetFieldToMatch+  :: Val Text -- ^ 'wafrbmsftmType'+  -> WAFRegionalByteMatchSetFieldToMatch+wafRegionalByteMatchSetFieldToMatch typearg =+  WAFRegionalByteMatchSetFieldToMatch+  { _wAFRegionalByteMatchSetFieldToMatchData = Nothing+  , _wAFRegionalByteMatchSetFieldToMatchType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-fieldtomatch.html#cfn-wafregional-bytematchset-fieldtomatch-data+wafrbmsftmData :: Lens' WAFRegionalByteMatchSetFieldToMatch (Maybe (Val Text))+wafrbmsftmData = lens _wAFRegionalByteMatchSetFieldToMatchData (\s a -> s { _wAFRegionalByteMatchSetFieldToMatchData = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-bytematchset-fieldtomatch.html#cfn-wafregional-bytematchset-fieldtomatch-type+wafrbmsftmType :: Lens' WAFRegionalByteMatchSetFieldToMatch (Val Text)+wafrbmsftmType = lens _wAFRegionalByteMatchSetFieldToMatchType (\s a -> s { _wAFRegionalByteMatchSetFieldToMatchType = a })
+ library-gen/Stratosphere/ResourceProperties/WAFRegionalIPSetIPSetDescriptor.hs view
@@ -0,0 +1,58 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ipset-ipsetdescriptor.html++module Stratosphere.ResourceProperties.WAFRegionalIPSetIPSetDescriptor where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for WAFRegionalIPSetIPSetDescriptor. See+-- 'wafRegionalIPSetIPSetDescriptor' for a more convenient constructor.+data WAFRegionalIPSetIPSetDescriptor =+  WAFRegionalIPSetIPSetDescriptor+  { _wAFRegionalIPSetIPSetDescriptorType :: Val Text+  , _wAFRegionalIPSetIPSetDescriptorValue :: Val Text+  } deriving (Show, Eq)++instance ToJSON WAFRegionalIPSetIPSetDescriptor where+  toJSON WAFRegionalIPSetIPSetDescriptor{..} =+    object $+    catMaybes+    [ Just ("Type" .= _wAFRegionalIPSetIPSetDescriptorType)+    , Just ("Value" .= _wAFRegionalIPSetIPSetDescriptorValue)+    ]++instance FromJSON WAFRegionalIPSetIPSetDescriptor where+  parseJSON (Object obj) =+    WAFRegionalIPSetIPSetDescriptor <$>+      obj .: "Type" <*>+      obj .: "Value"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalIPSetIPSetDescriptor' containing required+-- fields as arguments.+wafRegionalIPSetIPSetDescriptor+  :: Val Text -- ^ 'wafripsipsdType'+  -> Val Text -- ^ 'wafripsipsdValue'+  -> WAFRegionalIPSetIPSetDescriptor+wafRegionalIPSetIPSetDescriptor typearg valuearg =+  WAFRegionalIPSetIPSetDescriptor+  { _wAFRegionalIPSetIPSetDescriptorType = typearg+  , _wAFRegionalIPSetIPSetDescriptorValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ipset-ipsetdescriptor.html#cfn-wafregional-ipset-ipsetdescriptor-type+wafripsipsdType :: Lens' WAFRegionalIPSetIPSetDescriptor (Val Text)+wafripsipsdType = lens _wAFRegionalIPSetIPSetDescriptorType (\s a -> s { _wAFRegionalIPSetIPSetDescriptorType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-ipset-ipsetdescriptor.html#cfn-wafregional-ipset-ipsetdescriptor-value+wafripsipsdValue :: Lens' WAFRegionalIPSetIPSetDescriptor (Val Text)+wafripsipsdValue = lens _wAFRegionalIPSetIPSetDescriptorValue (\s a -> s { _wAFRegionalIPSetIPSetDescriptorValue = a })
+ library-gen/Stratosphere/ResourceProperties/WAFRegionalRulePredicate.hs view
@@ -0,0 +1,67 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-rule-predicate.html++module Stratosphere.ResourceProperties.WAFRegionalRulePredicate where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for WAFRegionalRulePredicate. See+-- 'wafRegionalRulePredicate' for a more convenient constructor.+data WAFRegionalRulePredicate =+  WAFRegionalRulePredicate+  { _wAFRegionalRulePredicateDataId :: Val Text+  , _wAFRegionalRulePredicateNegated :: Val Bool'+  , _wAFRegionalRulePredicateType :: Val Text+  } deriving (Show, Eq)++instance ToJSON WAFRegionalRulePredicate where+  toJSON WAFRegionalRulePredicate{..} =+    object $+    catMaybes+    [ Just ("DataId" .= _wAFRegionalRulePredicateDataId)+    , Just ("Negated" .= _wAFRegionalRulePredicateNegated)+    , Just ("Type" .= _wAFRegionalRulePredicateType)+    ]++instance FromJSON WAFRegionalRulePredicate where+  parseJSON (Object obj) =+    WAFRegionalRulePredicate <$>+      obj .: "DataId" <*>+      obj .: "Negated" <*>+      obj .: "Type"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalRulePredicate' containing required fields as+-- arguments.+wafRegionalRulePredicate+  :: Val Text -- ^ 'wafrrpDataId'+  -> Val Bool' -- ^ 'wafrrpNegated'+  -> Val Text -- ^ 'wafrrpType'+  -> WAFRegionalRulePredicate+wafRegionalRulePredicate dataIdarg negatedarg typearg =+  WAFRegionalRulePredicate+  { _wAFRegionalRulePredicateDataId = dataIdarg+  , _wAFRegionalRulePredicateNegated = negatedarg+  , _wAFRegionalRulePredicateType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-rule-predicate.html#cfn-wafregional-rule-predicate-dataid+wafrrpDataId :: Lens' WAFRegionalRulePredicate (Val Text)+wafrrpDataId = lens _wAFRegionalRulePredicateDataId (\s a -> s { _wAFRegionalRulePredicateDataId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-rule-predicate.html#cfn-wafregional-rule-predicate-negated+wafrrpNegated :: Lens' WAFRegionalRulePredicate (Val Bool')+wafrrpNegated = lens _wAFRegionalRulePredicateNegated (\s a -> s { _wAFRegionalRulePredicateNegated = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-rule-predicate.html#cfn-wafregional-rule-predicate-type+wafrrpType :: Lens' WAFRegionalRulePredicate (Val Text)+wafrrpType = lens _wAFRegionalRulePredicateType (\s a -> s { _wAFRegionalRulePredicateType = a })
+ library-gen/Stratosphere/ResourceProperties/WAFRegionalSizeConstraintSetFieldToMatch.hs view
@@ -0,0 +1,58 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-fieldtomatch.html++module Stratosphere.ResourceProperties.WAFRegionalSizeConstraintSetFieldToMatch where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for WAFRegionalSizeConstraintSetFieldToMatch.+-- See 'wafRegionalSizeConstraintSetFieldToMatch' for a more convenient+-- constructor.+data WAFRegionalSizeConstraintSetFieldToMatch =+  WAFRegionalSizeConstraintSetFieldToMatch+  { _wAFRegionalSizeConstraintSetFieldToMatchData :: Maybe (Val Text)+  , _wAFRegionalSizeConstraintSetFieldToMatchType :: Val Text+  } deriving (Show, Eq)++instance ToJSON WAFRegionalSizeConstraintSetFieldToMatch where+  toJSON WAFRegionalSizeConstraintSetFieldToMatch{..} =+    object $+    catMaybes+    [ ("Data" .=) <$> _wAFRegionalSizeConstraintSetFieldToMatchData+    , Just ("Type" .= _wAFRegionalSizeConstraintSetFieldToMatchType)+    ]++instance FromJSON WAFRegionalSizeConstraintSetFieldToMatch where+  parseJSON (Object obj) =+    WAFRegionalSizeConstraintSetFieldToMatch <$>+      obj .:? "Data" <*>+      obj .: "Type"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalSizeConstraintSetFieldToMatch' containing+-- required fields as arguments.+wafRegionalSizeConstraintSetFieldToMatch+  :: Val Text -- ^ 'wafrscsftmType'+  -> WAFRegionalSizeConstraintSetFieldToMatch+wafRegionalSizeConstraintSetFieldToMatch typearg =+  WAFRegionalSizeConstraintSetFieldToMatch+  { _wAFRegionalSizeConstraintSetFieldToMatchData = Nothing+  , _wAFRegionalSizeConstraintSetFieldToMatchType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-fieldtomatch.html#cfn-wafregional-sizeconstraintset-fieldtomatch-data+wafrscsftmData :: Lens' WAFRegionalSizeConstraintSetFieldToMatch (Maybe (Val Text))+wafrscsftmData = lens _wAFRegionalSizeConstraintSetFieldToMatchData (\s a -> s { _wAFRegionalSizeConstraintSetFieldToMatchData = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-fieldtomatch.html#cfn-wafregional-sizeconstraintset-fieldtomatch-type+wafrscsftmType :: Lens' WAFRegionalSizeConstraintSetFieldToMatch (Val Text)+wafrscsftmType = lens _wAFRegionalSizeConstraintSetFieldToMatchType (\s a -> s { _wAFRegionalSizeConstraintSetFieldToMatchType = a })
+ library-gen/Stratosphere/ResourceProperties/WAFRegionalSizeConstraintSetSizeConstraint.hs view
@@ -0,0 +1,77 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html++module Stratosphere.ResourceProperties.WAFRegionalSizeConstraintSetSizeConstraint where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFRegionalSizeConstraintSetFieldToMatch++-- | Full data type definition for WAFRegionalSizeConstraintSetSizeConstraint.+-- See 'wafRegionalSizeConstraintSetSizeConstraint' for a more convenient+-- constructor.+data WAFRegionalSizeConstraintSetSizeConstraint =+  WAFRegionalSizeConstraintSetSizeConstraint+  { _wAFRegionalSizeConstraintSetSizeConstraintComparisonOperator :: Val Text+  , _wAFRegionalSizeConstraintSetSizeConstraintFieldToMatch :: WAFRegionalSizeConstraintSetFieldToMatch+  , _wAFRegionalSizeConstraintSetSizeConstraintSize :: Val Integer'+  , _wAFRegionalSizeConstraintSetSizeConstraintTextTransformation :: Val Text+  } deriving (Show, Eq)++instance ToJSON WAFRegionalSizeConstraintSetSizeConstraint where+  toJSON WAFRegionalSizeConstraintSetSizeConstraint{..} =+    object $+    catMaybes+    [ Just ("ComparisonOperator" .= _wAFRegionalSizeConstraintSetSizeConstraintComparisonOperator)+    , Just ("FieldToMatch" .= _wAFRegionalSizeConstraintSetSizeConstraintFieldToMatch)+    , Just ("Size" .= _wAFRegionalSizeConstraintSetSizeConstraintSize)+    , Just ("TextTransformation" .= _wAFRegionalSizeConstraintSetSizeConstraintTextTransformation)+    ]++instance FromJSON WAFRegionalSizeConstraintSetSizeConstraint where+  parseJSON (Object obj) =+    WAFRegionalSizeConstraintSetSizeConstraint <$>+      obj .: "ComparisonOperator" <*>+      obj .: "FieldToMatch" <*>+      obj .: "Size" <*>+      obj .: "TextTransformation"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalSizeConstraintSetSizeConstraint' containing+-- required fields as arguments.+wafRegionalSizeConstraintSetSizeConstraint+  :: Val Text -- ^ 'wafrscsscComparisonOperator'+  -> WAFRegionalSizeConstraintSetFieldToMatch -- ^ 'wafrscsscFieldToMatch'+  -> Val Integer' -- ^ 'wafrscsscSize'+  -> Val Text -- ^ 'wafrscsscTextTransformation'+  -> WAFRegionalSizeConstraintSetSizeConstraint+wafRegionalSizeConstraintSetSizeConstraint comparisonOperatorarg fieldToMatcharg sizearg textTransformationarg =+  WAFRegionalSizeConstraintSetSizeConstraint+  { _wAFRegionalSizeConstraintSetSizeConstraintComparisonOperator = comparisonOperatorarg+  , _wAFRegionalSizeConstraintSetSizeConstraintFieldToMatch = fieldToMatcharg+  , _wAFRegionalSizeConstraintSetSizeConstraintSize = sizearg+  , _wAFRegionalSizeConstraintSetSizeConstraintTextTransformation = textTransformationarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-comparisonoperator+wafrscsscComparisonOperator :: Lens' WAFRegionalSizeConstraintSetSizeConstraint (Val Text)+wafrscsscComparisonOperator = lens _wAFRegionalSizeConstraintSetSizeConstraintComparisonOperator (\s a -> s { _wAFRegionalSizeConstraintSetSizeConstraintComparisonOperator = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-fieldtomatch+wafrscsscFieldToMatch :: Lens' WAFRegionalSizeConstraintSetSizeConstraint WAFRegionalSizeConstraintSetFieldToMatch+wafrscsscFieldToMatch = lens _wAFRegionalSizeConstraintSetSizeConstraintFieldToMatch (\s a -> s { _wAFRegionalSizeConstraintSetSizeConstraintFieldToMatch = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-size+wafrscsscSize :: Lens' WAFRegionalSizeConstraintSetSizeConstraint (Val Integer')+wafrscsscSize = lens _wAFRegionalSizeConstraintSetSizeConstraintSize (\s a -> s { _wAFRegionalSizeConstraintSetSizeConstraintSize = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sizeconstraintset-sizeconstraint.html#cfn-wafregional-sizeconstraintset-sizeconstraint-texttransformation+wafrscsscTextTransformation :: Lens' WAFRegionalSizeConstraintSetSizeConstraint (Val Text)+wafrscsscTextTransformation = lens _wAFRegionalSizeConstraintSetSizeConstraintTextTransformation (\s a -> s { _wAFRegionalSizeConstraintSetSizeConstraintTextTransformation = a })
+ library-gen/Stratosphere/ResourceProperties/WAFRegionalSqlInjectionMatchSetFieldToMatch.hs view
@@ -0,0 +1,59 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-fieldtomatch.html++module Stratosphere.ResourceProperties.WAFRegionalSqlInjectionMatchSetFieldToMatch where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for+-- WAFRegionalSqlInjectionMatchSetFieldToMatch. See+-- 'wafRegionalSqlInjectionMatchSetFieldToMatch' for a more convenient+-- constructor.+data WAFRegionalSqlInjectionMatchSetFieldToMatch =+  WAFRegionalSqlInjectionMatchSetFieldToMatch+  { _wAFRegionalSqlInjectionMatchSetFieldToMatchData :: Maybe (Val Text)+  , _wAFRegionalSqlInjectionMatchSetFieldToMatchType :: Val Text+  } deriving (Show, Eq)++instance ToJSON WAFRegionalSqlInjectionMatchSetFieldToMatch where+  toJSON WAFRegionalSqlInjectionMatchSetFieldToMatch{..} =+    object $+    catMaybes+    [ ("Data" .=) <$> _wAFRegionalSqlInjectionMatchSetFieldToMatchData+    , Just ("Type" .= _wAFRegionalSqlInjectionMatchSetFieldToMatchType)+    ]++instance FromJSON WAFRegionalSqlInjectionMatchSetFieldToMatch where+  parseJSON (Object obj) =+    WAFRegionalSqlInjectionMatchSetFieldToMatch <$>+      obj .:? "Data" <*>+      obj .: "Type"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalSqlInjectionMatchSetFieldToMatch' containing+-- required fields as arguments.+wafRegionalSqlInjectionMatchSetFieldToMatch+  :: Val Text -- ^ 'wafrsimsftmType'+  -> WAFRegionalSqlInjectionMatchSetFieldToMatch+wafRegionalSqlInjectionMatchSetFieldToMatch typearg =+  WAFRegionalSqlInjectionMatchSetFieldToMatch+  { _wAFRegionalSqlInjectionMatchSetFieldToMatchData = Nothing+  , _wAFRegionalSqlInjectionMatchSetFieldToMatchType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-fieldtomatch.html#cfn-wafregional-sqlinjectionmatchset-fieldtomatch-data+wafrsimsftmData :: Lens' WAFRegionalSqlInjectionMatchSetFieldToMatch (Maybe (Val Text))+wafrsimsftmData = lens _wAFRegionalSqlInjectionMatchSetFieldToMatchData (\s a -> s { _wAFRegionalSqlInjectionMatchSetFieldToMatchData = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-fieldtomatch.html#cfn-wafregional-sqlinjectionmatchset-fieldtomatch-type+wafrsimsftmType :: Lens' WAFRegionalSqlInjectionMatchSetFieldToMatch (Val Text)+wafrsimsftmType = lens _wAFRegionalSqlInjectionMatchSetFieldToMatchType (\s a -> s { _wAFRegionalSqlInjectionMatchSetFieldToMatchType = a })
+ library-gen/Stratosphere/ResourceProperties/WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple.hs view
@@ -0,0 +1,60 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple.html++module Stratosphere.ResourceProperties.WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFRegionalSqlInjectionMatchSetFieldToMatch++-- | Full data type definition for+-- WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple. See+-- 'wafRegionalSqlInjectionMatchSetSqlInjectionMatchTuple' for a more+-- convenient constructor.+data WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple =+  WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple+  { _wAFRegionalSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatch :: WAFRegionalSqlInjectionMatchSetFieldToMatch+  , _wAFRegionalSqlInjectionMatchSetSqlInjectionMatchTupleTextTransformation :: Val Text+  } deriving (Show, Eq)++instance ToJSON WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple where+  toJSON WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple{..} =+    object $+    catMaybes+    [ Just ("FieldToMatch" .= _wAFRegionalSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatch)+    , Just ("TextTransformation" .= _wAFRegionalSqlInjectionMatchSetSqlInjectionMatchTupleTextTransformation)+    ]++instance FromJSON WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple where+  parseJSON (Object obj) =+    WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple <$>+      obj .: "FieldToMatch" <*>+      obj .: "TextTransformation"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple'+-- containing required fields as arguments.+wafRegionalSqlInjectionMatchSetSqlInjectionMatchTuple+  :: WAFRegionalSqlInjectionMatchSetFieldToMatch -- ^ 'wafrsimssimtFieldToMatch'+  -> Val Text -- ^ 'wafrsimssimtTextTransformation'+  -> WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple+wafRegionalSqlInjectionMatchSetSqlInjectionMatchTuple fieldToMatcharg textTransformationarg =+  WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple+  { _wAFRegionalSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatch = fieldToMatcharg+  , _wAFRegionalSqlInjectionMatchSetSqlInjectionMatchTupleTextTransformation = textTransformationarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple.html#cfn-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple-fieldtomatch+wafrsimssimtFieldToMatch :: Lens' WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple WAFRegionalSqlInjectionMatchSetFieldToMatch+wafrsimssimtFieldToMatch = lens _wAFRegionalSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatch (\s a -> s { _wAFRegionalSqlInjectionMatchSetSqlInjectionMatchTupleFieldToMatch = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple.html#cfn-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuple-texttransformation+wafrsimssimtTextTransformation :: Lens' WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple (Val Text)+wafrsimssimtTextTransformation = lens _wAFRegionalSqlInjectionMatchSetSqlInjectionMatchTupleTextTransformation (\s a -> s { _wAFRegionalSqlInjectionMatchSetSqlInjectionMatchTupleTextTransformation = a })
+ library-gen/Stratosphere/ResourceProperties/WAFRegionalWebACLAction.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-action.html++module Stratosphere.ResourceProperties.WAFRegionalWebACLAction where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for WAFRegionalWebACLAction. See+-- 'wafRegionalWebACLAction' for a more convenient constructor.+data WAFRegionalWebACLAction =+  WAFRegionalWebACLAction+  { _wAFRegionalWebACLActionType :: Val Text+  } deriving (Show, Eq)++instance ToJSON WAFRegionalWebACLAction where+  toJSON WAFRegionalWebACLAction{..} =+    object $+    catMaybes+    [ Just ("Type" .= _wAFRegionalWebACLActionType)+    ]++instance FromJSON WAFRegionalWebACLAction where+  parseJSON (Object obj) =+    WAFRegionalWebACLAction <$>+      obj .: "Type"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalWebACLAction' containing required fields as+-- arguments.+wafRegionalWebACLAction+  :: Val Text -- ^ 'wafrwaclaType'+  -> WAFRegionalWebACLAction+wafRegionalWebACLAction typearg =+  WAFRegionalWebACLAction+  { _wAFRegionalWebACLActionType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-action.html#cfn-wafregional-webacl-action-type+wafrwaclaType :: Lens' WAFRegionalWebACLAction (Val Text)+wafrwaclaType = lens _wAFRegionalWebACLActionType (\s a -> s { _wAFRegionalWebACLActionType = a })
+ library-gen/Stratosphere/ResourceProperties/WAFRegionalWebACLRule.hs view
@@ -0,0 +1,67 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-rule.html++module Stratosphere.ResourceProperties.WAFRegionalWebACLRule where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFRegionalWebACLAction++-- | Full data type definition for WAFRegionalWebACLRule. See+-- 'wafRegionalWebACLRule' for a more convenient constructor.+data WAFRegionalWebACLRule =+  WAFRegionalWebACLRule+  { _wAFRegionalWebACLRuleAction :: WAFRegionalWebACLAction+  , _wAFRegionalWebACLRulePriority :: Val Integer'+  , _wAFRegionalWebACLRuleRuleId :: Val Text+  } deriving (Show, Eq)++instance ToJSON WAFRegionalWebACLRule where+  toJSON WAFRegionalWebACLRule{..} =+    object $+    catMaybes+    [ Just ("Action" .= _wAFRegionalWebACLRuleAction)+    , Just ("Priority" .= _wAFRegionalWebACLRulePriority)+    , Just ("RuleId" .= _wAFRegionalWebACLRuleRuleId)+    ]++instance FromJSON WAFRegionalWebACLRule where+  parseJSON (Object obj) =+    WAFRegionalWebACLRule <$>+      obj .: "Action" <*>+      obj .: "Priority" <*>+      obj .: "RuleId"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalWebACLRule' containing required fields as+-- arguments.+wafRegionalWebACLRule+  :: WAFRegionalWebACLAction -- ^ 'wafrwaclrAction'+  -> Val Integer' -- ^ 'wafrwaclrPriority'+  -> Val Text -- ^ 'wafrwaclrRuleId'+  -> WAFRegionalWebACLRule+wafRegionalWebACLRule actionarg priorityarg ruleIdarg =+  WAFRegionalWebACLRule+  { _wAFRegionalWebACLRuleAction = actionarg+  , _wAFRegionalWebACLRulePriority = priorityarg+  , _wAFRegionalWebACLRuleRuleId = ruleIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-rule.html#cfn-wafregional-webacl-rule-action+wafrwaclrAction :: Lens' WAFRegionalWebACLRule WAFRegionalWebACLAction+wafrwaclrAction = lens _wAFRegionalWebACLRuleAction (\s a -> s { _wAFRegionalWebACLRuleAction = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-rule.html#cfn-wafregional-webacl-rule-priority+wafrwaclrPriority :: Lens' WAFRegionalWebACLRule (Val Integer')+wafrwaclrPriority = lens _wAFRegionalWebACLRulePriority (\s a -> s { _wAFRegionalWebACLRulePriority = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-webacl-rule.html#cfn-wafregional-webacl-rule-ruleid+wafrwaclrRuleId :: Lens' WAFRegionalWebACLRule (Val Text)+wafrwaclrRuleId = lens _wAFRegionalWebACLRuleRuleId (\s a -> s { _wAFRegionalWebACLRuleRuleId = a })
+ library-gen/Stratosphere/ResourceProperties/WAFRegionalXssMatchSetFieldToMatch.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-fieldtomatch.html++module Stratosphere.ResourceProperties.WAFRegionalXssMatchSetFieldToMatch where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for WAFRegionalXssMatchSetFieldToMatch. See+-- 'wafRegionalXssMatchSetFieldToMatch' for a more convenient constructor.+data WAFRegionalXssMatchSetFieldToMatch =+  WAFRegionalXssMatchSetFieldToMatch+  { _wAFRegionalXssMatchSetFieldToMatchData :: Maybe (Val Text)+  , _wAFRegionalXssMatchSetFieldToMatchType :: Val Text+  } deriving (Show, Eq)++instance ToJSON WAFRegionalXssMatchSetFieldToMatch where+  toJSON WAFRegionalXssMatchSetFieldToMatch{..} =+    object $+    catMaybes+    [ ("Data" .=) <$> _wAFRegionalXssMatchSetFieldToMatchData+    , Just ("Type" .= _wAFRegionalXssMatchSetFieldToMatchType)+    ]++instance FromJSON WAFRegionalXssMatchSetFieldToMatch where+  parseJSON (Object obj) =+    WAFRegionalXssMatchSetFieldToMatch <$>+      obj .:? "Data" <*>+      obj .: "Type"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalXssMatchSetFieldToMatch' containing required+-- fields as arguments.+wafRegionalXssMatchSetFieldToMatch+  :: Val Text -- ^ 'wafrxmsftmType'+  -> WAFRegionalXssMatchSetFieldToMatch+wafRegionalXssMatchSetFieldToMatch typearg =+  WAFRegionalXssMatchSetFieldToMatch+  { _wAFRegionalXssMatchSetFieldToMatchData = Nothing+  , _wAFRegionalXssMatchSetFieldToMatchType = typearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-fieldtomatch.html#cfn-wafregional-xssmatchset-fieldtomatch-data+wafrxmsftmData :: Lens' WAFRegionalXssMatchSetFieldToMatch (Maybe (Val Text))+wafrxmsftmData = lens _wAFRegionalXssMatchSetFieldToMatchData (\s a -> s { _wAFRegionalXssMatchSetFieldToMatchData = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-fieldtomatch.html#cfn-wafregional-xssmatchset-fieldtomatch-type+wafrxmsftmType :: Lens' WAFRegionalXssMatchSetFieldToMatch (Val Text)+wafrxmsftmType = lens _wAFRegionalXssMatchSetFieldToMatchType (\s a -> s { _wAFRegionalXssMatchSetFieldToMatchType = a })
+ library-gen/Stratosphere/ResourceProperties/WAFRegionalXssMatchSetXssMatchTuple.hs view
@@ -0,0 +1,58 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-xssmatchtuple.html++module Stratosphere.ResourceProperties.WAFRegionalXssMatchSetXssMatchTuple where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFRegionalXssMatchSetFieldToMatch++-- | Full data type definition for WAFRegionalXssMatchSetXssMatchTuple. See+-- 'wafRegionalXssMatchSetXssMatchTuple' for a more convenient constructor.+data WAFRegionalXssMatchSetXssMatchTuple =+  WAFRegionalXssMatchSetXssMatchTuple+  { _wAFRegionalXssMatchSetXssMatchTupleFieldToMatch :: WAFRegionalXssMatchSetFieldToMatch+  , _wAFRegionalXssMatchSetXssMatchTupleTextTransformation :: Val Text+  } deriving (Show, Eq)++instance ToJSON WAFRegionalXssMatchSetXssMatchTuple where+  toJSON WAFRegionalXssMatchSetXssMatchTuple{..} =+    object $+    catMaybes+    [ Just ("FieldToMatch" .= _wAFRegionalXssMatchSetXssMatchTupleFieldToMatch)+    , Just ("TextTransformation" .= _wAFRegionalXssMatchSetXssMatchTupleTextTransformation)+    ]++instance FromJSON WAFRegionalXssMatchSetXssMatchTuple where+  parseJSON (Object obj) =+    WAFRegionalXssMatchSetXssMatchTuple <$>+      obj .: "FieldToMatch" <*>+      obj .: "TextTransformation"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalXssMatchSetXssMatchTuple' containing required+-- fields as arguments.+wafRegionalXssMatchSetXssMatchTuple+  :: WAFRegionalXssMatchSetFieldToMatch -- ^ 'wafrxmsxmtFieldToMatch'+  -> Val Text -- ^ 'wafrxmsxmtTextTransformation'+  -> WAFRegionalXssMatchSetXssMatchTuple+wafRegionalXssMatchSetXssMatchTuple fieldToMatcharg textTransformationarg =+  WAFRegionalXssMatchSetXssMatchTuple+  { _wAFRegionalXssMatchSetXssMatchTupleFieldToMatch = fieldToMatcharg+  , _wAFRegionalXssMatchSetXssMatchTupleTextTransformation = textTransformationarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-xssmatchtuple.html#cfn-wafregional-xssmatchset-xssmatchtuple-fieldtomatch+wafrxmsxmtFieldToMatch :: Lens' WAFRegionalXssMatchSetXssMatchTuple WAFRegionalXssMatchSetFieldToMatch+wafrxmsxmtFieldToMatch = lens _wAFRegionalXssMatchSetXssMatchTupleFieldToMatch (\s a -> s { _wAFRegionalXssMatchSetXssMatchTupleFieldToMatch = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafregional-xssmatchset-xssmatchtuple.html#cfn-wafregional-xssmatchset-xssmatchtuple-texttransformation+wafrxmsxmtTextTransformation :: Lens' WAFRegionalXssMatchSetXssMatchTuple (Val Text)+wafrxmsxmtTextTransformation = lens _wAFRegionalXssMatchSetXssMatchTupleTextTransformation (\s a -> s { _wAFRegionalXssMatchSetXssMatchTupleTextTransformation = a })
library-gen/Stratosphere/Resources.hs view
@@ -10,7 +10,7 @@ {-# LANGUAGE TypeFamilies #-}  #if MIN_VERSION_GLASGOW_HASKELL(8,0,1,0)-{-# OPTIONS_GHC -fmax-pmcheck-iterations=10000000 #-}+{-# OPTIONS_GHC -fmax-pmcheck-iterations=20000000 #-} #endif  -- | See:@@ -79,6 +79,13 @@ import Stratosphere.Resources.CodeDeployDeploymentGroup as X import Stratosphere.Resources.CodePipelineCustomActionType as X import Stratosphere.Resources.CodePipelinePipeline as X+import Stratosphere.Resources.CognitoIdentityPool as X+import Stratosphere.Resources.CognitoIdentityPoolRoleAttachment as X+import Stratosphere.Resources.CognitoUserPool as X+import Stratosphere.Resources.CognitoUserPoolClient as X+import Stratosphere.Resources.CognitoUserPoolGroup as X+import Stratosphere.Resources.CognitoUserPoolUser as X+import Stratosphere.Resources.CognitoUserPoolUserToGroupAttachment as X import Stratosphere.Resources.ConfigConfigRule as X import Stratosphere.Resources.ConfigConfigurationRecorder as X import Stratosphere.Resources.ConfigDeliveryChannel as X@@ -130,6 +137,7 @@ import Stratosphere.Resources.EFSMountTarget as X import Stratosphere.Resources.EMRCluster as X import Stratosphere.Resources.EMRInstanceGroupConfig as X+import Stratosphere.Resources.EMRSecurityConfiguration as X import Stratosphere.Resources.EMRStep as X import Stratosphere.Resources.ElastiCacheCacheCluster as X import Stratosphere.Resources.ElastiCacheParameterGroup as X@@ -214,6 +222,9 @@ import Stratosphere.Resources.SQSQueuePolicy as X import Stratosphere.Resources.SSMAssociation as X import Stratosphere.Resources.SSMDocument as X+import Stratosphere.Resources.SSMParameter as X+import Stratosphere.Resources.StepFunctionsActivity as X+import Stratosphere.Resources.StepFunctionsStateMachine as X import Stratosphere.Resources.WAFByteMatchSet as X import Stratosphere.Resources.WAFIPSet as X import Stratosphere.Resources.WAFRule as X@@ -221,6 +232,14 @@ import Stratosphere.Resources.WAFSqlInjectionMatchSet as X import Stratosphere.Resources.WAFWebACL as X import Stratosphere.Resources.WAFXssMatchSet as X+import Stratosphere.Resources.WAFRegionalByteMatchSet as X+import Stratosphere.Resources.WAFRegionalIPSet as X+import Stratosphere.Resources.WAFRegionalRule as X+import Stratosphere.Resources.WAFRegionalSizeConstraintSet as X+import Stratosphere.Resources.WAFRegionalSqlInjectionMatchSet as X+import Stratosphere.Resources.WAFRegionalWebACL as X+import Stratosphere.Resources.WAFRegionalWebACLAssociation as X+import Stratosphere.Resources.WAFRegionalXssMatchSet as X import Stratosphere.Resources.WorkSpacesWorkspace as X import Stratosphere.ResourceProperties.ApiGatewayApiKeyStageKey as X import Stratosphere.ResourceProperties.ApiGatewayDeploymentMethodSetting as X@@ -264,12 +283,15 @@ import Stratosphere.ResourceProperties.CodeBuildProjectSourceAuth as X import Stratosphere.ResourceProperties.CodeCommitRepositoryRepositoryTrigger as X import Stratosphere.ResourceProperties.CodeDeployDeploymentConfigMinimumHealthyHosts as X+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupAlarm as X+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupAlarmConfiguration as X import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupDeployment as X import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupEC2TagFilter as X import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupGitHubLocation as X import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupRevisionLocation as X import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupS3Location as X import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupTagFilter as X+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupTriggerConfig as X import Stratosphere.ResourceProperties.CodePipelineCustomActionTypeArtifactDetails as X import Stratosphere.ResourceProperties.CodePipelineCustomActionTypeConfigurationProperties as X import Stratosphere.ResourceProperties.CodePipelineCustomActionTypeSettings as X@@ -282,6 +304,24 @@ import Stratosphere.ResourceProperties.CodePipelinePipelineOutputArtifact as X import Stratosphere.ResourceProperties.CodePipelinePipelineStageDeclaration as X import Stratosphere.ResourceProperties.CodePipelinePipelineStageTransition as X+import Stratosphere.ResourceProperties.CognitoIdentityPoolCognitoIdentityProvider as X+import Stratosphere.ResourceProperties.CognitoIdentityPoolCognitoStreams as X+import Stratosphere.ResourceProperties.CognitoIdentityPoolPushSync as X+import Stratosphere.ResourceProperties.CognitoIdentityPoolRoleAttachmentMappingRule as X+import Stratosphere.ResourceProperties.CognitoIdentityPoolRoleAttachmentRoleMapping as X+import Stratosphere.ResourceProperties.CognitoIdentityPoolRoleAttachmentRulesConfigurationType as X+import Stratosphere.ResourceProperties.CognitoUserPoolAdminCreateUserConfig as X+import Stratosphere.ResourceProperties.CognitoUserPoolDeviceConfiguration as X+import Stratosphere.ResourceProperties.CognitoUserPoolEmailConfiguration as X+import Stratosphere.ResourceProperties.CognitoUserPoolInviteMessageTemplate as X+import Stratosphere.ResourceProperties.CognitoUserPoolLambdaConfig as X+import Stratosphere.ResourceProperties.CognitoUserPoolNumberAttributeConstraints as X+import Stratosphere.ResourceProperties.CognitoUserPoolPasswordPolicy as X+import Stratosphere.ResourceProperties.CognitoUserPoolPolicies as X+import Stratosphere.ResourceProperties.CognitoUserPoolSchemaAttribute as X+import Stratosphere.ResourceProperties.CognitoUserPoolSmsConfiguration as X+import Stratosphere.ResourceProperties.CognitoUserPoolStringAttributeConstraints as X+import Stratosphere.ResourceProperties.CognitoUserPoolUserAttributeType as X import Stratosphere.ResourceProperties.ConfigConfigRuleScope as X import Stratosphere.ResourceProperties.ConfigConfigRuleSource as X import Stratosphere.ResourceProperties.ConfigConfigRuleSourceDetail as X@@ -316,19 +356,21 @@ 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.EC2SpotFleetBlockDeviceMapping as X+import Stratosphere.ResourceProperties.EC2SpotFleetEbsBlockDevice as X+import Stratosphere.ResourceProperties.EC2SpotFleetGroupIdentifier as X+import Stratosphere.ResourceProperties.EC2SpotFleetIamInstanceProfileSpecification 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.EC2SpotFleetInstanceNetworkInterfaceSpecification as X+import Stratosphere.ResourceProperties.EC2SpotFleetPrivateIpAddressSpecification as X+import Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetLaunchSpecification as X+import Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetMonitoring as X import Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetRequestConfigData as X+import Stratosphere.ResourceProperties.EC2SpotFleetSpotPlacement as X import Stratosphere.ResourceProperties.ECSServiceDeploymentConfiguration as X import Stratosphere.ResourceProperties.ECSServiceLoadBalancer as X+import Stratosphere.ResourceProperties.ECSServicePlacementConstraint as X+import Stratosphere.ResourceProperties.ECSServicePlacementStrategy as X import Stratosphere.ResourceProperties.ECSTaskDefinitionContainerDefinition as X import Stratosphere.ResourceProperties.ECSTaskDefinitionHostEntry as X import Stratosphere.ResourceProperties.ECSTaskDefinitionHostVolumeProperties as X@@ -336,23 +378,40 @@ import Stratosphere.ResourceProperties.ECSTaskDefinitionLogConfiguration as X import Stratosphere.ResourceProperties.ECSTaskDefinitionMountPoint as X import Stratosphere.ResourceProperties.ECSTaskDefinitionPortMapping as X+import Stratosphere.ResourceProperties.ECSTaskDefinitionTaskDefinitionPlacementConstraint 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.EMRClusterAutoScalingPolicy as X import Stratosphere.ResourceProperties.EMRClusterBootstrapActionConfig as X+import Stratosphere.ResourceProperties.EMRClusterCloudWatchAlarmDefinition 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.EMRClusterMetricDimension as X import Stratosphere.ResourceProperties.EMRClusterPlacementType as X+import Stratosphere.ResourceProperties.EMRClusterScalingAction as X+import Stratosphere.ResourceProperties.EMRClusterScalingConstraints as X+import Stratosphere.ResourceProperties.EMRClusterScalingRule as X+import Stratosphere.ResourceProperties.EMRClusterScalingTrigger as X import Stratosphere.ResourceProperties.EMRClusterScriptBootstrapActionConfig as X+import Stratosphere.ResourceProperties.EMRClusterSimpleScalingPolicyConfiguration as X import Stratosphere.ResourceProperties.EMRClusterVolumeSpecification as X+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigAutoScalingPolicy as X+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigCloudWatchAlarmDefinition as X import Stratosphere.ResourceProperties.EMRInstanceGroupConfigConfiguration as X import Stratosphere.ResourceProperties.EMRInstanceGroupConfigEbsBlockDeviceConfig as X import Stratosphere.ResourceProperties.EMRInstanceGroupConfigEbsConfiguration as X+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigMetricDimension as X+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingAction as X+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingConstraints as X+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingRule as X+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingTrigger as X+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigSimpleScalingPolicyConfiguration as X import Stratosphere.ResourceProperties.EMRInstanceGroupConfigVolumeSpecification as X import Stratosphere.ResourceProperties.EMRStepHadoopJarStepConfig as X import Stratosphere.ResourceProperties.EMRStepKeyValue as X@@ -416,6 +475,7 @@ import Stratosphere.ResourceProperties.LambdaFunctionCode as X import Stratosphere.ResourceProperties.LambdaFunctionDeadLetterConfig as X import Stratosphere.ResourceProperties.LambdaFunctionEnvironment as X+import Stratosphere.ResourceProperties.LambdaFunctionTracingConfig as X import Stratosphere.ResourceProperties.LambdaFunctionVpcConfig as X import Stratosphere.ResourceProperties.LogsMetricFilterMetricTransformation as X import Stratosphere.ResourceProperties.OpsWorksAppDataSource as X@@ -489,6 +549,18 @@ import Stratosphere.ResourceProperties.WAFWebACLWafAction as X import Stratosphere.ResourceProperties.WAFXssMatchSetFieldToMatch as X import Stratosphere.ResourceProperties.WAFXssMatchSetXssMatchTuple as X+import Stratosphere.ResourceProperties.WAFRegionalByteMatchSetByteMatchTuple as X+import Stratosphere.ResourceProperties.WAFRegionalByteMatchSetFieldToMatch as X+import Stratosphere.ResourceProperties.WAFRegionalIPSetIPSetDescriptor as X+import Stratosphere.ResourceProperties.WAFRegionalRulePredicate as X+import Stratosphere.ResourceProperties.WAFRegionalSizeConstraintSetFieldToMatch as X+import Stratosphere.ResourceProperties.WAFRegionalSizeConstraintSetSizeConstraint as X+import Stratosphere.ResourceProperties.WAFRegionalSqlInjectionMatchSetFieldToMatch as X+import Stratosphere.ResourceProperties.WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple as X+import Stratosphere.ResourceProperties.WAFRegionalWebACLAction as X+import Stratosphere.ResourceProperties.WAFRegionalWebACLRule as X+import Stratosphere.ResourceProperties.WAFRegionalXssMatchSetFieldToMatch as X+import Stratosphere.ResourceProperties.WAFRegionalXssMatchSetXssMatchTuple as X import Stratosphere.ResourceProperties.Tag as X  import Stratosphere.ResourceAttributes.AutoScalingReplacingUpdatePolicy as X@@ -535,6 +607,13 @@   | CodeDeployDeploymentGroupProperties CodeDeployDeploymentGroup   | CodePipelineCustomActionTypeProperties CodePipelineCustomActionType   | CodePipelinePipelineProperties CodePipelinePipeline+  | CognitoIdentityPoolProperties CognitoIdentityPool+  | CognitoIdentityPoolRoleAttachmentProperties CognitoIdentityPoolRoleAttachment+  | CognitoUserPoolProperties CognitoUserPool+  | CognitoUserPoolClientProperties CognitoUserPoolClient+  | CognitoUserPoolGroupProperties CognitoUserPoolGroup+  | CognitoUserPoolUserProperties CognitoUserPoolUser+  | CognitoUserPoolUserToGroupAttachmentProperties CognitoUserPoolUserToGroupAttachment   | ConfigConfigRuleProperties ConfigConfigRule   | ConfigConfigurationRecorderProperties ConfigConfigurationRecorder   | ConfigDeliveryChannelProperties ConfigDeliveryChannel@@ -586,6 +665,7 @@   | EFSMountTargetProperties EFSMountTarget   | EMRClusterProperties EMRCluster   | EMRInstanceGroupConfigProperties EMRInstanceGroupConfig+  | EMRSecurityConfigurationProperties EMRSecurityConfiguration   | EMRStepProperties EMRStep   | ElastiCacheCacheClusterProperties ElastiCacheCacheCluster   | ElastiCacheParameterGroupProperties ElastiCacheParameterGroup@@ -670,6 +750,9 @@   | SQSQueuePolicyProperties SQSQueuePolicy   | SSMAssociationProperties SSMAssociation   | SSMDocumentProperties SSMDocument+  | SSMParameterProperties SSMParameter+  | StepFunctionsActivityProperties StepFunctionsActivity+  | StepFunctionsStateMachineProperties StepFunctionsStateMachine   | WAFByteMatchSetProperties WAFByteMatchSet   | WAFIPSetProperties WAFIPSet   | WAFRuleProperties WAFRule@@ -677,6 +760,14 @@   | WAFSqlInjectionMatchSetProperties WAFSqlInjectionMatchSet   | WAFWebACLProperties WAFWebACL   | WAFXssMatchSetProperties WAFXssMatchSet+  | WAFRegionalByteMatchSetProperties WAFRegionalByteMatchSet+  | WAFRegionalIPSetProperties WAFRegionalIPSet+  | WAFRegionalRuleProperties WAFRegionalRule+  | WAFRegionalSizeConstraintSetProperties WAFRegionalSizeConstraintSet+  | WAFRegionalSqlInjectionMatchSetProperties WAFRegionalSqlInjectionMatchSet+  | WAFRegionalWebACLProperties WAFRegionalWebACL+  | WAFRegionalWebACLAssociationProperties WAFRegionalWebACLAssociation+  | WAFRegionalXssMatchSetProperties WAFRegionalXssMatchSet   | WorkSpacesWorkspaceProperties WorkSpacesWorkspace    deriving (Show, Eq)@@ -798,6 +889,20 @@   [ "Type" .= ("AWS::CodePipeline::CustomActionType" :: String), "Properties" .= toJSON x] resourcePropertiesJSON (CodePipelinePipelineProperties x) =   [ "Type" .= ("AWS::CodePipeline::Pipeline" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CognitoIdentityPoolProperties x) =+  [ "Type" .= ("AWS::Cognito::IdentityPool" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CognitoIdentityPoolRoleAttachmentProperties x) =+  [ "Type" .= ("AWS::Cognito::IdentityPoolRoleAttachment" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CognitoUserPoolProperties x) =+  [ "Type" .= ("AWS::Cognito::UserPool" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CognitoUserPoolClientProperties x) =+  [ "Type" .= ("AWS::Cognito::UserPoolClient" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CognitoUserPoolGroupProperties x) =+  [ "Type" .= ("AWS::Cognito::UserPoolGroup" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CognitoUserPoolUserProperties x) =+  [ "Type" .= ("AWS::Cognito::UserPoolUser" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (CognitoUserPoolUserToGroupAttachmentProperties x) =+  [ "Type" .= ("AWS::Cognito::UserPoolUserToGroupAttachment" :: String), "Properties" .= toJSON x] resourcePropertiesJSON (ConfigConfigRuleProperties x) =   [ "Type" .= ("AWS::Config::ConfigRule" :: String), "Properties" .= toJSON x] resourcePropertiesJSON (ConfigConfigurationRecorderProperties x) =@@ -900,6 +1005,8 @@   [ "Type" .= ("AWS::EMR::Cluster" :: String), "Properties" .= toJSON x] resourcePropertiesJSON (EMRInstanceGroupConfigProperties x) =   [ "Type" .= ("AWS::EMR::InstanceGroupConfig" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (EMRSecurityConfigurationProperties x) =+  [ "Type" .= ("AWS::EMR::SecurityConfiguration" :: String), "Properties" .= toJSON x] resourcePropertiesJSON (EMRStepProperties x) =   [ "Type" .= ("AWS::EMR::Step" :: String), "Properties" .= toJSON x] resourcePropertiesJSON (ElastiCacheCacheClusterProperties x) =@@ -1068,6 +1175,12 @@   [ "Type" .= ("AWS::SSM::Association" :: String), "Properties" .= toJSON x] resourcePropertiesJSON (SSMDocumentProperties x) =   [ "Type" .= ("AWS::SSM::Document" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (SSMParameterProperties x) =+  [ "Type" .= ("AWS::SSM::Parameter" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (StepFunctionsActivityProperties x) =+  [ "Type" .= ("AWS::StepFunctions::Activity" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (StepFunctionsStateMachineProperties x) =+  [ "Type" .= ("AWS::StepFunctions::StateMachine" :: String), "Properties" .= toJSON x] resourcePropertiesJSON (WAFByteMatchSetProperties x) =   [ "Type" .= ("AWS::WAF::ByteMatchSet" :: String), "Properties" .= toJSON x] resourcePropertiesJSON (WAFIPSetProperties x) =@@ -1082,6 +1195,22 @@   [ "Type" .= ("AWS::WAF::WebACL" :: String), "Properties" .= toJSON x] resourcePropertiesJSON (WAFXssMatchSetProperties x) =   [ "Type" .= ("AWS::WAF::XssMatchSet" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WAFRegionalByteMatchSetProperties x) =+  [ "Type" .= ("AWS::WAFRegional::ByteMatchSet" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WAFRegionalIPSetProperties x) =+  [ "Type" .= ("AWS::WAFRegional::IPSet" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WAFRegionalRuleProperties x) =+  [ "Type" .= ("AWS::WAFRegional::Rule" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WAFRegionalSizeConstraintSetProperties x) =+  [ "Type" .= ("AWS::WAFRegional::SizeConstraintSet" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WAFRegionalSqlInjectionMatchSetProperties x) =+  [ "Type" .= ("AWS::WAFRegional::SqlInjectionMatchSet" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WAFRegionalWebACLProperties x) =+  [ "Type" .= ("AWS::WAFRegional::WebACL" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WAFRegionalWebACLAssociationProperties x) =+  [ "Type" .= ("AWS::WAFRegional::WebACLAssociation" :: String), "Properties" .= toJSON x]+resourcePropertiesJSON (WAFRegionalXssMatchSetProperties x) =+  [ "Type" .= ("AWS::WAFRegional::XssMatchSet" :: String), "Properties" .= toJSON x] resourcePropertiesJSON (WorkSpacesWorkspaceProperties x) =   [ "Type" .= ("AWS::WorkSpaces::Workspace" :: String), "Properties" .= toJSON x] @@ -1124,6 +1253,13 @@          "AWS::CodeDeploy::DeploymentGroup" -> CodeDeployDeploymentGroupProperties <$> (o .: "Properties")          "AWS::CodePipeline::CustomActionType" -> CodePipelineCustomActionTypeProperties <$> (o .: "Properties")          "AWS::CodePipeline::Pipeline" -> CodePipelinePipelineProperties <$> (o .: "Properties")+         "AWS::Cognito::IdentityPool" -> CognitoIdentityPoolProperties <$> (o .: "Properties")+         "AWS::Cognito::IdentityPoolRoleAttachment" -> CognitoIdentityPoolRoleAttachmentProperties <$> (o .: "Properties")+         "AWS::Cognito::UserPool" -> CognitoUserPoolProperties <$> (o .: "Properties")+         "AWS::Cognito::UserPoolClient" -> CognitoUserPoolClientProperties <$> (o .: "Properties")+         "AWS::Cognito::UserPoolGroup" -> CognitoUserPoolGroupProperties <$> (o .: "Properties")+         "AWS::Cognito::UserPoolUser" -> CognitoUserPoolUserProperties <$> (o .: "Properties")+         "AWS::Cognito::UserPoolUserToGroupAttachment" -> CognitoUserPoolUserToGroupAttachmentProperties <$> (o .: "Properties")          "AWS::Config::ConfigRule" -> ConfigConfigRuleProperties <$> (o .: "Properties")          "AWS::Config::ConfigurationRecorder" -> ConfigConfigurationRecorderProperties <$> (o .: "Properties")          "AWS::Config::DeliveryChannel" -> ConfigDeliveryChannelProperties <$> (o .: "Properties")@@ -1175,6 +1311,7 @@          "AWS::EFS::MountTarget" -> EFSMountTargetProperties <$> (o .: "Properties")          "AWS::EMR::Cluster" -> EMRClusterProperties <$> (o .: "Properties")          "AWS::EMR::InstanceGroupConfig" -> EMRInstanceGroupConfigProperties <$> (o .: "Properties")+         "AWS::EMR::SecurityConfiguration" -> EMRSecurityConfigurationProperties <$> (o .: "Properties")          "AWS::EMR::Step" -> EMRStepProperties <$> (o .: "Properties")          "AWS::ElastiCache::CacheCluster" -> ElastiCacheCacheClusterProperties <$> (o .: "Properties")          "AWS::ElastiCache::ParameterGroup" -> ElastiCacheParameterGroupProperties <$> (o .: "Properties")@@ -1259,6 +1396,9 @@          "AWS::SQS::QueuePolicy" -> SQSQueuePolicyProperties <$> (o .: "Properties")          "AWS::SSM::Association" -> SSMAssociationProperties <$> (o .: "Properties")          "AWS::SSM::Document" -> SSMDocumentProperties <$> (o .: "Properties")+         "AWS::SSM::Parameter" -> SSMParameterProperties <$> (o .: "Properties")+         "AWS::StepFunctions::Activity" -> StepFunctionsActivityProperties <$> (o .: "Properties")+         "AWS::StepFunctions::StateMachine" -> StepFunctionsStateMachineProperties <$> (o .: "Properties")          "AWS::WAF::ByteMatchSet" -> WAFByteMatchSetProperties <$> (o .: "Properties")          "AWS::WAF::IPSet" -> WAFIPSetProperties <$> (o .: "Properties")          "AWS::WAF::Rule" -> WAFRuleProperties <$> (o .: "Properties")@@ -1266,6 +1406,14 @@          "AWS::WAF::SqlInjectionMatchSet" -> WAFSqlInjectionMatchSetProperties <$> (o .: "Properties")          "AWS::WAF::WebACL" -> WAFWebACLProperties <$> (o .: "Properties")          "AWS::WAF::XssMatchSet" -> WAFXssMatchSetProperties <$> (o .: "Properties")+         "AWS::WAFRegional::ByteMatchSet" -> WAFRegionalByteMatchSetProperties <$> (o .: "Properties")+         "AWS::WAFRegional::IPSet" -> WAFRegionalIPSetProperties <$> (o .: "Properties")+         "AWS::WAFRegional::Rule" -> WAFRegionalRuleProperties <$> (o .: "Properties")+         "AWS::WAFRegional::SizeConstraintSet" -> WAFRegionalSizeConstraintSetProperties <$> (o .: "Properties")+         "AWS::WAFRegional::SqlInjectionMatchSet" -> WAFRegionalSqlInjectionMatchSetProperties <$> (o .: "Properties")+         "AWS::WAFRegional::WebACL" -> WAFRegionalWebACLProperties <$> (o .: "Properties")+         "AWS::WAFRegional::WebACLAssociation" -> WAFRegionalWebACLAssociationProperties <$> (o .: "Properties")+         "AWS::WAFRegional::XssMatchSet" -> WAFRegionalXssMatchSetProperties <$> (o .: "Properties")          "AWS::WorkSpaces::Workspace" -> WorkSpacesWorkspaceProperties <$> (o .: "Properties")           _ -> fail $ "Unknown resource type: " ++ type'
library-gen/Stratosphere/Resources/AutoScalingLifecycleHook.hs view
@@ -23,8 +23,8 @@   , _autoScalingLifecycleHookHeartbeatTimeout :: Maybe (Val Integer')   , _autoScalingLifecycleHookLifecycleTransition :: Val Text   , _autoScalingLifecycleHookNotificationMetadata :: Maybe (Val Text)-  , _autoScalingLifecycleHookNotificationTargetARN :: Val Text-  , _autoScalingLifecycleHookRoleARN :: Val Text+  , _autoScalingLifecycleHookNotificationTargetARN :: Maybe (Val Text)+  , _autoScalingLifecycleHookRoleARN :: Maybe (Val Text)   } deriving (Show, Eq)  instance ToJSON AutoScalingLifecycleHook where@@ -36,8 +36,8 @@     , ("HeartbeatTimeout" .=) <$> _autoScalingLifecycleHookHeartbeatTimeout     , Just ("LifecycleTransition" .= _autoScalingLifecycleHookLifecycleTransition)     , ("NotificationMetadata" .=) <$> _autoScalingLifecycleHookNotificationMetadata-    , Just ("NotificationTargetARN" .= _autoScalingLifecycleHookNotificationTargetARN)-    , Just ("RoleARN" .= _autoScalingLifecycleHookRoleARN)+    , ("NotificationTargetARN" .=) <$> _autoScalingLifecycleHookNotificationTargetARN+    , ("RoleARN" .=) <$> _autoScalingLifecycleHookRoleARN     ]  instance FromJSON AutoScalingLifecycleHook where@@ -48,8 +48,8 @@       obj .:? "HeartbeatTimeout" <*>       obj .: "LifecycleTransition" <*>       obj .:? "NotificationMetadata" <*>-      obj .: "NotificationTargetARN" <*>-      obj .: "RoleARN"+      obj .:? "NotificationTargetARN" <*>+      obj .:? "RoleARN"   parseJSON _ = mempty  -- | Constructor for 'AutoScalingLifecycleHook' containing required fields as@@ -57,18 +57,16 @@ autoScalingLifecycleHook   :: Val Text -- ^ 'aslhAutoScalingGroupName'   -> Val Text -- ^ 'aslhLifecycleTransition'-  -> Val Text -- ^ 'aslhNotificationTargetARN'-  -> Val Text -- ^ 'aslhRoleARN'   -> AutoScalingLifecycleHook-autoScalingLifecycleHook autoScalingGroupNamearg lifecycleTransitionarg notificationTargetARNarg roleARNarg =+autoScalingLifecycleHook autoScalingGroupNamearg lifecycleTransitionarg =   AutoScalingLifecycleHook   { _autoScalingLifecycleHookAutoScalingGroupName = autoScalingGroupNamearg   , _autoScalingLifecycleHookDefaultResult = Nothing   , _autoScalingLifecycleHookHeartbeatTimeout = Nothing   , _autoScalingLifecycleHookLifecycleTransition = lifecycleTransitionarg   , _autoScalingLifecycleHookNotificationMetadata = Nothing-  , _autoScalingLifecycleHookNotificationTargetARN = notificationTargetARNarg-  , _autoScalingLifecycleHookRoleARN = roleARNarg+  , _autoScalingLifecycleHookNotificationTargetARN = Nothing+  , _autoScalingLifecycleHookRoleARN = Nothing   }  -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-lifecyclehook.html#cfn-as-lifecyclehook-autoscalinggroupname@@ -92,9 +90,9 @@ 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' AutoScalingLifecycleHook (Maybe (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' AutoScalingLifecycleHook (Maybe (Val Text)) aslhRoleARN = lens _autoScalingLifecycleHookRoleARN (\s a -> s { _autoScalingLifecycleHookRoleARN = a })
library-gen/Stratosphere/Resources/CloudWatchAlarm.hs view
@@ -24,14 +24,17 @@   , _cloudWatchAlarmAlarmName :: Maybe (Val Text)   , _cloudWatchAlarmComparisonOperator :: Val Text   , _cloudWatchAlarmDimensions :: Maybe [CloudWatchAlarmDimension]+  , _cloudWatchAlarmEvaluateLowSampleCountPercentile :: Maybe (Val Text)   , _cloudWatchAlarmEvaluationPeriods :: Val Integer'+  , _cloudWatchAlarmExtendedStatistic :: Maybe (Val Text)   , _cloudWatchAlarmInsufficientDataActions :: Maybe [Val Text]   , _cloudWatchAlarmMetricName :: Val Text   , _cloudWatchAlarmNamespace :: Val Text   , _cloudWatchAlarmOKActions :: Maybe [Val Text]   , _cloudWatchAlarmPeriod :: Val Integer'-  , _cloudWatchAlarmStatistic :: Val Text+  , _cloudWatchAlarmStatistic :: Maybe (Val Text)   , _cloudWatchAlarmThreshold :: Val Double'+  , _cloudWatchAlarmTreatMissingData :: Maybe (Val Text)   , _cloudWatchAlarmUnit :: Maybe (Val Text)   } deriving (Show, Eq) @@ -45,14 +48,17 @@     , ("AlarmName" .=) <$> _cloudWatchAlarmAlarmName     , Just ("ComparisonOperator" .= _cloudWatchAlarmComparisonOperator)     , ("Dimensions" .=) <$> _cloudWatchAlarmDimensions+    , ("EvaluateLowSampleCountPercentile" .=) <$> _cloudWatchAlarmEvaluateLowSampleCountPercentile     , Just ("EvaluationPeriods" .= _cloudWatchAlarmEvaluationPeriods)+    , ("ExtendedStatistic" .=) <$> _cloudWatchAlarmExtendedStatistic     , ("InsufficientDataActions" .=) <$> _cloudWatchAlarmInsufficientDataActions     , Just ("MetricName" .= _cloudWatchAlarmMetricName)     , Just ("Namespace" .= _cloudWatchAlarmNamespace)     , ("OKActions" .=) <$> _cloudWatchAlarmOKActions     , Just ("Period" .= _cloudWatchAlarmPeriod)-    , Just ("Statistic" .= _cloudWatchAlarmStatistic)+    , ("Statistic" .=) <$> _cloudWatchAlarmStatistic     , Just ("Threshold" .= _cloudWatchAlarmThreshold)+    , ("TreatMissingData" .=) <$> _cloudWatchAlarmTreatMissingData     , ("Unit" .=) <$> _cloudWatchAlarmUnit     ] @@ -65,14 +71,17 @@       obj .:? "AlarmName" <*>       obj .: "ComparisonOperator" <*>       obj .:? "Dimensions" <*>+      obj .:? "EvaluateLowSampleCountPercentile" <*>       obj .: "EvaluationPeriods" <*>+      obj .:? "ExtendedStatistic" <*>       obj .:? "InsufficientDataActions" <*>       obj .: "MetricName" <*>       obj .: "Namespace" <*>       obj .:? "OKActions" <*>       obj .: "Period" <*>-      obj .: "Statistic" <*>+      obj .:? "Statistic" <*>       obj .: "Threshold" <*>+      obj .:? "TreatMissingData" <*>       obj .:? "Unit"   parseJSON _ = mempty @@ -84,10 +93,9 @@   -> 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 comparisonOperatorarg evaluationPeriodsarg metricNamearg namespacearg periodarg thresholdarg =   CloudWatchAlarm   { _cloudWatchAlarmActionsEnabled = Nothing   , _cloudWatchAlarmAlarmActions = Nothing@@ -95,14 +103,17 @@   , _cloudWatchAlarmAlarmName = Nothing   , _cloudWatchAlarmComparisonOperator = comparisonOperatorarg   , _cloudWatchAlarmDimensions = Nothing+  , _cloudWatchAlarmEvaluateLowSampleCountPercentile = Nothing   , _cloudWatchAlarmEvaluationPeriods = evaluationPeriodsarg+  , _cloudWatchAlarmExtendedStatistic = Nothing   , _cloudWatchAlarmInsufficientDataActions = Nothing   , _cloudWatchAlarmMetricName = metricNamearg   , _cloudWatchAlarmNamespace = namespacearg   , _cloudWatchAlarmOKActions = Nothing   , _cloudWatchAlarmPeriod = periodarg-  , _cloudWatchAlarmStatistic = statisticarg+  , _cloudWatchAlarmStatistic = Nothing   , _cloudWatchAlarmThreshold = thresholdarg+  , _cloudWatchAlarmTreatMissingData = Nothing   , _cloudWatchAlarmUnit = Nothing   } @@ -130,10 +141,18 @@ 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-evaluatelowsamplecountpercentile+cwaEvaluateLowSampleCountPercentile :: Lens' CloudWatchAlarm (Maybe (Val Text))+cwaEvaluateLowSampleCountPercentile = lens _cloudWatchAlarmEvaluateLowSampleCountPercentile (\s a -> s { _cloudWatchAlarmEvaluateLowSampleCountPercentile = a })+ -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-evaluationperiods cwaEvaluationPeriods :: Lens' CloudWatchAlarm (Val Integer') cwaEvaluationPeriods = lens _cloudWatchAlarmEvaluationPeriods (\s a -> s { _cloudWatchAlarmEvaluationPeriods = a }) +-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-extendedstatistic+cwaExtendedStatistic :: Lens' CloudWatchAlarm (Maybe (Val Text))+cwaExtendedStatistic = lens _cloudWatchAlarmExtendedStatistic (\s a -> s { _cloudWatchAlarmExtendedStatistic = 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 })@@ -155,12 +174,16 @@ 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' CloudWatchAlarm (Maybe (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-treatmissingdata+cwaTreatMissingData :: Lens' CloudWatchAlarm (Maybe (Val Text))+cwaTreatMissingData = lens _cloudWatchAlarmTreatMissingData (\s a -> s { _cloudWatchAlarmTreatMissingData = a })  -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cw-alarm.html#cfn-cloudwatch-alarms-unit cwaUnit :: Lens' CloudWatchAlarm (Maybe (Val Text))
library-gen/Stratosphere/Resources/CodeDeployDeploymentGroup.hs view
@@ -12,15 +12,18 @@ import Data.Text  import Stratosphere.Values+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupAlarmConfiguration import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupDeployment import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupEC2TagFilter import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupTagFilter+import Stratosphere.ResourceProperties.CodeDeployDeploymentGroupTriggerConfig  -- | Full data type definition for CodeDeployDeploymentGroup. See -- 'codeDeployDeploymentGroup' for a more convenient constructor. data CodeDeployDeploymentGroup =   CodeDeployDeploymentGroup-  { _codeDeployDeploymentGroupApplicationName :: Val Text+  { _codeDeployDeploymentGroupAlarmConfiguration :: Maybe CodeDeployDeploymentGroupAlarmConfiguration+  , _codeDeployDeploymentGroupApplicationName :: Val Text   , _codeDeployDeploymentGroupAutoScalingGroups :: Maybe [Val Text]   , _codeDeployDeploymentGroupDeployment :: Maybe CodeDeployDeploymentGroupDeployment   , _codeDeployDeploymentGroupDeploymentConfigName :: Maybe (Val Text)@@ -28,13 +31,15 @@   , _codeDeployDeploymentGroupEc2TagFilters :: Maybe [CodeDeployDeploymentGroupEC2TagFilter]   , _codeDeployDeploymentGroupOnPremisesInstanceTagFilters :: Maybe [CodeDeployDeploymentGroupTagFilter]   , _codeDeployDeploymentGroupServiceRoleArn :: Val Text+  , _codeDeployDeploymentGroupTriggerConfigurations :: Maybe [CodeDeployDeploymentGroupTriggerConfig]   } deriving (Show, Eq)  instance ToJSON CodeDeployDeploymentGroup where   toJSON CodeDeployDeploymentGroup{..} =     object $     catMaybes-    [ Just ("ApplicationName" .= _codeDeployDeploymentGroupApplicationName)+    [ ("AlarmConfiguration" .=) <$> _codeDeployDeploymentGroupAlarmConfiguration+    , Just ("ApplicationName" .= _codeDeployDeploymentGroupApplicationName)     , ("AutoScalingGroups" .=) <$> _codeDeployDeploymentGroupAutoScalingGroups     , ("Deployment" .=) <$> _codeDeployDeploymentGroupDeployment     , ("DeploymentConfigName" .=) <$> _codeDeployDeploymentGroupDeploymentConfigName@@ -42,11 +47,13 @@     , ("Ec2TagFilters" .=) <$> _codeDeployDeploymentGroupEc2TagFilters     , ("OnPremisesInstanceTagFilters" .=) <$> _codeDeployDeploymentGroupOnPremisesInstanceTagFilters     , Just ("ServiceRoleArn" .= _codeDeployDeploymentGroupServiceRoleArn)+    , ("TriggerConfigurations" .=) <$> _codeDeployDeploymentGroupTriggerConfigurations     ]  instance FromJSON CodeDeployDeploymentGroup where   parseJSON (Object obj) =     CodeDeployDeploymentGroup <$>+      obj .:? "AlarmConfiguration" <*>       obj .: "ApplicationName" <*>       obj .:? "AutoScalingGroups" <*>       obj .:? "Deployment" <*>@@ -54,7 +61,8 @@       obj .:? "DeploymentGroupName" <*>       obj .:? "Ec2TagFilters" <*>       obj .:? "OnPremisesInstanceTagFilters" <*>-      obj .: "ServiceRoleArn"+      obj .: "ServiceRoleArn" <*>+      obj .:? "TriggerConfigurations"   parseJSON _ = mempty  -- | Constructor for 'CodeDeployDeploymentGroup' containing required fields as@@ -65,7 +73,8 @@   -> CodeDeployDeploymentGroup codeDeployDeploymentGroup applicationNamearg serviceRoleArnarg =   CodeDeployDeploymentGroup-  { _codeDeployDeploymentGroupApplicationName = applicationNamearg+  { _codeDeployDeploymentGroupAlarmConfiguration = Nothing+  , _codeDeployDeploymentGroupApplicationName = applicationNamearg   , _codeDeployDeploymentGroupAutoScalingGroups = Nothing   , _codeDeployDeploymentGroupDeployment = Nothing   , _codeDeployDeploymentGroupDeploymentConfigName = Nothing@@ -73,8 +82,13 @@   , _codeDeployDeploymentGroupEc2TagFilters = Nothing   , _codeDeployDeploymentGroupOnPremisesInstanceTagFilters = Nothing   , _codeDeployDeploymentGroupServiceRoleArn = serviceRoleArnarg+  , _codeDeployDeploymentGroupTriggerConfigurations = Nothing   } +-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-alarmconfiguration+cddgAlarmConfiguration :: Lens' CodeDeployDeploymentGroup (Maybe CodeDeployDeploymentGroupAlarmConfiguration)+cddgAlarmConfiguration = lens _codeDeployDeploymentGroupAlarmConfiguration (\s a -> s { _codeDeployDeploymentGroupAlarmConfiguration = a })+ -- | 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 })@@ -106,3 +120,7 @@ -- | 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 })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-deploymentgroup.html#cfn-codedeploy-deploymentgroup-triggerconfigurations+cddgTriggerConfigurations :: Lens' CodeDeployDeploymentGroup (Maybe [CodeDeployDeploymentGroupTriggerConfig])+cddgTriggerConfigurations = lens _codeDeployDeploymentGroupTriggerConfigurations (\s a -> s { _codeDeployDeploymentGroupTriggerConfigurations = a })
+ library-gen/Stratosphere/Resources/CognitoIdentityPool.hs view
@@ -0,0 +1,123 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html++module Stratosphere.Resources.CognitoIdentityPool where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.CognitoIdentityPoolCognitoIdentityProvider+import Stratosphere.ResourceProperties.CognitoIdentityPoolCognitoStreams+import Stratosphere.ResourceProperties.CognitoIdentityPoolPushSync++-- | Full data type definition for CognitoIdentityPool. See+-- 'cognitoIdentityPool' for a more convenient constructor.+data CognitoIdentityPool =+  CognitoIdentityPool+  { _cognitoIdentityPoolAllowUnauthenticatedIdentities :: Val Bool'+  , _cognitoIdentityPoolCognitoEvents :: Maybe Object+  , _cognitoIdentityPoolCognitoIdentityProviders :: Maybe [CognitoIdentityPoolCognitoIdentityProvider]+  , _cognitoIdentityPoolCognitoStreams :: Maybe CognitoIdentityPoolCognitoStreams+  , _cognitoIdentityPoolDeveloperProviderName :: Maybe (Val Text)+  , _cognitoIdentityPoolIdentityPoolName :: Maybe (Val Text)+  , _cognitoIdentityPoolOpenIdConnectProviderARNs :: Maybe [Val Text]+  , _cognitoIdentityPoolPushSync :: Maybe CognitoIdentityPoolPushSync+  , _cognitoIdentityPoolSamlProviderARNs :: Maybe [Val Text]+  , _cognitoIdentityPoolSupportedLoginProviders :: Maybe Object+  } deriving (Show, Eq)++instance ToJSON CognitoIdentityPool where+  toJSON CognitoIdentityPool{..} =+    object $+    catMaybes+    [ Just ("AllowUnauthenticatedIdentities" .= _cognitoIdentityPoolAllowUnauthenticatedIdentities)+    , ("CognitoEvents" .=) <$> _cognitoIdentityPoolCognitoEvents+    , ("CognitoIdentityProviders" .=) <$> _cognitoIdentityPoolCognitoIdentityProviders+    , ("CognitoStreams" .=) <$> _cognitoIdentityPoolCognitoStreams+    , ("DeveloperProviderName" .=) <$> _cognitoIdentityPoolDeveloperProviderName+    , ("IdentityPoolName" .=) <$> _cognitoIdentityPoolIdentityPoolName+    , ("OpenIdConnectProviderARNs" .=) <$> _cognitoIdentityPoolOpenIdConnectProviderARNs+    , ("PushSync" .=) <$> _cognitoIdentityPoolPushSync+    , ("SamlProviderARNs" .=) <$> _cognitoIdentityPoolSamlProviderARNs+    , ("SupportedLoginProviders" .=) <$> _cognitoIdentityPoolSupportedLoginProviders+    ]++instance FromJSON CognitoIdentityPool where+  parseJSON (Object obj) =+    CognitoIdentityPool <$>+      obj .: "AllowUnauthenticatedIdentities" <*>+      obj .:? "CognitoEvents" <*>+      obj .:? "CognitoIdentityProviders" <*>+      obj .:? "CognitoStreams" <*>+      obj .:? "DeveloperProviderName" <*>+      obj .:? "IdentityPoolName" <*>+      obj .:? "OpenIdConnectProviderARNs" <*>+      obj .:? "PushSync" <*>+      obj .:? "SamlProviderARNs" <*>+      obj .:? "SupportedLoginProviders"+  parseJSON _ = mempty++-- | Constructor for 'CognitoIdentityPool' containing required fields as+-- arguments.+cognitoIdentityPool+  :: Val Bool' -- ^ 'cipAllowUnauthenticatedIdentities'+  -> CognitoIdentityPool+cognitoIdentityPool allowUnauthenticatedIdentitiesarg =+  CognitoIdentityPool+  { _cognitoIdentityPoolAllowUnauthenticatedIdentities = allowUnauthenticatedIdentitiesarg+  , _cognitoIdentityPoolCognitoEvents = Nothing+  , _cognitoIdentityPoolCognitoIdentityProviders = Nothing+  , _cognitoIdentityPoolCognitoStreams = Nothing+  , _cognitoIdentityPoolDeveloperProviderName = Nothing+  , _cognitoIdentityPoolIdentityPoolName = Nothing+  , _cognitoIdentityPoolOpenIdConnectProviderARNs = Nothing+  , _cognitoIdentityPoolPushSync = Nothing+  , _cognitoIdentityPoolSamlProviderARNs = Nothing+  , _cognitoIdentityPoolSupportedLoginProviders = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-allowunauthenticatedidentities+cipAllowUnauthenticatedIdentities :: Lens' CognitoIdentityPool (Val Bool')+cipAllowUnauthenticatedIdentities = lens _cognitoIdentityPoolAllowUnauthenticatedIdentities (\s a -> s { _cognitoIdentityPoolAllowUnauthenticatedIdentities = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-cognitoevents+cipCognitoEvents :: Lens' CognitoIdentityPool (Maybe Object)+cipCognitoEvents = lens _cognitoIdentityPoolCognitoEvents (\s a -> s { _cognitoIdentityPoolCognitoEvents = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-cognitoidentityproviders+cipCognitoIdentityProviders :: Lens' CognitoIdentityPool (Maybe [CognitoIdentityPoolCognitoIdentityProvider])+cipCognitoIdentityProviders = lens _cognitoIdentityPoolCognitoIdentityProviders (\s a -> s { _cognitoIdentityPoolCognitoIdentityProviders = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-cognitostreams+cipCognitoStreams :: Lens' CognitoIdentityPool (Maybe CognitoIdentityPoolCognitoStreams)+cipCognitoStreams = lens _cognitoIdentityPoolCognitoStreams (\s a -> s { _cognitoIdentityPoolCognitoStreams = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-developerprovidername+cipDeveloperProviderName :: Lens' CognitoIdentityPool (Maybe (Val Text))+cipDeveloperProviderName = lens _cognitoIdentityPoolDeveloperProviderName (\s a -> s { _cognitoIdentityPoolDeveloperProviderName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-identitypoolname+cipIdentityPoolName :: Lens' CognitoIdentityPool (Maybe (Val Text))+cipIdentityPoolName = lens _cognitoIdentityPoolIdentityPoolName (\s a -> s { _cognitoIdentityPoolIdentityPoolName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-openidconnectproviderarns+cipOpenIdConnectProviderARNs :: Lens' CognitoIdentityPool (Maybe [Val Text])+cipOpenIdConnectProviderARNs = lens _cognitoIdentityPoolOpenIdConnectProviderARNs (\s a -> s { _cognitoIdentityPoolOpenIdConnectProviderARNs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-pushsync+cipPushSync :: Lens' CognitoIdentityPool (Maybe CognitoIdentityPoolPushSync)+cipPushSync = lens _cognitoIdentityPoolPushSync (\s a -> s { _cognitoIdentityPoolPushSync = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-samlproviderarns+cipSamlProviderARNs :: Lens' CognitoIdentityPool (Maybe [Val Text])+cipSamlProviderARNs = lens _cognitoIdentityPoolSamlProviderARNs (\s a -> s { _cognitoIdentityPoolSamlProviderARNs = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypool.html#cfn-cognito-identitypool-supportedloginproviders+cipSupportedLoginProviders :: Lens' CognitoIdentityPool (Maybe Object)+cipSupportedLoginProviders = lens _cognitoIdentityPoolSupportedLoginProviders (\s a -> s { _cognitoIdentityPoolSupportedLoginProviders = a })
+ library-gen/Stratosphere/Resources/CognitoIdentityPoolRoleAttachment.hs view
@@ -0,0 +1,65 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html++module Stratosphere.Resources.CognitoIdentityPoolRoleAttachment where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoIdentityPoolRoleAttachment. See+-- 'cognitoIdentityPoolRoleAttachment' for a more convenient constructor.+data CognitoIdentityPoolRoleAttachment =+  CognitoIdentityPoolRoleAttachment+  { _cognitoIdentityPoolRoleAttachmentIdentityPoolId :: Val Text+  , _cognitoIdentityPoolRoleAttachmentRoleMappings :: Maybe Object+  , _cognitoIdentityPoolRoleAttachmentRoles :: Maybe Object+  } deriving (Show, Eq)++instance ToJSON CognitoIdentityPoolRoleAttachment where+  toJSON CognitoIdentityPoolRoleAttachment{..} =+    object $+    catMaybes+    [ Just ("IdentityPoolId" .= _cognitoIdentityPoolRoleAttachmentIdentityPoolId)+    , ("RoleMappings" .=) <$> _cognitoIdentityPoolRoleAttachmentRoleMappings+    , ("Roles" .=) <$> _cognitoIdentityPoolRoleAttachmentRoles+    ]++instance FromJSON CognitoIdentityPoolRoleAttachment where+  parseJSON (Object obj) =+    CognitoIdentityPoolRoleAttachment <$>+      obj .: "IdentityPoolId" <*>+      obj .:? "RoleMappings" <*>+      obj .:? "Roles"+  parseJSON _ = mempty++-- | Constructor for 'CognitoIdentityPoolRoleAttachment' containing required+-- fields as arguments.+cognitoIdentityPoolRoleAttachment+  :: Val Text -- ^ 'cipraIdentityPoolId'+  -> CognitoIdentityPoolRoleAttachment+cognitoIdentityPoolRoleAttachment identityPoolIdarg =+  CognitoIdentityPoolRoleAttachment+  { _cognitoIdentityPoolRoleAttachmentIdentityPoolId = identityPoolIdarg+  , _cognitoIdentityPoolRoleAttachmentRoleMappings = Nothing+  , _cognitoIdentityPoolRoleAttachmentRoles = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html#cfn-cognito-identitypoolroleattachment-identitypoolid+cipraIdentityPoolId :: Lens' CognitoIdentityPoolRoleAttachment (Val Text)+cipraIdentityPoolId = lens _cognitoIdentityPoolRoleAttachmentIdentityPoolId (\s a -> s { _cognitoIdentityPoolRoleAttachmentIdentityPoolId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html#cfn-cognito-identitypoolroleattachment-rolemappings+cipraRoleMappings :: Lens' CognitoIdentityPoolRoleAttachment (Maybe Object)+cipraRoleMappings = lens _cognitoIdentityPoolRoleAttachmentRoleMappings (\s a -> s { _cognitoIdentityPoolRoleAttachmentRoleMappings = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-identitypoolroleattachment.html#cfn-cognito-identitypoolroleattachment-roles+cipraRoles :: Lens' CognitoIdentityPoolRoleAttachment (Maybe Object)+cipraRoles = lens _cognitoIdentityPoolRoleAttachmentRoles (\s a -> s { _cognitoIdentityPoolRoleAttachmentRoles = a })
+ library-gen/Stratosphere/Resources/CognitoUserPool.hs view
@@ -0,0 +1,174 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html++module Stratosphere.Resources.CognitoUserPool where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.CognitoUserPoolAdminCreateUserConfig+import Stratosphere.ResourceProperties.CognitoUserPoolDeviceConfiguration+import Stratosphere.ResourceProperties.CognitoUserPoolEmailConfiguration+import Stratosphere.ResourceProperties.CognitoUserPoolLambdaConfig+import Stratosphere.ResourceProperties.CognitoUserPoolPolicies+import Stratosphere.ResourceProperties.CognitoUserPoolSchemaAttribute+import Stratosphere.ResourceProperties.CognitoUserPoolSmsConfiguration++-- | Full data type definition for CognitoUserPool. See 'cognitoUserPool' for+-- a more convenient constructor.+data CognitoUserPool =+  CognitoUserPool+  { _cognitoUserPoolAdminCreateUserConfig :: Maybe CognitoUserPoolAdminCreateUserConfig+  , _cognitoUserPoolAliasAttributes :: Maybe [Val Text]+  , _cognitoUserPoolAutoVerifiedAttributes :: Maybe [Val Text]+  , _cognitoUserPoolDeviceConfiguration :: Maybe CognitoUserPoolDeviceConfiguration+  , _cognitoUserPoolEmailConfiguration :: Maybe CognitoUserPoolEmailConfiguration+  , _cognitoUserPoolEmailVerificationMessage :: Maybe (Val Text)+  , _cognitoUserPoolEmailVerificationSubject :: Maybe (Val Text)+  , _cognitoUserPoolLambdaConfig :: Maybe CognitoUserPoolLambdaConfig+  , _cognitoUserPoolMfaConfiguration :: Maybe (Val Text)+  , _cognitoUserPoolPolicies :: Maybe CognitoUserPoolPolicies+  , _cognitoUserPoolSchema :: Maybe [CognitoUserPoolSchemaAttribute]+  , _cognitoUserPoolSmsAuthenticationMessage :: Maybe (Val Text)+  , _cognitoUserPoolSmsConfiguration :: Maybe CognitoUserPoolSmsConfiguration+  , _cognitoUserPoolSmsVerificationMessage :: Maybe (Val Text)+  , _cognitoUserPoolUserPoolName :: Maybe (Val Text)+  , _cognitoUserPoolUserPoolTags :: Maybe Object+  } deriving (Show, Eq)++instance ToJSON CognitoUserPool where+  toJSON CognitoUserPool{..} =+    object $+    catMaybes+    [ ("AdminCreateUserConfig" .=) <$> _cognitoUserPoolAdminCreateUserConfig+    , ("AliasAttributes" .=) <$> _cognitoUserPoolAliasAttributes+    , ("AutoVerifiedAttributes" .=) <$> _cognitoUserPoolAutoVerifiedAttributes+    , ("DeviceConfiguration" .=) <$> _cognitoUserPoolDeviceConfiguration+    , ("EmailConfiguration" .=) <$> _cognitoUserPoolEmailConfiguration+    , ("EmailVerificationMessage" .=) <$> _cognitoUserPoolEmailVerificationMessage+    , ("EmailVerificationSubject" .=) <$> _cognitoUserPoolEmailVerificationSubject+    , ("LambdaConfig" .=) <$> _cognitoUserPoolLambdaConfig+    , ("MfaConfiguration" .=) <$> _cognitoUserPoolMfaConfiguration+    , ("Policies" .=) <$> _cognitoUserPoolPolicies+    , ("Schema" .=) <$> _cognitoUserPoolSchema+    , ("SmsAuthenticationMessage" .=) <$> _cognitoUserPoolSmsAuthenticationMessage+    , ("SmsConfiguration" .=) <$> _cognitoUserPoolSmsConfiguration+    , ("SmsVerificationMessage" .=) <$> _cognitoUserPoolSmsVerificationMessage+    , ("UserPoolName" .=) <$> _cognitoUserPoolUserPoolName+    , ("UserPoolTags" .=) <$> _cognitoUserPoolUserPoolTags+    ]++instance FromJSON CognitoUserPool where+  parseJSON (Object obj) =+    CognitoUserPool <$>+      obj .:? "AdminCreateUserConfig" <*>+      obj .:? "AliasAttributes" <*>+      obj .:? "AutoVerifiedAttributes" <*>+      obj .:? "DeviceConfiguration" <*>+      obj .:? "EmailConfiguration" <*>+      obj .:? "EmailVerificationMessage" <*>+      obj .:? "EmailVerificationSubject" <*>+      obj .:? "LambdaConfig" <*>+      obj .:? "MfaConfiguration" <*>+      obj .:? "Policies" <*>+      obj .:? "Schema" <*>+      obj .:? "SmsAuthenticationMessage" <*>+      obj .:? "SmsConfiguration" <*>+      obj .:? "SmsVerificationMessage" <*>+      obj .:? "UserPoolName" <*>+      obj .:? "UserPoolTags"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPool' containing required fields as+-- arguments.+cognitoUserPool+  :: CognitoUserPool+cognitoUserPool  =+  CognitoUserPool+  { _cognitoUserPoolAdminCreateUserConfig = Nothing+  , _cognitoUserPoolAliasAttributes = Nothing+  , _cognitoUserPoolAutoVerifiedAttributes = Nothing+  , _cognitoUserPoolDeviceConfiguration = Nothing+  , _cognitoUserPoolEmailConfiguration = Nothing+  , _cognitoUserPoolEmailVerificationMessage = Nothing+  , _cognitoUserPoolEmailVerificationSubject = Nothing+  , _cognitoUserPoolLambdaConfig = Nothing+  , _cognitoUserPoolMfaConfiguration = Nothing+  , _cognitoUserPoolPolicies = Nothing+  , _cognitoUserPoolSchema = Nothing+  , _cognitoUserPoolSmsAuthenticationMessage = Nothing+  , _cognitoUserPoolSmsConfiguration = Nothing+  , _cognitoUserPoolSmsVerificationMessage = Nothing+  , _cognitoUserPoolUserPoolName = Nothing+  , _cognitoUserPoolUserPoolTags = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-admincreateuserconfig+cupAdminCreateUserConfig :: Lens' CognitoUserPool (Maybe CognitoUserPoolAdminCreateUserConfig)+cupAdminCreateUserConfig = lens _cognitoUserPoolAdminCreateUserConfig (\s a -> s { _cognitoUserPoolAdminCreateUserConfig = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-aliasattributes+cupAliasAttributes :: Lens' CognitoUserPool (Maybe [Val Text])+cupAliasAttributes = lens _cognitoUserPoolAliasAttributes (\s a -> s { _cognitoUserPoolAliasAttributes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-autoverifiedattributes+cupAutoVerifiedAttributes :: Lens' CognitoUserPool (Maybe [Val Text])+cupAutoVerifiedAttributes = lens _cognitoUserPoolAutoVerifiedAttributes (\s a -> s { _cognitoUserPoolAutoVerifiedAttributes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-deviceconfiguration+cupDeviceConfiguration :: Lens' CognitoUserPool (Maybe CognitoUserPoolDeviceConfiguration)+cupDeviceConfiguration = lens _cognitoUserPoolDeviceConfiguration (\s a -> s { _cognitoUserPoolDeviceConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-emailconfiguration+cupEmailConfiguration :: Lens' CognitoUserPool (Maybe CognitoUserPoolEmailConfiguration)+cupEmailConfiguration = lens _cognitoUserPoolEmailConfiguration (\s a -> s { _cognitoUserPoolEmailConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-emailverificationmessage+cupEmailVerificationMessage :: Lens' CognitoUserPool (Maybe (Val Text))+cupEmailVerificationMessage = lens _cognitoUserPoolEmailVerificationMessage (\s a -> s { _cognitoUserPoolEmailVerificationMessage = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-emailverificationsubject+cupEmailVerificationSubject :: Lens' CognitoUserPool (Maybe (Val Text))+cupEmailVerificationSubject = lens _cognitoUserPoolEmailVerificationSubject (\s a -> s { _cognitoUserPoolEmailVerificationSubject = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-lambdaconfig+cupLambdaConfig :: Lens' CognitoUserPool (Maybe CognitoUserPoolLambdaConfig)+cupLambdaConfig = lens _cognitoUserPoolLambdaConfig (\s a -> s { _cognitoUserPoolLambdaConfig = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-mfaconfiguration+cupMfaConfiguration :: Lens' CognitoUserPool (Maybe (Val Text))+cupMfaConfiguration = lens _cognitoUserPoolMfaConfiguration (\s a -> s { _cognitoUserPoolMfaConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-policies+cupPolicies :: Lens' CognitoUserPool (Maybe CognitoUserPoolPolicies)+cupPolicies = lens _cognitoUserPoolPolicies (\s a -> s { _cognitoUserPoolPolicies = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-schema+cupSchema :: Lens' CognitoUserPool (Maybe [CognitoUserPoolSchemaAttribute])+cupSchema = lens _cognitoUserPoolSchema (\s a -> s { _cognitoUserPoolSchema = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-smsauthenticationmessage+cupSmsAuthenticationMessage :: Lens' CognitoUserPool (Maybe (Val Text))+cupSmsAuthenticationMessage = lens _cognitoUserPoolSmsAuthenticationMessage (\s a -> s { _cognitoUserPoolSmsAuthenticationMessage = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-smsconfiguration+cupSmsConfiguration :: Lens' CognitoUserPool (Maybe CognitoUserPoolSmsConfiguration)+cupSmsConfiguration = lens _cognitoUserPoolSmsConfiguration (\s a -> s { _cognitoUserPoolSmsConfiguration = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-smsverificationmessage+cupSmsVerificationMessage :: Lens' CognitoUserPool (Maybe (Val Text))+cupSmsVerificationMessage = lens _cognitoUserPoolSmsVerificationMessage (\s a -> s { _cognitoUserPoolSmsVerificationMessage = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-userpoolname+cupUserPoolName :: Lens' CognitoUserPool (Maybe (Val Text))+cupUserPoolName = lens _cognitoUserPoolUserPoolName (\s a -> s { _cognitoUserPoolUserPoolName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpool.html#cfn-cognito-userpool-userpooltags+cupUserPoolTags :: Lens' CognitoUserPool (Maybe Object)+cupUserPoolTags = lens _cognitoUserPoolUserPoolTags (\s a -> s { _cognitoUserPoolUserPoolTags = a })
+ library-gen/Stratosphere/Resources/CognitoUserPoolClient.hs view
@@ -0,0 +1,97 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html++module Stratosphere.Resources.CognitoUserPoolClient where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoUserPoolClient. See+-- 'cognitoUserPoolClient' for a more convenient constructor.+data CognitoUserPoolClient =+  CognitoUserPoolClient+  { _cognitoUserPoolClientClientName :: Maybe (Val Text)+  , _cognitoUserPoolClientExplicitAuthFlows :: Maybe [Val Text]+  , _cognitoUserPoolClientGenerateSecret :: Maybe (Val Bool')+  , _cognitoUserPoolClientReadAttributes :: Maybe [Val Text]+  , _cognitoUserPoolClientRefreshTokenValidity :: Maybe (Val Double')+  , _cognitoUserPoolClientUserPoolId :: Val Text+  , _cognitoUserPoolClientWriteAttributes :: Maybe [Val Text]+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolClient where+  toJSON CognitoUserPoolClient{..} =+    object $+    catMaybes+    [ ("ClientName" .=) <$> _cognitoUserPoolClientClientName+    , ("ExplicitAuthFlows" .=) <$> _cognitoUserPoolClientExplicitAuthFlows+    , ("GenerateSecret" .=) <$> _cognitoUserPoolClientGenerateSecret+    , ("ReadAttributes" .=) <$> _cognitoUserPoolClientReadAttributes+    , ("RefreshTokenValidity" .=) <$> _cognitoUserPoolClientRefreshTokenValidity+    , Just ("UserPoolId" .= _cognitoUserPoolClientUserPoolId)+    , ("WriteAttributes" .=) <$> _cognitoUserPoolClientWriteAttributes+    ]++instance FromJSON CognitoUserPoolClient where+  parseJSON (Object obj) =+    CognitoUserPoolClient <$>+      obj .:? "ClientName" <*>+      obj .:? "ExplicitAuthFlows" <*>+      obj .:? "GenerateSecret" <*>+      obj .:? "ReadAttributes" <*>+      obj .:? "RefreshTokenValidity" <*>+      obj .: "UserPoolId" <*>+      obj .:? "WriteAttributes"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolClient' containing required fields as+-- arguments.+cognitoUserPoolClient+  :: Val Text -- ^ 'cupcUserPoolId'+  -> CognitoUserPoolClient+cognitoUserPoolClient userPoolIdarg =+  CognitoUserPoolClient+  { _cognitoUserPoolClientClientName = Nothing+  , _cognitoUserPoolClientExplicitAuthFlows = Nothing+  , _cognitoUserPoolClientGenerateSecret = Nothing+  , _cognitoUserPoolClientReadAttributes = Nothing+  , _cognitoUserPoolClientRefreshTokenValidity = Nothing+  , _cognitoUserPoolClientUserPoolId = userPoolIdarg+  , _cognitoUserPoolClientWriteAttributes = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-clientname+cupcClientName :: Lens' CognitoUserPoolClient (Maybe (Val Text))+cupcClientName = lens _cognitoUserPoolClientClientName (\s a -> s { _cognitoUserPoolClientClientName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-explicitauthflows+cupcExplicitAuthFlows :: Lens' CognitoUserPoolClient (Maybe [Val Text])+cupcExplicitAuthFlows = lens _cognitoUserPoolClientExplicitAuthFlows (\s a -> s { _cognitoUserPoolClientExplicitAuthFlows = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-generatesecret+cupcGenerateSecret :: Lens' CognitoUserPoolClient (Maybe (Val Bool'))+cupcGenerateSecret = lens _cognitoUserPoolClientGenerateSecret (\s a -> s { _cognitoUserPoolClientGenerateSecret = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-readattributes+cupcReadAttributes :: Lens' CognitoUserPoolClient (Maybe [Val Text])+cupcReadAttributes = lens _cognitoUserPoolClientReadAttributes (\s a -> s { _cognitoUserPoolClientReadAttributes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-refreshtokenvalidity+cupcRefreshTokenValidity :: Lens' CognitoUserPoolClient (Maybe (Val Double'))+cupcRefreshTokenValidity = lens _cognitoUserPoolClientRefreshTokenValidity (\s a -> s { _cognitoUserPoolClientRefreshTokenValidity = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-userpoolid+cupcUserPoolId :: Lens' CognitoUserPoolClient (Val Text)+cupcUserPoolId = lens _cognitoUserPoolClientUserPoolId (\s a -> s { _cognitoUserPoolClientUserPoolId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-writeattributes+cupcWriteAttributes :: Lens' CognitoUserPoolClient (Maybe [Val Text])+cupcWriteAttributes = lens _cognitoUserPoolClientWriteAttributes (\s a -> s { _cognitoUserPoolClientWriteAttributes = a })
+ library-gen/Stratosphere/Resources/CognitoUserPoolGroup.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html++module Stratosphere.Resources.CognitoUserPoolGroup where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoUserPoolGroup. See+-- 'cognitoUserPoolGroup' for a more convenient constructor.+data CognitoUserPoolGroup =+  CognitoUserPoolGroup+  { _cognitoUserPoolGroupDescription :: Maybe (Val Text)+  , _cognitoUserPoolGroupGroupName :: Maybe (Val Text)+  , _cognitoUserPoolGroupPrecedence :: Maybe (Val Double')+  , _cognitoUserPoolGroupRoleArn :: Maybe (Val Text)+  , _cognitoUserPoolGroupUserPoolId :: Val Text+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolGroup where+  toJSON CognitoUserPoolGroup{..} =+    object $+    catMaybes+    [ ("Description" .=) <$> _cognitoUserPoolGroupDescription+    , ("GroupName" .=) <$> _cognitoUserPoolGroupGroupName+    , ("Precedence" .=) <$> _cognitoUserPoolGroupPrecedence+    , ("RoleArn" .=) <$> _cognitoUserPoolGroupRoleArn+    , Just ("UserPoolId" .= _cognitoUserPoolGroupUserPoolId)+    ]++instance FromJSON CognitoUserPoolGroup where+  parseJSON (Object obj) =+    CognitoUserPoolGroup <$>+      obj .:? "Description" <*>+      obj .:? "GroupName" <*>+      obj .:? "Precedence" <*>+      obj .:? "RoleArn" <*>+      obj .: "UserPoolId"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolGroup' containing required fields as+-- arguments.+cognitoUserPoolGroup+  :: Val Text -- ^ 'cupgUserPoolId'+  -> CognitoUserPoolGroup+cognitoUserPoolGroup userPoolIdarg =+  CognitoUserPoolGroup+  { _cognitoUserPoolGroupDescription = Nothing+  , _cognitoUserPoolGroupGroupName = Nothing+  , _cognitoUserPoolGroupPrecedence = Nothing+  , _cognitoUserPoolGroupRoleArn = Nothing+  , _cognitoUserPoolGroupUserPoolId = userPoolIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-description+cupgDescription :: Lens' CognitoUserPoolGroup (Maybe (Val Text))+cupgDescription = lens _cognitoUserPoolGroupDescription (\s a -> s { _cognitoUserPoolGroupDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-groupname+cupgGroupName :: Lens' CognitoUserPoolGroup (Maybe (Val Text))+cupgGroupName = lens _cognitoUserPoolGroupGroupName (\s a -> s { _cognitoUserPoolGroupGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-precedence+cupgPrecedence :: Lens' CognitoUserPoolGroup (Maybe (Val Double'))+cupgPrecedence = lens _cognitoUserPoolGroupPrecedence (\s a -> s { _cognitoUserPoolGroupPrecedence = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-rolearn+cupgRoleArn :: Lens' CognitoUserPoolGroup (Maybe (Val Text))+cupgRoleArn = lens _cognitoUserPoolGroupRoleArn (\s a -> s { _cognitoUserPoolGroupRoleArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolgroup.html#cfn-cognito-userpoolgroup-userpoolid+cupgUserPoolId :: Lens' CognitoUserPoolGroup (Val Text)+cupgUserPoolId = lens _cognitoUserPoolGroupUserPoolId (\s a -> s { _cognitoUserPoolGroupUserPoolId = a })
+ library-gen/Stratosphere/Resources/CognitoUserPoolUser.hs view
@@ -0,0 +1,97 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html++module Stratosphere.Resources.CognitoUserPoolUser where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.CognitoUserPoolUserAttributeType++-- | Full data type definition for CognitoUserPoolUser. See+-- 'cognitoUserPoolUser' for a more convenient constructor.+data CognitoUserPoolUser =+  CognitoUserPoolUser+  { _cognitoUserPoolUserDesiredDeliveryMediums :: Maybe [Val Text]+  , _cognitoUserPoolUserForceAliasCreation :: Maybe (Val Bool')+  , _cognitoUserPoolUserMessageAction :: Maybe (Val Text)+  , _cognitoUserPoolUserUserAttributes :: Maybe [CognitoUserPoolUserAttributeType]+  , _cognitoUserPoolUserUserPoolId :: Val Text+  , _cognitoUserPoolUserUsername :: Maybe (Val Text)+  , _cognitoUserPoolUserValidationData :: Maybe [CognitoUserPoolUserAttributeType]+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolUser where+  toJSON CognitoUserPoolUser{..} =+    object $+    catMaybes+    [ ("DesiredDeliveryMediums" .=) <$> _cognitoUserPoolUserDesiredDeliveryMediums+    , ("ForceAliasCreation" .=) <$> _cognitoUserPoolUserForceAliasCreation+    , ("MessageAction" .=) <$> _cognitoUserPoolUserMessageAction+    , ("UserAttributes" .=) <$> _cognitoUserPoolUserUserAttributes+    , Just ("UserPoolId" .= _cognitoUserPoolUserUserPoolId)+    , ("Username" .=) <$> _cognitoUserPoolUserUsername+    , ("ValidationData" .=) <$> _cognitoUserPoolUserValidationData+    ]++instance FromJSON CognitoUserPoolUser where+  parseJSON (Object obj) =+    CognitoUserPoolUser <$>+      obj .:? "DesiredDeliveryMediums" <*>+      obj .:? "ForceAliasCreation" <*>+      obj .:? "MessageAction" <*>+      obj .:? "UserAttributes" <*>+      obj .: "UserPoolId" <*>+      obj .:? "Username" <*>+      obj .:? "ValidationData"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolUser' containing required fields as+-- arguments.+cognitoUserPoolUser+  :: Val Text -- ^ 'cupuUserPoolId'+  -> CognitoUserPoolUser+cognitoUserPoolUser userPoolIdarg =+  CognitoUserPoolUser+  { _cognitoUserPoolUserDesiredDeliveryMediums = Nothing+  , _cognitoUserPoolUserForceAliasCreation = Nothing+  , _cognitoUserPoolUserMessageAction = Nothing+  , _cognitoUserPoolUserUserAttributes = Nothing+  , _cognitoUserPoolUserUserPoolId = userPoolIdarg+  , _cognitoUserPoolUserUsername = Nothing+  , _cognitoUserPoolUserValidationData = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-desireddeliverymediums+cupuDesiredDeliveryMediums :: Lens' CognitoUserPoolUser (Maybe [Val Text])+cupuDesiredDeliveryMediums = lens _cognitoUserPoolUserDesiredDeliveryMediums (\s a -> s { _cognitoUserPoolUserDesiredDeliveryMediums = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-forcealiascreation+cupuForceAliasCreation :: Lens' CognitoUserPoolUser (Maybe (Val Bool'))+cupuForceAliasCreation = lens _cognitoUserPoolUserForceAliasCreation (\s a -> s { _cognitoUserPoolUserForceAliasCreation = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-messageaction+cupuMessageAction :: Lens' CognitoUserPoolUser (Maybe (Val Text))+cupuMessageAction = lens _cognitoUserPoolUserMessageAction (\s a -> s { _cognitoUserPoolUserMessageAction = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-userattributes+cupuUserAttributes :: Lens' CognitoUserPoolUser (Maybe [CognitoUserPoolUserAttributeType])+cupuUserAttributes = lens _cognitoUserPoolUserUserAttributes (\s a -> s { _cognitoUserPoolUserUserAttributes = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-userpoolid+cupuUserPoolId :: Lens' CognitoUserPoolUser (Val Text)+cupuUserPoolId = lens _cognitoUserPoolUserUserPoolId (\s a -> s { _cognitoUserPoolUserUserPoolId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-username+cupuUsername :: Lens' CognitoUserPoolUser (Maybe (Val Text))+cupuUsername = lens _cognitoUserPoolUserUsername (\s a -> s { _cognitoUserPoolUserUsername = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpooluser.html#cfn-cognito-userpooluser-validationdata+cupuValidationData :: Lens' CognitoUserPoolUser (Maybe [CognitoUserPoolUserAttributeType])+cupuValidationData = lens _cognitoUserPoolUserValidationData (\s a -> s { _cognitoUserPoolUserValidationData = a })
+ library-gen/Stratosphere/Resources/CognitoUserPoolUserToGroupAttachment.hs view
@@ -0,0 +1,67 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html++module Stratosphere.Resources.CognitoUserPoolUserToGroupAttachment where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for CognitoUserPoolUserToGroupAttachment. See+-- 'cognitoUserPoolUserToGroupAttachment' for a more convenient constructor.+data CognitoUserPoolUserToGroupAttachment =+  CognitoUserPoolUserToGroupAttachment+  { _cognitoUserPoolUserToGroupAttachmentGroupName :: Val Text+  , _cognitoUserPoolUserToGroupAttachmentUserPoolId :: Val Text+  , _cognitoUserPoolUserToGroupAttachmentUsername :: Val Text+  } deriving (Show, Eq)++instance ToJSON CognitoUserPoolUserToGroupAttachment where+  toJSON CognitoUserPoolUserToGroupAttachment{..} =+    object $+    catMaybes+    [ Just ("GroupName" .= _cognitoUserPoolUserToGroupAttachmentGroupName)+    , Just ("UserPoolId" .= _cognitoUserPoolUserToGroupAttachmentUserPoolId)+    , Just ("Username" .= _cognitoUserPoolUserToGroupAttachmentUsername)+    ]++instance FromJSON CognitoUserPoolUserToGroupAttachment where+  parseJSON (Object obj) =+    CognitoUserPoolUserToGroupAttachment <$>+      obj .: "GroupName" <*>+      obj .: "UserPoolId" <*>+      obj .: "Username"+  parseJSON _ = mempty++-- | Constructor for 'CognitoUserPoolUserToGroupAttachment' containing+-- required fields as arguments.+cognitoUserPoolUserToGroupAttachment+  :: Val Text -- ^ 'cuputgaGroupName'+  -> Val Text -- ^ 'cuputgaUserPoolId'+  -> Val Text -- ^ 'cuputgaUsername'+  -> CognitoUserPoolUserToGroupAttachment+cognitoUserPoolUserToGroupAttachment groupNamearg userPoolIdarg usernamearg =+  CognitoUserPoolUserToGroupAttachment+  { _cognitoUserPoolUserToGroupAttachmentGroupName = groupNamearg+  , _cognitoUserPoolUserToGroupAttachmentUserPoolId = userPoolIdarg+  , _cognitoUserPoolUserToGroupAttachmentUsername = usernamearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html#cfn-cognito-userpoolusertogroupattachment-groupname+cuputgaGroupName :: Lens' CognitoUserPoolUserToGroupAttachment (Val Text)+cuputgaGroupName = lens _cognitoUserPoolUserToGroupAttachmentGroupName (\s a -> s { _cognitoUserPoolUserToGroupAttachmentGroupName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html#cfn-cognito-userpoolusertogroupattachment-userpoolid+cuputgaUserPoolId :: Lens' CognitoUserPoolUserToGroupAttachment (Val Text)+cuputgaUserPoolId = lens _cognitoUserPoolUserToGroupAttachmentUserPoolId (\s a -> s { _cognitoUserPoolUserToGroupAttachmentUserPoolId = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolusertogroupattachment.html#cfn-cognito-userpoolusertogroupattachment-username+cuputgaUsername :: Lens' CognitoUserPoolUserToGroupAttachment (Val Text)+cuputgaUsername = lens _cognitoUserPoolUserToGroupAttachmentUsername (\s a -> s { _cognitoUserPoolUserToGroupAttachmentUsername = a })
library-gen/Stratosphere/Resources/EC2EIPAssociation.hs view
@@ -19,7 +19,7 @@ data EC2EIPAssociation =   EC2EIPAssociation   { _eC2EIPAssociationAllocationId :: Maybe (Val Text)-  , _eC2EIPAssociationEip :: Maybe (Val Text)+  , _eC2EIPAssociationEIP :: Maybe (Val Text)   , _eC2EIPAssociationInstanceId :: Maybe (Val Text)   , _eC2EIPAssociationNetworkInterfaceId :: Maybe (Val Text)   , _eC2EIPAssociationPrivateIpAddress :: Maybe (Val Text)@@ -30,7 +30,7 @@     object $     catMaybes     [ ("AllocationId" .=) <$> _eC2EIPAssociationAllocationId-    , ("Eip" .=) <$> _eC2EIPAssociationEip+    , ("EIP" .=) <$> _eC2EIPAssociationEIP     , ("InstanceId" .=) <$> _eC2EIPAssociationInstanceId     , ("NetworkInterfaceId" .=) <$> _eC2EIPAssociationNetworkInterfaceId     , ("PrivateIpAddress" .=) <$> _eC2EIPAssociationPrivateIpAddress@@ -40,7 +40,7 @@   parseJSON (Object obj) =     EC2EIPAssociation <$>       obj .:? "AllocationId" <*>-      obj .:? "Eip" <*>+      obj .:? "EIP" <*>       obj .:? "InstanceId" <*>       obj .:? "NetworkInterfaceId" <*>       obj .:? "PrivateIpAddress"@@ -53,7 +53,7 @@ ec2EIPAssociation  =   EC2EIPAssociation   { _eC2EIPAssociationAllocationId = Nothing-  , _eC2EIPAssociationEip = Nothing+  , _eC2EIPAssociationEIP = Nothing   , _eC2EIPAssociationInstanceId = Nothing   , _eC2EIPAssociationNetworkInterfaceId = Nothing   , _eC2EIPAssociationPrivateIpAddress = Nothing@@ -64,8 +64,8 @@ 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 })+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))
library-gen/Stratosphere/Resources/EC2SecurityGroup.hs view
@@ -20,6 +20,7 @@ data EC2SecurityGroup =   EC2SecurityGroup   { _eC2SecurityGroupGroupDescription :: Val Text+  , _eC2SecurityGroupGroupName :: Maybe (Val Text)   , _eC2SecurityGroupSecurityGroupEgress :: Maybe [EC2SecurityGroupRule]   , _eC2SecurityGroupSecurityGroupIngress :: Maybe [EC2SecurityGroupRule]   , _eC2SecurityGroupTags :: Maybe [Tag]@@ -31,6 +32,7 @@     object $     catMaybes     [ Just ("GroupDescription" .= _eC2SecurityGroupGroupDescription)+    , ("GroupName" .=) <$> _eC2SecurityGroupGroupName     , ("SecurityGroupEgress" .=) <$> _eC2SecurityGroupSecurityGroupEgress     , ("SecurityGroupIngress" .=) <$> _eC2SecurityGroupSecurityGroupIngress     , ("Tags" .=) <$> _eC2SecurityGroupTags@@ -41,6 +43,7 @@   parseJSON (Object obj) =     EC2SecurityGroup <$>       obj .: "GroupDescription" <*>+      obj .:? "GroupName" <*>       obj .:? "SecurityGroupEgress" <*>       obj .:? "SecurityGroupIngress" <*>       obj .:? "Tags" <*>@@ -55,6 +58,7 @@ ec2SecurityGroup groupDescriptionarg =   EC2SecurityGroup   { _eC2SecurityGroupGroupDescription = groupDescriptionarg+  , _eC2SecurityGroupGroupName = Nothing   , _eC2SecurityGroupSecurityGroupEgress = Nothing   , _eC2SecurityGroupSecurityGroupIngress = Nothing   , _eC2SecurityGroupTags = Nothing@@ -64,6 +68,10 @@ -- | 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-groupname+ecsgGroupName :: Lens' EC2SecurityGroup (Maybe (Val Text))+ecsgGroupName = lens _eC2SecurityGroupGroupName (\s a -> s { _eC2SecurityGroupGroupName = a })  -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-security-group.html#cfn-ec2-securitygroup-securitygroupegress ecsgSecurityGroupEgress :: Lens' EC2SecurityGroup (Maybe [EC2SecurityGroupRule])
library-gen/Stratosphere/Resources/ECSService.hs view
@@ -14,6 +14,8 @@ import Stratosphere.Values import Stratosphere.ResourceProperties.ECSServiceDeploymentConfiguration import Stratosphere.ResourceProperties.ECSServiceLoadBalancer+import Stratosphere.ResourceProperties.ECSServicePlacementConstraint+import Stratosphere.ResourceProperties.ECSServicePlacementStrategy  -- | Full data type definition for ECSService. See 'ecsService' for a more -- convenient constructor.@@ -21,9 +23,12 @@   ECSService   { _eCSServiceCluster :: Maybe (Val Text)   , _eCSServiceDeploymentConfiguration :: Maybe ECSServiceDeploymentConfiguration-  , _eCSServiceDesiredCount :: Val Integer'+  , _eCSServiceDesiredCount :: Maybe (Val Integer')   , _eCSServiceLoadBalancers :: Maybe [ECSServiceLoadBalancer]+  , _eCSServicePlacementConstraints :: Maybe [ECSServicePlacementConstraint]+  , _eCSServicePlacementStrategies :: Maybe [ECSServicePlacementStrategy]   , _eCSServiceRole :: Maybe (Val Text)+  , _eCSServiceServiceName :: Maybe (Val Text)   , _eCSServiceTaskDefinition :: Val Text   } deriving (Show, Eq) @@ -33,9 +38,12 @@     catMaybes     [ ("Cluster" .=) <$> _eCSServiceCluster     , ("DeploymentConfiguration" .=) <$> _eCSServiceDeploymentConfiguration-    , Just ("DesiredCount" .= _eCSServiceDesiredCount)+    , ("DesiredCount" .=) <$> _eCSServiceDesiredCount     , ("LoadBalancers" .=) <$> _eCSServiceLoadBalancers+    , ("PlacementConstraints" .=) <$> _eCSServicePlacementConstraints+    , ("PlacementStrategies" .=) <$> _eCSServicePlacementStrategies     , ("Role" .=) <$> _eCSServiceRole+    , ("ServiceName" .=) <$> _eCSServiceServiceName     , Just ("TaskDefinition" .= _eCSServiceTaskDefinition)     ] @@ -44,24 +52,29 @@     ECSService <$>       obj .:? "Cluster" <*>       obj .:? "DeploymentConfiguration" <*>-      obj .: "DesiredCount" <*>+      obj .:? "DesiredCount" <*>       obj .:? "LoadBalancers" <*>+      obj .:? "PlacementConstraints" <*>+      obj .:? "PlacementStrategies" <*>       obj .:? "Role" <*>+      obj .:? "ServiceName" <*>       obj .: "TaskDefinition"   parseJSON _ = mempty  -- | Constructor for 'ECSService' containing required fields as arguments. ecsService-  :: Val Integer' -- ^ 'ecssDesiredCount'-  -> Val Text -- ^ 'ecssTaskDefinition'+  :: Val Text -- ^ 'ecssTaskDefinition'   -> ECSService-ecsService desiredCountarg taskDefinitionarg =+ecsService taskDefinitionarg =   ECSService   { _eCSServiceCluster = Nothing   , _eCSServiceDeploymentConfiguration = Nothing-  , _eCSServiceDesiredCount = desiredCountarg+  , _eCSServiceDesiredCount = Nothing   , _eCSServiceLoadBalancers = Nothing+  , _eCSServicePlacementConstraints = Nothing+  , _eCSServicePlacementStrategies = Nothing   , _eCSServiceRole = Nothing+  , _eCSServiceServiceName = Nothing   , _eCSServiceTaskDefinition = taskDefinitionarg   } @@ -74,16 +87,28 @@ 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' ECSService (Maybe (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-placementconstraints+ecssPlacementConstraints :: Lens' ECSService (Maybe [ECSServicePlacementConstraint])+ecssPlacementConstraints = lens _eCSServicePlacementConstraints (\s a -> s { _eCSServicePlacementConstraints = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-placementstrategies+ecssPlacementStrategies :: Lens' ECSService (Maybe [ECSServicePlacementStrategy])+ecssPlacementStrategies = lens _eCSServicePlacementStrategies (\s a -> s { _eCSServicePlacementStrategies = 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-servicename+ecssServiceName :: Lens' ECSService (Maybe (Val Text))+ecssServiceName = lens _eCSServiceServiceName (\s a -> s { _eCSServiceServiceName = a })  -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-service.html#cfn-ecs-service-taskdefinition ecssTaskDefinition :: Lens' ECSService (Val Text)
library-gen/Stratosphere/Resources/ECSTaskDefinition.hs view
@@ -13,6 +13,7 @@  import Stratosphere.Values import Stratosphere.ResourceProperties.ECSTaskDefinitionContainerDefinition+import Stratosphere.ResourceProperties.ECSTaskDefinitionTaskDefinitionPlacementConstraint import Stratosphere.ResourceProperties.ECSTaskDefinitionVolume  -- | Full data type definition for ECSTaskDefinition. See 'ecsTaskDefinition'@@ -22,6 +23,7 @@   { _eCSTaskDefinitionContainerDefinitions :: Maybe [ECSTaskDefinitionContainerDefinition]   , _eCSTaskDefinitionFamily :: Maybe (Val Text)   , _eCSTaskDefinitionNetworkMode :: Maybe (Val Text)+  , _eCSTaskDefinitionPlacementConstraints :: Maybe [ECSTaskDefinitionTaskDefinitionPlacementConstraint]   , _eCSTaskDefinitionTaskRoleArn :: Maybe (Val Text)   , _eCSTaskDefinitionVolumes :: Maybe [ECSTaskDefinitionVolume]   } deriving (Show, Eq)@@ -33,6 +35,7 @@     [ ("ContainerDefinitions" .=) <$> _eCSTaskDefinitionContainerDefinitions     , ("Family" .=) <$> _eCSTaskDefinitionFamily     , ("NetworkMode" .=) <$> _eCSTaskDefinitionNetworkMode+    , ("PlacementConstraints" .=) <$> _eCSTaskDefinitionPlacementConstraints     , ("TaskRoleArn" .=) <$> _eCSTaskDefinitionTaskRoleArn     , ("Volumes" .=) <$> _eCSTaskDefinitionVolumes     ]@@ -43,6 +46,7 @@       obj .:? "ContainerDefinitions" <*>       obj .:? "Family" <*>       obj .:? "NetworkMode" <*>+      obj .:? "PlacementConstraints" <*>       obj .:? "TaskRoleArn" <*>       obj .:? "Volumes"   parseJSON _ = mempty@@ -56,6 +60,7 @@   { _eCSTaskDefinitionContainerDefinitions = Nothing   , _eCSTaskDefinitionFamily = Nothing   , _eCSTaskDefinitionNetworkMode = Nothing+  , _eCSTaskDefinitionPlacementConstraints = Nothing   , _eCSTaskDefinitionTaskRoleArn = Nothing   , _eCSTaskDefinitionVolumes = Nothing   }@@ -71,6 +76,10 @@ -- | 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-placementconstraints+ecstdPlacementConstraints :: Lens' ECSTaskDefinition (Maybe [ECSTaskDefinitionTaskDefinitionPlacementConstraint])+ecstdPlacementConstraints = lens _eCSTaskDefinitionPlacementConstraints (\s a -> s { _eCSTaskDefinitionPlacementConstraints = a })  -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html#cfn-ecs-taskdefinition-taskrolearn ecstdTaskRoleArn :: Lens' ECSTaskDefinition (Maybe (Val Text))
library-gen/Stratosphere/Resources/EMRCluster.hs view
@@ -24,6 +24,7 @@   EMRCluster   { _eMRClusterAdditionalInfo :: Maybe Object   , _eMRClusterApplications :: Maybe [EMRClusterApplication]+  , _eMRClusterAutoScalingRole :: Maybe (Val Text)   , _eMRClusterBootstrapActions :: Maybe [EMRClusterBootstrapActionConfig]   , _eMRClusterConfigurations :: Maybe [EMRClusterConfiguration]   , _eMRClusterInstances :: EMRClusterJobFlowInstancesConfig@@ -31,6 +32,8 @@   , _eMRClusterLogUri :: Maybe (Val Text)   , _eMRClusterName :: Val Text   , _eMRClusterReleaseLabel :: Maybe (Val Text)+  , _eMRClusterScaleDownBehavior :: Maybe (Val Text)+  , _eMRClusterSecurityConfiguration :: Maybe (Val Text)   , _eMRClusterServiceRole :: Val Text   , _eMRClusterTags :: Maybe [Tag]   , _eMRClusterVisibleToAllUsers :: Maybe (Val Bool')@@ -42,6 +45,7 @@     catMaybes     [ ("AdditionalInfo" .=) <$> _eMRClusterAdditionalInfo     , ("Applications" .=) <$> _eMRClusterApplications+    , ("AutoScalingRole" .=) <$> _eMRClusterAutoScalingRole     , ("BootstrapActions" .=) <$> _eMRClusterBootstrapActions     , ("Configurations" .=) <$> _eMRClusterConfigurations     , Just ("Instances" .= _eMRClusterInstances)@@ -49,6 +53,8 @@     , ("LogUri" .=) <$> _eMRClusterLogUri     , Just ("Name" .= _eMRClusterName)     , ("ReleaseLabel" .=) <$> _eMRClusterReleaseLabel+    , ("ScaleDownBehavior" .=) <$> _eMRClusterScaleDownBehavior+    , ("SecurityConfiguration" .=) <$> _eMRClusterSecurityConfiguration     , Just ("ServiceRole" .= _eMRClusterServiceRole)     , ("Tags" .=) <$> _eMRClusterTags     , ("VisibleToAllUsers" .=) <$> _eMRClusterVisibleToAllUsers@@ -59,6 +65,7 @@     EMRCluster <$>       obj .:? "AdditionalInfo" <*>       obj .:? "Applications" <*>+      obj .:? "AutoScalingRole" <*>       obj .:? "BootstrapActions" <*>       obj .:? "Configurations" <*>       obj .: "Instances" <*>@@ -66,6 +73,8 @@       obj .:? "LogUri" <*>       obj .: "Name" <*>       obj .:? "ReleaseLabel" <*>+      obj .:? "ScaleDownBehavior" <*>+      obj .:? "SecurityConfiguration" <*>       obj .: "ServiceRole" <*>       obj .:? "Tags" <*>       obj .:? "VisibleToAllUsers"@@ -82,6 +91,7 @@   EMRCluster   { _eMRClusterAdditionalInfo = Nothing   , _eMRClusterApplications = Nothing+  , _eMRClusterAutoScalingRole = Nothing   , _eMRClusterBootstrapActions = Nothing   , _eMRClusterConfigurations = Nothing   , _eMRClusterInstances = instancesarg@@ -89,6 +99,8 @@   , _eMRClusterLogUri = Nothing   , _eMRClusterName = namearg   , _eMRClusterReleaseLabel = Nothing+  , _eMRClusterScaleDownBehavior = Nothing+  , _eMRClusterSecurityConfiguration = Nothing   , _eMRClusterServiceRole = serviceRolearg   , _eMRClusterTags = Nothing   , _eMRClusterVisibleToAllUsers = Nothing@@ -102,6 +114,10 @@ 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-elasticmapreduce-cluster-autoscalingrole+emrcAutoScalingRole :: Lens' EMRCluster (Maybe (Val Text))+emrcAutoScalingRole = lens _eMRClusterAutoScalingRole (\s a -> s { _eMRClusterAutoScalingRole = 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 })@@ -129,6 +145,14 @@ -- | 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-elasticmapreduce-cluster-scaledownbehavior+emrcScaleDownBehavior :: Lens' EMRCluster (Maybe (Val Text))+emrcScaleDownBehavior = lens _eMRClusterScaleDownBehavior (\s a -> s { _eMRClusterScaleDownBehavior = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html#cfn-emr-securityconfiguration+emrcSecurityConfiguration :: Lens' EMRCluster (Maybe (Val Text))+emrcSecurityConfiguration = lens _eMRClusterSecurityConfiguration (\s a -> s { _eMRClusterSecurityConfiguration = a })  -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-cluster.html#cfn-emr-cluster-servicerole emrcServiceRole :: Lens' EMRCluster (Val Text)
library-gen/Stratosphere/Resources/EMRInstanceGroupConfig.hs view
@@ -12,6 +12,7 @@ import Data.Text  import Stratosphere.Values+import Stratosphere.ResourceProperties.EMRInstanceGroupConfigAutoScalingPolicy import Stratosphere.ResourceProperties.EMRInstanceGroupConfigConfiguration import Stratosphere.ResourceProperties.EMRInstanceGroupConfigEbsConfiguration @@ -19,7 +20,8 @@ -- 'emrInstanceGroupConfig' for a more convenient constructor. data EMRInstanceGroupConfig =   EMRInstanceGroupConfig-  { _eMRInstanceGroupConfigBidPrice :: Maybe (Val Text)+  { _eMRInstanceGroupConfigAutoScalingPolicy :: Maybe EMRInstanceGroupConfigAutoScalingPolicy+  , _eMRInstanceGroupConfigBidPrice :: Maybe (Val Text)   , _eMRInstanceGroupConfigConfigurations :: Maybe [EMRInstanceGroupConfigConfiguration]   , _eMRInstanceGroupConfigEbsConfiguration :: Maybe EMRInstanceGroupConfigEbsConfiguration   , _eMRInstanceGroupConfigInstanceCount :: Val Integer'@@ -34,7 +36,8 @@   toJSON EMRInstanceGroupConfig{..} =     object $     catMaybes-    [ ("BidPrice" .=) <$> _eMRInstanceGroupConfigBidPrice+    [ ("AutoScalingPolicy" .=) <$> _eMRInstanceGroupConfigAutoScalingPolicy+    , ("BidPrice" .=) <$> _eMRInstanceGroupConfigBidPrice     , ("Configurations" .=) <$> _eMRInstanceGroupConfigConfigurations     , ("EbsConfiguration" .=) <$> _eMRInstanceGroupConfigEbsConfiguration     , Just ("InstanceCount" .= _eMRInstanceGroupConfigInstanceCount)@@ -48,6 +51,7 @@ instance FromJSON EMRInstanceGroupConfig where   parseJSON (Object obj) =     EMRInstanceGroupConfig <$>+      obj .:? "AutoScalingPolicy" <*>       obj .:? "BidPrice" <*>       obj .:? "Configurations" <*>       obj .:? "EbsConfiguration" <*>@@ -69,7 +73,8 @@   -> EMRInstanceGroupConfig emrInstanceGroupConfig instanceCountarg instanceRolearg instanceTypearg jobFlowIdarg =   EMRInstanceGroupConfig-  { _eMRInstanceGroupConfigBidPrice = Nothing+  { _eMRInstanceGroupConfigAutoScalingPolicy = Nothing+  , _eMRInstanceGroupConfigBidPrice = Nothing   , _eMRInstanceGroupConfigConfigurations = Nothing   , _eMRInstanceGroupConfigEbsConfiguration = Nothing   , _eMRInstanceGroupConfigInstanceCount = instanceCountarg@@ -79,6 +84,10 @@   , _eMRInstanceGroupConfigMarket = Nothing   , _eMRInstanceGroupConfigName = Nothing   }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-elasticmapreduce-instancegroupconfig-autoscalingpolicy+emrigcAutoScalingPolicy :: Lens' EMRInstanceGroupConfig (Maybe EMRInstanceGroupConfigAutoScalingPolicy)+emrigcAutoScalingPolicy = lens _eMRInstanceGroupConfigAutoScalingPolicy (\s a -> s { _eMRInstanceGroupConfigAutoScalingPolicy = a })  -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-instancegroupconfig.html#cfn-emr-instancegroupconfig-bidprice emrigcBidPrice :: Lens' EMRInstanceGroupConfig (Maybe (Val Text))
+ library-gen/Stratosphere/Resources/EMRSecurityConfiguration.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html++module Stratosphere.Resources.EMRSecurityConfiguration where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for EMRSecurityConfiguration. See+-- 'emrSecurityConfiguration' for a more convenient constructor.+data EMRSecurityConfiguration =+  EMRSecurityConfiguration+  { _eMRSecurityConfigurationName :: Maybe (Val Text)+  , _eMRSecurityConfigurationSecurityConfiguration :: Object+  } deriving (Show, Eq)++instance ToJSON EMRSecurityConfiguration where+  toJSON EMRSecurityConfiguration{..} =+    object $+    catMaybes+    [ ("Name" .=) <$> _eMRSecurityConfigurationName+    , Just ("SecurityConfiguration" .= _eMRSecurityConfigurationSecurityConfiguration)+    ]++instance FromJSON EMRSecurityConfiguration where+  parseJSON (Object obj) =+    EMRSecurityConfiguration <$>+      obj .:? "Name" <*>+      obj .: "SecurityConfiguration"+  parseJSON _ = mempty++-- | Constructor for 'EMRSecurityConfiguration' containing required fields as+-- arguments.+emrSecurityConfiguration+  :: Object -- ^ 'emrscSecurityConfiguration'+  -> EMRSecurityConfiguration+emrSecurityConfiguration securityConfigurationarg =+  EMRSecurityConfiguration+  { _eMRSecurityConfigurationName = Nothing+  , _eMRSecurityConfigurationSecurityConfiguration = securityConfigurationarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html#cfn-emr-securityconfiguration-name+emrscName :: Lens' EMRSecurityConfiguration (Maybe (Val Text))+emrscName = lens _eMRSecurityConfigurationName (\s a -> s { _eMRSecurityConfigurationName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-emr-securityconfiguration.html#cfn-emr-securityconfiguration-securityconfiguration+emrscSecurityConfiguration :: Lens' EMRSecurityConfiguration Object+emrscSecurityConfiguration = lens _eMRSecurityConfigurationSecurityConfiguration (\s a -> s { _eMRSecurityConfigurationSecurityConfiguration = a })
library-gen/Stratosphere/Resources/IAMManagedPolicy.hs view
@@ -20,8 +20,9 @@   IAMManagedPolicy   { _iAMManagedPolicyDescription :: Maybe (Val Text)   , _iAMManagedPolicyGroups :: Maybe [Val Text]+  , _iAMManagedPolicyManagedPolicyName :: Maybe (Val Text)   , _iAMManagedPolicyPath :: Maybe (Val Text)-  , _iAMManagedPolicyPolicyDocument :: Maybe Object+  , _iAMManagedPolicyPolicyDocument :: Object   , _iAMManagedPolicyRoles :: Maybe [Val Text]   , _iAMManagedPolicyUsers :: Maybe [Val Text]   } deriving (Show, Eq)@@ -32,8 +33,9 @@     catMaybes     [ ("Description" .=) <$> _iAMManagedPolicyDescription     , ("Groups" .=) <$> _iAMManagedPolicyGroups+    , ("ManagedPolicyName" .=) <$> _iAMManagedPolicyManagedPolicyName     , ("Path" .=) <$> _iAMManagedPolicyPath-    , ("PolicyDocument" .=) <$> _iAMManagedPolicyPolicyDocument+    , Just ("PolicyDocument" .= _iAMManagedPolicyPolicyDocument)     , ("Roles" .=) <$> _iAMManagedPolicyRoles     , ("Users" .=) <$> _iAMManagedPolicyUsers     ]@@ -43,8 +45,9 @@     IAMManagedPolicy <$>       obj .:? "Description" <*>       obj .:? "Groups" <*>+      obj .:? "ManagedPolicyName" <*>       obj .:? "Path" <*>-      obj .:? "PolicyDocument" <*>+      obj .: "PolicyDocument" <*>       obj .:? "Roles" <*>       obj .:? "Users"   parseJSON _ = mempty@@ -52,13 +55,15 @@ -- | Constructor for 'IAMManagedPolicy' containing required fields as -- arguments. iamManagedPolicy-  :: IAMManagedPolicy-iamManagedPolicy  =+  :: Object -- ^ 'iammpPolicyDocument'+  -> IAMManagedPolicy+iamManagedPolicy policyDocumentarg =   IAMManagedPolicy   { _iAMManagedPolicyDescription = Nothing   , _iAMManagedPolicyGroups = Nothing+  , _iAMManagedPolicyManagedPolicyName = Nothing   , _iAMManagedPolicyPath = Nothing-  , _iAMManagedPolicyPolicyDocument = Nothing+  , _iAMManagedPolicyPolicyDocument = policyDocumentarg   , _iAMManagedPolicyRoles = Nothing   , _iAMManagedPolicyUsers = Nothing   }@@ -71,12 +76,16 @@ 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-iam-managedpolicy-managedpolicyname+iammpManagedPolicyName :: Lens' IAMManagedPolicy (Maybe (Val Text))+iammpManagedPolicyName = lens _iAMManagedPolicyManagedPolicyName (\s a -> s { _iAMManagedPolicyManagedPolicyName = 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' IAMManagedPolicy 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
library-gen/Stratosphere/Resources/LambdaFunction.hs view
@@ -16,6 +16,8 @@ import Stratosphere.ResourceProperties.LambdaFunctionCode import Stratosphere.ResourceProperties.LambdaFunctionDeadLetterConfig import Stratosphere.ResourceProperties.LambdaFunctionEnvironment+import Stratosphere.ResourceProperties.Tag+import Stratosphere.ResourceProperties.LambdaFunctionTracingConfig import Stratosphere.ResourceProperties.LambdaFunctionVpcConfig  -- | Full data type definition for LambdaFunction. See 'lambdaFunction' for a@@ -32,7 +34,9 @@   , _lambdaFunctionMemorySize :: Maybe (Val Integer')   , _lambdaFunctionRole :: Val Text   , _lambdaFunctionRuntime :: Val Runtime+  , _lambdaFunctionTags :: Maybe [Tag]   , _lambdaFunctionTimeout :: Maybe (Val Integer')+  , _lambdaFunctionTracingConfig :: Maybe LambdaFunctionTracingConfig   , _lambdaFunctionVpcConfig :: Maybe LambdaFunctionVpcConfig   } deriving (Show, Eq) @@ -50,7 +54,9 @@     , ("MemorySize" .=) <$> _lambdaFunctionMemorySize     , Just ("Role" .= _lambdaFunctionRole)     , Just ("Runtime" .= _lambdaFunctionRuntime)+    , ("Tags" .=) <$> _lambdaFunctionTags     , ("Timeout" .=) <$> _lambdaFunctionTimeout+    , ("TracingConfig" .=) <$> _lambdaFunctionTracingConfig     , ("VpcConfig" .=) <$> _lambdaFunctionVpcConfig     ] @@ -67,7 +73,9 @@       obj .:? "MemorySize" <*>       obj .: "Role" <*>       obj .: "Runtime" <*>+      obj .:? "Tags" <*>       obj .:? "Timeout" <*>+      obj .:? "TracingConfig" <*>       obj .:? "VpcConfig"   parseJSON _ = mempty @@ -90,7 +98,9 @@   , _lambdaFunctionMemorySize = Nothing   , _lambdaFunctionRole = rolearg   , _lambdaFunctionRuntime = runtimearg+  , _lambdaFunctionTags = Nothing   , _lambdaFunctionTimeout = Nothing+  , _lambdaFunctionTracingConfig = Nothing   , _lambdaFunctionVpcConfig = Nothing   } @@ -134,9 +144,17 @@ lfRuntime :: Lens' LambdaFunction (Val Runtime) lfRuntime = lens _lambdaFunctionRuntime (\s a -> s { _lambdaFunctionRuntime = a }) +-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tags+lfTags :: Lens' LambdaFunction (Maybe [Tag])+lfTags = lens _lambdaFunctionTags (\s a -> s { _lambdaFunctionTags = a })+ -- | 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 })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-tracingconfig+lfTracingConfig :: Lens' LambdaFunction (Maybe LambdaFunctionTracingConfig)+lfTracingConfig = lens _lambdaFunctionTracingConfig (\s a -> s { _lambdaFunctionTracingConfig = a })  -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-function.html#cfn-lambda-function-vpcconfig lfVpcConfig :: Lens' LambdaFunction (Maybe LambdaFunctionVpcConfig)
library-gen/Stratosphere/Resources/RedshiftCluster.hs view
@@ -12,13 +12,13 @@ import Data.Text  import Stratosphere.Values-+import Stratosphere.ResourceProperties.Tag  -- | Full data type definition for RedshiftCluster. See 'redshiftCluster' for -- a more convenient constructor. data RedshiftCluster =   RedshiftCluster-  { _redshiftClusterAllowVersionUpdate :: Maybe (Val Bool')+  { _redshiftClusterAllowVersionUpgrade :: Maybe (Val Bool')   , _redshiftClusterAutomatedSnapshotRetentionPeriod :: Maybe (Val Integer')   , _redshiftClusterAvailabilityZone :: Maybe (Val Text)   , _redshiftClusterClusterParameterGroupName :: Maybe (Val Text)@@ -30,6 +30,8 @@   , _redshiftClusterElasticIp :: Maybe (Val Text)   , _redshiftClusterEncrypted :: Maybe (Val Bool')   , _redshiftClusterHsmClientCertificateIdentifier :: Maybe (Val Text)+  , _redshiftClusterHsmConfigurationIdentifier :: Maybe (Val Text)+  , _redshiftClusterIamRoles :: Maybe [Val Text]   , _redshiftClusterKmsKeyId :: Maybe (Val Text)   , _redshiftClusterMasterUserPassword :: Val Text   , _redshiftClusterMasterUsername :: Val Text@@ -41,6 +43,7 @@   , _redshiftClusterPubliclyAccessible :: Maybe (Val Bool')   , _redshiftClusterSnapshotClusterIdentifier :: Maybe (Val Text)   , _redshiftClusterSnapshotIdentifier :: Maybe (Val Text)+  , _redshiftClusterTags :: Maybe [Tag]   , _redshiftClusterVpcSecurityGroupIds :: Maybe [Val Text]   } deriving (Show, Eq) @@ -48,7 +51,7 @@   toJSON RedshiftCluster{..} =     object $     catMaybes-    [ ("AllowVersionUpdate" .=) <$> _redshiftClusterAllowVersionUpdate+    [ ("AllowVersionUpgrade" .=) <$> _redshiftClusterAllowVersionUpgrade     , ("AutomatedSnapshotRetentionPeriod" .=) <$> _redshiftClusterAutomatedSnapshotRetentionPeriod     , ("AvailabilityZone" .=) <$> _redshiftClusterAvailabilityZone     , ("ClusterParameterGroupName" .=) <$> _redshiftClusterClusterParameterGroupName@@ -60,6 +63,8 @@     , ("ElasticIp" .=) <$> _redshiftClusterElasticIp     , ("Encrypted" .=) <$> _redshiftClusterEncrypted     , ("HsmClientCertificateIdentifier" .=) <$> _redshiftClusterHsmClientCertificateIdentifier+    , ("HsmConfigurationIdentifier" .=) <$> _redshiftClusterHsmConfigurationIdentifier+    , ("IamRoles" .=) <$> _redshiftClusterIamRoles     , ("KmsKeyId" .=) <$> _redshiftClusterKmsKeyId     , Just ("MasterUserPassword" .= _redshiftClusterMasterUserPassword)     , Just ("MasterUsername" .= _redshiftClusterMasterUsername)@@ -71,13 +76,14 @@     , ("PubliclyAccessible" .=) <$> _redshiftClusterPubliclyAccessible     , ("SnapshotClusterIdentifier" .=) <$> _redshiftClusterSnapshotClusterIdentifier     , ("SnapshotIdentifier" .=) <$> _redshiftClusterSnapshotIdentifier+    , ("Tags" .=) <$> _redshiftClusterTags     , ("VpcSecurityGroupIds" .=) <$> _redshiftClusterVpcSecurityGroupIds     ]  instance FromJSON RedshiftCluster where   parseJSON (Object obj) =     RedshiftCluster <$>-      obj .:? "AllowVersionUpdate" <*>+      obj .:? "AllowVersionUpgrade" <*>       obj .:? "AutomatedSnapshotRetentionPeriod" <*>       obj .:? "AvailabilityZone" <*>       obj .:? "ClusterParameterGroupName" <*>@@ -89,6 +95,8 @@       obj .:? "ElasticIp" <*>       obj .:? "Encrypted" <*>       obj .:? "HsmClientCertificateIdentifier" <*>+      obj .:? "HsmConfigurationIdentifier" <*>+      obj .:? "IamRoles" <*>       obj .:? "KmsKeyId" <*>       obj .: "MasterUserPassword" <*>       obj .: "MasterUsername" <*>@@ -100,6 +108,7 @@       obj .:? "PubliclyAccessible" <*>       obj .:? "SnapshotClusterIdentifier" <*>       obj .:? "SnapshotIdentifier" <*>+      obj .:? "Tags" <*>       obj .:? "VpcSecurityGroupIds"   parseJSON _ = mempty @@ -114,7 +123,7 @@   -> RedshiftCluster redshiftCluster clusterTypearg dBNamearg masterUserPasswordarg masterUsernamearg nodeTypearg =   RedshiftCluster-  { _redshiftClusterAllowVersionUpdate = Nothing+  { _redshiftClusterAllowVersionUpgrade = Nothing   , _redshiftClusterAutomatedSnapshotRetentionPeriod = Nothing   , _redshiftClusterAvailabilityZone = Nothing   , _redshiftClusterClusterParameterGroupName = Nothing@@ -126,6 +135,8 @@   , _redshiftClusterElasticIp = Nothing   , _redshiftClusterEncrypted = Nothing   , _redshiftClusterHsmClientCertificateIdentifier = Nothing+  , _redshiftClusterHsmConfigurationIdentifier = Nothing+  , _redshiftClusterIamRoles = Nothing   , _redshiftClusterKmsKeyId = Nothing   , _redshiftClusterMasterUserPassword = masterUserPasswordarg   , _redshiftClusterMasterUsername = masterUsernamearg@@ -137,12 +148,13 @@   , _redshiftClusterPubliclyAccessible = Nothing   , _redshiftClusterSnapshotClusterIdentifier = Nothing   , _redshiftClusterSnapshotIdentifier = Nothing+  , _redshiftClusterTags = 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 })+rcAllowVersionUpgrade :: Lens' RedshiftCluster (Maybe (Val Bool'))+rcAllowVersionUpgrade = lens _redshiftClusterAllowVersionUpgrade (\s a -> s { _redshiftClusterAllowVersionUpgrade = a })  -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-automatedsnapshotretentionperiod rcAutomatedSnapshotRetentionPeriod :: Lens' RedshiftCluster (Maybe (Val Integer'))@@ -188,6 +200,14 @@ 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-HsmConfigurationIdentifier+rcHsmConfigurationIdentifier :: Lens' RedshiftCluster (Maybe (Val Text))+rcHsmConfigurationIdentifier = lens _redshiftClusterHsmConfigurationIdentifier (\s a -> s { _redshiftClusterHsmConfigurationIdentifier = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-iamroles+rcIamRoles :: Lens' RedshiftCluster (Maybe [Val Text])+rcIamRoles = lens _redshiftClusterIamRoles (\s a -> s { _redshiftClusterIamRoles = 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 })@@ -231,6 +251,10 @@ -- | 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-tags+rcTags :: Lens' RedshiftCluster (Maybe [Tag])+rcTags = lens _redshiftClusterTags (\s a -> s { _redshiftClusterTags = a })  -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-cluster.html#cfn-redshift-cluster-vpcsecuritygroupids rcVpcSecurityGroupIds :: Lens' RedshiftCluster (Maybe [Val Text])
library-gen/Stratosphere/Resources/RedshiftClusterParameterGroup.hs view
@@ -13,6 +13,7 @@  import Stratosphere.Values import Stratosphere.ResourceProperties.RedshiftClusterParameterGroupParameter+import Stratosphere.ResourceProperties.Tag  -- | Full data type definition for RedshiftClusterParameterGroup. See -- 'redshiftClusterParameterGroup' for a more convenient constructor.@@ -21,6 +22,7 @@   { _redshiftClusterParameterGroupDescription :: Val Text   , _redshiftClusterParameterGroupParameterGroupFamily :: Val Text   , _redshiftClusterParameterGroupParameters :: Maybe [RedshiftClusterParameterGroupParameter]+  , _redshiftClusterParameterGroupTags :: Maybe [Tag]   } deriving (Show, Eq)  instance ToJSON RedshiftClusterParameterGroup where@@ -30,6 +32,7 @@     [ Just ("Description" .= _redshiftClusterParameterGroupDescription)     , Just ("ParameterGroupFamily" .= _redshiftClusterParameterGroupParameterGroupFamily)     , ("Parameters" .=) <$> _redshiftClusterParameterGroupParameters+    , ("Tags" .=) <$> _redshiftClusterParameterGroupTags     ]  instance FromJSON RedshiftClusterParameterGroup where@@ -37,7 +40,8 @@     RedshiftClusterParameterGroup <$>       obj .: "Description" <*>       obj .: "ParameterGroupFamily" <*>-      obj .:? "Parameters"+      obj .:? "Parameters" <*>+      obj .:? "Tags"   parseJSON _ = mempty  -- | Constructor for 'RedshiftClusterParameterGroup' containing required@@ -51,6 +55,7 @@   { _redshiftClusterParameterGroupDescription = descriptionarg   , _redshiftClusterParameterGroupParameterGroupFamily = parameterGroupFamilyarg   , _redshiftClusterParameterGroupParameters = Nothing+  , _redshiftClusterParameterGroupTags = Nothing   }  -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-description@@ -64,3 +69,7 @@ -- | 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 })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clusterparametergroup.html#cfn-redshift-clusterparametergroup-tags+rcpgTags :: Lens' RedshiftClusterParameterGroup (Maybe [Tag])+rcpgTags = lens _redshiftClusterParameterGroupTags (\s a -> s { _redshiftClusterParameterGroupTags = a })
library-gen/Stratosphere/Resources/RedshiftClusterSecurityGroup.hs view
@@ -12,13 +12,14 @@ import Data.Text  import Stratosphere.Values-+import Stratosphere.ResourceProperties.Tag  -- | Full data type definition for RedshiftClusterSecurityGroup. See -- 'redshiftClusterSecurityGroup' for a more convenient constructor. data RedshiftClusterSecurityGroup =   RedshiftClusterSecurityGroup   { _redshiftClusterSecurityGroupDescription :: Val Text+  , _redshiftClusterSecurityGroupTags :: Maybe [Tag]   } deriving (Show, Eq)  instance ToJSON RedshiftClusterSecurityGroup where@@ -26,12 +27,14 @@     object $     catMaybes     [ Just ("Description" .= _redshiftClusterSecurityGroupDescription)+    , ("Tags" .=) <$> _redshiftClusterSecurityGroupTags     ]  instance FromJSON RedshiftClusterSecurityGroup where   parseJSON (Object obj) =     RedshiftClusterSecurityGroup <$>-      obj .: "Description"+      obj .: "Description" <*>+      obj .:? "Tags"   parseJSON _ = mempty  -- | Constructor for 'RedshiftClusterSecurityGroup' containing required fields@@ -42,8 +45,13 @@ redshiftClusterSecurityGroup descriptionarg =   RedshiftClusterSecurityGroup   { _redshiftClusterSecurityGroupDescription = descriptionarg+  , _redshiftClusterSecurityGroupTags = Nothing   }  -- | 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 })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersecuritygroup.html#cfn-redshift-clustersecuritygroup-tags+rcsegTags :: Lens' RedshiftClusterSecurityGroup (Maybe [Tag])+rcsegTags = lens _redshiftClusterSecurityGroupTags (\s a -> s { _redshiftClusterSecurityGroupTags = a })
library-gen/Stratosphere/Resources/RedshiftClusterSubnetGroup.hs view
@@ -12,7 +12,7 @@ import Data.Text  import Stratosphere.Values-+import Stratosphere.ResourceProperties.Tag  -- | Full data type definition for RedshiftClusterSubnetGroup. See -- 'redshiftClusterSubnetGroup' for a more convenient constructor.@@ -20,6 +20,7 @@   RedshiftClusterSubnetGroup   { _redshiftClusterSubnetGroupDescription :: Val Text   , _redshiftClusterSubnetGroupSubnetIds :: [Val Text]+  , _redshiftClusterSubnetGroupTags :: Maybe [Tag]   } deriving (Show, Eq)  instance ToJSON RedshiftClusterSubnetGroup where@@ -28,13 +29,15 @@     catMaybes     [ Just ("Description" .= _redshiftClusterSubnetGroupDescription)     , Just ("SubnetIds" .= _redshiftClusterSubnetGroupSubnetIds)+    , ("Tags" .=) <$> _redshiftClusterSubnetGroupTags     ]  instance FromJSON RedshiftClusterSubnetGroup where   parseJSON (Object obj) =     RedshiftClusterSubnetGroup <$>       obj .: "Description" <*>-      obj .: "SubnetIds"+      obj .: "SubnetIds" <*>+      obj .:? "Tags"   parseJSON _ = mempty  -- | Constructor for 'RedshiftClusterSubnetGroup' containing required fields@@ -47,6 +50,7 @@   RedshiftClusterSubnetGroup   { _redshiftClusterSubnetGroupDescription = descriptionarg   , _redshiftClusterSubnetGroupSubnetIds = subnetIdsarg+  , _redshiftClusterSubnetGroupTags = Nothing   }  -- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-description@@ -56,3 +60,7 @@ -- | 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 })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-redshift-clustersubnetgroup.html#cfn-redshift-clustersubnetgroup-tags+rcsugTags :: Lens' RedshiftClusterSubnetGroup (Maybe [Tag])+rcsugTags = lens _redshiftClusterSubnetGroupTags (\s a -> s { _redshiftClusterSubnetGroupTags = a })
+ library-gen/Stratosphere/Resources/SSMParameter.hs view
@@ -0,0 +1,73 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html++module Stratosphere.Resources.SSMParameter where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for SSMParameter. See 'ssmParameter' for a more+-- convenient constructor.+data SSMParameter =+  SSMParameter+  { _sSMParameterDescription :: Maybe (Val Text)+  , _sSMParameterName :: Maybe (Val Text)+  , _sSMParameterType :: Val Text+  , _sSMParameterValue :: Val Text+  } deriving (Show, Eq)++instance ToJSON SSMParameter where+  toJSON SSMParameter{..} =+    object $+    catMaybes+    [ ("Description" .=) <$> _sSMParameterDescription+    , ("Name" .=) <$> _sSMParameterName+    , Just ("Type" .= _sSMParameterType)+    , Just ("Value" .= _sSMParameterValue)+    ]++instance FromJSON SSMParameter where+  parseJSON (Object obj) =+    SSMParameter <$>+      obj .:? "Description" <*>+      obj .:? "Name" <*>+      obj .: "Type" <*>+      obj .: "Value"+  parseJSON _ = mempty++-- | Constructor for 'SSMParameter' containing required fields as arguments.+ssmParameter+  :: Val Text -- ^ 'ssmpType'+  -> Val Text -- ^ 'ssmpValue'+  -> SSMParameter+ssmParameter typearg valuearg =+  SSMParameter+  { _sSMParameterDescription = Nothing+  , _sSMParameterName = Nothing+  , _sSMParameterType = typearg+  , _sSMParameterValue = valuearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-description+ssmpDescription :: Lens' SSMParameter (Maybe (Val Text))+ssmpDescription = lens _sSMParameterDescription (\s a -> s { _sSMParameterDescription = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-name+ssmpName :: Lens' SSMParameter (Maybe (Val Text))+ssmpName = lens _sSMParameterName (\s a -> s { _sSMParameterName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-type+ssmpType :: Lens' SSMParameter (Val Text)+ssmpType = lens _sSMParameterType (\s a -> s { _sSMParameterType = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ssm-parameter.html#cfn-ssm-parameter-value+ssmpValue :: Lens' SSMParameter (Val Text)+ssmpValue = lens _sSMParameterValue (\s a -> s { _sSMParameterValue = a })
+ library-gen/Stratosphere/Resources/StepFunctionsActivity.hs view
@@ -0,0 +1,49 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-activity.html++module Stratosphere.Resources.StepFunctionsActivity where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for StepFunctionsActivity. See+-- 'stepFunctionsActivity' for a more convenient constructor.+data StepFunctionsActivity =+  StepFunctionsActivity+  { _stepFunctionsActivityName :: Val Text+  } deriving (Show, Eq)++instance ToJSON StepFunctionsActivity where+  toJSON StepFunctionsActivity{..} =+    object $+    catMaybes+    [ Just ("Name" .= _stepFunctionsActivityName)+    ]++instance FromJSON StepFunctionsActivity where+  parseJSON (Object obj) =+    StepFunctionsActivity <$>+      obj .: "Name"+  parseJSON _ = mempty++-- | Constructor for 'StepFunctionsActivity' containing required fields as+-- arguments.+stepFunctionsActivity+  :: Val Text -- ^ 'sfaName'+  -> StepFunctionsActivity+stepFunctionsActivity namearg =+  StepFunctionsActivity+  { _stepFunctionsActivityName = namearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-activity.html#cfn-stepfunctions-activity-name+sfaName :: Lens' StepFunctionsActivity (Val Text)+sfaName = lens _stepFunctionsActivityName (\s a -> s { _stepFunctionsActivityName = a })
+ library-gen/Stratosphere/Resources/StepFunctionsStateMachine.hs view
@@ -0,0 +1,58 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html++module Stratosphere.Resources.StepFunctionsStateMachine where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for StepFunctionsStateMachine. See+-- 'stepFunctionsStateMachine' for a more convenient constructor.+data StepFunctionsStateMachine =+  StepFunctionsStateMachine+  { _stepFunctionsStateMachineDefinitionString :: Val Text+  , _stepFunctionsStateMachineRoleArn :: Val Text+  } deriving (Show, Eq)++instance ToJSON StepFunctionsStateMachine where+  toJSON StepFunctionsStateMachine{..} =+    object $+    catMaybes+    [ Just ("DefinitionString" .= _stepFunctionsStateMachineDefinitionString)+    , Just ("RoleArn" .= _stepFunctionsStateMachineRoleArn)+    ]++instance FromJSON StepFunctionsStateMachine where+  parseJSON (Object obj) =+    StepFunctionsStateMachine <$>+      obj .: "DefinitionString" <*>+      obj .: "RoleArn"+  parseJSON _ = mempty++-- | Constructor for 'StepFunctionsStateMachine' containing required fields as+-- arguments.+stepFunctionsStateMachine+  :: Val Text -- ^ 'sfsmDefinitionString'+  -> Val Text -- ^ 'sfsmRoleArn'+  -> StepFunctionsStateMachine+stepFunctionsStateMachine definitionStringarg roleArnarg =+  StepFunctionsStateMachine+  { _stepFunctionsStateMachineDefinitionString = definitionStringarg+  , _stepFunctionsStateMachineRoleArn = roleArnarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-definitionstring+sfsmDefinitionString :: Lens' StepFunctionsStateMachine (Val Text)+sfsmDefinitionString = lens _stepFunctionsStateMachineDefinitionString (\s a -> s { _stepFunctionsStateMachineDefinitionString = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-stepfunctions-statemachine.html#cfn-stepfunctions-statemachine-rolearn+sfsmRoleArn :: Lens' StepFunctionsStateMachine (Val Text)+sfsmRoleArn = lens _stepFunctionsStateMachineRoleArn (\s a -> s { _stepFunctionsStateMachineRoleArn = a })
+ library-gen/Stratosphere/Resources/WAFRegionalByteMatchSet.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-bytematchset.html++module Stratosphere.Resources.WAFRegionalByteMatchSet where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFRegionalByteMatchSetByteMatchTuple++-- | Full data type definition for WAFRegionalByteMatchSet. See+-- 'wafRegionalByteMatchSet' for a more convenient constructor.+data WAFRegionalByteMatchSet =+  WAFRegionalByteMatchSet+  { _wAFRegionalByteMatchSetByteMatchTuples :: Maybe [WAFRegionalByteMatchSetByteMatchTuple]+  , _wAFRegionalByteMatchSetName :: Val Text+  } deriving (Show, Eq)++instance ToJSON WAFRegionalByteMatchSet where+  toJSON WAFRegionalByteMatchSet{..} =+    object $+    catMaybes+    [ ("ByteMatchTuples" .=) <$> _wAFRegionalByteMatchSetByteMatchTuples+    , Just ("Name" .= _wAFRegionalByteMatchSetName)+    ]++instance FromJSON WAFRegionalByteMatchSet where+  parseJSON (Object obj) =+    WAFRegionalByteMatchSet <$>+      obj .:? "ByteMatchTuples" <*>+      obj .: "Name"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalByteMatchSet' containing required fields as+-- arguments.+wafRegionalByteMatchSet+  :: Val Text -- ^ 'wafrbmsName'+  -> WAFRegionalByteMatchSet+wafRegionalByteMatchSet namearg =+  WAFRegionalByteMatchSet+  { _wAFRegionalByteMatchSetByteMatchTuples = Nothing+  , _wAFRegionalByteMatchSetName = namearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-bytematchset.html#cfn-wafregional-bytematchset-bytematchtuples+wafrbmsByteMatchTuples :: Lens' WAFRegionalByteMatchSet (Maybe [WAFRegionalByteMatchSetByteMatchTuple])+wafrbmsByteMatchTuples = lens _wAFRegionalByteMatchSetByteMatchTuples (\s a -> s { _wAFRegionalByteMatchSetByteMatchTuples = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-bytematchset.html#cfn-wafregional-bytematchset-name+wafrbmsName :: Lens' WAFRegionalByteMatchSet (Val Text)+wafrbmsName = lens _wAFRegionalByteMatchSetName (\s a -> s { _wAFRegionalByteMatchSetName = a })
+ library-gen/Stratosphere/Resources/WAFRegionalIPSet.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ipset.html++module Stratosphere.Resources.WAFRegionalIPSet where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFRegionalIPSetIPSetDescriptor++-- | Full data type definition for WAFRegionalIPSet. See 'wafRegionalIPSet'+-- for a more convenient constructor.+data WAFRegionalIPSet =+  WAFRegionalIPSet+  { _wAFRegionalIPSetIPSetDescriptors :: Maybe [WAFRegionalIPSetIPSetDescriptor]+  , _wAFRegionalIPSetName :: Val Text+  } deriving (Show, Eq)++instance ToJSON WAFRegionalIPSet where+  toJSON WAFRegionalIPSet{..} =+    object $+    catMaybes+    [ ("IPSetDescriptors" .=) <$> _wAFRegionalIPSetIPSetDescriptors+    , Just ("Name" .= _wAFRegionalIPSetName)+    ]++instance FromJSON WAFRegionalIPSet where+  parseJSON (Object obj) =+    WAFRegionalIPSet <$>+      obj .:? "IPSetDescriptors" <*>+      obj .: "Name"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalIPSet' containing required fields as+-- arguments.+wafRegionalIPSet+  :: Val Text -- ^ 'wafripsName'+  -> WAFRegionalIPSet+wafRegionalIPSet namearg =+  WAFRegionalIPSet+  { _wAFRegionalIPSetIPSetDescriptors = Nothing+  , _wAFRegionalIPSetName = namearg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ipset.html#cfn-wafregional-ipset-ipsetdescriptors+wafripsIPSetDescriptors :: Lens' WAFRegionalIPSet (Maybe [WAFRegionalIPSetIPSetDescriptor])+wafripsIPSetDescriptors = lens _wAFRegionalIPSetIPSetDescriptors (\s a -> s { _wAFRegionalIPSetIPSetDescriptors = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-ipset.html#cfn-wafregional-ipset-name+wafripsName :: Lens' WAFRegionalIPSet (Val Text)+wafripsName = lens _wAFRegionalIPSetName (\s a -> s { _wAFRegionalIPSetName = a })
+ library-gen/Stratosphere/Resources/WAFRegionalRule.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html++module Stratosphere.Resources.WAFRegionalRule where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFRegionalRulePredicate++-- | Full data type definition for WAFRegionalRule. See 'wafRegionalRule' for+-- a more convenient constructor.+data WAFRegionalRule =+  WAFRegionalRule+  { _wAFRegionalRuleMetricName :: Val Text+  , _wAFRegionalRuleName :: Val Text+  , _wAFRegionalRulePredicates :: Maybe [WAFRegionalRulePredicate]+  } deriving (Show, Eq)++instance ToJSON WAFRegionalRule where+  toJSON WAFRegionalRule{..} =+    object $+    catMaybes+    [ Just ("MetricName" .= _wAFRegionalRuleMetricName)+    , Just ("Name" .= _wAFRegionalRuleName)+    , ("Predicates" .=) <$> _wAFRegionalRulePredicates+    ]++instance FromJSON WAFRegionalRule where+  parseJSON (Object obj) =+    WAFRegionalRule <$>+      obj .: "MetricName" <*>+      obj .: "Name" <*>+      obj .:? "Predicates"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalRule' containing required fields as+-- arguments.+wafRegionalRule+  :: Val Text -- ^ 'wafrrMetricName'+  -> Val Text -- ^ 'wafrrName'+  -> WAFRegionalRule+wafRegionalRule metricNamearg namearg =+  WAFRegionalRule+  { _wAFRegionalRuleMetricName = metricNamearg+  , _wAFRegionalRuleName = namearg+  , _wAFRegionalRulePredicates = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html#cfn-wafregional-rule-metricname+wafrrMetricName :: Lens' WAFRegionalRule (Val Text)+wafrrMetricName = lens _wAFRegionalRuleMetricName (\s a -> s { _wAFRegionalRuleMetricName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html#cfn-wafregional-rule-name+wafrrName :: Lens' WAFRegionalRule (Val Text)+wafrrName = lens _wAFRegionalRuleName (\s a -> s { _wAFRegionalRuleName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-rule.html#cfn-wafregional-rule-predicates+wafrrPredicates :: Lens' WAFRegionalRule (Maybe [WAFRegionalRulePredicate])+wafrrPredicates = lens _wAFRegionalRulePredicates (\s a -> s { _wAFRegionalRulePredicates = a })
+ library-gen/Stratosphere/Resources/WAFRegionalSizeConstraintSet.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sizeconstraintset.html++module Stratosphere.Resources.WAFRegionalSizeConstraintSet where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFRegionalSizeConstraintSetSizeConstraint++-- | Full data type definition for WAFRegionalSizeConstraintSet. See+-- 'wafRegionalSizeConstraintSet' for a more convenient constructor.+data WAFRegionalSizeConstraintSet =+  WAFRegionalSizeConstraintSet+  { _wAFRegionalSizeConstraintSetName :: Val Text+  , _wAFRegionalSizeConstraintSetSizeConstraints :: Maybe [WAFRegionalSizeConstraintSetSizeConstraint]+  } deriving (Show, Eq)++instance ToJSON WAFRegionalSizeConstraintSet where+  toJSON WAFRegionalSizeConstraintSet{..} =+    object $+    catMaybes+    [ Just ("Name" .= _wAFRegionalSizeConstraintSetName)+    , ("SizeConstraints" .=) <$> _wAFRegionalSizeConstraintSetSizeConstraints+    ]++instance FromJSON WAFRegionalSizeConstraintSet where+  parseJSON (Object obj) =+    WAFRegionalSizeConstraintSet <$>+      obj .: "Name" <*>+      obj .:? "SizeConstraints"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalSizeConstraintSet' containing required fields+-- as arguments.+wafRegionalSizeConstraintSet+  :: Val Text -- ^ 'wafrscsName'+  -> WAFRegionalSizeConstraintSet+wafRegionalSizeConstraintSet namearg =+  WAFRegionalSizeConstraintSet+  { _wAFRegionalSizeConstraintSetName = namearg+  , _wAFRegionalSizeConstraintSetSizeConstraints = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sizeconstraintset.html#cfn-wafregional-sizeconstraintset-name+wafrscsName :: Lens' WAFRegionalSizeConstraintSet (Val Text)+wafrscsName = lens _wAFRegionalSizeConstraintSetName (\s a -> s { _wAFRegionalSizeConstraintSetName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sizeconstraintset.html#cfn-wafregional-sizeconstraintset-sizeconstraints+wafrscsSizeConstraints :: Lens' WAFRegionalSizeConstraintSet (Maybe [WAFRegionalSizeConstraintSetSizeConstraint])+wafrscsSizeConstraints = lens _wAFRegionalSizeConstraintSetSizeConstraints (\s a -> s { _wAFRegionalSizeConstraintSetSizeConstraints = a })
+ library-gen/Stratosphere/Resources/WAFRegionalSqlInjectionMatchSet.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sqlinjectionmatchset.html++module Stratosphere.Resources.WAFRegionalSqlInjectionMatchSet where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple++-- | Full data type definition for WAFRegionalSqlInjectionMatchSet. See+-- 'wafRegionalSqlInjectionMatchSet' for a more convenient constructor.+data WAFRegionalSqlInjectionMatchSet =+  WAFRegionalSqlInjectionMatchSet+  { _wAFRegionalSqlInjectionMatchSetName :: Val Text+  , _wAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuples :: Maybe [WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple]+  } deriving (Show, Eq)++instance ToJSON WAFRegionalSqlInjectionMatchSet where+  toJSON WAFRegionalSqlInjectionMatchSet{..} =+    object $+    catMaybes+    [ Just ("Name" .= _wAFRegionalSqlInjectionMatchSetName)+    , ("SqlInjectionMatchTuples" .=) <$> _wAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuples+    ]++instance FromJSON WAFRegionalSqlInjectionMatchSet where+  parseJSON (Object obj) =+    WAFRegionalSqlInjectionMatchSet <$>+      obj .: "Name" <*>+      obj .:? "SqlInjectionMatchTuples"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalSqlInjectionMatchSet' containing required+-- fields as arguments.+wafRegionalSqlInjectionMatchSet+  :: Val Text -- ^ 'wafrsimsName'+  -> WAFRegionalSqlInjectionMatchSet+wafRegionalSqlInjectionMatchSet namearg =+  WAFRegionalSqlInjectionMatchSet+  { _wAFRegionalSqlInjectionMatchSetName = namearg+  , _wAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuples = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sqlinjectionmatchset.html#cfn-wafregional-sqlinjectionmatchset-name+wafrsimsName :: Lens' WAFRegionalSqlInjectionMatchSet (Val Text)+wafrsimsName = lens _wAFRegionalSqlInjectionMatchSetName (\s a -> s { _wAFRegionalSqlInjectionMatchSetName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-sqlinjectionmatchset.html#cfn-wafregional-sqlinjectionmatchset-sqlinjectionmatchtuples+wafrsimsSqlInjectionMatchTuples :: Lens' WAFRegionalSqlInjectionMatchSet (Maybe [WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple])+wafrsimsSqlInjectionMatchTuples = lens _wAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuples (\s a -> s { _wAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuples = a })
+ library-gen/Stratosphere/Resources/WAFRegionalWebACL.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html++module Stratosphere.Resources.WAFRegionalWebACL where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFRegionalWebACLAction+import Stratosphere.ResourceProperties.WAFRegionalWebACLRule++-- | Full data type definition for WAFRegionalWebACL. See 'wafRegionalWebACL'+-- for a more convenient constructor.+data WAFRegionalWebACL =+  WAFRegionalWebACL+  { _wAFRegionalWebACLDefaultAction :: WAFRegionalWebACLAction+  , _wAFRegionalWebACLMetricName :: Val Text+  , _wAFRegionalWebACLName :: Val Text+  , _wAFRegionalWebACLRules :: Maybe [WAFRegionalWebACLRule]+  } deriving (Show, Eq)++instance ToJSON WAFRegionalWebACL where+  toJSON WAFRegionalWebACL{..} =+    object $+    catMaybes+    [ Just ("DefaultAction" .= _wAFRegionalWebACLDefaultAction)+    , Just ("MetricName" .= _wAFRegionalWebACLMetricName)+    , Just ("Name" .= _wAFRegionalWebACLName)+    , ("Rules" .=) <$> _wAFRegionalWebACLRules+    ]++instance FromJSON WAFRegionalWebACL where+  parseJSON (Object obj) =+    WAFRegionalWebACL <$>+      obj .: "DefaultAction" <*>+      obj .: "MetricName" <*>+      obj .: "Name" <*>+      obj .:? "Rules"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalWebACL' containing required fields as+-- arguments.+wafRegionalWebACL+  :: WAFRegionalWebACLAction -- ^ 'wafrwaclDefaultAction'+  -> Val Text -- ^ 'wafrwaclMetricName'+  -> Val Text -- ^ 'wafrwaclName'+  -> WAFRegionalWebACL+wafRegionalWebACL defaultActionarg metricNamearg namearg =+  WAFRegionalWebACL+  { _wAFRegionalWebACLDefaultAction = defaultActionarg+  , _wAFRegionalWebACLMetricName = metricNamearg+  , _wAFRegionalWebACLName = namearg+  , _wAFRegionalWebACLRules = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html#cfn-wafregional-webacl-defaultaction+wafrwaclDefaultAction :: Lens' WAFRegionalWebACL WAFRegionalWebACLAction+wafrwaclDefaultAction = lens _wAFRegionalWebACLDefaultAction (\s a -> s { _wAFRegionalWebACLDefaultAction = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html#cfn-wafregional-webacl-metricname+wafrwaclMetricName :: Lens' WAFRegionalWebACL (Val Text)+wafrwaclMetricName = lens _wAFRegionalWebACLMetricName (\s a -> s { _wAFRegionalWebACLMetricName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html#cfn-wafregional-webacl-name+wafrwaclName :: Lens' WAFRegionalWebACL (Val Text)+wafrwaclName = lens _wAFRegionalWebACLName (\s a -> s { _wAFRegionalWebACLName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webacl.html#cfn-wafregional-webacl-rules+wafrwaclRules :: Lens' WAFRegionalWebACL (Maybe [WAFRegionalWebACLRule])+wafrwaclRules = lens _wAFRegionalWebACLRules (\s a -> s { _wAFRegionalWebACLRules = a })
+ library-gen/Stratosphere/Resources/WAFRegionalWebACLAssociation.hs view
@@ -0,0 +1,58 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html++module Stratosphere.Resources.WAFRegionalWebACLAssociation where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+++-- | Full data type definition for WAFRegionalWebACLAssociation. See+-- 'wafRegionalWebACLAssociation' for a more convenient constructor.+data WAFRegionalWebACLAssociation =+  WAFRegionalWebACLAssociation+  { _wAFRegionalWebACLAssociationResourceArn :: Val Text+  , _wAFRegionalWebACLAssociationWebACLId :: Val Text+  } deriving (Show, Eq)++instance ToJSON WAFRegionalWebACLAssociation where+  toJSON WAFRegionalWebACLAssociation{..} =+    object $+    catMaybes+    [ Just ("ResourceArn" .= _wAFRegionalWebACLAssociationResourceArn)+    , Just ("WebACLId" .= _wAFRegionalWebACLAssociationWebACLId)+    ]++instance FromJSON WAFRegionalWebACLAssociation where+  parseJSON (Object obj) =+    WAFRegionalWebACLAssociation <$>+      obj .: "ResourceArn" <*>+      obj .: "WebACLId"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalWebACLAssociation' containing required fields+-- as arguments.+wafRegionalWebACLAssociation+  :: Val Text -- ^ 'wafrwaclaResourceArn'+  -> Val Text -- ^ 'wafrwaclaWebACLId'+  -> WAFRegionalWebACLAssociation+wafRegionalWebACLAssociation resourceArnarg webACLIdarg =+  WAFRegionalWebACLAssociation+  { _wAFRegionalWebACLAssociationResourceArn = resourceArnarg+  , _wAFRegionalWebACLAssociationWebACLId = webACLIdarg+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html#cfn-wafregional-webaclassociation-resourcearn+wafrwaclaResourceArn :: Lens' WAFRegionalWebACLAssociation (Val Text)+wafrwaclaResourceArn = lens _wAFRegionalWebACLAssociationResourceArn (\s a -> s { _wAFRegionalWebACLAssociationResourceArn = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-webaclassociation.html#cfn-wafregional-webaclassociation-webaclid+wafrwaclaWebACLId :: Lens' WAFRegionalWebACLAssociation (Val Text)+wafrwaclaWebACLId = lens _wAFRegionalWebACLAssociationWebACLId (\s a -> s { _wAFRegionalWebACLAssociationWebACLId = a })
+ library-gen/Stratosphere/Resources/WAFRegionalXssMatchSet.hs view
@@ -0,0 +1,57 @@+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-xssmatchset.html++module Stratosphere.Resources.WAFRegionalXssMatchSet where++import Control.Lens hiding ((.=))+import Data.Aeson+import Data.Maybe (catMaybes)+import Data.Monoid (mempty)+import Data.Text++import Stratosphere.Values+import Stratosphere.ResourceProperties.WAFRegionalXssMatchSetXssMatchTuple++-- | Full data type definition for WAFRegionalXssMatchSet. See+-- 'wafRegionalXssMatchSet' for a more convenient constructor.+data WAFRegionalXssMatchSet =+  WAFRegionalXssMatchSet+  { _wAFRegionalXssMatchSetName :: Val Text+  , _wAFRegionalXssMatchSetXssMatchTuples :: Maybe [WAFRegionalXssMatchSetXssMatchTuple]+  } deriving (Show, Eq)++instance ToJSON WAFRegionalXssMatchSet where+  toJSON WAFRegionalXssMatchSet{..} =+    object $+    catMaybes+    [ Just ("Name" .= _wAFRegionalXssMatchSetName)+    , ("XssMatchTuples" .=) <$> _wAFRegionalXssMatchSetXssMatchTuples+    ]++instance FromJSON WAFRegionalXssMatchSet where+  parseJSON (Object obj) =+    WAFRegionalXssMatchSet <$>+      obj .: "Name" <*>+      obj .:? "XssMatchTuples"+  parseJSON _ = mempty++-- | Constructor for 'WAFRegionalXssMatchSet' containing required fields as+-- arguments.+wafRegionalXssMatchSet+  :: Val Text -- ^ 'wafrxmsName'+  -> WAFRegionalXssMatchSet+wafRegionalXssMatchSet namearg =+  WAFRegionalXssMatchSet+  { _wAFRegionalXssMatchSetName = namearg+  , _wAFRegionalXssMatchSetXssMatchTuples = Nothing+  }++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-xssmatchset.html#cfn-wafregional-xssmatchset-name+wafrxmsName :: Lens' WAFRegionalXssMatchSet (Val Text)+wafrxmsName = lens _wAFRegionalXssMatchSetName (\s a -> s { _wAFRegionalXssMatchSetName = a })++-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafregional-xssmatchset.html#cfn-wafregional-xssmatchset-xssmatchtuples+wafrxmsXssMatchTuples :: Lens' WAFRegionalXssMatchSet (Maybe [WAFRegionalXssMatchSetXssMatchTuple])+wafrxmsXssMatchTuples = lens _wAFRegionalXssMatchSetXssMatchTuples (\s a -> s { _wAFRegionalXssMatchSetXssMatchTuples = a })
stack.yaml view
@@ -1,4 +1,4 @@-resolver: nightly-2017-03-04+resolver: nightly-2017-05-15 packages:   - '.' extra-deps: []
stratosphere.cabal view
@@ -3,7 +3,7 @@ -- see: https://github.com/sol/hpack  name:           stratosphere-version:        0.4.2+version:        0.4.3 synopsis:       EDSL for AWS CloudFormation description:    EDSL for AWS CloudFormation category:       AWS, Cloud@@ -102,12 +102,15 @@       Stratosphere.ResourceProperties.CodeBuildProjectSourceAuth       Stratosphere.ResourceProperties.CodeCommitRepositoryRepositoryTrigger       Stratosphere.ResourceProperties.CodeDeployDeploymentConfigMinimumHealthyHosts+      Stratosphere.ResourceProperties.CodeDeployDeploymentGroupAlarm+      Stratosphere.ResourceProperties.CodeDeployDeploymentGroupAlarmConfiguration       Stratosphere.ResourceProperties.CodeDeployDeploymentGroupDeployment       Stratosphere.ResourceProperties.CodeDeployDeploymentGroupEC2TagFilter       Stratosphere.ResourceProperties.CodeDeployDeploymentGroupGitHubLocation       Stratosphere.ResourceProperties.CodeDeployDeploymentGroupRevisionLocation       Stratosphere.ResourceProperties.CodeDeployDeploymentGroupS3Location       Stratosphere.ResourceProperties.CodeDeployDeploymentGroupTagFilter+      Stratosphere.ResourceProperties.CodeDeployDeploymentGroupTriggerConfig       Stratosphere.ResourceProperties.CodePipelineCustomActionTypeArtifactDetails       Stratosphere.ResourceProperties.CodePipelineCustomActionTypeConfigurationProperties       Stratosphere.ResourceProperties.CodePipelineCustomActionTypeSettings@@ -120,6 +123,24 @@       Stratosphere.ResourceProperties.CodePipelinePipelineOutputArtifact       Stratosphere.ResourceProperties.CodePipelinePipelineStageDeclaration       Stratosphere.ResourceProperties.CodePipelinePipelineStageTransition+      Stratosphere.ResourceProperties.CognitoIdentityPoolCognitoIdentityProvider+      Stratosphere.ResourceProperties.CognitoIdentityPoolCognitoStreams+      Stratosphere.ResourceProperties.CognitoIdentityPoolPushSync+      Stratosphere.ResourceProperties.CognitoIdentityPoolRoleAttachmentMappingRule+      Stratosphere.ResourceProperties.CognitoIdentityPoolRoleAttachmentRoleMapping+      Stratosphere.ResourceProperties.CognitoIdentityPoolRoleAttachmentRulesConfigurationType+      Stratosphere.ResourceProperties.CognitoUserPoolAdminCreateUserConfig+      Stratosphere.ResourceProperties.CognitoUserPoolDeviceConfiguration+      Stratosphere.ResourceProperties.CognitoUserPoolEmailConfiguration+      Stratosphere.ResourceProperties.CognitoUserPoolInviteMessageTemplate+      Stratosphere.ResourceProperties.CognitoUserPoolLambdaConfig+      Stratosphere.ResourceProperties.CognitoUserPoolNumberAttributeConstraints+      Stratosphere.ResourceProperties.CognitoUserPoolPasswordPolicy+      Stratosphere.ResourceProperties.CognitoUserPoolPolicies+      Stratosphere.ResourceProperties.CognitoUserPoolSchemaAttribute+      Stratosphere.ResourceProperties.CognitoUserPoolSmsConfiguration+      Stratosphere.ResourceProperties.CognitoUserPoolStringAttributeConstraints+      Stratosphere.ResourceProperties.CognitoUserPoolUserAttributeType       Stratosphere.ResourceProperties.ConfigConfigRuleScope       Stratosphere.ResourceProperties.ConfigConfigRuleSource       Stratosphere.ResourceProperties.ConfigConfigRuleSourceDetail@@ -154,19 +175,21 @@       Stratosphere.ResourceProperties.EC2NetworkInterfaceInstanceIpv6Address       Stratosphere.ResourceProperties.EC2NetworkInterfacePrivateIpAddressSpecification       Stratosphere.ResourceProperties.EC2SecurityGroupRule-      Stratosphere.ResourceProperties.EC2SpotFleetBlockDeviceMappings-      Stratosphere.ResourceProperties.EC2SpotFleetEbs-      Stratosphere.ResourceProperties.EC2SpotFleetIamInstanceProfile+      Stratosphere.ResourceProperties.EC2SpotFleetBlockDeviceMapping+      Stratosphere.ResourceProperties.EC2SpotFleetEbsBlockDevice+      Stratosphere.ResourceProperties.EC2SpotFleetGroupIdentifier+      Stratosphere.ResourceProperties.EC2SpotFleetIamInstanceProfileSpecification       Stratosphere.ResourceProperties.EC2SpotFleetInstanceIpv6Address-      Stratosphere.ResourceProperties.EC2SpotFleetLaunchSpecifications-      Stratosphere.ResourceProperties.EC2SpotFleetMonitoring-      Stratosphere.ResourceProperties.EC2SpotFleetNetworkInterfaces-      Stratosphere.ResourceProperties.EC2SpotFleetPlacement-      Stratosphere.ResourceProperties.EC2SpotFleetPrivateIpAddresses-      Stratosphere.ResourceProperties.EC2SpotFleetSecurityGroups+      Stratosphere.ResourceProperties.EC2SpotFleetInstanceNetworkInterfaceSpecification+      Stratosphere.ResourceProperties.EC2SpotFleetPrivateIpAddressSpecification+      Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetLaunchSpecification+      Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetMonitoring       Stratosphere.ResourceProperties.EC2SpotFleetSpotFleetRequestConfigData+      Stratosphere.ResourceProperties.EC2SpotFleetSpotPlacement       Stratosphere.ResourceProperties.ECSServiceDeploymentConfiguration       Stratosphere.ResourceProperties.ECSServiceLoadBalancer+      Stratosphere.ResourceProperties.ECSServicePlacementConstraint+      Stratosphere.ResourceProperties.ECSServicePlacementStrategy       Stratosphere.ResourceProperties.ECSTaskDefinitionContainerDefinition       Stratosphere.ResourceProperties.ECSTaskDefinitionHostEntry       Stratosphere.ResourceProperties.ECSTaskDefinitionHostVolumeProperties@@ -174,6 +197,7 @@       Stratosphere.ResourceProperties.ECSTaskDefinitionLogConfiguration       Stratosphere.ResourceProperties.ECSTaskDefinitionMountPoint       Stratosphere.ResourceProperties.ECSTaskDefinitionPortMapping+      Stratosphere.ResourceProperties.ECSTaskDefinitionTaskDefinitionPlacementConstraint       Stratosphere.ResourceProperties.ECSTaskDefinitionUlimit       Stratosphere.ResourceProperties.ECSTaskDefinitionVolume       Stratosphere.ResourceProperties.ECSTaskDefinitionVolumeFrom@@ -204,18 +228,34 @@       Stratosphere.ResourceProperties.ElasticsearchDomainElasticsearchClusterConfig       Stratosphere.ResourceProperties.ElasticsearchDomainSnapshotOptions       Stratosphere.ResourceProperties.EMRClusterApplication+      Stratosphere.ResourceProperties.EMRClusterAutoScalingPolicy       Stratosphere.ResourceProperties.EMRClusterBootstrapActionConfig+      Stratosphere.ResourceProperties.EMRClusterCloudWatchAlarmDefinition       Stratosphere.ResourceProperties.EMRClusterConfiguration       Stratosphere.ResourceProperties.EMRClusterEbsBlockDeviceConfig       Stratosphere.ResourceProperties.EMRClusterEbsConfiguration       Stratosphere.ResourceProperties.EMRClusterInstanceGroupConfig       Stratosphere.ResourceProperties.EMRClusterJobFlowInstancesConfig+      Stratosphere.ResourceProperties.EMRClusterMetricDimension       Stratosphere.ResourceProperties.EMRClusterPlacementType+      Stratosphere.ResourceProperties.EMRClusterScalingAction+      Stratosphere.ResourceProperties.EMRClusterScalingConstraints+      Stratosphere.ResourceProperties.EMRClusterScalingRule+      Stratosphere.ResourceProperties.EMRClusterScalingTrigger       Stratosphere.ResourceProperties.EMRClusterScriptBootstrapActionConfig+      Stratosphere.ResourceProperties.EMRClusterSimpleScalingPolicyConfiguration       Stratosphere.ResourceProperties.EMRClusterVolumeSpecification+      Stratosphere.ResourceProperties.EMRInstanceGroupConfigAutoScalingPolicy+      Stratosphere.ResourceProperties.EMRInstanceGroupConfigCloudWatchAlarmDefinition       Stratosphere.ResourceProperties.EMRInstanceGroupConfigConfiguration       Stratosphere.ResourceProperties.EMRInstanceGroupConfigEbsBlockDeviceConfig       Stratosphere.ResourceProperties.EMRInstanceGroupConfigEbsConfiguration+      Stratosphere.ResourceProperties.EMRInstanceGroupConfigMetricDimension+      Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingAction+      Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingConstraints+      Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingRule+      Stratosphere.ResourceProperties.EMRInstanceGroupConfigScalingTrigger+      Stratosphere.ResourceProperties.EMRInstanceGroupConfigSimpleScalingPolicyConfiguration       Stratosphere.ResourceProperties.EMRInstanceGroupConfigVolumeSpecification       Stratosphere.ResourceProperties.EMRStepHadoopJarStepConfig       Stratosphere.ResourceProperties.EMRStepKeyValue@@ -254,6 +294,7 @@       Stratosphere.ResourceProperties.LambdaFunctionCode       Stratosphere.ResourceProperties.LambdaFunctionDeadLetterConfig       Stratosphere.ResourceProperties.LambdaFunctionEnvironment+      Stratosphere.ResourceProperties.LambdaFunctionTracingConfig       Stratosphere.ResourceProperties.LambdaFunctionVpcConfig       Stratosphere.ResourceProperties.LogsMetricFilterMetricTransformation       Stratosphere.ResourceProperties.OpsWorksAppDataSource@@ -319,6 +360,18 @@       Stratosphere.ResourceProperties.WAFByteMatchSetByteMatchTuple       Stratosphere.ResourceProperties.WAFByteMatchSetFieldToMatch       Stratosphere.ResourceProperties.WAFIPSetIPSetDescriptor+      Stratosphere.ResourceProperties.WAFRegionalByteMatchSetByteMatchTuple+      Stratosphere.ResourceProperties.WAFRegionalByteMatchSetFieldToMatch+      Stratosphere.ResourceProperties.WAFRegionalIPSetIPSetDescriptor+      Stratosphere.ResourceProperties.WAFRegionalRulePredicate+      Stratosphere.ResourceProperties.WAFRegionalSizeConstraintSetFieldToMatch+      Stratosphere.ResourceProperties.WAFRegionalSizeConstraintSetSizeConstraint+      Stratosphere.ResourceProperties.WAFRegionalSqlInjectionMatchSetFieldToMatch+      Stratosphere.ResourceProperties.WAFRegionalSqlInjectionMatchSetSqlInjectionMatchTuple+      Stratosphere.ResourceProperties.WAFRegionalWebACLAction+      Stratosphere.ResourceProperties.WAFRegionalWebACLRule+      Stratosphere.ResourceProperties.WAFRegionalXssMatchSetFieldToMatch+      Stratosphere.ResourceProperties.WAFRegionalXssMatchSetXssMatchTuple       Stratosphere.ResourceProperties.WAFRulePredicate       Stratosphere.ResourceProperties.WAFSizeConstraintSetFieldToMatch       Stratosphere.ResourceProperties.WAFSizeConstraintSetSizeConstraint@@ -363,6 +416,13 @@       Stratosphere.Resources.CodeDeployDeploymentGroup       Stratosphere.Resources.CodePipelineCustomActionType       Stratosphere.Resources.CodePipelinePipeline+      Stratosphere.Resources.CognitoIdentityPool+      Stratosphere.Resources.CognitoIdentityPoolRoleAttachment+      Stratosphere.Resources.CognitoUserPool+      Stratosphere.Resources.CognitoUserPoolClient+      Stratosphere.Resources.CognitoUserPoolGroup+      Stratosphere.Resources.CognitoUserPoolUser+      Stratosphere.Resources.CognitoUserPoolUserToGroupAttachment       Stratosphere.Resources.ConfigConfigRule       Stratosphere.Resources.ConfigConfigurationRecorder       Stratosphere.Resources.ConfigDeliveryChannel@@ -430,6 +490,7 @@       Stratosphere.Resources.ElasticsearchDomain       Stratosphere.Resources.EMRCluster       Stratosphere.Resources.EMRInstanceGroupConfig+      Stratosphere.Resources.EMRSecurityConfiguration       Stratosphere.Resources.EMRStep       Stratosphere.Resources.EventsRule       Stratosphere.Resources.GameLiftAlias@@ -498,8 +559,19 @@       Stratosphere.Resources.SQSQueuePolicy       Stratosphere.Resources.SSMAssociation       Stratosphere.Resources.SSMDocument+      Stratosphere.Resources.SSMParameter+      Stratosphere.Resources.StepFunctionsActivity+      Stratosphere.Resources.StepFunctionsStateMachine       Stratosphere.Resources.WAFByteMatchSet       Stratosphere.Resources.WAFIPSet+      Stratosphere.Resources.WAFRegionalByteMatchSet+      Stratosphere.Resources.WAFRegionalIPSet+      Stratosphere.Resources.WAFRegionalRule+      Stratosphere.Resources.WAFRegionalSizeConstraintSet+      Stratosphere.Resources.WAFRegionalSqlInjectionMatchSet+      Stratosphere.Resources.WAFRegionalWebACL+      Stratosphere.Resources.WAFRegionalWebACLAssociation+      Stratosphere.Resources.WAFRegionalXssMatchSet       Stratosphere.Resources.WAFRule       Stratosphere.Resources.WAFSizeConstraintSet       Stratosphere.Resources.WAFSqlInjectionMatchSet