stratosphere-0.50.0: library-gen/Stratosphere/ResourceProperties/ACMPCACertificateAuthorityCrlConfiguration.hs
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TupleSections #-}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-crlconfiguration.html
module Stratosphere.ResourceProperties.ACMPCACertificateAuthorityCrlConfiguration where
import Stratosphere.ResourceImports
-- | Full data type definition for ACMPCACertificateAuthorityCrlConfiguration.
-- See 'acmpcaCertificateAuthorityCrlConfiguration' for a more convenient
-- constructor.
data ACMPCACertificateAuthorityCrlConfiguration =
ACMPCACertificateAuthorityCrlConfiguration
{ _aCMPCACertificateAuthorityCrlConfigurationCustomCname :: Maybe (Val Text)
, _aCMPCACertificateAuthorityCrlConfigurationEnabled :: Maybe (Val Bool)
, _aCMPCACertificateAuthorityCrlConfigurationExpirationInDays :: Maybe (Val Integer)
, _aCMPCACertificateAuthorityCrlConfigurationS3BucketName :: Maybe (Val Text)
} deriving (Show, Eq)
instance ToJSON ACMPCACertificateAuthorityCrlConfiguration where
toJSON ACMPCACertificateAuthorityCrlConfiguration{..} =
object $
catMaybes
[ fmap (("CustomCname",) . toJSON) _aCMPCACertificateAuthorityCrlConfigurationCustomCname
, fmap (("Enabled",) . toJSON) _aCMPCACertificateAuthorityCrlConfigurationEnabled
, fmap (("ExpirationInDays",) . toJSON) _aCMPCACertificateAuthorityCrlConfigurationExpirationInDays
, fmap (("S3BucketName",) . toJSON) _aCMPCACertificateAuthorityCrlConfigurationS3BucketName
]
-- | Constructor for 'ACMPCACertificateAuthorityCrlConfiguration' containing
-- required fields as arguments.
acmpcaCertificateAuthorityCrlConfiguration
:: ACMPCACertificateAuthorityCrlConfiguration
acmpcaCertificateAuthorityCrlConfiguration =
ACMPCACertificateAuthorityCrlConfiguration
{ _aCMPCACertificateAuthorityCrlConfigurationCustomCname = Nothing
, _aCMPCACertificateAuthorityCrlConfigurationEnabled = Nothing
, _aCMPCACertificateAuthorityCrlConfigurationExpirationInDays = Nothing
, _aCMPCACertificateAuthorityCrlConfigurationS3BucketName = Nothing
}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-crlconfiguration.html#cfn-acmpca-certificateauthority-crlconfiguration-customcname
acmpcacaccCustomCname :: Lens' ACMPCACertificateAuthorityCrlConfiguration (Maybe (Val Text))
acmpcacaccCustomCname = lens _aCMPCACertificateAuthorityCrlConfigurationCustomCname (\s a -> s { _aCMPCACertificateAuthorityCrlConfigurationCustomCname = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-crlconfiguration.html#cfn-acmpca-certificateauthority-crlconfiguration-enabled
acmpcacaccEnabled :: Lens' ACMPCACertificateAuthorityCrlConfiguration (Maybe (Val Bool))
acmpcacaccEnabled = lens _aCMPCACertificateAuthorityCrlConfigurationEnabled (\s a -> s { _aCMPCACertificateAuthorityCrlConfigurationEnabled = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-crlconfiguration.html#cfn-acmpca-certificateauthority-crlconfiguration-expirationindays
acmpcacaccExpirationInDays :: Lens' ACMPCACertificateAuthorityCrlConfiguration (Maybe (Val Integer))
acmpcacaccExpirationInDays = lens _aCMPCACertificateAuthorityCrlConfigurationExpirationInDays (\s a -> s { _aCMPCACertificateAuthorityCrlConfigurationExpirationInDays = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-acmpca-certificateauthority-crlconfiguration.html#cfn-acmpca-certificateauthority-crlconfiguration-s3bucketname
acmpcacaccS3BucketName :: Lens' ACMPCACertificateAuthorityCrlConfiguration (Maybe (Val Text))
acmpcacaccS3BucketName = lens _aCMPCACertificateAuthorityCrlConfigurationS3BucketName (\s a -> s { _aCMPCACertificateAuthorityCrlConfigurationS3BucketName = a })