stratosphere-0.42.0: library-gen/Stratosphere/ResourceProperties/ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata.hs
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TupleSections #-}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html
module Stratosphere.ResourceProperties.ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata where
import Stratosphere.ResourceImports
-- | Full data type definition for
-- ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata. See
-- 'configOrganizationConfigRuleOrganizationCustomRuleMetadata' for a more
-- convenient constructor.
data ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata =
ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata
{ _configOrganizationConfigRuleOrganizationCustomRuleMetadataDescription :: Maybe (Val Text)
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataInputParameters :: Maybe (Val Text)
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataLambdaFunctionArn :: Val Text
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataMaximumExecutionFrequency :: Maybe (Val Text)
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataOrganizationConfigRuleTriggerTypes :: ValList Text
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataResourceIdScope :: Maybe (Val Text)
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataResourceTypesScope :: Maybe (ValList Text)
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataTagKeyScope :: Maybe (Val Text)
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataTagValueScope :: Maybe (Val Text)
} deriving (Show, Eq)
instance ToJSON ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata where
toJSON ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata{..} =
object $
catMaybes
[ fmap (("Description",) . toJSON) _configOrganizationConfigRuleOrganizationCustomRuleMetadataDescription
, fmap (("InputParameters",) . toJSON) _configOrganizationConfigRuleOrganizationCustomRuleMetadataInputParameters
, (Just . ("LambdaFunctionArn",) . toJSON) _configOrganizationConfigRuleOrganizationCustomRuleMetadataLambdaFunctionArn
, fmap (("MaximumExecutionFrequency",) . toJSON) _configOrganizationConfigRuleOrganizationCustomRuleMetadataMaximumExecutionFrequency
, (Just . ("OrganizationConfigRuleTriggerTypes",) . toJSON) _configOrganizationConfigRuleOrganizationCustomRuleMetadataOrganizationConfigRuleTriggerTypes
, fmap (("ResourceIdScope",) . toJSON) _configOrganizationConfigRuleOrganizationCustomRuleMetadataResourceIdScope
, fmap (("ResourceTypesScope",) . toJSON) _configOrganizationConfigRuleOrganizationCustomRuleMetadataResourceTypesScope
, fmap (("TagKeyScope",) . toJSON) _configOrganizationConfigRuleOrganizationCustomRuleMetadataTagKeyScope
, fmap (("TagValueScope",) . toJSON) _configOrganizationConfigRuleOrganizationCustomRuleMetadataTagValueScope
]
-- | Constructor for
-- 'ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata' containing
-- required fields as arguments.
configOrganizationConfigRuleOrganizationCustomRuleMetadata
:: Val Text -- ^ 'cocrocrmLambdaFunctionArn'
-> ValList Text -- ^ 'cocrocrmOrganizationConfigRuleTriggerTypes'
-> ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata
configOrganizationConfigRuleOrganizationCustomRuleMetadata lambdaFunctionArnarg organizationConfigRuleTriggerTypesarg =
ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata
{ _configOrganizationConfigRuleOrganizationCustomRuleMetadataDescription = Nothing
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataInputParameters = Nothing
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataLambdaFunctionArn = lambdaFunctionArnarg
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataMaximumExecutionFrequency = Nothing
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataOrganizationConfigRuleTriggerTypes = organizationConfigRuleTriggerTypesarg
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataResourceIdScope = Nothing
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataResourceTypesScope = Nothing
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataTagKeyScope = Nothing
, _configOrganizationConfigRuleOrganizationCustomRuleMetadataTagValueScope = Nothing
}
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-description
cocrocrmDescription :: Lens' ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata (Maybe (Val Text))
cocrocrmDescription = lens _configOrganizationConfigRuleOrganizationCustomRuleMetadataDescription (\s a -> s { _configOrganizationConfigRuleOrganizationCustomRuleMetadataDescription = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-inputparameters
cocrocrmInputParameters :: Lens' ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata (Maybe (Val Text))
cocrocrmInputParameters = lens _configOrganizationConfigRuleOrganizationCustomRuleMetadataInputParameters (\s a -> s { _configOrganizationConfigRuleOrganizationCustomRuleMetadataInputParameters = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-lambdafunctionarn
cocrocrmLambdaFunctionArn :: Lens' ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata (Val Text)
cocrocrmLambdaFunctionArn = lens _configOrganizationConfigRuleOrganizationCustomRuleMetadataLambdaFunctionArn (\s a -> s { _configOrganizationConfigRuleOrganizationCustomRuleMetadataLambdaFunctionArn = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-maximumexecutionfrequency
cocrocrmMaximumExecutionFrequency :: Lens' ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata (Maybe (Val Text))
cocrocrmMaximumExecutionFrequency = lens _configOrganizationConfigRuleOrganizationCustomRuleMetadataMaximumExecutionFrequency (\s a -> s { _configOrganizationConfigRuleOrganizationCustomRuleMetadataMaximumExecutionFrequency = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-organizationconfigruletriggertypes
cocrocrmOrganizationConfigRuleTriggerTypes :: Lens' ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata (ValList Text)
cocrocrmOrganizationConfigRuleTriggerTypes = lens _configOrganizationConfigRuleOrganizationCustomRuleMetadataOrganizationConfigRuleTriggerTypes (\s a -> s { _configOrganizationConfigRuleOrganizationCustomRuleMetadataOrganizationConfigRuleTriggerTypes = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-resourceidscope
cocrocrmResourceIdScope :: Lens' ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata (Maybe (Val Text))
cocrocrmResourceIdScope = lens _configOrganizationConfigRuleOrganizationCustomRuleMetadataResourceIdScope (\s a -> s { _configOrganizationConfigRuleOrganizationCustomRuleMetadataResourceIdScope = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-resourcetypesscope
cocrocrmResourceTypesScope :: Lens' ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata (Maybe (ValList Text))
cocrocrmResourceTypesScope = lens _configOrganizationConfigRuleOrganizationCustomRuleMetadataResourceTypesScope (\s a -> s { _configOrganizationConfigRuleOrganizationCustomRuleMetadataResourceTypesScope = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-tagkeyscope
cocrocrmTagKeyScope :: Lens' ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata (Maybe (Val Text))
cocrocrmTagKeyScope = lens _configOrganizationConfigRuleOrganizationCustomRuleMetadataTagKeyScope (\s a -> s { _configOrganizationConfigRuleOrganizationCustomRuleMetadataTagKeyScope = a })
-- | http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-organizationconfigrule-organizationcustomrulemetadata.html#cfn-config-organizationconfigrule-organizationcustomrulemetadata-tagvaluescope
cocrocrmTagValueScope :: Lens' ConfigOrganizationConfigRuleOrganizationCustomRuleMetadata (Maybe (Val Text))
cocrocrmTagValueScope = lens _configOrganizationConfigRuleOrganizationCustomRuleMetadataTagValueScope (\s a -> s { _configOrganizationConfigRuleOrganizationCustomRuleMetadataTagValueScope = a })