stratosphere-0.56.0: library-gen/Stratosphere/ResourceProperties/SecretsManagerRotationScheduleHostedRotationLambda.hs
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TupleSections #-}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html
module Stratosphere.ResourceProperties.SecretsManagerRotationScheduleHostedRotationLambda where
import Stratosphere.ResourceImports
-- | Full data type definition for
-- SecretsManagerRotationScheduleHostedRotationLambda. See
-- 'secretsManagerRotationScheduleHostedRotationLambda' for a more
-- convenient constructor.
data SecretsManagerRotationScheduleHostedRotationLambda =
SecretsManagerRotationScheduleHostedRotationLambda
{ _secretsManagerRotationScheduleHostedRotationLambdaKmsKeyArn :: Maybe (Val Text)
, _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretArn :: Maybe (Val Text)
, _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretKmsKeyArn :: Maybe (Val Text)
, _secretsManagerRotationScheduleHostedRotationLambdaRotationLambdaName :: Maybe (Val Text)
, _secretsManagerRotationScheduleHostedRotationLambdaRotationType :: Val Text
, _secretsManagerRotationScheduleHostedRotationLambdaVpcSecurityGroupIds :: Maybe (Val Text)
, _secretsManagerRotationScheduleHostedRotationLambdaVpcSubnetIds :: Maybe (Val Text)
} deriving (Show, Eq)
instance ToJSON SecretsManagerRotationScheduleHostedRotationLambda where
toJSON SecretsManagerRotationScheduleHostedRotationLambda{..} =
object $
catMaybes
[ fmap (("KmsKeyArn",) . toJSON) _secretsManagerRotationScheduleHostedRotationLambdaKmsKeyArn
, fmap (("MasterSecretArn",) . toJSON) _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretArn
, fmap (("MasterSecretKmsKeyArn",) . toJSON) _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretKmsKeyArn
, fmap (("RotationLambdaName",) . toJSON) _secretsManagerRotationScheduleHostedRotationLambdaRotationLambdaName
, (Just . ("RotationType",) . toJSON) _secretsManagerRotationScheduleHostedRotationLambdaRotationType
, fmap (("VpcSecurityGroupIds",) . toJSON) _secretsManagerRotationScheduleHostedRotationLambdaVpcSecurityGroupIds
, fmap (("VpcSubnetIds",) . toJSON) _secretsManagerRotationScheduleHostedRotationLambdaVpcSubnetIds
]
-- | Constructor for 'SecretsManagerRotationScheduleHostedRotationLambda'
-- containing required fields as arguments.
secretsManagerRotationScheduleHostedRotationLambda
:: Val Text -- ^ 'smrshrlRotationType'
-> SecretsManagerRotationScheduleHostedRotationLambda
secretsManagerRotationScheduleHostedRotationLambda rotationTypearg =
SecretsManagerRotationScheduleHostedRotationLambda
{ _secretsManagerRotationScheduleHostedRotationLambdaKmsKeyArn = Nothing
, _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretArn = Nothing
, _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretKmsKeyArn = Nothing
, _secretsManagerRotationScheduleHostedRotationLambdaRotationLambdaName = Nothing
, _secretsManagerRotationScheduleHostedRotationLambdaRotationType = rotationTypearg
, _secretsManagerRotationScheduleHostedRotationLambdaVpcSecurityGroupIds = Nothing
, _secretsManagerRotationScheduleHostedRotationLambdaVpcSubnetIds = Nothing
}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-kmskeyarn
smrshrlKmsKeyArn :: Lens' SecretsManagerRotationScheduleHostedRotationLambda (Maybe (Val Text))
smrshrlKmsKeyArn = lens _secretsManagerRotationScheduleHostedRotationLambdaKmsKeyArn (\s a -> s { _secretsManagerRotationScheduleHostedRotationLambdaKmsKeyArn = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-mastersecretarn
smrshrlMasterSecretArn :: Lens' SecretsManagerRotationScheduleHostedRotationLambda (Maybe (Val Text))
smrshrlMasterSecretArn = lens _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretArn (\s a -> s { _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretArn = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-mastersecretkmskeyarn
smrshrlMasterSecretKmsKeyArn :: Lens' SecretsManagerRotationScheduleHostedRotationLambda (Maybe (Val Text))
smrshrlMasterSecretKmsKeyArn = lens _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretKmsKeyArn (\s a -> s { _secretsManagerRotationScheduleHostedRotationLambdaMasterSecretKmsKeyArn = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-rotationlambdaname
smrshrlRotationLambdaName :: Lens' SecretsManagerRotationScheduleHostedRotationLambda (Maybe (Val Text))
smrshrlRotationLambdaName = lens _secretsManagerRotationScheduleHostedRotationLambdaRotationLambdaName (\s a -> s { _secretsManagerRotationScheduleHostedRotationLambdaRotationLambdaName = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-rotationtype
smrshrlRotationType :: Lens' SecretsManagerRotationScheduleHostedRotationLambda (Val Text)
smrshrlRotationType = lens _secretsManagerRotationScheduleHostedRotationLambdaRotationType (\s a -> s { _secretsManagerRotationScheduleHostedRotationLambdaRotationType = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-vpcsecuritygroupids
smrshrlVpcSecurityGroupIds :: Lens' SecretsManagerRotationScheduleHostedRotationLambda (Maybe (Val Text))
smrshrlVpcSecurityGroupIds = lens _secretsManagerRotationScheduleHostedRotationLambdaVpcSecurityGroupIds (\s a -> s { _secretsManagerRotationScheduleHostedRotationLambdaVpcSecurityGroupIds = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-secretsmanager-rotationschedule-hostedrotationlambda.html#cfn-secretsmanager-rotationschedule-hostedrotationlambda-vpcsubnetids
smrshrlVpcSubnetIds :: Lens' SecretsManagerRotationScheduleHostedRotationLambda (Maybe (Val Text))
smrshrlVpcSubnetIds = lens _secretsManagerRotationScheduleHostedRotationLambdaVpcSubnetIds (\s a -> s { _secretsManagerRotationScheduleHostedRotationLambdaVpcSubnetIds = a })