stratosphere-0.15.2: library-gen/Stratosphere/ResourceProperties/CloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig.hs
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TupleSections #-}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig.html
module Stratosphere.ResourceProperties.CloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig where
import Stratosphere.ResourceImports
-- | Full data type definition for
-- CloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig.
-- See
-- 'cloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig'
-- for a more convenient constructor.
data CloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig =
CloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig
{ _cloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfigComment :: Val Text
} deriving (Show, Eq)
instance ToJSON CloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig where
toJSON CloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig{..} =
object $
catMaybes
[ (Just . ("Comment",) . toJSON) _cloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfigComment
]
instance FromJSON CloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig where
parseJSON (Object obj) =
CloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig <$>
(obj .: "Comment")
parseJSON _ = mempty
-- | Constructor for
-- 'CloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig'
-- containing required fields as arguments.
cloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig
:: Val Text -- ^ 'cfcfoaicfoaicComment'
-> CloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig
cloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig commentarg =
CloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig
{ _cloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfigComment = commentarg
}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig.html#cfn-cloudfront-cloudfrontoriginaccessidentity-cloudfrontoriginaccessidentityconfig-comment
cfcfoaicfoaicComment :: Lens' CloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfig (Val Text)
cfcfoaicfoaicComment = lens _cloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfigComment (\s a -> s { _cloudFrontCloudFrontOriginAccessIdentityCloudFrontOriginAccessIdentityConfigComment = a })