stratosphere-0.42.0: library-gen/Stratosphere/ResourceProperties/ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata.hs
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TupleSections #-}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html
module Stratosphere.ResourceProperties.ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata where
import Stratosphere.ResourceImports
-- | Full data type definition for
-- ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata. See
-- 'configOrganizationConfigRuleOrganizationManagedRuleMetadata' for a more
-- convenient constructor.
data ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata =
ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata
{ _configOrganizationConfigRuleOrganizationManagedRuleMetadataDescription :: Maybe (Val Text)
, _configOrganizationConfigRuleOrganizationManagedRuleMetadataInputParameters :: Maybe (Val Text)
, _configOrganizationConfigRuleOrganizationManagedRuleMetadataMaximumExecutionFrequency :: Maybe (Val Text)
, _configOrganizationConfigRuleOrganizationManagedRuleMetadataResourceIdScope :: Maybe (Val Text)
, _configOrganizationConfigRuleOrganizationManagedRuleMetadataResourceTypesScope :: Maybe (ValList Text)
, _configOrganizationConfigRuleOrganizationManagedRuleMetadataRuleIdentifier :: Val Text
, _configOrganizationConfigRuleOrganizationManagedRuleMetadataTagKeyScope :: Maybe (Val Text)
, _configOrganizationConfigRuleOrganizationManagedRuleMetadataTagValueScope :: Maybe (Val Text)
} deriving (Show, Eq)
instance ToJSON ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata where
toJSON ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata{..} =
object $
catMaybes
[ fmap (("Description",) . toJSON) _configOrganizationConfigRuleOrganizationManagedRuleMetadataDescription
, fmap (("InputParameters",) . toJSON) _configOrganizationConfigRuleOrganizationManagedRuleMetadataInputParameters
, fmap (("MaximumExecutionFrequency",) . toJSON) _configOrganizationConfigRuleOrganizationManagedRuleMetadataMaximumExecutionFrequency
, fmap (("ResourceIdScope",) . toJSON) _configOrganizationConfigRuleOrganizationManagedRuleMetadataResourceIdScope
, fmap (("ResourceTypesScope",) . toJSON) _configOrganizationConfigRuleOrganizationManagedRuleMetadataResourceTypesScope
, (Just . ("RuleIdentifier",) . toJSON) _configOrganizationConfigRuleOrganizationManagedRuleMetadataRuleIdentifier
, fmap (("TagKeyScope",) . toJSON) _configOrganizationConfigRuleOrganizationManagedRuleMetadataTagKeyScope
, fmap (("TagValueScope",) . toJSON) _configOrganizationConfigRuleOrganizationManagedRuleMetadataTagValueScope
]
-- | Constructor for
-- 'ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata' containing
-- required fields as arguments.
configOrganizationConfigRuleOrganizationManagedRuleMetadata
:: Val Text -- ^ 'cocromrmRuleIdentifier'
-> ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata
configOrganizationConfigRuleOrganizationManagedRuleMetadata ruleIdentifierarg =
ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata
{ _configOrganizationConfigRuleOrganizationManagedRuleMetadataDescription = Nothing
, _configOrganizationConfigRuleOrganizationManagedRuleMetadataInputParameters = Nothing
, _configOrganizationConfigRuleOrganizationManagedRuleMetadataMaximumExecutionFrequency = Nothing
, _configOrganizationConfigRuleOrganizationManagedRuleMetadataResourceIdScope = Nothing
, _configOrganizationConfigRuleOrganizationManagedRuleMetadataResourceTypesScope = Nothing
, _configOrganizationConfigRuleOrganizationManagedRuleMetadataRuleIdentifier = ruleIdentifierarg
, _configOrganizationConfigRuleOrganizationManagedRuleMetadataTagKeyScope = Nothing
, _configOrganizationConfigRuleOrganizationManagedRuleMetadataTagValueScope = Nothing
}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-description
cocromrmDescription :: Lens' ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata (Maybe (Val Text))
cocromrmDescription = lens _configOrganizationConfigRuleOrganizationManagedRuleMetadataDescription (\s a -> s { _configOrganizationConfigRuleOrganizationManagedRuleMetadataDescription = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-inputparameters
cocromrmInputParameters :: Lens' ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata (Maybe (Val Text))
cocromrmInputParameters = lens _configOrganizationConfigRuleOrganizationManagedRuleMetadataInputParameters (\s a -> s { _configOrganizationConfigRuleOrganizationManagedRuleMetadataInputParameters = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-maximumexecutionfrequency
cocromrmMaximumExecutionFrequency :: Lens' ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata (Maybe (Val Text))
cocromrmMaximumExecutionFrequency = lens _configOrganizationConfigRuleOrganizationManagedRuleMetadataMaximumExecutionFrequency (\s a -> s { _configOrganizationConfigRuleOrganizationManagedRuleMetadataMaximumExecutionFrequency = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-resourceidscope
cocromrmResourceIdScope :: Lens' ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata (Maybe (Val Text))
cocromrmResourceIdScope = lens _configOrganizationConfigRuleOrganizationManagedRuleMetadataResourceIdScope (\s a -> s { _configOrganizationConfigRuleOrganizationManagedRuleMetadataResourceIdScope = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-resourcetypesscope
cocromrmResourceTypesScope :: Lens' ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata (Maybe (ValList Text))
cocromrmResourceTypesScope = lens _configOrganizationConfigRuleOrganizationManagedRuleMetadataResourceTypesScope (\s a -> s { _configOrganizationConfigRuleOrganizationManagedRuleMetadataResourceTypesScope = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-ruleidentifier
cocromrmRuleIdentifier :: Lens' ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata (Val Text)
cocromrmRuleIdentifier = lens _configOrganizationConfigRuleOrganizationManagedRuleMetadataRuleIdentifier (\s a -> s { _configOrganizationConfigRuleOrganizationManagedRuleMetadataRuleIdentifier = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-tagkeyscope
cocromrmTagKeyScope :: Lens' ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata (Maybe (Val Text))
cocromrmTagKeyScope = lens _configOrganizationConfigRuleOrganizationManagedRuleMetadataTagKeyScope (\s a -> s { _configOrganizationConfigRuleOrganizationManagedRuleMetadataTagKeyScope = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationmanagedrulemetadata.html#cfn-config-organizationconfigrule-organizationmanagedrulemetadata-tagvaluescope
cocromrmTagValueScope :: Lens' ConfigOrganizationConfigRuleOrganizationManagedRuleMetadata (Maybe (Val Text))
cocromrmTagValueScope = lens _configOrganizationConfigRuleOrganizationManagedRuleMetadataTagValueScope (\s a -> s { _configOrganizationConfigRuleOrganizationManagedRuleMetadataTagValueScope = a })