stratosphere-0.15.2: library-gen/Stratosphere/ResourceProperties/LambdaAliasAliasRoutingConfiguration.hs
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TupleSections #-}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-aliasroutingconfiguration.html
module Stratosphere.ResourceProperties.LambdaAliasAliasRoutingConfiguration where
import Stratosphere.ResourceImports
import Stratosphere.ResourceProperties.LambdaAliasVersionWeight
-- | Full data type definition for LambdaAliasAliasRoutingConfiguration. See
-- 'lambdaAliasAliasRoutingConfiguration' for a more convenient constructor.
data LambdaAliasAliasRoutingConfiguration =
LambdaAliasAliasRoutingConfiguration
{ _lambdaAliasAliasRoutingConfigurationAdditionalVersionWeights :: [LambdaAliasVersionWeight]
} deriving (Show, Eq)
instance ToJSON LambdaAliasAliasRoutingConfiguration where
toJSON LambdaAliasAliasRoutingConfiguration{..} =
object $
catMaybes
[ (Just . ("AdditionalVersionWeights",) . toJSON) _lambdaAliasAliasRoutingConfigurationAdditionalVersionWeights
]
instance FromJSON LambdaAliasAliasRoutingConfiguration where
parseJSON (Object obj) =
LambdaAliasAliasRoutingConfiguration <$>
(obj .: "AdditionalVersionWeights")
parseJSON _ = mempty
-- | Constructor for 'LambdaAliasAliasRoutingConfiguration' containing
-- required fields as arguments.
lambdaAliasAliasRoutingConfiguration
:: [LambdaAliasVersionWeight] -- ^ 'laarcAdditionalVersionWeights'
-> LambdaAliasAliasRoutingConfiguration
lambdaAliasAliasRoutingConfiguration additionalVersionWeightsarg =
LambdaAliasAliasRoutingConfiguration
{ _lambdaAliasAliasRoutingConfigurationAdditionalVersionWeights = additionalVersionWeightsarg
}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-alias-aliasroutingconfiguration.html#cfn-lambda-alias-aliasroutingconfiguration-additionalversionweights
laarcAdditionalVersionWeights :: Lens' LambdaAliasAliasRoutingConfiguration [LambdaAliasVersionWeight]
laarcAdditionalVersionWeights = lens _lambdaAliasAliasRoutingConfigurationAdditionalVersionWeights (\s a -> s { _lambdaAliasAliasRoutingConfigurationAdditionalVersionWeights = a })