stratosphere-0.39.0: library-gen/Stratosphere/ResourceProperties/IoTAnalyticsDatasetVersioningConfiguration.hs
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TupleSections #-}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-versioningconfiguration.html
module Stratosphere.ResourceProperties.IoTAnalyticsDatasetVersioningConfiguration where
import Stratosphere.ResourceImports
-- | Full data type definition for IoTAnalyticsDatasetVersioningConfiguration.
-- See 'ioTAnalyticsDatasetVersioningConfiguration' for a more convenient
-- constructor.
data IoTAnalyticsDatasetVersioningConfiguration =
IoTAnalyticsDatasetVersioningConfiguration
{ _ioTAnalyticsDatasetVersioningConfigurationMaxVersions :: Maybe (Val Integer)
, _ioTAnalyticsDatasetVersioningConfigurationUnlimited :: Maybe (Val Bool)
} deriving (Show, Eq)
instance ToJSON IoTAnalyticsDatasetVersioningConfiguration where
toJSON IoTAnalyticsDatasetVersioningConfiguration{..} =
object $
catMaybes
[ fmap (("MaxVersions",) . toJSON) _ioTAnalyticsDatasetVersioningConfigurationMaxVersions
, fmap (("Unlimited",) . toJSON) _ioTAnalyticsDatasetVersioningConfigurationUnlimited
]
-- | Constructor for 'IoTAnalyticsDatasetVersioningConfiguration' containing
-- required fields as arguments.
ioTAnalyticsDatasetVersioningConfiguration
:: IoTAnalyticsDatasetVersioningConfiguration
ioTAnalyticsDatasetVersioningConfiguration =
IoTAnalyticsDatasetVersioningConfiguration
{ _ioTAnalyticsDatasetVersioningConfigurationMaxVersions = Nothing
, _ioTAnalyticsDatasetVersioningConfigurationUnlimited = Nothing
}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-versioningconfiguration.html#cfn-iotanalytics-dataset-versioningconfiguration-maxversions
itadvcMaxVersions :: Lens' IoTAnalyticsDatasetVersioningConfiguration (Maybe (Val Integer))
itadvcMaxVersions = lens _ioTAnalyticsDatasetVersioningConfigurationMaxVersions (\s a -> s { _ioTAnalyticsDatasetVersioningConfigurationMaxVersions = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotanalytics-dataset-versioningconfiguration.html#cfn-iotanalytics-dataset-versioningconfiguration-unlimited
itadvcUnlimited :: Lens' IoTAnalyticsDatasetVersioningConfiguration (Maybe (Val Bool))
itadvcUnlimited = lens _ioTAnalyticsDatasetVersioningConfigurationUnlimited (\s a -> s { _ioTAnalyticsDatasetVersioningConfigurationUnlimited = a })