amazonka-config 1.5.0 → 1.6.0
raw patch · 77 files changed
+6345/−2343 lines, 77 filesdep ~amazonka-coredep ~amazonka-testPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: amazonka-core, amazonka-test
API changes (from Hackage documentation)
- Network.AWS.Config: Deleted :: ConfigurationItemStatus
- Network.AWS.Config: Discovered :: ConfigurationItemStatus
- Network.AWS.Config.Types: Deleted :: ConfigurationItemStatus
- Network.AWS.Config.Types: Discovered :: ConfigurationItemStatus
+ Network.AWS.Config: AWSCloudFrontDistribution :: ResourceType
+ Network.AWS.Config: AWSCloudFrontStreamingDistribution :: ResourceType
+ Network.AWS.Config: AWSElasticBeanstalkApplication :: ResourceType
+ Network.AWS.Config: AWSElasticBeanstalkApplicationVersion :: ResourceType
+ Network.AWS.Config: AWSElasticBeanstalkEnvironment :: ResourceType
+ Network.AWS.Config: AWSElasticLoadBalancingLoadBalancer :: ResourceType
+ Network.AWS.Config: AWSLambdaFunction :: ResourceType
+ Network.AWS.Config: AWSRegion :: ConfigRuleComplianceSummaryGroupKey
+ Network.AWS.Config: AWSWAFRegionalRateBasedRule :: ResourceType
+ Network.AWS.Config: AWSWAFRegionalRule :: ResourceType
+ Network.AWS.Config: AWSWAFRegionalRuleGroup :: ResourceType
+ Network.AWS.Config: AWSWAFRegionalWebACL :: ResourceType
+ Network.AWS.Config: AWSWafRateBasedRule :: ResourceType
+ Network.AWS.Config: AWSWafRule :: ResourceType
+ Network.AWS.Config: AWSWafRuleGroup :: ResourceType
+ Network.AWS.Config: AWSWafWebACL :: ResourceType
+ Network.AWS.Config: Account :: AggregatedSourceType
+ Network.AWS.Config: AccountId :: ConfigRuleComplianceSummaryGroupKey
+ Network.AWS.Config: Organization :: AggregatedSourceType
+ Network.AWS.Config: Outdated :: AggregatedSourceStatusType
+ Network.AWS.Config: ResourceDeleted :: ConfigurationItemStatus
+ Network.AWS.Config: ResourceDeletedNotRecorded :: ConfigurationItemStatus
+ Network.AWS.Config: ResourceDiscovered :: ConfigurationItemStatus
+ Network.AWS.Config: ResourceNotRecorded :: ConfigurationItemStatus
+ Network.AWS.Config: Succeeded :: AggregatedSourceStatusType
+ Network.AWS.Config: _NoAvailableOrganizationException :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Config: _NoSuchConfigurationAggregatorException :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Config: _OrganizationAccessDeniedException :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Config: _OrganizationAllFeaturesNotEnabledException :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Config: aaAggregationAuthorizationARN :: Lens' AggregationAuthorization (Maybe Text)
+ Network.AWS.Config: aaAuthorizedAWSRegion :: Lens' AggregationAuthorization (Maybe Text)
+ Network.AWS.Config: aaAuthorizedAccountId :: Lens' AggregationAuthorization (Maybe Text)
+ Network.AWS.Config: aaCreationTime :: Lens' AggregationAuthorization (Maybe UTCTime)
+ Network.AWS.Config: aasAWSRegions :: Lens' AccountAggregationSource (Maybe (NonEmpty Text))
+ Network.AWS.Config: aasAccountIds :: Lens' AccountAggregationSource (NonEmpty Text)
+ Network.AWS.Config: aasAllAWSRegions :: Lens' AccountAggregationSource (Maybe Bool)
+ Network.AWS.Config: acbcrAWSRegion :: Lens' AggregateComplianceByConfigRule (Maybe Text)
+ Network.AWS.Config: acbcrAccountId :: Lens' AggregateComplianceByConfigRule (Maybe Text)
+ Network.AWS.Config: acbcrCompliance :: Lens' AggregateComplianceByConfigRule (Maybe Compliance)
+ Network.AWS.Config: acbcrConfigRuleName :: Lens' AggregateComplianceByConfigRule (Maybe Text)
+ Network.AWS.Config: accComplianceSummary :: Lens' AggregateComplianceCount (Maybe ComplianceSummary)
+ Network.AWS.Config: accGroupName :: Lens' AggregateComplianceCount (Maybe Text)
+ Network.AWS.Config: accountAggregationSource :: NonEmpty Text -> AccountAggregationSource
+ Network.AWS.Config: aerAWSRegion :: Lens' AggregateEvaluationResult (Maybe Text)
+ Network.AWS.Config: aerAccountId :: Lens' AggregateEvaluationResult (Maybe Text)
+ Network.AWS.Config: aerAnnotation :: Lens' AggregateEvaluationResult (Maybe Text)
+ Network.AWS.Config: aerComplianceType :: Lens' AggregateEvaluationResult (Maybe ComplianceType)
+ Network.AWS.Config: aerConfigRuleInvokedTime :: Lens' AggregateEvaluationResult (Maybe UTCTime)
+ Network.AWS.Config: aerEvaluationResultIdentifier :: Lens' AggregateEvaluationResult (Maybe EvaluationResultIdentifier)
+ Network.AWS.Config: aerResultRecordedTime :: Lens' AggregateEvaluationResult (Maybe UTCTime)
+ Network.AWS.Config: aggregateComplianceByConfigRule :: AggregateComplianceByConfigRule
+ Network.AWS.Config: aggregateComplianceCount :: AggregateComplianceCount
+ Network.AWS.Config: aggregateEvaluationResult :: AggregateEvaluationResult
+ Network.AWS.Config: aggregatedSourceStatus :: AggregatedSourceStatus
+ Network.AWS.Config: aggregationAuthorization :: AggregationAuthorization
+ Network.AWS.Config: assAWSRegion :: Lens' AggregatedSourceStatus (Maybe Text)
+ Network.AWS.Config: assLastErrorCode :: Lens' AggregatedSourceStatus (Maybe Text)
+ Network.AWS.Config: assLastErrorMessage :: Lens' AggregatedSourceStatus (Maybe Text)
+ Network.AWS.Config: assLastUpdateStatus :: Lens' AggregatedSourceStatus (Maybe AggregatedSourceStatusType)
+ Network.AWS.Config: assLastUpdateTime :: Lens' AggregatedSourceStatus (Maybe UTCTime)
+ Network.AWS.Config: assSourceId :: Lens' AggregatedSourceStatus (Maybe Text)
+ Network.AWS.Config: assSourceType :: Lens' AggregatedSourceStatus (Maybe AggregatedSourceType)
+ Network.AWS.Config: baseConfigurationItem :: BaseConfigurationItem
+ Network.AWS.Config: bciAccountId :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config: bciArn :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config: bciAvailabilityZone :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config: bciAwsRegion :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config: bciConfiguration :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config: bciConfigurationItemCaptureTime :: Lens' BaseConfigurationItem (Maybe UTCTime)
+ Network.AWS.Config: bciConfigurationItemStatus :: Lens' BaseConfigurationItem (Maybe ConfigurationItemStatus)
+ Network.AWS.Config: bciConfigurationStateId :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config: bciResourceCreationTime :: Lens' BaseConfigurationItem (Maybe UTCTime)
+ Network.AWS.Config: bciResourceId :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config: bciResourceName :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config: bciResourceType :: Lens' BaseConfigurationItem (Maybe ResourceType)
+ Network.AWS.Config: bciSupplementaryConfiguration :: Lens' BaseConfigurationItem (HashMap Text Text)
+ Network.AWS.Config: bciVersion :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config: caAccountAggregationSources :: Lens' ConfigurationAggregator [AccountAggregationSource]
+ Network.AWS.Config: caConfigurationAggregatorARN :: Lens' ConfigurationAggregator (Maybe Text)
+ Network.AWS.Config: caConfigurationAggregatorName :: Lens' ConfigurationAggregator (Maybe Text)
+ Network.AWS.Config: caCreationTime :: Lens' ConfigurationAggregator (Maybe UTCTime)
+ Network.AWS.Config: caLastUpdatedTime :: Lens' ConfigurationAggregator (Maybe UTCTime)
+ Network.AWS.Config: caOrganizationAggregationSource :: Lens' ConfigurationAggregator (Maybe OrganizationAggregationSource)
+ Network.AWS.Config: configRuleComplianceFilters :: ConfigRuleComplianceFilters
+ Network.AWS.Config: configRuleComplianceSummaryFilters :: ConfigRuleComplianceSummaryFilters
+ Network.AWS.Config: configurationAggregator :: ConfigurationAggregator
+ Network.AWS.Config: crcfAWSRegion :: Lens' ConfigRuleComplianceFilters (Maybe Text)
+ Network.AWS.Config: crcfAccountId :: Lens' ConfigRuleComplianceFilters (Maybe Text)
+ Network.AWS.Config: crcfComplianceType :: Lens' ConfigRuleComplianceFilters (Maybe ComplianceType)
+ Network.AWS.Config: crcfConfigRuleName :: Lens' ConfigRuleComplianceFilters (Maybe Text)
+ Network.AWS.Config: crcsfAWSRegion :: Lens' ConfigRuleComplianceSummaryFilters (Maybe Text)
+ Network.AWS.Config: crcsfAccountId :: Lens' ConfigRuleComplianceSummaryFilters (Maybe Text)
+ Network.AWS.Config: data AccountAggregationSource
+ Network.AWS.Config: data AggregateComplianceByConfigRule
+ Network.AWS.Config: data AggregateComplianceCount
+ Network.AWS.Config: data AggregateEvaluationResult
+ Network.AWS.Config: data AggregatedSourceStatus
+ Network.AWS.Config: data AggregatedSourceStatusType
+ Network.AWS.Config: data AggregatedSourceType
+ Network.AWS.Config: data AggregationAuthorization
+ Network.AWS.Config: data BaseConfigurationItem
+ Network.AWS.Config: data ConfigRuleComplianceFilters
+ Network.AWS.Config: data ConfigRuleComplianceSummaryFilters
+ Network.AWS.Config: data ConfigRuleComplianceSummaryGroupKey
+ Network.AWS.Config: data ConfigurationAggregator
+ Network.AWS.Config: data OrganizationAggregationSource
+ Network.AWS.Config: data PendingAggregationRequest
+ Network.AWS.Config: data ResourceKey
+ Network.AWS.Config: oasAWSRegions :: Lens' OrganizationAggregationSource (Maybe (NonEmpty Text))
+ Network.AWS.Config: oasAllAWSRegions :: Lens' OrganizationAggregationSource (Maybe Bool)
+ Network.AWS.Config: oasRoleARN :: Lens' OrganizationAggregationSource Text
+ Network.AWS.Config: organizationAggregationSource :: Text -> OrganizationAggregationSource
+ Network.AWS.Config: parRequesterAWSRegion :: Lens' PendingAggregationRequest (Maybe Text)
+ Network.AWS.Config: parRequesterAccountId :: Lens' PendingAggregationRequest (Maybe Text)
+ Network.AWS.Config: pendingAggregationRequest :: PendingAggregationRequest
+ Network.AWS.Config: resourceKey :: ResourceType -> Text -> ResourceKey
+ Network.AWS.Config: rkResourceId :: Lens' ResourceKey Text
+ Network.AWS.Config: rkResourceType :: Lens' ResourceKey ResourceType
+ Network.AWS.Config.BatchGetResourceConfig: batchGetResourceConfig :: NonEmpty ResourceKey -> BatchGetResourceConfig
+ Network.AWS.Config.BatchGetResourceConfig: batchGetResourceConfigResponse :: Int -> BatchGetResourceConfigResponse
+ Network.AWS.Config.BatchGetResourceConfig: bgrcResourceKeys :: Lens' BatchGetResourceConfig (NonEmpty ResourceKey)
+ Network.AWS.Config.BatchGetResourceConfig: bgrcrsBaseConfigurationItems :: Lens' BatchGetResourceConfigResponse [BaseConfigurationItem]
+ Network.AWS.Config.BatchGetResourceConfig: bgrcrsResponseStatus :: Lens' BatchGetResourceConfigResponse Int
+ Network.AWS.Config.BatchGetResourceConfig: bgrcrsUnprocessedResourceKeys :: Lens' BatchGetResourceConfigResponse (Maybe (NonEmpty ResourceKey))
+ Network.AWS.Config.BatchGetResourceConfig: data BatchGetResourceConfig
+ Network.AWS.Config.BatchGetResourceConfig: data BatchGetResourceConfigResponse
+ Network.AWS.Config.BatchGetResourceConfig: instance Control.DeepSeq.NFData Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfig
+ Network.AWS.Config.BatchGetResourceConfig: instance Control.DeepSeq.NFData Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfigResponse
+ Network.AWS.Config.BatchGetResourceConfig: instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfig
+ Network.AWS.Config.BatchGetResourceConfig: instance Data.Data.Data Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfig
+ Network.AWS.Config.BatchGetResourceConfig: instance Data.Data.Data Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfigResponse
+ Network.AWS.Config.BatchGetResourceConfig: instance Data.Hashable.Class.Hashable Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfig
+ Network.AWS.Config.BatchGetResourceConfig: instance GHC.Classes.Eq Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfig
+ Network.AWS.Config.BatchGetResourceConfig: instance GHC.Classes.Eq Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfigResponse
+ Network.AWS.Config.BatchGetResourceConfig: instance GHC.Generics.Generic Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfig
+ Network.AWS.Config.BatchGetResourceConfig: instance GHC.Generics.Generic Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfigResponse
+ Network.AWS.Config.BatchGetResourceConfig: instance GHC.Read.Read Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfig
+ Network.AWS.Config.BatchGetResourceConfig: instance GHC.Read.Read Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfigResponse
+ Network.AWS.Config.BatchGetResourceConfig: instance GHC.Show.Show Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfig
+ Network.AWS.Config.BatchGetResourceConfig: instance GHC.Show.Show Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfigResponse
+ Network.AWS.Config.BatchGetResourceConfig: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfig
+ Network.AWS.Config.BatchGetResourceConfig: instance Network.AWS.Data.Path.ToPath Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfig
+ Network.AWS.Config.BatchGetResourceConfig: instance Network.AWS.Data.Query.ToQuery Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfig
+ Network.AWS.Config.BatchGetResourceConfig: instance Network.AWS.Types.AWSRequest Network.AWS.Config.BatchGetResourceConfig.BatchGetResourceConfig
+ Network.AWS.Config.DeleteAggregationAuthorization: daaAuthorizedAWSRegion :: Lens' DeleteAggregationAuthorization Text
+ Network.AWS.Config.DeleteAggregationAuthorization: daaAuthorizedAccountId :: Lens' DeleteAggregationAuthorization Text
+ Network.AWS.Config.DeleteAggregationAuthorization: data DeleteAggregationAuthorization
+ Network.AWS.Config.DeleteAggregationAuthorization: data DeleteAggregationAuthorizationResponse
+ Network.AWS.Config.DeleteAggregationAuthorization: deleteAggregationAuthorization :: Text -> Text -> DeleteAggregationAuthorization
+ Network.AWS.Config.DeleteAggregationAuthorization: deleteAggregationAuthorizationResponse :: DeleteAggregationAuthorizationResponse
+ Network.AWS.Config.DeleteAggregationAuthorization: instance Control.DeepSeq.NFData Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorization
+ Network.AWS.Config.DeleteAggregationAuthorization: instance Control.DeepSeq.NFData Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorizationResponse
+ Network.AWS.Config.DeleteAggregationAuthorization: instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorization
+ Network.AWS.Config.DeleteAggregationAuthorization: instance Data.Data.Data Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorization
+ Network.AWS.Config.DeleteAggregationAuthorization: instance Data.Data.Data Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorizationResponse
+ Network.AWS.Config.DeleteAggregationAuthorization: instance Data.Hashable.Class.Hashable Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorization
+ Network.AWS.Config.DeleteAggregationAuthorization: instance GHC.Classes.Eq Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorization
+ Network.AWS.Config.DeleteAggregationAuthorization: instance GHC.Classes.Eq Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorizationResponse
+ Network.AWS.Config.DeleteAggregationAuthorization: instance GHC.Generics.Generic Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorization
+ Network.AWS.Config.DeleteAggregationAuthorization: instance GHC.Generics.Generic Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorizationResponse
+ Network.AWS.Config.DeleteAggregationAuthorization: instance GHC.Read.Read Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorization
+ Network.AWS.Config.DeleteAggregationAuthorization: instance GHC.Read.Read Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorizationResponse
+ Network.AWS.Config.DeleteAggregationAuthorization: instance GHC.Show.Show Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorization
+ Network.AWS.Config.DeleteAggregationAuthorization: instance GHC.Show.Show Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorizationResponse
+ Network.AWS.Config.DeleteAggregationAuthorization: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorization
+ Network.AWS.Config.DeleteAggregationAuthorization: instance Network.AWS.Data.Path.ToPath Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorization
+ Network.AWS.Config.DeleteAggregationAuthorization: instance Network.AWS.Data.Query.ToQuery Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorization
+ Network.AWS.Config.DeleteAggregationAuthorization: instance Network.AWS.Types.AWSRequest Network.AWS.Config.DeleteAggregationAuthorization.DeleteAggregationAuthorization
+ Network.AWS.Config.DeleteConfigurationAggregator: data DeleteConfigurationAggregator
+ Network.AWS.Config.DeleteConfigurationAggregator: data DeleteConfigurationAggregatorResponse
+ Network.AWS.Config.DeleteConfigurationAggregator: dcaConfigurationAggregatorName :: Lens' DeleteConfigurationAggregator Text
+ Network.AWS.Config.DeleteConfigurationAggregator: deleteConfigurationAggregator :: Text -> DeleteConfigurationAggregator
+ Network.AWS.Config.DeleteConfigurationAggregator: deleteConfigurationAggregatorResponse :: DeleteConfigurationAggregatorResponse
+ Network.AWS.Config.DeleteConfigurationAggregator: instance Control.DeepSeq.NFData Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregator
+ Network.AWS.Config.DeleteConfigurationAggregator: instance Control.DeepSeq.NFData Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregatorResponse
+ Network.AWS.Config.DeleteConfigurationAggregator: instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregator
+ Network.AWS.Config.DeleteConfigurationAggregator: instance Data.Data.Data Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregator
+ Network.AWS.Config.DeleteConfigurationAggregator: instance Data.Data.Data Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregatorResponse
+ Network.AWS.Config.DeleteConfigurationAggregator: instance Data.Hashable.Class.Hashable Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregator
+ Network.AWS.Config.DeleteConfigurationAggregator: instance GHC.Classes.Eq Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregator
+ Network.AWS.Config.DeleteConfigurationAggregator: instance GHC.Classes.Eq Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregatorResponse
+ Network.AWS.Config.DeleteConfigurationAggregator: instance GHC.Generics.Generic Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregator
+ Network.AWS.Config.DeleteConfigurationAggregator: instance GHC.Generics.Generic Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregatorResponse
+ Network.AWS.Config.DeleteConfigurationAggregator: instance GHC.Read.Read Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregator
+ Network.AWS.Config.DeleteConfigurationAggregator: instance GHC.Read.Read Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregatorResponse
+ Network.AWS.Config.DeleteConfigurationAggregator: instance GHC.Show.Show Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregator
+ Network.AWS.Config.DeleteConfigurationAggregator: instance GHC.Show.Show Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregatorResponse
+ Network.AWS.Config.DeleteConfigurationAggregator: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregator
+ Network.AWS.Config.DeleteConfigurationAggregator: instance Network.AWS.Data.Path.ToPath Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregator
+ Network.AWS.Config.DeleteConfigurationAggregator: instance Network.AWS.Data.Query.ToQuery Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregator
+ Network.AWS.Config.DeleteConfigurationAggregator: instance Network.AWS.Types.AWSRequest Network.AWS.Config.DeleteConfigurationAggregator.DeleteConfigurationAggregator
+ Network.AWS.Config.DeletePendingAggregationRequest: data DeletePendingAggregationRequest
+ Network.AWS.Config.DeletePendingAggregationRequest: data DeletePendingAggregationRequestResponse
+ Network.AWS.Config.DeletePendingAggregationRequest: deletePendingAggregationRequest :: Text -> Text -> DeletePendingAggregationRequest
+ Network.AWS.Config.DeletePendingAggregationRequest: deletePendingAggregationRequestResponse :: DeletePendingAggregationRequestResponse
+ Network.AWS.Config.DeletePendingAggregationRequest: dparRequesterAWSRegion :: Lens' DeletePendingAggregationRequest Text
+ Network.AWS.Config.DeletePendingAggregationRequest: dparRequesterAccountId :: Lens' DeletePendingAggregationRequest Text
+ Network.AWS.Config.DeletePendingAggregationRequest: instance Control.DeepSeq.NFData Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequest
+ Network.AWS.Config.DeletePendingAggregationRequest: instance Control.DeepSeq.NFData Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequestResponse
+ Network.AWS.Config.DeletePendingAggregationRequest: instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequest
+ Network.AWS.Config.DeletePendingAggregationRequest: instance Data.Data.Data Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequest
+ Network.AWS.Config.DeletePendingAggregationRequest: instance Data.Data.Data Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequestResponse
+ Network.AWS.Config.DeletePendingAggregationRequest: instance Data.Hashable.Class.Hashable Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequest
+ Network.AWS.Config.DeletePendingAggregationRequest: instance GHC.Classes.Eq Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequest
+ Network.AWS.Config.DeletePendingAggregationRequest: instance GHC.Classes.Eq Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequestResponse
+ Network.AWS.Config.DeletePendingAggregationRequest: instance GHC.Generics.Generic Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequest
+ Network.AWS.Config.DeletePendingAggregationRequest: instance GHC.Generics.Generic Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequestResponse
+ Network.AWS.Config.DeletePendingAggregationRequest: instance GHC.Read.Read Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequest
+ Network.AWS.Config.DeletePendingAggregationRequest: instance GHC.Read.Read Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequestResponse
+ Network.AWS.Config.DeletePendingAggregationRequest: instance GHC.Show.Show Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequest
+ Network.AWS.Config.DeletePendingAggregationRequest: instance GHC.Show.Show Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequestResponse
+ Network.AWS.Config.DeletePendingAggregationRequest: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequest
+ Network.AWS.Config.DeletePendingAggregationRequest: instance Network.AWS.Data.Path.ToPath Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequest
+ Network.AWS.Config.DeletePendingAggregationRequest: instance Network.AWS.Data.Query.ToQuery Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequest
+ Network.AWS.Config.DeletePendingAggregationRequest: instance Network.AWS.Types.AWSRequest Network.AWS.Config.DeletePendingAggregationRequest.DeletePendingAggregationRequest
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: dacbcrConfigurationAggregatorName :: Lens' DescribeAggregateComplianceByConfigRules Text
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: dacbcrFilters :: Lens' DescribeAggregateComplianceByConfigRules (Maybe ConfigRuleComplianceFilters)
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: dacbcrLimit :: Lens' DescribeAggregateComplianceByConfigRules (Maybe Natural)
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: dacbcrNextToken :: Lens' DescribeAggregateComplianceByConfigRules (Maybe Text)
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: dacbcrrsAggregateComplianceByConfigRules :: Lens' DescribeAggregateComplianceByConfigRulesResponse [AggregateComplianceByConfigRule]
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: dacbcrrsNextToken :: Lens' DescribeAggregateComplianceByConfigRulesResponse (Maybe Text)
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: dacbcrrsResponseStatus :: Lens' DescribeAggregateComplianceByConfigRulesResponse Int
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: data DescribeAggregateComplianceByConfigRules
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: data DescribeAggregateComplianceByConfigRulesResponse
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: describeAggregateComplianceByConfigRules :: Text -> DescribeAggregateComplianceByConfigRules
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: describeAggregateComplianceByConfigRulesResponse :: Int -> DescribeAggregateComplianceByConfigRulesResponse
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance Control.DeepSeq.NFData Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRules
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance Control.DeepSeq.NFData Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRulesResponse
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRules
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance Data.Data.Data Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRules
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance Data.Data.Data Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRulesResponse
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance Data.Hashable.Class.Hashable Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRules
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance GHC.Classes.Eq Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRules
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance GHC.Classes.Eq Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRulesResponse
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance GHC.Generics.Generic Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRules
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance GHC.Generics.Generic Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRulesResponse
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance GHC.Read.Read Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRules
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance GHC.Read.Read Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRulesResponse
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance GHC.Show.Show Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRules
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance GHC.Show.Show Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRulesResponse
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRules
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance Network.AWS.Data.Path.ToPath Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRules
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance Network.AWS.Data.Query.ToQuery Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRules
+ Network.AWS.Config.DescribeAggregateComplianceByConfigRules: instance Network.AWS.Types.AWSRequest Network.AWS.Config.DescribeAggregateComplianceByConfigRules.DescribeAggregateComplianceByConfigRules
+ Network.AWS.Config.DescribeAggregationAuthorizations: daaLimit :: Lens' DescribeAggregationAuthorizations (Maybe Natural)
+ Network.AWS.Config.DescribeAggregationAuthorizations: daaNextToken :: Lens' DescribeAggregationAuthorizations (Maybe Text)
+ Network.AWS.Config.DescribeAggregationAuthorizations: daarsAggregationAuthorizations :: Lens' DescribeAggregationAuthorizationsResponse [AggregationAuthorization]
+ Network.AWS.Config.DescribeAggregationAuthorizations: daarsNextToken :: Lens' DescribeAggregationAuthorizationsResponse (Maybe Text)
+ Network.AWS.Config.DescribeAggregationAuthorizations: daarsResponseStatus :: Lens' DescribeAggregationAuthorizationsResponse Int
+ Network.AWS.Config.DescribeAggregationAuthorizations: data DescribeAggregationAuthorizations
+ Network.AWS.Config.DescribeAggregationAuthorizations: data DescribeAggregationAuthorizationsResponse
+ Network.AWS.Config.DescribeAggregationAuthorizations: describeAggregationAuthorizations :: DescribeAggregationAuthorizations
+ Network.AWS.Config.DescribeAggregationAuthorizations: describeAggregationAuthorizationsResponse :: Int -> DescribeAggregationAuthorizationsResponse
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance Control.DeepSeq.NFData Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizations
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance Control.DeepSeq.NFData Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizationsResponse
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizations
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance Data.Data.Data Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizations
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance Data.Data.Data Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizationsResponse
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance Data.Hashable.Class.Hashable Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizations
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance GHC.Classes.Eq Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizations
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance GHC.Classes.Eq Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizationsResponse
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance GHC.Generics.Generic Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizations
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance GHC.Generics.Generic Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizationsResponse
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance GHC.Read.Read Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizations
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance GHC.Read.Read Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizationsResponse
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance GHC.Show.Show Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizations
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance GHC.Show.Show Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizationsResponse
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizations
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance Network.AWS.Data.Path.ToPath Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizations
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance Network.AWS.Data.Query.ToQuery Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizations
+ Network.AWS.Config.DescribeAggregationAuthorizations: instance Network.AWS.Types.AWSRequest Network.AWS.Config.DescribeAggregationAuthorizations.DescribeAggregationAuthorizations
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: data DescribeConfigurationAggregatorSourcesStatus
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: data DescribeConfigurationAggregatorSourcesStatusResponse
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: dcassConfigurationAggregatorName :: Lens' DescribeConfigurationAggregatorSourcesStatus Text
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: dcassLimit :: Lens' DescribeConfigurationAggregatorSourcesStatus (Maybe Natural)
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: dcassNextToken :: Lens' DescribeConfigurationAggregatorSourcesStatus (Maybe Text)
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: dcassUpdateStatus :: Lens' DescribeConfigurationAggregatorSourcesStatus (Maybe (NonEmpty AggregatedSourceStatusType))
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: dcassrsAggregatedSourceStatusList :: Lens' DescribeConfigurationAggregatorSourcesStatusResponse [AggregatedSourceStatus]
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: dcassrsNextToken :: Lens' DescribeConfigurationAggregatorSourcesStatusResponse (Maybe Text)
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: dcassrsResponseStatus :: Lens' DescribeConfigurationAggregatorSourcesStatusResponse Int
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: describeConfigurationAggregatorSourcesStatus :: Text -> DescribeConfigurationAggregatorSourcesStatus
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: describeConfigurationAggregatorSourcesStatusResponse :: Int -> DescribeConfigurationAggregatorSourcesStatusResponse
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance Control.DeepSeq.NFData Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatus
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance Control.DeepSeq.NFData Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatusResponse
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatus
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance Data.Data.Data Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatus
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance Data.Data.Data Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatusResponse
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance Data.Hashable.Class.Hashable Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatus
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance GHC.Classes.Eq Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatus
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance GHC.Classes.Eq Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatusResponse
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance GHC.Generics.Generic Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatus
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance GHC.Generics.Generic Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatusResponse
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance GHC.Read.Read Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatus
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance GHC.Read.Read Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatusResponse
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance GHC.Show.Show Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatus
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance GHC.Show.Show Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatusResponse
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatus
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance Network.AWS.Data.Path.ToPath Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatus
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance Network.AWS.Data.Query.ToQuery Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatus
+ Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus: instance Network.AWS.Types.AWSRequest Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus.DescribeConfigurationAggregatorSourcesStatus
+ Network.AWS.Config.DescribeConfigurationAggregators: data DescribeConfigurationAggregators
+ Network.AWS.Config.DescribeConfigurationAggregators: data DescribeConfigurationAggregatorsResponse
+ Network.AWS.Config.DescribeConfigurationAggregators: dcaConfigurationAggregatorNames :: Lens' DescribeConfigurationAggregators [Text]
+ Network.AWS.Config.DescribeConfigurationAggregators: dcaLimit :: Lens' DescribeConfigurationAggregators (Maybe Natural)
+ Network.AWS.Config.DescribeConfigurationAggregators: dcaNextToken :: Lens' DescribeConfigurationAggregators (Maybe Text)
+ Network.AWS.Config.DescribeConfigurationAggregators: dcarsConfigurationAggregators :: Lens' DescribeConfigurationAggregatorsResponse [ConfigurationAggregator]
+ Network.AWS.Config.DescribeConfigurationAggregators: dcarsNextToken :: Lens' DescribeConfigurationAggregatorsResponse (Maybe Text)
+ Network.AWS.Config.DescribeConfigurationAggregators: dcarsResponseStatus :: Lens' DescribeConfigurationAggregatorsResponse Int
+ Network.AWS.Config.DescribeConfigurationAggregators: describeConfigurationAggregators :: DescribeConfigurationAggregators
+ Network.AWS.Config.DescribeConfigurationAggregators: describeConfigurationAggregatorsResponse :: Int -> DescribeConfigurationAggregatorsResponse
+ Network.AWS.Config.DescribeConfigurationAggregators: instance Control.DeepSeq.NFData Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregators
+ Network.AWS.Config.DescribeConfigurationAggregators: instance Control.DeepSeq.NFData Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregatorsResponse
+ Network.AWS.Config.DescribeConfigurationAggregators: instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregators
+ Network.AWS.Config.DescribeConfigurationAggregators: instance Data.Data.Data Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregators
+ Network.AWS.Config.DescribeConfigurationAggregators: instance Data.Data.Data Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregatorsResponse
+ Network.AWS.Config.DescribeConfigurationAggregators: instance Data.Hashable.Class.Hashable Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregators
+ Network.AWS.Config.DescribeConfigurationAggregators: instance GHC.Classes.Eq Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregators
+ Network.AWS.Config.DescribeConfigurationAggregators: instance GHC.Classes.Eq Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregatorsResponse
+ Network.AWS.Config.DescribeConfigurationAggregators: instance GHC.Generics.Generic Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregators
+ Network.AWS.Config.DescribeConfigurationAggregators: instance GHC.Generics.Generic Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregatorsResponse
+ Network.AWS.Config.DescribeConfigurationAggregators: instance GHC.Read.Read Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregators
+ Network.AWS.Config.DescribeConfigurationAggregators: instance GHC.Read.Read Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregatorsResponse
+ Network.AWS.Config.DescribeConfigurationAggregators: instance GHC.Show.Show Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregators
+ Network.AWS.Config.DescribeConfigurationAggregators: instance GHC.Show.Show Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregatorsResponse
+ Network.AWS.Config.DescribeConfigurationAggregators: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregators
+ Network.AWS.Config.DescribeConfigurationAggregators: instance Network.AWS.Data.Path.ToPath Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregators
+ Network.AWS.Config.DescribeConfigurationAggregators: instance Network.AWS.Data.Query.ToQuery Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregators
+ Network.AWS.Config.DescribeConfigurationAggregators: instance Network.AWS.Types.AWSRequest Network.AWS.Config.DescribeConfigurationAggregators.DescribeConfigurationAggregators
+ Network.AWS.Config.DescribePendingAggregationRequests: data DescribePendingAggregationRequests
+ Network.AWS.Config.DescribePendingAggregationRequests: data DescribePendingAggregationRequestsResponse
+ Network.AWS.Config.DescribePendingAggregationRequests: describePendingAggregationRequests :: DescribePendingAggregationRequests
+ Network.AWS.Config.DescribePendingAggregationRequests: describePendingAggregationRequestsResponse :: Int -> DescribePendingAggregationRequestsResponse
+ Network.AWS.Config.DescribePendingAggregationRequests: dparLimit :: Lens' DescribePendingAggregationRequests (Maybe Natural)
+ Network.AWS.Config.DescribePendingAggregationRequests: dparNextToken :: Lens' DescribePendingAggregationRequests (Maybe Text)
+ Network.AWS.Config.DescribePendingAggregationRequests: dparrsNextToken :: Lens' DescribePendingAggregationRequestsResponse (Maybe Text)
+ Network.AWS.Config.DescribePendingAggregationRequests: dparrsPendingAggregationRequests :: Lens' DescribePendingAggregationRequestsResponse [PendingAggregationRequest]
+ Network.AWS.Config.DescribePendingAggregationRequests: dparrsResponseStatus :: Lens' DescribePendingAggregationRequestsResponse Int
+ Network.AWS.Config.DescribePendingAggregationRequests: instance Control.DeepSeq.NFData Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequests
+ Network.AWS.Config.DescribePendingAggregationRequests: instance Control.DeepSeq.NFData Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequestsResponse
+ Network.AWS.Config.DescribePendingAggregationRequests: instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequests
+ Network.AWS.Config.DescribePendingAggregationRequests: instance Data.Data.Data Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequests
+ Network.AWS.Config.DescribePendingAggregationRequests: instance Data.Data.Data Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequestsResponse
+ Network.AWS.Config.DescribePendingAggregationRequests: instance Data.Hashable.Class.Hashable Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequests
+ Network.AWS.Config.DescribePendingAggregationRequests: instance GHC.Classes.Eq Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequests
+ Network.AWS.Config.DescribePendingAggregationRequests: instance GHC.Classes.Eq Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequestsResponse
+ Network.AWS.Config.DescribePendingAggregationRequests: instance GHC.Generics.Generic Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequests
+ Network.AWS.Config.DescribePendingAggregationRequests: instance GHC.Generics.Generic Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequestsResponse
+ Network.AWS.Config.DescribePendingAggregationRequests: instance GHC.Read.Read Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequests
+ Network.AWS.Config.DescribePendingAggregationRequests: instance GHC.Read.Read Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequestsResponse
+ Network.AWS.Config.DescribePendingAggregationRequests: instance GHC.Show.Show Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequests
+ Network.AWS.Config.DescribePendingAggregationRequests: instance GHC.Show.Show Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequestsResponse
+ Network.AWS.Config.DescribePendingAggregationRequests: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequests
+ Network.AWS.Config.DescribePendingAggregationRequests: instance Network.AWS.Data.Path.ToPath Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequests
+ Network.AWS.Config.DescribePendingAggregationRequests: instance Network.AWS.Data.Query.ToQuery Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequests
+ Network.AWS.Config.DescribePendingAggregationRequests: instance Network.AWS.Types.AWSRequest Network.AWS.Config.DescribePendingAggregationRequests.DescribePendingAggregationRequests
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: data GetAggregateComplianceDetailsByConfigRule
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: data GetAggregateComplianceDetailsByConfigRuleResponse
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: gacdbcrAWSRegion :: Lens' GetAggregateComplianceDetailsByConfigRule Text
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: gacdbcrAccountId :: Lens' GetAggregateComplianceDetailsByConfigRule Text
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: gacdbcrComplianceType :: Lens' GetAggregateComplianceDetailsByConfigRule (Maybe ComplianceType)
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: gacdbcrConfigRuleName :: Lens' GetAggregateComplianceDetailsByConfigRule Text
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: gacdbcrConfigurationAggregatorName :: Lens' GetAggregateComplianceDetailsByConfigRule Text
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: gacdbcrLimit :: Lens' GetAggregateComplianceDetailsByConfigRule (Maybe Natural)
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: gacdbcrNextToken :: Lens' GetAggregateComplianceDetailsByConfigRule (Maybe Text)
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: gacdbcrrsAggregateEvaluationResults :: Lens' GetAggregateComplianceDetailsByConfigRuleResponse [AggregateEvaluationResult]
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: gacdbcrrsNextToken :: Lens' GetAggregateComplianceDetailsByConfigRuleResponse (Maybe Text)
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: gacdbcrrsResponseStatus :: Lens' GetAggregateComplianceDetailsByConfigRuleResponse Int
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: getAggregateComplianceDetailsByConfigRule :: Text -> Text -> Text -> Text -> GetAggregateComplianceDetailsByConfigRule
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: getAggregateComplianceDetailsByConfigRuleResponse :: Int -> GetAggregateComplianceDetailsByConfigRuleResponse
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance Control.DeepSeq.NFData Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRule
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance Control.DeepSeq.NFData Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRuleResponse
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRule
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance Data.Data.Data Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRule
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance Data.Data.Data Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRuleResponse
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance Data.Hashable.Class.Hashable Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRule
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance GHC.Classes.Eq Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRule
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance GHC.Classes.Eq Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRuleResponse
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance GHC.Generics.Generic Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRule
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance GHC.Generics.Generic Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRuleResponse
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance GHC.Read.Read Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRule
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance GHC.Read.Read Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRuleResponse
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance GHC.Show.Show Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRule
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance GHC.Show.Show Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRuleResponse
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRule
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance Network.AWS.Data.Path.ToPath Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRule
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance Network.AWS.Data.Query.ToQuery Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRule
+ Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule: instance Network.AWS.Types.AWSRequest Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule.GetAggregateComplianceDetailsByConfigRule
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: data GetAggregateConfigRuleComplianceSummary
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: data GetAggregateConfigRuleComplianceSummaryResponse
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: gacrcsConfigurationAggregatorName :: Lens' GetAggregateConfigRuleComplianceSummary Text
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: gacrcsFilters :: Lens' GetAggregateConfigRuleComplianceSummary (Maybe ConfigRuleComplianceSummaryFilters)
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: gacrcsGroupByKey :: Lens' GetAggregateConfigRuleComplianceSummary (Maybe ConfigRuleComplianceSummaryGroupKey)
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: gacrcsLimit :: Lens' GetAggregateConfigRuleComplianceSummary (Maybe Natural)
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: gacrcsNextToken :: Lens' GetAggregateConfigRuleComplianceSummary (Maybe Text)
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: gacrcsrsAggregateComplianceCounts :: Lens' GetAggregateConfigRuleComplianceSummaryResponse [AggregateComplianceCount]
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: gacrcsrsGroupByKey :: Lens' GetAggregateConfigRuleComplianceSummaryResponse (Maybe Text)
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: gacrcsrsNextToken :: Lens' GetAggregateConfigRuleComplianceSummaryResponse (Maybe Text)
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: gacrcsrsResponseStatus :: Lens' GetAggregateConfigRuleComplianceSummaryResponse Int
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: getAggregateConfigRuleComplianceSummary :: Text -> GetAggregateConfigRuleComplianceSummary
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: getAggregateConfigRuleComplianceSummaryResponse :: Int -> GetAggregateConfigRuleComplianceSummaryResponse
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance Control.DeepSeq.NFData Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummary
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance Control.DeepSeq.NFData Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummaryResponse
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummary
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance Data.Data.Data Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummary
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance Data.Data.Data Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummaryResponse
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance Data.Hashable.Class.Hashable Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummary
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance GHC.Classes.Eq Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummary
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance GHC.Classes.Eq Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummaryResponse
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance GHC.Generics.Generic Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummary
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance GHC.Generics.Generic Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummaryResponse
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance GHC.Read.Read Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummary
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance GHC.Read.Read Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummaryResponse
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance GHC.Show.Show Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummary
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance GHC.Show.Show Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummaryResponse
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummary
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance Network.AWS.Data.Path.ToPath Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummary
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance Network.AWS.Data.Query.ToQuery Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummary
+ Network.AWS.Config.GetAggregateConfigRuleComplianceSummary: instance Network.AWS.Types.AWSRequest Network.AWS.Config.GetAggregateConfigRuleComplianceSummary.GetAggregateConfigRuleComplianceSummary
+ Network.AWS.Config.PutAggregationAuthorization: data PutAggregationAuthorization
+ Network.AWS.Config.PutAggregationAuthorization: data PutAggregationAuthorizationResponse
+ Network.AWS.Config.PutAggregationAuthorization: instance Control.DeepSeq.NFData Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorization
+ Network.AWS.Config.PutAggregationAuthorization: instance Control.DeepSeq.NFData Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorizationResponse
+ Network.AWS.Config.PutAggregationAuthorization: instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorization
+ Network.AWS.Config.PutAggregationAuthorization: instance Data.Data.Data Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorization
+ Network.AWS.Config.PutAggregationAuthorization: instance Data.Data.Data Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorizationResponse
+ Network.AWS.Config.PutAggregationAuthorization: instance Data.Hashable.Class.Hashable Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorization
+ Network.AWS.Config.PutAggregationAuthorization: instance GHC.Classes.Eq Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorization
+ Network.AWS.Config.PutAggregationAuthorization: instance GHC.Classes.Eq Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorizationResponse
+ Network.AWS.Config.PutAggregationAuthorization: instance GHC.Generics.Generic Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorization
+ Network.AWS.Config.PutAggregationAuthorization: instance GHC.Generics.Generic Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorizationResponse
+ Network.AWS.Config.PutAggregationAuthorization: instance GHC.Read.Read Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorization
+ Network.AWS.Config.PutAggregationAuthorization: instance GHC.Read.Read Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorizationResponse
+ Network.AWS.Config.PutAggregationAuthorization: instance GHC.Show.Show Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorization
+ Network.AWS.Config.PutAggregationAuthorization: instance GHC.Show.Show Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorizationResponse
+ Network.AWS.Config.PutAggregationAuthorization: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorization
+ Network.AWS.Config.PutAggregationAuthorization: instance Network.AWS.Data.Path.ToPath Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorization
+ Network.AWS.Config.PutAggregationAuthorization: instance Network.AWS.Data.Query.ToQuery Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorization
+ Network.AWS.Config.PutAggregationAuthorization: instance Network.AWS.Types.AWSRequest Network.AWS.Config.PutAggregationAuthorization.PutAggregationAuthorization
+ Network.AWS.Config.PutAggregationAuthorization: paaAuthorizedAWSRegion :: Lens' PutAggregationAuthorization Text
+ Network.AWS.Config.PutAggregationAuthorization: paaAuthorizedAccountId :: Lens' PutAggregationAuthorization Text
+ Network.AWS.Config.PutAggregationAuthorization: paarsAggregationAuthorization :: Lens' PutAggregationAuthorizationResponse (Maybe AggregationAuthorization)
+ Network.AWS.Config.PutAggregationAuthorization: paarsResponseStatus :: Lens' PutAggregationAuthorizationResponse Int
+ Network.AWS.Config.PutAggregationAuthorization: putAggregationAuthorization :: Text -> Text -> PutAggregationAuthorization
+ Network.AWS.Config.PutAggregationAuthorization: putAggregationAuthorizationResponse :: Int -> PutAggregationAuthorizationResponse
+ Network.AWS.Config.PutConfigurationAggregator: data PutConfigurationAggregator
+ Network.AWS.Config.PutConfigurationAggregator: data PutConfigurationAggregatorResponse
+ Network.AWS.Config.PutConfigurationAggregator: instance Control.DeepSeq.NFData Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregator
+ Network.AWS.Config.PutConfigurationAggregator: instance Control.DeepSeq.NFData Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregatorResponse
+ Network.AWS.Config.PutConfigurationAggregator: instance Data.Aeson.Types.ToJSON.ToJSON Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregator
+ Network.AWS.Config.PutConfigurationAggregator: instance Data.Data.Data Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregator
+ Network.AWS.Config.PutConfigurationAggregator: instance Data.Data.Data Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregatorResponse
+ Network.AWS.Config.PutConfigurationAggregator: instance Data.Hashable.Class.Hashable Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregator
+ Network.AWS.Config.PutConfigurationAggregator: instance GHC.Classes.Eq Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregator
+ Network.AWS.Config.PutConfigurationAggregator: instance GHC.Classes.Eq Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregatorResponse
+ Network.AWS.Config.PutConfigurationAggregator: instance GHC.Generics.Generic Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregator
+ Network.AWS.Config.PutConfigurationAggregator: instance GHC.Generics.Generic Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregatorResponse
+ Network.AWS.Config.PutConfigurationAggregator: instance GHC.Read.Read Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregator
+ Network.AWS.Config.PutConfigurationAggregator: instance GHC.Read.Read Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregatorResponse
+ Network.AWS.Config.PutConfigurationAggregator: instance GHC.Show.Show Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregator
+ Network.AWS.Config.PutConfigurationAggregator: instance GHC.Show.Show Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregatorResponse
+ Network.AWS.Config.PutConfigurationAggregator: instance Network.AWS.Data.Headers.ToHeaders Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregator
+ Network.AWS.Config.PutConfigurationAggregator: instance Network.AWS.Data.Path.ToPath Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregator
+ Network.AWS.Config.PutConfigurationAggregator: instance Network.AWS.Data.Query.ToQuery Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregator
+ Network.AWS.Config.PutConfigurationAggregator: instance Network.AWS.Types.AWSRequest Network.AWS.Config.PutConfigurationAggregator.PutConfigurationAggregator
+ Network.AWS.Config.PutConfigurationAggregator: pcaAccountAggregationSources :: Lens' PutConfigurationAggregator [AccountAggregationSource]
+ Network.AWS.Config.PutConfigurationAggregator: pcaConfigurationAggregatorName :: Lens' PutConfigurationAggregator Text
+ Network.AWS.Config.PutConfigurationAggregator: pcaOrganizationAggregationSource :: Lens' PutConfigurationAggregator (Maybe OrganizationAggregationSource)
+ Network.AWS.Config.PutConfigurationAggregator: pcarsConfigurationAggregator :: Lens' PutConfigurationAggregatorResponse (Maybe ConfigurationAggregator)
+ Network.AWS.Config.PutConfigurationAggregator: pcarsResponseStatus :: Lens' PutConfigurationAggregatorResponse Int
+ Network.AWS.Config.PutConfigurationAggregator: putConfigurationAggregator :: Text -> PutConfigurationAggregator
+ Network.AWS.Config.PutConfigurationAggregator: putConfigurationAggregatorResponse :: Int -> PutConfigurationAggregatorResponse
+ Network.AWS.Config.Types: AWSCloudFrontDistribution :: ResourceType
+ Network.AWS.Config.Types: AWSCloudFrontStreamingDistribution :: ResourceType
+ Network.AWS.Config.Types: AWSElasticBeanstalkApplication :: ResourceType
+ Network.AWS.Config.Types: AWSElasticBeanstalkApplicationVersion :: ResourceType
+ Network.AWS.Config.Types: AWSElasticBeanstalkEnvironment :: ResourceType
+ Network.AWS.Config.Types: AWSElasticLoadBalancingLoadBalancer :: ResourceType
+ Network.AWS.Config.Types: AWSLambdaFunction :: ResourceType
+ Network.AWS.Config.Types: AWSRegion :: ConfigRuleComplianceSummaryGroupKey
+ Network.AWS.Config.Types: AWSWAFRegionalRateBasedRule :: ResourceType
+ Network.AWS.Config.Types: AWSWAFRegionalRule :: ResourceType
+ Network.AWS.Config.Types: AWSWAFRegionalRuleGroup :: ResourceType
+ Network.AWS.Config.Types: AWSWAFRegionalWebACL :: ResourceType
+ Network.AWS.Config.Types: AWSWafRateBasedRule :: ResourceType
+ Network.AWS.Config.Types: AWSWafRule :: ResourceType
+ Network.AWS.Config.Types: AWSWafRuleGroup :: ResourceType
+ Network.AWS.Config.Types: AWSWafWebACL :: ResourceType
+ Network.AWS.Config.Types: Account :: AggregatedSourceType
+ Network.AWS.Config.Types: AccountId :: ConfigRuleComplianceSummaryGroupKey
+ Network.AWS.Config.Types: Organization :: AggregatedSourceType
+ Network.AWS.Config.Types: Outdated :: AggregatedSourceStatusType
+ Network.AWS.Config.Types: ResourceDeleted :: ConfigurationItemStatus
+ Network.AWS.Config.Types: ResourceDeletedNotRecorded :: ConfigurationItemStatus
+ Network.AWS.Config.Types: ResourceDiscovered :: ConfigurationItemStatus
+ Network.AWS.Config.Types: ResourceNotRecorded :: ConfigurationItemStatus
+ Network.AWS.Config.Types: Succeeded :: AggregatedSourceStatusType
+ Network.AWS.Config.Types: _NoAvailableOrganizationException :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Config.Types: _NoSuchConfigurationAggregatorException :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Config.Types: _OrganizationAccessDeniedException :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Config.Types: _OrganizationAllFeaturesNotEnabledException :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.Config.Types: aaAggregationAuthorizationARN :: Lens' AggregationAuthorization (Maybe Text)
+ Network.AWS.Config.Types: aaAuthorizedAWSRegion :: Lens' AggregationAuthorization (Maybe Text)
+ Network.AWS.Config.Types: aaAuthorizedAccountId :: Lens' AggregationAuthorization (Maybe Text)
+ Network.AWS.Config.Types: aaCreationTime :: Lens' AggregationAuthorization (Maybe UTCTime)
+ Network.AWS.Config.Types: aasAWSRegions :: Lens' AccountAggregationSource (Maybe (NonEmpty Text))
+ Network.AWS.Config.Types: aasAccountIds :: Lens' AccountAggregationSource (NonEmpty Text)
+ Network.AWS.Config.Types: aasAllAWSRegions :: Lens' AccountAggregationSource (Maybe Bool)
+ Network.AWS.Config.Types: acbcrAWSRegion :: Lens' AggregateComplianceByConfigRule (Maybe Text)
+ Network.AWS.Config.Types: acbcrAccountId :: Lens' AggregateComplianceByConfigRule (Maybe Text)
+ Network.AWS.Config.Types: acbcrCompliance :: Lens' AggregateComplianceByConfigRule (Maybe Compliance)
+ Network.AWS.Config.Types: acbcrConfigRuleName :: Lens' AggregateComplianceByConfigRule (Maybe Text)
+ Network.AWS.Config.Types: accComplianceSummary :: Lens' AggregateComplianceCount (Maybe ComplianceSummary)
+ Network.AWS.Config.Types: accGroupName :: Lens' AggregateComplianceCount (Maybe Text)
+ Network.AWS.Config.Types: accountAggregationSource :: NonEmpty Text -> AccountAggregationSource
+ Network.AWS.Config.Types: aerAWSRegion :: Lens' AggregateEvaluationResult (Maybe Text)
+ Network.AWS.Config.Types: aerAccountId :: Lens' AggregateEvaluationResult (Maybe Text)
+ Network.AWS.Config.Types: aerAnnotation :: Lens' AggregateEvaluationResult (Maybe Text)
+ Network.AWS.Config.Types: aerComplianceType :: Lens' AggregateEvaluationResult (Maybe ComplianceType)
+ Network.AWS.Config.Types: aerConfigRuleInvokedTime :: Lens' AggregateEvaluationResult (Maybe UTCTime)
+ Network.AWS.Config.Types: aerEvaluationResultIdentifier :: Lens' AggregateEvaluationResult (Maybe EvaluationResultIdentifier)
+ Network.AWS.Config.Types: aerResultRecordedTime :: Lens' AggregateEvaluationResult (Maybe UTCTime)
+ Network.AWS.Config.Types: aggregateComplianceByConfigRule :: AggregateComplianceByConfigRule
+ Network.AWS.Config.Types: aggregateComplianceCount :: AggregateComplianceCount
+ Network.AWS.Config.Types: aggregateEvaluationResult :: AggregateEvaluationResult
+ Network.AWS.Config.Types: aggregatedSourceStatus :: AggregatedSourceStatus
+ Network.AWS.Config.Types: aggregationAuthorization :: AggregationAuthorization
+ Network.AWS.Config.Types: assAWSRegion :: Lens' AggregatedSourceStatus (Maybe Text)
+ Network.AWS.Config.Types: assLastErrorCode :: Lens' AggregatedSourceStatus (Maybe Text)
+ Network.AWS.Config.Types: assLastErrorMessage :: Lens' AggregatedSourceStatus (Maybe Text)
+ Network.AWS.Config.Types: assLastUpdateStatus :: Lens' AggregatedSourceStatus (Maybe AggregatedSourceStatusType)
+ Network.AWS.Config.Types: assLastUpdateTime :: Lens' AggregatedSourceStatus (Maybe UTCTime)
+ Network.AWS.Config.Types: assSourceId :: Lens' AggregatedSourceStatus (Maybe Text)
+ Network.AWS.Config.Types: assSourceType :: Lens' AggregatedSourceStatus (Maybe AggregatedSourceType)
+ Network.AWS.Config.Types: baseConfigurationItem :: BaseConfigurationItem
+ Network.AWS.Config.Types: bciAccountId :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config.Types: bciArn :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config.Types: bciAvailabilityZone :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config.Types: bciAwsRegion :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config.Types: bciConfiguration :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config.Types: bciConfigurationItemCaptureTime :: Lens' BaseConfigurationItem (Maybe UTCTime)
+ Network.AWS.Config.Types: bciConfigurationItemStatus :: Lens' BaseConfigurationItem (Maybe ConfigurationItemStatus)
+ Network.AWS.Config.Types: bciConfigurationStateId :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config.Types: bciResourceCreationTime :: Lens' BaseConfigurationItem (Maybe UTCTime)
+ Network.AWS.Config.Types: bciResourceId :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config.Types: bciResourceName :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config.Types: bciResourceType :: Lens' BaseConfigurationItem (Maybe ResourceType)
+ Network.AWS.Config.Types: bciSupplementaryConfiguration :: Lens' BaseConfigurationItem (HashMap Text Text)
+ Network.AWS.Config.Types: bciVersion :: Lens' BaseConfigurationItem (Maybe Text)
+ Network.AWS.Config.Types: caAccountAggregationSources :: Lens' ConfigurationAggregator [AccountAggregationSource]
+ Network.AWS.Config.Types: caConfigurationAggregatorARN :: Lens' ConfigurationAggregator (Maybe Text)
+ Network.AWS.Config.Types: caConfigurationAggregatorName :: Lens' ConfigurationAggregator (Maybe Text)
+ Network.AWS.Config.Types: caCreationTime :: Lens' ConfigurationAggregator (Maybe UTCTime)
+ Network.AWS.Config.Types: caLastUpdatedTime :: Lens' ConfigurationAggregator (Maybe UTCTime)
+ Network.AWS.Config.Types: caOrganizationAggregationSource :: Lens' ConfigurationAggregator (Maybe OrganizationAggregationSource)
+ Network.AWS.Config.Types: configRuleComplianceFilters :: ConfigRuleComplianceFilters
+ Network.AWS.Config.Types: configRuleComplianceSummaryFilters :: ConfigRuleComplianceSummaryFilters
+ Network.AWS.Config.Types: configurationAggregator :: ConfigurationAggregator
+ Network.AWS.Config.Types: crcfAWSRegion :: Lens' ConfigRuleComplianceFilters (Maybe Text)
+ Network.AWS.Config.Types: crcfAccountId :: Lens' ConfigRuleComplianceFilters (Maybe Text)
+ Network.AWS.Config.Types: crcfComplianceType :: Lens' ConfigRuleComplianceFilters (Maybe ComplianceType)
+ Network.AWS.Config.Types: crcfConfigRuleName :: Lens' ConfigRuleComplianceFilters (Maybe Text)
+ Network.AWS.Config.Types: crcsfAWSRegion :: Lens' ConfigRuleComplianceSummaryFilters (Maybe Text)
+ Network.AWS.Config.Types: crcsfAccountId :: Lens' ConfigRuleComplianceSummaryFilters (Maybe Text)
+ Network.AWS.Config.Types: data AccountAggregationSource
+ Network.AWS.Config.Types: data AggregateComplianceByConfigRule
+ Network.AWS.Config.Types: data AggregateComplianceCount
+ Network.AWS.Config.Types: data AggregateEvaluationResult
+ Network.AWS.Config.Types: data AggregatedSourceStatus
+ Network.AWS.Config.Types: data AggregatedSourceStatusType
+ Network.AWS.Config.Types: data AggregatedSourceType
+ Network.AWS.Config.Types: data AggregationAuthorization
+ Network.AWS.Config.Types: data BaseConfigurationItem
+ Network.AWS.Config.Types: data ConfigRuleComplianceFilters
+ Network.AWS.Config.Types: data ConfigRuleComplianceSummaryFilters
+ Network.AWS.Config.Types: data ConfigRuleComplianceSummaryGroupKey
+ Network.AWS.Config.Types: data ConfigurationAggregator
+ Network.AWS.Config.Types: data OrganizationAggregationSource
+ Network.AWS.Config.Types: data PendingAggregationRequest
+ Network.AWS.Config.Types: data ResourceKey
+ Network.AWS.Config.Types: oasAWSRegions :: Lens' OrganizationAggregationSource (Maybe (NonEmpty Text))
+ Network.AWS.Config.Types: oasAllAWSRegions :: Lens' OrganizationAggregationSource (Maybe Bool)
+ Network.AWS.Config.Types: oasRoleARN :: Lens' OrganizationAggregationSource Text
+ Network.AWS.Config.Types: organizationAggregationSource :: Text -> OrganizationAggregationSource
+ Network.AWS.Config.Types: parRequesterAWSRegion :: Lens' PendingAggregationRequest (Maybe Text)
+ Network.AWS.Config.Types: parRequesterAccountId :: Lens' PendingAggregationRequest (Maybe Text)
+ Network.AWS.Config.Types: pendingAggregationRequest :: PendingAggregationRequest
+ Network.AWS.Config.Types: resourceKey :: ResourceType -> Text -> ResourceKey
+ Network.AWS.Config.Types: rkResourceId :: Lens' ResourceKey Text
+ Network.AWS.Config.Types: rkResourceType :: Lens' ResourceKey ResourceType
- Network.AWS.Config: Failed :: ConfigurationItemStatus
+ Network.AWS.Config: Failed :: AggregatedSourceStatusType
- Network.AWS.Config.Types: Failed :: ConfigurationItemStatus
+ Network.AWS.Config.Types: Failed :: AggregatedSourceStatusType
Files
- README.md +1/−1
- amazonka-config.cabal +18/−5
- fixture/BatchGetResourceConfig.yaml +10/−0
- fixture/BatchGetResourceConfigResponse.proto +0/−0
- fixture/DeleteAggregationAuthorization.yaml +10/−0
- fixture/DeleteAggregationAuthorizationResponse.proto +0/−0
- fixture/DeleteConfigurationAggregator.yaml +10/−0
- fixture/DeleteConfigurationAggregatorResponse.proto +0/−0
- fixture/DeletePendingAggregationRequest.yaml +10/−0
- fixture/DeletePendingAggregationRequestResponse.proto +0/−0
- fixture/DescribeAggregateComplianceByConfigRules.yaml +10/−0
- fixture/DescribeAggregateComplianceByConfigRulesResponse.proto +0/−0
- fixture/DescribeAggregationAuthorizations.yaml +10/−0
- fixture/DescribeAggregationAuthorizationsResponse.proto +0/−0
- fixture/DescribeConfigurationAggregatorSourcesStatus.yaml +10/−0
- fixture/DescribeConfigurationAggregatorSourcesStatusResponse.proto +0/−0
- fixture/DescribeConfigurationAggregators.yaml +10/−0
- fixture/DescribeConfigurationAggregatorsResponse.proto +0/−0
- fixture/DescribePendingAggregationRequests.yaml +10/−0
- fixture/DescribePendingAggregationRequestsResponse.proto +0/−0
- fixture/GetAggregateComplianceDetailsByConfigRule.yaml +10/−0
- fixture/GetAggregateComplianceDetailsByConfigRuleResponse.proto +0/−0
- fixture/GetAggregateConfigRuleComplianceSummary.yaml +10/−0
- fixture/GetAggregateConfigRuleComplianceSummaryResponse.proto +0/−0
- fixture/PutAggregationAuthorization.yaml +10/−0
- fixture/PutAggregationAuthorizationResponse.proto +0/−0
- fixture/PutConfigurationAggregator.yaml +10/−0
- fixture/PutConfigurationAggregatorResponse.proto +0/−0
- gen/Network/AWS/Config.hs +188/−9
- gen/Network/AWS/Config/BatchGetResourceConfig.hs +148/−0
- gen/Network/AWS/Config/DeleteAggregationAuthorization.hs +132/−0
- gen/Network/AWS/Config/DeleteConfigRule.hs +2/−2
- gen/Network/AWS/Config/DeleteConfigurationAggregator.hs +118/−0
- gen/Network/AWS/Config/DeleteConfigurationRecorder.hs +3/−3
- gen/Network/AWS/Config/DeleteDeliveryChannel.hs +3/−3
- gen/Network/AWS/Config/DeleteEvaluationResults.hs +7/−7
- gen/Network/AWS/Config/DeletePendingAggregationRequest.hs +135/−0
- gen/Network/AWS/Config/DeliverConfigSnapshot.hs +10/−10
- gen/Network/AWS/Config/DescribeAggregateComplianceByConfigRules.hs +198/−0
- gen/Network/AWS/Config/DescribeAggregationAuthorizations.hs +166/−0
- gen/Network/AWS/Config/DescribeComplianceByConfigRule.hs +19/−19
- gen/Network/AWS/Config/DescribeComplianceByResource.hs +27/−27
- gen/Network/AWS/Config/DescribeConfigRuleEvaluationStatus.hs +19/−19
- gen/Network/AWS/Config/DescribeConfigRules.hs +12/−12
- gen/Network/AWS/Config/DescribeConfigurationAggregatorSourcesStatus.hs +201/−0
- gen/Network/AWS/Config/DescribeConfigurationAggregators.hs +179/−0
- gen/Network/AWS/Config/DescribeConfigurationRecorderStatus.hs +10/−10
- gen/Network/AWS/Config/DescribeConfigurationRecorders.hs +7/−5
- gen/Network/AWS/Config/DescribeDeliveryChannelStatus.hs +7/−7
- gen/Network/AWS/Config/DescribeDeliveryChannels.hs +5/−5
- gen/Network/AWS/Config/DescribePendingAggregationRequests.hs +167/−0
- gen/Network/AWS/Config/GetAggregateComplianceDetailsByConfigRule.hs +232/−0
- gen/Network/AWS/Config/GetAggregateConfigRuleComplianceSummary.hs +218/−0
- gen/Network/AWS/Config/GetComplianceDetailsByConfigRule.hs +21/−21
- gen/Network/AWS/Config/GetComplianceDetailsByResource.hs +19/−19
- gen/Network/AWS/Config/GetComplianceSummaryByConfigRule.hs +6/−6
- gen/Network/AWS/Config/GetComplianceSummaryByResourceType.hs +9/−9
- gen/Network/AWS/Config/GetDiscoveredResourceCounts.hs +26/−23
- gen/Network/AWS/Config/GetResourceConfigHistory.hs +29/−29
- gen/Network/AWS/Config/ListDiscoveredResources.hs +23/−23
- gen/Network/AWS/Config/PutAggregationAuthorization.hs +154/−0
- gen/Network/AWS/Config/PutConfigRule.hs +5/−5
- gen/Network/AWS/Config/PutConfigurationAggregator.hs +165/−0
- gen/Network/AWS/Config/PutConfigurationRecorder.hs +4/−4
- gen/Network/AWS/Config/PutDeliveryChannel.hs +4/−4
- gen/Network/AWS/Config/PutEvaluations.hs +13/−13
- gen/Network/AWS/Config/StartConfigRulesEvaluation.hs +9/−9
- gen/Network/AWS/Config/StartConfigurationRecorder.hs +3/−3
- gen/Network/AWS/Config/StopConfigurationRecorder.hs +3/−3
- gen/Network/AWS/Config/Types.hs +180/−21
- gen/Network/AWS/Config/Types/Product.hs +2920/−1986
- gen/Network/AWS/Config/Types/Sum.hs +149/−14
- gen/Network/AWS/Config/Waiters.hs +1/−1
- test/Main.hs +1/−1
- test/Test/AWS/Config.hs +1/−1
- test/Test/AWS/Config/Internal.hs +1/−1
- test/Test/AWS/Gen/Config.hs +237/−3
README.md view
@@ -8,7 +8,7 @@ ## Version -`1.5.0`+`1.6.0` ## Description
amazonka-config.cabal view
@@ -1,5 +1,5 @@ name: amazonka-config-version: 1.5.0+version: 1.6.0 synopsis: Amazon Config SDK. homepage: https://github.com/brendanhay/amazonka bug-reports: https://github.com/brendanhay/amazonka/issues@@ -7,7 +7,7 @@ license-file: LICENSE author: Brendan Hay maintainer: Brendan Hay <brendan.g.hay+amazonka@gmail.com>-copyright: Copyright (c) 2013-2017 Brendan Hay+copyright: Copyright (c) 2013-2018 Brendan Hay category: Network, AWS, Cloud, Distributed Computing build-type: Simple cabal-version: >= 1.10@@ -45,19 +45,30 @@ exposed-modules: Network.AWS.Config+ , Network.AWS.Config.BatchGetResourceConfig+ , Network.AWS.Config.DeleteAggregationAuthorization , Network.AWS.Config.DeleteConfigRule+ , Network.AWS.Config.DeleteConfigurationAggregator , Network.AWS.Config.DeleteConfigurationRecorder , Network.AWS.Config.DeleteDeliveryChannel , Network.AWS.Config.DeleteEvaluationResults+ , Network.AWS.Config.DeletePendingAggregationRequest , Network.AWS.Config.DeliverConfigSnapshot+ , Network.AWS.Config.DescribeAggregateComplianceByConfigRules+ , Network.AWS.Config.DescribeAggregationAuthorizations , Network.AWS.Config.DescribeComplianceByConfigRule , Network.AWS.Config.DescribeComplianceByResource , Network.AWS.Config.DescribeConfigRuleEvaluationStatus , Network.AWS.Config.DescribeConfigRules+ , Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus+ , Network.AWS.Config.DescribeConfigurationAggregators , Network.AWS.Config.DescribeConfigurationRecorderStatus , Network.AWS.Config.DescribeConfigurationRecorders , Network.AWS.Config.DescribeDeliveryChannelStatus , Network.AWS.Config.DescribeDeliveryChannels+ , Network.AWS.Config.DescribePendingAggregationRequests+ , Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule+ , Network.AWS.Config.GetAggregateConfigRuleComplianceSummary , Network.AWS.Config.GetComplianceDetailsByConfigRule , Network.AWS.Config.GetComplianceDetailsByResource , Network.AWS.Config.GetComplianceSummaryByConfigRule@@ -65,7 +76,9 @@ , Network.AWS.Config.GetDiscoveredResourceCounts , Network.AWS.Config.GetResourceConfigHistory , Network.AWS.Config.ListDiscoveredResources+ , Network.AWS.Config.PutAggregationAuthorization , Network.AWS.Config.PutConfigRule+ , Network.AWS.Config.PutConfigurationAggregator , Network.AWS.Config.PutConfigurationRecorder , Network.AWS.Config.PutDeliveryChannel , Network.AWS.Config.PutEvaluations@@ -80,7 +93,7 @@ , Network.AWS.Config.Types.Sum build-depends:- amazonka-core == 1.5.0.*+ amazonka-core == 1.6.0.* , base >= 4.7 && < 5 test-suite amazonka-config-test@@ -100,8 +113,8 @@ , Test.AWS.Config.Internal build-depends:- amazonka-core == 1.5.0.*- , amazonka-test == 1.5.0.*+ amazonka-core == 1.6.0.*+ , amazonka-test == 1.6.0.* , amazonka-config , base , bytestring
+ fixture/BatchGetResourceConfig.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/config/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: config.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/BatchGetResourceConfigResponse.proto view
+ fixture/DeleteAggregationAuthorization.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/config/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: config.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteAggregationAuthorizationResponse.proto view
+ fixture/DeleteConfigurationAggregator.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/config/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: config.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteConfigurationAggregatorResponse.proto view
+ fixture/DeletePendingAggregationRequest.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/config/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: config.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeletePendingAggregationRequestResponse.proto view
+ fixture/DescribeAggregateComplianceByConfigRules.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/config/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: config.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeAggregateComplianceByConfigRulesResponse.proto view
+ fixture/DescribeAggregationAuthorizations.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/config/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: config.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeAggregationAuthorizationsResponse.proto view
+ fixture/DescribeConfigurationAggregatorSourcesStatus.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/config/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: config.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeConfigurationAggregatorSourcesStatusResponse.proto view
+ fixture/DescribeConfigurationAggregators.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/config/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: config.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribeConfigurationAggregatorsResponse.proto view
+ fixture/DescribePendingAggregationRequests.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/config/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: config.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DescribePendingAggregationRequestsResponse.proto view
+ fixture/GetAggregateComplianceDetailsByConfigRule.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/config/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: config.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetAggregateComplianceDetailsByConfigRuleResponse.proto view
+ fixture/GetAggregateConfigRuleComplianceSummary.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/config/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: config.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetAggregateConfigRuleComplianceSummaryResponse.proto view
+ fixture/PutAggregationAuthorization.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/config/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: config.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/PutAggregationAuthorizationResponse.proto view
+ fixture/PutConfigurationAggregator.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/config/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: config.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/PutConfigurationAggregatorResponse.proto view
gen/Network/AWS/Config.hs view
@@ -5,7 +5,7 @@ -- | -- Module : Network.AWS.Config--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -13,15 +13,9 @@ -- -- __AWS Config__ ----- AWS Config provides a way to keep track of the configurations of all the AWS resources associated with your AWS account. You can use AWS Config to get the current and historical configurations of each AWS resource and also to get information about the relationship between the resources. An AWS resource can be an Amazon Compute Cloud (Amazon EC2) instance, an Elastic Block Store (EBS) volume, an Elastic network Interface (ENI), or a security group. For a complete list of resources currently supported by AWS Config, see <http://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources Supported AWS Resources> .------ You can access and manage AWS Config through the AWS Management Console, the AWS Command Line Interface (AWS CLI), the AWS Config API, or the AWS SDKs for AWS Config------ This reference guide contains documentation for the AWS Config API and the AWS CLI commands that you can use to manage AWS Config.------ The AWS Config API uses the Signature Version 4 protocol for signing requests. For more information about how to sign a request with this protocol, see <http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html Signature Version 4 Signing Process> .+-- AWS Config provides a way to keep track of the configurations of all the AWS resources associated with your AWS account. You can use AWS Config to get the current and historical configurations of each AWS resource and also to get information about the relationship between the resources. An AWS resource can be an Amazon Compute Cloud (Amazon EC2) instance, an Elastic Block Store (EBS) volume, an elastic network Interface (ENI), or a security group. For a complete list of resources currently supported by AWS Config, see <http://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources Supported AWS Resources> . ----- For detailed information about AWS Config features and their associated actions or commands, as well as how to work with AWS Management Console, see <http://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html What Is AWS Config?> in the /AWS Config Developer Guide/ .+-- You can access and manage AWS Config through the AWS Management Console, the AWS Command Line Interface (AWS CLI), the AWS Config API, or the AWS SDKs for AWS Config. This reference guide contains documentation for the AWS Config API and the AWS CLI commands that you can use to manage AWS Config. The AWS Config API uses the Signature Version 4 protocol for signing requests. For more information about how to sign a request with this protocol, see <http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html Signature Version 4 Signing Process> . For detailed information about AWS Config features and their associated actions or commands, as well as how to work with AWS Management Console, see <http://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html What Is AWS Config> in the /AWS Config Developer Guide/ . -- module Network.AWS.Config (@@ -40,9 +34,18 @@ -- ** InvalidRecordingGroupException , _InvalidRecordingGroupException + -- ** NoAvailableOrganizationException+ , _NoAvailableOrganizationException+ -- ** ValidationException , _ValidationException + -- ** OrganizationAccessDeniedException+ , _OrganizationAccessDeniedException++ -- ** NoSuchConfigurationAggregatorException+ , _NoSuchConfigurationAggregatorException+ -- ** InvalidRoleException , _InvalidRoleException @@ -67,6 +70,9 @@ -- ** NoSuchConfigRuleException , _NoSuchConfigRuleException + -- ** OrganizationAllFeaturesNotEnabledException+ , _OrganizationAllFeaturesNotEnabledException+ -- ** InsufficientPermissionsException , _InsufficientPermissionsException @@ -121,18 +127,33 @@ -- * Operations -- $operations + -- ** DescribePendingAggregationRequests+ , module Network.AWS.Config.DescribePendingAggregationRequests+ -- ** GetResourceConfigHistory (Paginated) , module Network.AWS.Config.GetResourceConfigHistory + -- ** DescribeConfigurationAggregators+ , module Network.AWS.Config.DescribeConfigurationAggregators+ -- ** DescribeComplianceByConfigRule (Paginated) , module Network.AWS.Config.DescribeComplianceByConfigRule -- ** StopConfigurationRecorder , module Network.AWS.Config.StopConfigurationRecorder + -- ** GetAggregateConfigRuleComplianceSummary+ , module Network.AWS.Config.GetAggregateConfigRuleComplianceSummary++ -- ** BatchGetResourceConfig+ , module Network.AWS.Config.BatchGetResourceConfig+ -- ** DescribeConfigRules (Paginated) , module Network.AWS.Config.DescribeConfigRules + -- ** DescribeAggregateComplianceByConfigRules+ , module Network.AWS.Config.DescribeAggregateComplianceByConfigRules+ -- ** DeleteEvaluationResults , module Network.AWS.Config.DeleteEvaluationResults @@ -145,6 +166,9 @@ -- ** GetComplianceDetailsByResource (Paginated) , module Network.AWS.Config.GetComplianceDetailsByResource + -- ** DeletePendingAggregationRequest+ , module Network.AWS.Config.DeletePendingAggregationRequest+ -- ** DeliverConfigSnapshot , module Network.AWS.Config.DeliverConfigSnapshot @@ -166,12 +190,21 @@ -- ** DescribeConfigurationRecorders , module Network.AWS.Config.DescribeConfigurationRecorders + -- ** GetAggregateComplianceDetailsByConfigRule+ , module Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule+ -- ** StartConfigurationRecorder , module Network.AWS.Config.StartConfigurationRecorder -- ** GetComplianceSummaryByConfigRule , module Network.AWS.Config.GetComplianceSummaryByConfigRule + -- ** PutConfigurationAggregator+ , module Network.AWS.Config.PutConfigurationAggregator++ -- ** DeleteConfigurationAggregator+ , module Network.AWS.Config.DeleteConfigurationAggregator+ -- ** DescribeConfigurationRecorderStatus , module Network.AWS.Config.DescribeConfigurationRecorderStatus @@ -193,23 +226,44 @@ -- ** GetComplianceDetailsByConfigRule (Paginated) , module Network.AWS.Config.GetComplianceDetailsByConfigRule + -- ** DeleteAggregationAuthorization+ , module Network.AWS.Config.DeleteAggregationAuthorization+ -- ** DeleteDeliveryChannel , module Network.AWS.Config.DeleteDeliveryChannel + -- ** PutAggregationAuthorization+ , module Network.AWS.Config.PutAggregationAuthorization++ -- ** DescribeConfigurationAggregatorSourcesStatus+ , module Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus+ -- ** ListDiscoveredResources (Paginated) , module Network.AWS.Config.ListDiscoveredResources -- ** DescribeDeliveryChannels , module Network.AWS.Config.DescribeDeliveryChannels + -- ** DescribeAggregationAuthorizations+ , module Network.AWS.Config.DescribeAggregationAuthorizations+ -- * Types + -- ** AggregatedSourceStatusType+ , AggregatedSourceStatusType (..)++ -- ** AggregatedSourceType+ , AggregatedSourceType (..)+ -- ** ChronologicalOrder , ChronologicalOrder (..) -- ** ComplianceType , ComplianceType (..) + -- ** ConfigRuleComplianceSummaryGroupKey+ , ConfigRuleComplianceSummaryGroupKey (..)+ -- ** ConfigRuleState , ConfigRuleState (..) @@ -237,6 +291,75 @@ -- ** ResourceType , ResourceType (..) + -- ** AccountAggregationSource+ , AccountAggregationSource+ , accountAggregationSource+ , aasAWSRegions+ , aasAllAWSRegions+ , aasAccountIds++ -- ** AggregateComplianceByConfigRule+ , AggregateComplianceByConfigRule+ , aggregateComplianceByConfigRule+ , acbcrCompliance+ , acbcrConfigRuleName+ , acbcrAccountId+ , acbcrAWSRegion++ -- ** AggregateComplianceCount+ , AggregateComplianceCount+ , aggregateComplianceCount+ , accGroupName+ , accComplianceSummary++ -- ** AggregateEvaluationResult+ , AggregateEvaluationResult+ , aggregateEvaluationResult+ , aerEvaluationResultIdentifier+ , aerAnnotation+ , aerConfigRuleInvokedTime+ , aerResultRecordedTime+ , aerAccountId+ , aerComplianceType+ , aerAWSRegion++ -- ** AggregatedSourceStatus+ , AggregatedSourceStatus+ , aggregatedSourceStatus+ , assLastErrorCode+ , assLastUpdateStatus+ , assSourceType+ , assSourceId+ , assLastErrorMessage+ , assAWSRegion+ , assLastUpdateTime++ -- ** AggregationAuthorization+ , AggregationAuthorization+ , aggregationAuthorization+ , aaCreationTime+ , aaAuthorizedAWSRegion+ , aaAggregationAuthorizationARN+ , aaAuthorizedAccountId++ -- ** BaseConfigurationItem+ , BaseConfigurationItem+ , baseConfigurationItem+ , bciResourceId+ , bciResourceType+ , bciConfigurationStateId+ , bciArn+ , bciResourceName+ , bciResourceCreationTime+ , bciConfigurationItemStatus+ , bciConfigurationItemCaptureTime+ , bciAccountId+ , bciSupplementaryConfiguration+ , bciAvailabilityZone+ , bciVersion+ , bciAwsRegion+ , bciConfiguration+ -- ** Compliance , Compliance , compliance@@ -298,6 +421,20 @@ , crConfigRuleARN , crSource + -- ** ConfigRuleComplianceFilters+ , ConfigRuleComplianceFilters+ , configRuleComplianceFilters+ , crcfConfigRuleName+ , crcfAccountId+ , crcfComplianceType+ , crcfAWSRegion++ -- ** ConfigRuleComplianceSummaryFilters+ , ConfigRuleComplianceSummaryFilters+ , configRuleComplianceSummaryFilters+ , crcsfAccountId+ , crcsfAWSRegion+ -- ** ConfigRuleEvaluationStatus , ConfigRuleEvaluationStatus , configRuleEvaluationStatus@@ -326,6 +463,16 @@ , csdiLastStatus , csdiLastErrorMessage + -- ** ConfigurationAggregator+ , ConfigurationAggregator+ , configurationAggregator+ , caConfigurationAggregatorARN+ , caCreationTime+ , caOrganizationAggregationSource+ , caLastUpdatedTime+ , caAccountAggregationSources+ , caConfigurationAggregatorName+ -- ** ConfigurationItem , ConfigurationItem , configurationItem@@ -416,6 +563,19 @@ , erqResourceType , erqConfigRuleName + -- ** OrganizationAggregationSource+ , OrganizationAggregationSource+ , organizationAggregationSource+ , oasAWSRegions+ , oasAllAWSRegions+ , oasRoleARN++ -- ** PendingAggregationRequest+ , PendingAggregationRequest+ , pendingAggregationRequest+ , parRequesterAccountId+ , parRequesterAWSRegion+ -- ** RecordingGroup , RecordingGroup , recordingGroup@@ -445,6 +605,12 @@ , riResourceName , riResourceDeletionTime + -- ** ResourceKey+ , ResourceKey+ , resourceKey+ , rkResourceType+ , rkResourceId+ -- ** Scope , Scope , scope@@ -468,19 +634,30 @@ , sdEventSource ) where +import Network.AWS.Config.BatchGetResourceConfig+import Network.AWS.Config.DeleteAggregationAuthorization import Network.AWS.Config.DeleteConfigRule+import Network.AWS.Config.DeleteConfigurationAggregator import Network.AWS.Config.DeleteConfigurationRecorder import Network.AWS.Config.DeleteDeliveryChannel import Network.AWS.Config.DeleteEvaluationResults+import Network.AWS.Config.DeletePendingAggregationRequest import Network.AWS.Config.DeliverConfigSnapshot+import Network.AWS.Config.DescribeAggregateComplianceByConfigRules+import Network.AWS.Config.DescribeAggregationAuthorizations import Network.AWS.Config.DescribeComplianceByConfigRule import Network.AWS.Config.DescribeComplianceByResource import Network.AWS.Config.DescribeConfigRuleEvaluationStatus import Network.AWS.Config.DescribeConfigRules+import Network.AWS.Config.DescribeConfigurationAggregators+import Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus import Network.AWS.Config.DescribeConfigurationRecorders import Network.AWS.Config.DescribeConfigurationRecorderStatus import Network.AWS.Config.DescribeDeliveryChannels import Network.AWS.Config.DescribeDeliveryChannelStatus+import Network.AWS.Config.DescribePendingAggregationRequests+import Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule+import Network.AWS.Config.GetAggregateConfigRuleComplianceSummary import Network.AWS.Config.GetComplianceDetailsByConfigRule import Network.AWS.Config.GetComplianceDetailsByResource import Network.AWS.Config.GetComplianceSummaryByConfigRule@@ -488,7 +665,9 @@ import Network.AWS.Config.GetDiscoveredResourceCounts import Network.AWS.Config.GetResourceConfigHistory import Network.AWS.Config.ListDiscoveredResources+import Network.AWS.Config.PutAggregationAuthorization import Network.AWS.Config.PutConfigRule+import Network.AWS.Config.PutConfigurationAggregator import Network.AWS.Config.PutConfigurationRecorder import Network.AWS.Config.PutDeliveryChannel import Network.AWS.Config.PutEvaluations
+ gen/Network/AWS/Config/BatchGetResourceConfig.hs view
@@ -0,0 +1,148 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.Config.BatchGetResourceConfig+-- Copyright : (c) 2013-2018 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns the current configuration for one or more requested resources. The operation also returns a list of resources that are not processed in the current request. If there are no unprocessed resources, the operation returns an empty unprocessedResourceKeys list.+--+--+module Network.AWS.Config.BatchGetResourceConfig+ (+ -- * Creating a Request+ batchGetResourceConfig+ , BatchGetResourceConfig+ -- * Request Lenses+ , bgrcResourceKeys++ -- * Destructuring the Response+ , batchGetResourceConfigResponse+ , BatchGetResourceConfigResponse+ -- * Response Lenses+ , bgrcrsBaseConfigurationItems+ , bgrcrsUnprocessedResourceKeys+ , bgrcrsResponseStatus+ ) where++import Network.AWS.Config.Types+import Network.AWS.Config.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'batchGetResourceConfig' smart constructor.+newtype BatchGetResourceConfig = BatchGetResourceConfig'+ { _bgrcResourceKeys :: List1 ResourceKey+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'BatchGetResourceConfig' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'bgrcResourceKeys' - A list of resource keys to be processed with the current request. Each element in the list consists of the resource type and resource ID.+batchGetResourceConfig+ :: NonEmpty ResourceKey -- ^ 'bgrcResourceKeys'+ -> BatchGetResourceConfig+batchGetResourceConfig pResourceKeys_ =+ BatchGetResourceConfig' {_bgrcResourceKeys = _List1 # pResourceKeys_}+++-- | A list of resource keys to be processed with the current request. Each element in the list consists of the resource type and resource ID.+bgrcResourceKeys :: Lens' BatchGetResourceConfig (NonEmpty ResourceKey)+bgrcResourceKeys = lens _bgrcResourceKeys (\ s a -> s{_bgrcResourceKeys = a}) . _List1++instance AWSRequest BatchGetResourceConfig where+ type Rs BatchGetResourceConfig =+ BatchGetResourceConfigResponse+ request = postJSON config+ response+ = receiveJSON+ (\ s h x ->+ BatchGetResourceConfigResponse' <$>+ (x .?> "baseConfigurationItems" .!@ mempty) <*>+ (x .?> "unprocessedResourceKeys")+ <*> (pure (fromEnum s)))++instance Hashable BatchGetResourceConfig where++instance NFData BatchGetResourceConfig where++instance ToHeaders BatchGetResourceConfig where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("StarlingDoveService.BatchGetResourceConfig" ::+ ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON BatchGetResourceConfig where+ toJSON BatchGetResourceConfig'{..}+ = object+ (catMaybes+ [Just ("resourceKeys" .= _bgrcResourceKeys)])++instance ToPath BatchGetResourceConfig where+ toPath = const "/"++instance ToQuery BatchGetResourceConfig where+ toQuery = const mempty++-- | /See:/ 'batchGetResourceConfigResponse' smart constructor.+data BatchGetResourceConfigResponse = BatchGetResourceConfigResponse'+ { _bgrcrsBaseConfigurationItems :: !(Maybe [BaseConfigurationItem])+ , _bgrcrsUnprocessedResourceKeys :: !(Maybe (List1 ResourceKey))+ , _bgrcrsResponseStatus :: !Int+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'BatchGetResourceConfigResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'bgrcrsBaseConfigurationItems' - A list that contains the current configuration of one or more resources.+--+-- * 'bgrcrsUnprocessedResourceKeys' - A list of resource keys that were not processed with the current response. The unprocessesResourceKeys value is in the same form as ResourceKeys, so the value can be directly provided to a subsequent BatchGetResourceConfig operation. If there are no unprocessed resource keys, the response contains an empty unprocessedResourceKeys list.+--+-- * 'bgrcrsResponseStatus' - -- | The response status code.+batchGetResourceConfigResponse+ :: Int -- ^ 'bgrcrsResponseStatus'+ -> BatchGetResourceConfigResponse+batchGetResourceConfigResponse pResponseStatus_ =+ BatchGetResourceConfigResponse'+ { _bgrcrsBaseConfigurationItems = Nothing+ , _bgrcrsUnprocessedResourceKeys = Nothing+ , _bgrcrsResponseStatus = pResponseStatus_+ }+++-- | A list that contains the current configuration of one or more resources.+bgrcrsBaseConfigurationItems :: Lens' BatchGetResourceConfigResponse [BaseConfigurationItem]+bgrcrsBaseConfigurationItems = lens _bgrcrsBaseConfigurationItems (\ s a -> s{_bgrcrsBaseConfigurationItems = a}) . _Default . _Coerce++-- | A list of resource keys that were not processed with the current response. The unprocessesResourceKeys value is in the same form as ResourceKeys, so the value can be directly provided to a subsequent BatchGetResourceConfig operation. If there are no unprocessed resource keys, the response contains an empty unprocessedResourceKeys list.+bgrcrsUnprocessedResourceKeys :: Lens' BatchGetResourceConfigResponse (Maybe (NonEmpty ResourceKey))+bgrcrsUnprocessedResourceKeys = lens _bgrcrsUnprocessedResourceKeys (\ s a -> s{_bgrcrsUnprocessedResourceKeys = a}) . mapping _List1++-- | -- | The response status code.+bgrcrsResponseStatus :: Lens' BatchGetResourceConfigResponse Int+bgrcrsResponseStatus = lens _bgrcrsResponseStatus (\ s a -> s{_bgrcrsResponseStatus = a})++instance NFData BatchGetResourceConfigResponse where
+ gen/Network/AWS/Config/DeleteAggregationAuthorization.hs view
@@ -0,0 +1,132 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.Config.DeleteAggregationAuthorization+-- Copyright : (c) 2013-2018 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the authorization granted to the specified configuration aggregator account in a specified region.+--+--+module Network.AWS.Config.DeleteAggregationAuthorization+ (+ -- * Creating a Request+ deleteAggregationAuthorization+ , DeleteAggregationAuthorization+ -- * Request Lenses+ , daaAuthorizedAccountId+ , daaAuthorizedAWSRegion++ -- * Destructuring the Response+ , deleteAggregationAuthorizationResponse+ , DeleteAggregationAuthorizationResponse+ ) where++import Network.AWS.Config.Types+import Network.AWS.Config.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'deleteAggregationAuthorization' smart constructor.+data DeleteAggregationAuthorization = DeleteAggregationAuthorization'+ { _daaAuthorizedAccountId :: !Text+ , _daaAuthorizedAWSRegion :: !Text+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DeleteAggregationAuthorization' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'daaAuthorizedAccountId' - The 12-digit account ID of the account authorized to aggregate data.+--+-- * 'daaAuthorizedAWSRegion' - The region authorized to collect aggregated data.+deleteAggregationAuthorization+ :: Text -- ^ 'daaAuthorizedAccountId'+ -> Text -- ^ 'daaAuthorizedAWSRegion'+ -> DeleteAggregationAuthorization+deleteAggregationAuthorization pAuthorizedAccountId_ pAuthorizedAWSRegion_ =+ DeleteAggregationAuthorization'+ { _daaAuthorizedAccountId = pAuthorizedAccountId_+ , _daaAuthorizedAWSRegion = pAuthorizedAWSRegion_+ }+++-- | The 12-digit account ID of the account authorized to aggregate data.+daaAuthorizedAccountId :: Lens' DeleteAggregationAuthorization Text+daaAuthorizedAccountId = lens _daaAuthorizedAccountId (\ s a -> s{_daaAuthorizedAccountId = a})++-- | The region authorized to collect aggregated data.+daaAuthorizedAWSRegion :: Lens' DeleteAggregationAuthorization Text+daaAuthorizedAWSRegion = lens _daaAuthorizedAWSRegion (\ s a -> s{_daaAuthorizedAWSRegion = a})++instance AWSRequest DeleteAggregationAuthorization+ where+ type Rs DeleteAggregationAuthorization =+ DeleteAggregationAuthorizationResponse+ request = postJSON config+ response+ = receiveNull DeleteAggregationAuthorizationResponse'++instance Hashable DeleteAggregationAuthorization+ where++instance NFData DeleteAggregationAuthorization where++instance ToHeaders DeleteAggregationAuthorization+ where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("StarlingDoveService.DeleteAggregationAuthorization"+ :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON DeleteAggregationAuthorization where+ toJSON DeleteAggregationAuthorization'{..}+ = object+ (catMaybes+ [Just+ ("AuthorizedAccountId" .= _daaAuthorizedAccountId),+ Just+ ("AuthorizedAwsRegion" .= _daaAuthorizedAWSRegion)])++instance ToPath DeleteAggregationAuthorization where+ toPath = const "/"++instance ToQuery DeleteAggregationAuthorization where+ toQuery = const mempty++-- | /See:/ 'deleteAggregationAuthorizationResponse' smart constructor.+data DeleteAggregationAuthorizationResponse =+ DeleteAggregationAuthorizationResponse'+ deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DeleteAggregationAuthorizationResponse' with the minimum fields required to make a request.+--+deleteAggregationAuthorizationResponse+ :: DeleteAggregationAuthorizationResponse+deleteAggregationAuthorizationResponse = DeleteAggregationAuthorizationResponse'+++instance NFData+ DeleteAggregationAuthorizationResponse+ where
gen/Network/AWS/Config/DeleteConfigRule.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.DeleteConfigRule--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -69,7 +69,7 @@ -- | The name of the AWS Config rule that you want to delete. dcrConfigRuleName :: Lens' DeleteConfigRule Text-dcrConfigRuleName = lens _dcrConfigRuleName (\ s a -> s{_dcrConfigRuleName = a});+dcrConfigRuleName = lens _dcrConfigRuleName (\ s a -> s{_dcrConfigRuleName = a}) instance AWSRequest DeleteConfigRule where type Rs DeleteConfigRule = DeleteConfigRuleResponse
+ gen/Network/AWS/Config/DeleteConfigurationAggregator.hs view
@@ -0,0 +1,118 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.Config.DeleteConfigurationAggregator+-- Copyright : (c) 2013-2018 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified configuration aggregator and the aggregated data associated with the aggregator.+--+--+module Network.AWS.Config.DeleteConfigurationAggregator+ (+ -- * Creating a Request+ deleteConfigurationAggregator+ , DeleteConfigurationAggregator+ -- * Request Lenses+ , dcaConfigurationAggregatorName++ -- * Destructuring the Response+ , deleteConfigurationAggregatorResponse+ , DeleteConfigurationAggregatorResponse+ ) where++import Network.AWS.Config.Types+import Network.AWS.Config.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'deleteConfigurationAggregator' smart constructor.+newtype DeleteConfigurationAggregator = DeleteConfigurationAggregator'+ { _dcaConfigurationAggregatorName :: Text+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DeleteConfigurationAggregator' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dcaConfigurationAggregatorName' - The name of the configuration aggregator.+deleteConfigurationAggregator+ :: Text -- ^ 'dcaConfigurationAggregatorName'+ -> DeleteConfigurationAggregator+deleteConfigurationAggregator pConfigurationAggregatorName_ =+ DeleteConfigurationAggregator'+ {_dcaConfigurationAggregatorName = pConfigurationAggregatorName_}+++-- | The name of the configuration aggregator.+dcaConfigurationAggregatorName :: Lens' DeleteConfigurationAggregator Text+dcaConfigurationAggregatorName = lens _dcaConfigurationAggregatorName (\ s a -> s{_dcaConfigurationAggregatorName = a})++instance AWSRequest DeleteConfigurationAggregator+ where+ type Rs DeleteConfigurationAggregator =+ DeleteConfigurationAggregatorResponse+ request = postJSON config+ response+ = receiveNull DeleteConfigurationAggregatorResponse'++instance Hashable DeleteConfigurationAggregator where++instance NFData DeleteConfigurationAggregator where++instance ToHeaders DeleteConfigurationAggregator+ where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("StarlingDoveService.DeleteConfigurationAggregator"+ :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON DeleteConfigurationAggregator where+ toJSON DeleteConfigurationAggregator'{..}+ = object+ (catMaybes+ [Just+ ("ConfigurationAggregatorName" .=+ _dcaConfigurationAggregatorName)])++instance ToPath DeleteConfigurationAggregator where+ toPath = const "/"++instance ToQuery DeleteConfigurationAggregator where+ toQuery = const mempty++-- | /See:/ 'deleteConfigurationAggregatorResponse' smart constructor.+data DeleteConfigurationAggregatorResponse =+ DeleteConfigurationAggregatorResponse'+ deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DeleteConfigurationAggregatorResponse' with the minimum fields required to make a request.+--+deleteConfigurationAggregatorResponse+ :: DeleteConfigurationAggregatorResponse+deleteConfigurationAggregatorResponse = DeleteConfigurationAggregatorResponse'+++instance NFData DeleteConfigurationAggregatorResponse+ where
gen/Network/AWS/Config/DeleteConfigurationRecorder.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.DeleteConfigurationRecorder--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -65,12 +65,12 @@ -> DeleteConfigurationRecorder deleteConfigurationRecorder pConfigurationRecorderName_ = DeleteConfigurationRecorder'- {_dcrConfigurationRecorderName = pConfigurationRecorderName_}+ {_dcrConfigurationRecorderName = pConfigurationRecorderName_} -- | The name of the configuration recorder to be deleted. You can retrieve the name of your configuration recorder by using the @DescribeConfigurationRecorders@ action. dcrConfigurationRecorderName :: Lens' DeleteConfigurationRecorder Text-dcrConfigurationRecorderName = lens _dcrConfigurationRecorderName (\ s a -> s{_dcrConfigurationRecorderName = a});+dcrConfigurationRecorderName = lens _dcrConfigurationRecorderName (\ s a -> s{_dcrConfigurationRecorderName = a}) instance AWSRequest DeleteConfigurationRecorder where type Rs DeleteConfigurationRecorder =
gen/Network/AWS/Config/DeleteDeliveryChannel.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.DeleteDeliveryChannel--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -43,7 +43,7 @@ import Network.AWS.Request import Network.AWS.Response --- | The input for the 'DeleteDeliveryChannel' action. The action accepts the following data in JSON format.+-- | The input for the 'DeleteDeliveryChannel' action. The action accepts the following data, in JSON format. -- -- --@@ -67,7 +67,7 @@ -- | The name of the delivery channel to delete. ddcDeliveryChannelName :: Lens' DeleteDeliveryChannel Text-ddcDeliveryChannelName = lens _ddcDeliveryChannelName (\ s a -> s{_ddcDeliveryChannelName = a});+ddcDeliveryChannelName = lens _ddcDeliveryChannelName (\ s a -> s{_ddcDeliveryChannelName = a}) instance AWSRequest DeleteDeliveryChannel where type Rs DeleteDeliveryChannel =
gen/Network/AWS/Config/DeleteEvaluationResults.hs view
@@ -12,13 +12,13 @@ -- | -- Module : Network.AWS.Config.DeleteEvaluationResults--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Deletes the evaluation results for the specified Config rule. You can specify one Config rule per request. After you delete the evaluation results, you can call the 'StartConfigRulesEvaluation' API to start evaluating your AWS resources against the rule.+-- Deletes the evaluation results for the specified AWS Config rule. You can specify one AWS Config rule per request. After you delete the evaluation results, you can call the 'StartConfigRulesEvaluation' API to start evaluating your AWS resources against the rule. -- -- module Network.AWS.Config.DeleteEvaluationResults@@ -57,7 +57,7 @@ -- -- Use one of the following lenses to modify other fields as desired: ----- * 'derConfigRuleName' - The name of the Config rule for which you want to delete the evaluation results.+-- * 'derConfigRuleName' - The name of the AWS Config rule for which you want to delete the evaluation results. deleteEvaluationResults :: Text -- ^ 'derConfigRuleName' -> DeleteEvaluationResults@@ -65,9 +65,9 @@ DeleteEvaluationResults' {_derConfigRuleName = pConfigRuleName_} --- | The name of the Config rule for which you want to delete the evaluation results.+-- | The name of the AWS Config rule for which you want to delete the evaluation results. derConfigRuleName :: Lens' DeleteEvaluationResults Text-derConfigRuleName = lens _derConfigRuleName (\ s a -> s{_derConfigRuleName = a});+derConfigRuleName = lens _derConfigRuleName (\ s a -> s{_derConfigRuleName = a}) instance AWSRequest DeleteEvaluationResults where type Rs DeleteEvaluationResults =@@ -105,7 +105,7 @@ instance ToQuery DeleteEvaluationResults where toQuery = const mempty --- | The output when you delete the evaluation results for the specified Config rule.+-- | The output when you delete the evaluation results for the specified AWS Config rule. -- -- --@@ -129,6 +129,6 @@ -- | -- | The response status code. derrsResponseStatus :: Lens' DeleteEvaluationResultsResponse Int-derrsResponseStatus = lens _derrsResponseStatus (\ s a -> s{_derrsResponseStatus = a});+derrsResponseStatus = lens _derrsResponseStatus (\ s a -> s{_derrsResponseStatus = a}) instance NFData DeleteEvaluationResultsResponse where
+ gen/Network/AWS/Config/DeletePendingAggregationRequest.hs view
@@ -0,0 +1,135 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.Config.DeletePendingAggregationRequest+-- Copyright : (c) 2013-2018 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes pending authorization requests for a specified aggregator account in a specified region.+--+--+module Network.AWS.Config.DeletePendingAggregationRequest+ (+ -- * Creating a Request+ deletePendingAggregationRequest+ , DeletePendingAggregationRequest+ -- * Request Lenses+ , dparRequesterAccountId+ , dparRequesterAWSRegion++ -- * Destructuring the Response+ , deletePendingAggregationRequestResponse+ , DeletePendingAggregationRequestResponse+ ) where++import Network.AWS.Config.Types+import Network.AWS.Config.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'deletePendingAggregationRequest' smart constructor.+data DeletePendingAggregationRequest = DeletePendingAggregationRequest'+ { _dparRequesterAccountId :: !Text+ , _dparRequesterAWSRegion :: !Text+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DeletePendingAggregationRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dparRequesterAccountId' - The 12-digit account ID of the account requesting to aggregate data.+--+-- * 'dparRequesterAWSRegion' - The region requesting to aggregate data.+deletePendingAggregationRequest+ :: Text -- ^ 'dparRequesterAccountId'+ -> Text -- ^ 'dparRequesterAWSRegion'+ -> DeletePendingAggregationRequest+deletePendingAggregationRequest pRequesterAccountId_ pRequesterAWSRegion_ =+ DeletePendingAggregationRequest'+ { _dparRequesterAccountId = pRequesterAccountId_+ , _dparRequesterAWSRegion = pRequesterAWSRegion_+ }+++-- | The 12-digit account ID of the account requesting to aggregate data.+dparRequesterAccountId :: Lens' DeletePendingAggregationRequest Text+dparRequesterAccountId = lens _dparRequesterAccountId (\ s a -> s{_dparRequesterAccountId = a})++-- | The region requesting to aggregate data.+dparRequesterAWSRegion :: Lens' DeletePendingAggregationRequest Text+dparRequesterAWSRegion = lens _dparRequesterAWSRegion (\ s a -> s{_dparRequesterAWSRegion = a})++instance AWSRequest DeletePendingAggregationRequest+ where+ type Rs DeletePendingAggregationRequest =+ DeletePendingAggregationRequestResponse+ request = postJSON config+ response+ = receiveNull+ DeletePendingAggregationRequestResponse'++instance Hashable DeletePendingAggregationRequest+ where++instance NFData DeletePendingAggregationRequest where++instance ToHeaders DeletePendingAggregationRequest+ where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("StarlingDoveService.DeletePendingAggregationRequest"+ :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON DeletePendingAggregationRequest where+ toJSON DeletePendingAggregationRequest'{..}+ = object+ (catMaybes+ [Just+ ("RequesterAccountId" .= _dparRequesterAccountId),+ Just+ ("RequesterAwsRegion" .= _dparRequesterAWSRegion)])++instance ToPath DeletePendingAggregationRequest where+ toPath = const "/"++instance ToQuery DeletePendingAggregationRequest+ where+ toQuery = const mempty++-- | /See:/ 'deletePendingAggregationRequestResponse' smart constructor.+data DeletePendingAggregationRequestResponse =+ DeletePendingAggregationRequestResponse'+ deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DeletePendingAggregationRequestResponse' with the minimum fields required to make a request.+--+deletePendingAggregationRequestResponse+ :: DeletePendingAggregationRequestResponse+deletePendingAggregationRequestResponse =+ DeletePendingAggregationRequestResponse'+++instance NFData+ DeletePendingAggregationRequestResponse+ where
gen/Network/AWS/Config/DeliverConfigSnapshot.hs view
@@ -12,20 +12,20 @@ -- | -- Module : Network.AWS.Config.DeliverConfigSnapshot--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Schedules delivery of a configuration snapshot to the Amazon S3 bucket in the specified delivery channel. After the delivery has started, AWS Config sends following notifications using an Amazon SNS topic that you have specified.+-- Schedules delivery of a configuration snapshot to the Amazon S3 bucket in the specified delivery channel. After the delivery has started, AWS Config sends the following notifications using an Amazon SNS topic that you have specified. -- ----- * Notification of starting the delivery.+-- * Notification of the start of the delivery. ----- * Notification of delivery completed, if the delivery was successfully completed.+-- * Notification of the completion of the delivery, if the delivery was successfully completed. ----- * Notification of delivery failure, if the delivery failed to complete.+-- * Notification of delivery failure, if the delivery failed. -- -- --@@ -76,7 +76,7 @@ -- | The name of the delivery channel through which the snapshot is delivered. dcsDeliveryChannelName :: Lens' DeliverConfigSnapshot Text-dcsDeliveryChannelName = lens _dcsDeliveryChannelName (\ s a -> s{_dcsDeliveryChannelName = a});+dcsDeliveryChannelName = lens _dcsDeliveryChannelName (\ s a -> s{_dcsDeliveryChannelName = a}) instance AWSRequest DeliverConfigSnapshot where type Rs DeliverConfigSnapshot =@@ -115,7 +115,7 @@ instance ToQuery DeliverConfigSnapshot where toQuery = const mempty --- | The output for the 'DeliverConfigSnapshot' action in JSON format.+-- | The output for the 'DeliverConfigSnapshot' action, in JSON format. -- -- --@@ -138,15 +138,15 @@ -> DeliverConfigSnapshotResponse deliverConfigSnapshotResponse pResponseStatus_ = DeliverConfigSnapshotResponse'- {_dcsrsConfigSnapshotId = Nothing, _dcsrsResponseStatus = pResponseStatus_}+ {_dcsrsConfigSnapshotId = Nothing, _dcsrsResponseStatus = pResponseStatus_} -- | The ID of the snapshot that is being created. dcsrsConfigSnapshotId :: Lens' DeliverConfigSnapshotResponse (Maybe Text)-dcsrsConfigSnapshotId = lens _dcsrsConfigSnapshotId (\ s a -> s{_dcsrsConfigSnapshotId = a});+dcsrsConfigSnapshotId = lens _dcsrsConfigSnapshotId (\ s a -> s{_dcsrsConfigSnapshotId = a}) -- | -- | The response status code. dcsrsResponseStatus :: Lens' DeliverConfigSnapshotResponse Int-dcsrsResponseStatus = lens _dcsrsResponseStatus (\ s a -> s{_dcsrsResponseStatus = a});+dcsrsResponseStatus = lens _dcsrsResponseStatus (\ s a -> s{_dcsrsResponseStatus = a}) instance NFData DeliverConfigSnapshotResponse where
+ gen/Network/AWS/Config/DescribeAggregateComplianceByConfigRules.hs view
@@ -0,0 +1,198 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.Config.DescribeAggregateComplianceByConfigRules+-- Copyright : (c) 2013-2018 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of compliant and noncompliant rules with the number of resources for compliant and noncompliant rules.+--+--+module Network.AWS.Config.DescribeAggregateComplianceByConfigRules+ (+ -- * Creating a Request+ describeAggregateComplianceByConfigRules+ , DescribeAggregateComplianceByConfigRules+ -- * Request Lenses+ , dacbcrFilters+ , dacbcrNextToken+ , dacbcrLimit+ , dacbcrConfigurationAggregatorName++ -- * Destructuring the Response+ , describeAggregateComplianceByConfigRulesResponse+ , DescribeAggregateComplianceByConfigRulesResponse+ -- * Response Lenses+ , dacbcrrsNextToken+ , dacbcrrsAggregateComplianceByConfigRules+ , dacbcrrsResponseStatus+ ) where++import Network.AWS.Config.Types+import Network.AWS.Config.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'describeAggregateComplianceByConfigRules' smart constructor.+data DescribeAggregateComplianceByConfigRules = DescribeAggregateComplianceByConfigRules'+ { _dacbcrFilters :: !(Maybe ConfigRuleComplianceFilters)+ , _dacbcrNextToken :: !(Maybe Text)+ , _dacbcrLimit :: !(Maybe Nat)+ , _dacbcrConfigurationAggregatorName :: !Text+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DescribeAggregateComplianceByConfigRules' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dacbcrFilters' - Filters the results by ConfigRuleComplianceFilters object.+--+-- * 'dacbcrNextToken' - The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+--+-- * 'dacbcrLimit' - The maximum number of evaluation results returned on each page. The default is maximum. If you specify 0, AWS Config uses the default.+--+-- * 'dacbcrConfigurationAggregatorName' - The name of the configuration aggregator.+describeAggregateComplianceByConfigRules+ :: Text -- ^ 'dacbcrConfigurationAggregatorName'+ -> DescribeAggregateComplianceByConfigRules+describeAggregateComplianceByConfigRules pConfigurationAggregatorName_ =+ DescribeAggregateComplianceByConfigRules'+ { _dacbcrFilters = Nothing+ , _dacbcrNextToken = Nothing+ , _dacbcrLimit = Nothing+ , _dacbcrConfigurationAggregatorName = pConfigurationAggregatorName_+ }+++-- | Filters the results by ConfigRuleComplianceFilters object.+dacbcrFilters :: Lens' DescribeAggregateComplianceByConfigRules (Maybe ConfigRuleComplianceFilters)+dacbcrFilters = lens _dacbcrFilters (\ s a -> s{_dacbcrFilters = a})++-- | The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+dacbcrNextToken :: Lens' DescribeAggregateComplianceByConfigRules (Maybe Text)+dacbcrNextToken = lens _dacbcrNextToken (\ s a -> s{_dacbcrNextToken = a})++-- | The maximum number of evaluation results returned on each page. The default is maximum. If you specify 0, AWS Config uses the default.+dacbcrLimit :: Lens' DescribeAggregateComplianceByConfigRules (Maybe Natural)+dacbcrLimit = lens _dacbcrLimit (\ s a -> s{_dacbcrLimit = a}) . mapping _Nat++-- | The name of the configuration aggregator.+dacbcrConfigurationAggregatorName :: Lens' DescribeAggregateComplianceByConfigRules Text+dacbcrConfigurationAggregatorName = lens _dacbcrConfigurationAggregatorName (\ s a -> s{_dacbcrConfigurationAggregatorName = a})++instance AWSRequest+ DescribeAggregateComplianceByConfigRules+ where+ type Rs DescribeAggregateComplianceByConfigRules =+ DescribeAggregateComplianceByConfigRulesResponse+ request = postJSON config+ response+ = receiveJSON+ (\ s h x ->+ DescribeAggregateComplianceByConfigRulesResponse' <$>+ (x .?> "NextToken") <*>+ (x .?> "AggregateComplianceByConfigRules" .!@ mempty)+ <*> (pure (fromEnum s)))++instance Hashable+ DescribeAggregateComplianceByConfigRules+ where++instance NFData+ DescribeAggregateComplianceByConfigRules+ where++instance ToHeaders+ DescribeAggregateComplianceByConfigRules+ where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("StarlingDoveService.DescribeAggregateComplianceByConfigRules"+ :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON+ DescribeAggregateComplianceByConfigRules+ where+ toJSON DescribeAggregateComplianceByConfigRules'{..}+ = object+ (catMaybes+ [("Filters" .=) <$> _dacbcrFilters,+ ("NextToken" .=) <$> _dacbcrNextToken,+ ("Limit" .=) <$> _dacbcrLimit,+ Just+ ("ConfigurationAggregatorName" .=+ _dacbcrConfigurationAggregatorName)])++instance ToPath+ DescribeAggregateComplianceByConfigRules+ where+ toPath = const "/"++instance ToQuery+ DescribeAggregateComplianceByConfigRules+ where+ toQuery = const mempty++-- | /See:/ 'describeAggregateComplianceByConfigRulesResponse' smart constructor.+data DescribeAggregateComplianceByConfigRulesResponse = DescribeAggregateComplianceByConfigRulesResponse'+ { _dacbcrrsNextToken :: !(Maybe Text)+ , _dacbcrrsAggregateComplianceByConfigRules :: !(Maybe [AggregateComplianceByConfigRule])+ , _dacbcrrsResponseStatus :: !Int+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DescribeAggregateComplianceByConfigRulesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dacbcrrsNextToken' - The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+--+-- * 'dacbcrrsAggregateComplianceByConfigRules' - Returns a list of AggregateComplianceByConfigRule object.+--+-- * 'dacbcrrsResponseStatus' - -- | The response status code.+describeAggregateComplianceByConfigRulesResponse+ :: Int -- ^ 'dacbcrrsResponseStatus'+ -> DescribeAggregateComplianceByConfigRulesResponse+describeAggregateComplianceByConfigRulesResponse pResponseStatus_ =+ DescribeAggregateComplianceByConfigRulesResponse'+ { _dacbcrrsNextToken = Nothing+ , _dacbcrrsAggregateComplianceByConfigRules = Nothing+ , _dacbcrrsResponseStatus = pResponseStatus_+ }+++-- | The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+dacbcrrsNextToken :: Lens' DescribeAggregateComplianceByConfigRulesResponse (Maybe Text)+dacbcrrsNextToken = lens _dacbcrrsNextToken (\ s a -> s{_dacbcrrsNextToken = a})++-- | Returns a list of AggregateComplianceByConfigRule object.+dacbcrrsAggregateComplianceByConfigRules :: Lens' DescribeAggregateComplianceByConfigRulesResponse [AggregateComplianceByConfigRule]+dacbcrrsAggregateComplianceByConfigRules = lens _dacbcrrsAggregateComplianceByConfigRules (\ s a -> s{_dacbcrrsAggregateComplianceByConfigRules = a}) . _Default . _Coerce++-- | -- | The response status code.+dacbcrrsResponseStatus :: Lens' DescribeAggregateComplianceByConfigRulesResponse Int+dacbcrrsResponseStatus = lens _dacbcrrsResponseStatus (\ s a -> s{_dacbcrrsResponseStatus = a})++instance NFData+ DescribeAggregateComplianceByConfigRulesResponse+ where
+ gen/Network/AWS/Config/DescribeAggregationAuthorizations.hs view
@@ -0,0 +1,166 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.Config.DescribeAggregationAuthorizations+-- Copyright : (c) 2013-2018 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of authorizations granted to various aggregator accounts and regions.+--+--+module Network.AWS.Config.DescribeAggregationAuthorizations+ (+ -- * Creating a Request+ describeAggregationAuthorizations+ , DescribeAggregationAuthorizations+ -- * Request Lenses+ , daaNextToken+ , daaLimit++ -- * Destructuring the Response+ , describeAggregationAuthorizationsResponse+ , DescribeAggregationAuthorizationsResponse+ -- * Response Lenses+ , daarsAggregationAuthorizations+ , daarsNextToken+ , daarsResponseStatus+ ) where++import Network.AWS.Config.Types+import Network.AWS.Config.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'describeAggregationAuthorizations' smart constructor.+data DescribeAggregationAuthorizations = DescribeAggregationAuthorizations'+ { _daaNextToken :: !(Maybe Text)+ , _daaLimit :: !(Maybe Nat)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DescribeAggregationAuthorizations' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'daaNextToken' - The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+--+-- * 'daaLimit' - The maximum number of AggregationAuthorizations returned on each page. The default is maximum. If you specify 0, AWS Config uses the default.+describeAggregationAuthorizations+ :: DescribeAggregationAuthorizations+describeAggregationAuthorizations =+ DescribeAggregationAuthorizations'+ {_daaNextToken = Nothing, _daaLimit = Nothing}+++-- | The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+daaNextToken :: Lens' DescribeAggregationAuthorizations (Maybe Text)+daaNextToken = lens _daaNextToken (\ s a -> s{_daaNextToken = a})++-- | The maximum number of AggregationAuthorizations returned on each page. The default is maximum. If you specify 0, AWS Config uses the default.+daaLimit :: Lens' DescribeAggregationAuthorizations (Maybe Natural)+daaLimit = lens _daaLimit (\ s a -> s{_daaLimit = a}) . mapping _Nat++instance AWSRequest DescribeAggregationAuthorizations+ where+ type Rs DescribeAggregationAuthorizations =+ DescribeAggregationAuthorizationsResponse+ request = postJSON config+ response+ = receiveJSON+ (\ s h x ->+ DescribeAggregationAuthorizationsResponse' <$>+ (x .?> "AggregationAuthorizations" .!@ mempty) <*>+ (x .?> "NextToken")+ <*> (pure (fromEnum s)))++instance Hashable DescribeAggregationAuthorizations+ where++instance NFData DescribeAggregationAuthorizations+ where++instance ToHeaders DescribeAggregationAuthorizations+ where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("StarlingDoveService.DescribeAggregationAuthorizations"+ :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON DescribeAggregationAuthorizations+ where+ toJSON DescribeAggregationAuthorizations'{..}+ = object+ (catMaybes+ [("NextToken" .=) <$> _daaNextToken,+ ("Limit" .=) <$> _daaLimit])++instance ToPath DescribeAggregationAuthorizations+ where+ toPath = const "/"++instance ToQuery DescribeAggregationAuthorizations+ where+ toQuery = const mempty++-- | /See:/ 'describeAggregationAuthorizationsResponse' smart constructor.+data DescribeAggregationAuthorizationsResponse = DescribeAggregationAuthorizationsResponse'+ { _daarsAggregationAuthorizations :: !(Maybe [AggregationAuthorization])+ , _daarsNextToken :: !(Maybe Text)+ , _daarsResponseStatus :: !Int+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DescribeAggregationAuthorizationsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'daarsAggregationAuthorizations' - Returns a list of authorizations granted to various aggregator accounts and regions.+--+-- * 'daarsNextToken' - The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+--+-- * 'daarsResponseStatus' - -- | The response status code.+describeAggregationAuthorizationsResponse+ :: Int -- ^ 'daarsResponseStatus'+ -> DescribeAggregationAuthorizationsResponse+describeAggregationAuthorizationsResponse pResponseStatus_ =+ DescribeAggregationAuthorizationsResponse'+ { _daarsAggregationAuthorizations = Nothing+ , _daarsNextToken = Nothing+ , _daarsResponseStatus = pResponseStatus_+ }+++-- | Returns a list of authorizations granted to various aggregator accounts and regions.+daarsAggregationAuthorizations :: Lens' DescribeAggregationAuthorizationsResponse [AggregationAuthorization]+daarsAggregationAuthorizations = lens _daarsAggregationAuthorizations (\ s a -> s{_daarsAggregationAuthorizations = a}) . _Default . _Coerce++-- | The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+daarsNextToken :: Lens' DescribeAggregationAuthorizationsResponse (Maybe Text)+daarsNextToken = lens _daarsNextToken (\ s a -> s{_daarsNextToken = a})++-- | -- | The response status code.+daarsResponseStatus :: Lens' DescribeAggregationAuthorizationsResponse Int+daarsResponseStatus = lens _daarsResponseStatus (\ s a -> s{_daarsResponseStatus = a})++instance NFData+ DescribeAggregationAuthorizationsResponse+ where
gen/Network/AWS/Config/DescribeComplianceByConfigRule.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.DescribeComplianceByConfigRule--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -21,13 +21,13 @@ -- Indicates whether the specified AWS Config rules are compliant. If a rule is noncompliant, this action returns the number of AWS resources that do not comply with the rule. -- ----- A rule is compliant if all of the evaluated resources comply with it, and it is noncompliant if any of these resources do not comply.+-- A rule is compliant if all of the evaluated resources comply with it. It is noncompliant if any of these resources do not comply. -- -- If AWS Config has no current evaluation results for the rule, it returns @INSUFFICIENT_DATA@ . This result might indicate one of the following conditions: -- -- * AWS Config has never invoked an evaluation for the rule. To check whether it has, use the @DescribeConfigRuleEvaluationStatus@ action to get the @LastSuccessfulInvocationTime@ and @LastFailedInvocationTime@ . ----- * The rule's AWS Lambda function is failing to send evaluation results to AWS Config. Verify that the role that you assigned to your configuration recorder includes the @config:PutEvaluations@ permission. If the rule is a custom rule, verify that the AWS Lambda execution role includes the @config:PutEvaluations@ permission.+-- * The rule's AWS Lambda function is failing to send evaluation results to AWS Config. Verify that the role you assigned to your configuration recorder includes the @config:PutEvaluations@ permission. If the rule is a custom rule, verify that the AWS Lambda execution role includes the @config:PutEvaluations@ permission. -- -- * The rule's AWS Lambda function has returned @NOT_APPLICABLE@ for all evaluation results. This can occur if the resources were deleted or removed from the rule's scope. --@@ -82,28 +82,28 @@ -- -- * 'dcbcrComplianceTypes' - Filters the results by compliance. The allowed values are @COMPLIANT@ , @NON_COMPLIANT@ , and @INSUFFICIENT_DATA@ . ----- * 'dcbcrNextToken' - The @NextToken@ string returned on a previous page that you use to get the next page of results in a paginated response.+-- * 'dcbcrNextToken' - The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. describeComplianceByConfigRule :: DescribeComplianceByConfigRule describeComplianceByConfigRule = DescribeComplianceByConfigRule'- { _dcbcrConfigRuleNames = Nothing- , _dcbcrComplianceTypes = Nothing- , _dcbcrNextToken = Nothing- }+ { _dcbcrConfigRuleNames = Nothing+ , _dcbcrComplianceTypes = Nothing+ , _dcbcrNextToken = Nothing+ } -- | Specify one or more AWS Config rule names to filter the results by rule. dcbcrConfigRuleNames :: Lens' DescribeComplianceByConfigRule [Text]-dcbcrConfigRuleNames = lens _dcbcrConfigRuleNames (\ s a -> s{_dcbcrConfigRuleNames = a}) . _Default . _Coerce;+dcbcrConfigRuleNames = lens _dcbcrConfigRuleNames (\ s a -> s{_dcbcrConfigRuleNames = a}) . _Default . _Coerce -- | Filters the results by compliance. The allowed values are @COMPLIANT@ , @NON_COMPLIANT@ , and @INSUFFICIENT_DATA@ . dcbcrComplianceTypes :: Lens' DescribeComplianceByConfigRule [ComplianceType]-dcbcrComplianceTypes = lens _dcbcrComplianceTypes (\ s a -> s{_dcbcrComplianceTypes = a}) . _Default . _Coerce;+dcbcrComplianceTypes = lens _dcbcrComplianceTypes (\ s a -> s{_dcbcrComplianceTypes = a}) . _Default . _Coerce --- | The @NextToken@ string returned on a previous page that you use to get the next page of results in a paginated response.+-- | The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. dcbcrNextToken :: Lens' DescribeComplianceByConfigRule (Maybe Text)-dcbcrNextToken = lens _dcbcrNextToken (\ s a -> s{_dcbcrNextToken = a});+dcbcrNextToken = lens _dcbcrNextToken (\ s a -> s{_dcbcrNextToken = a}) instance AWSPager DescribeComplianceByConfigRule where@@ -183,23 +183,23 @@ -> DescribeComplianceByConfigRuleResponse describeComplianceByConfigRuleResponse pResponseStatus_ = DescribeComplianceByConfigRuleResponse'- { _dcbcrrsComplianceByConfigRules = Nothing- , _dcbcrrsNextToken = Nothing- , _dcbcrrsResponseStatus = pResponseStatus_- }+ { _dcbcrrsComplianceByConfigRules = Nothing+ , _dcbcrrsNextToken = Nothing+ , _dcbcrrsResponseStatus = pResponseStatus_+ } -- | Indicates whether each of the specified AWS Config rules is compliant. dcbcrrsComplianceByConfigRules :: Lens' DescribeComplianceByConfigRuleResponse [ComplianceByConfigRule]-dcbcrrsComplianceByConfigRules = lens _dcbcrrsComplianceByConfigRules (\ s a -> s{_dcbcrrsComplianceByConfigRules = a}) . _Default . _Coerce;+dcbcrrsComplianceByConfigRules = lens _dcbcrrsComplianceByConfigRules (\ s a -> s{_dcbcrrsComplianceByConfigRules = a}) . _Default . _Coerce -- | The string that you use in a subsequent request to get the next page of results in a paginated response. dcbcrrsNextToken :: Lens' DescribeComplianceByConfigRuleResponse (Maybe Text)-dcbcrrsNextToken = lens _dcbcrrsNextToken (\ s a -> s{_dcbcrrsNextToken = a});+dcbcrrsNextToken = lens _dcbcrrsNextToken (\ s a -> s{_dcbcrrsNextToken = a}) -- | -- | The response status code. dcbcrrsResponseStatus :: Lens' DescribeComplianceByConfigRuleResponse Int-dcbcrrsResponseStatus = lens _dcbcrrsResponseStatus (\ s a -> s{_dcbcrrsResponseStatus = a});+dcbcrrsResponseStatus = lens _dcbcrrsResponseStatus (\ s a -> s{_dcbcrrsResponseStatus = a}) instance NFData DescribeComplianceByConfigRuleResponse
gen/Network/AWS/Config/DescribeComplianceByResource.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.DescribeComplianceByResource--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -84,44 +84,44 @@ -- -- * 'dcbrResourceId' - The ID of the AWS resource for which you want compliance information. You can specify only one resource ID. If you specify a resource ID, you must also specify a type for @ResourceType@ . ----- * 'dcbrResourceType' - The types of AWS resources for which you want compliance information; for example, @AWS::EC2::Instance@ . For this action, you can specify that the resource type is an AWS account by specifying @AWS::::Account@ .+-- * 'dcbrResourceType' - The types of AWS resources for which you want compliance information (for example, @AWS::EC2::Instance@ ). For this action, you can specify that the resource type is an AWS account by specifying @AWS::::Account@ . ----- * 'dcbrComplianceTypes' - Filters the results by compliance. The allowed values are @COMPLIANT@ , @NON_COMPLIANT@ , and @INSUFFICIENT_DATA@ .+-- * 'dcbrComplianceTypes' - Filters the results by compliance. The allowed values are @COMPLIANT@ and @NON_COMPLIANT@ . ----- * 'dcbrNextToken' - The @NextToken@ string returned on a previous page that you use to get the next page of results in a paginated response.+-- * 'dcbrNextToken' - The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. ----- * 'dcbrLimit' - The maximum number of evaluation results returned on each page. The default is 10. You cannot specify a limit greater than 100. If you specify 0, AWS Config uses the default.+-- * 'dcbrLimit' - The maximum number of evaluation results returned on each page. The default is 10. You cannot specify a number greater than 100. If you specify 0, AWS Config uses the default. describeComplianceByResource :: DescribeComplianceByResource describeComplianceByResource = DescribeComplianceByResource'- { _dcbrResourceId = Nothing- , _dcbrResourceType = Nothing- , _dcbrComplianceTypes = Nothing- , _dcbrNextToken = Nothing- , _dcbrLimit = Nothing- }+ { _dcbrResourceId = Nothing+ , _dcbrResourceType = Nothing+ , _dcbrComplianceTypes = Nothing+ , _dcbrNextToken = Nothing+ , _dcbrLimit = Nothing+ } -- | The ID of the AWS resource for which you want compliance information. You can specify only one resource ID. If you specify a resource ID, you must also specify a type for @ResourceType@ . dcbrResourceId :: Lens' DescribeComplianceByResource (Maybe Text)-dcbrResourceId = lens _dcbrResourceId (\ s a -> s{_dcbrResourceId = a});+dcbrResourceId = lens _dcbrResourceId (\ s a -> s{_dcbrResourceId = a}) --- | The types of AWS resources for which you want compliance information; for example, @AWS::EC2::Instance@ . For this action, you can specify that the resource type is an AWS account by specifying @AWS::::Account@ .+-- | The types of AWS resources for which you want compliance information (for example, @AWS::EC2::Instance@ ). For this action, you can specify that the resource type is an AWS account by specifying @AWS::::Account@ . dcbrResourceType :: Lens' DescribeComplianceByResource (Maybe Text)-dcbrResourceType = lens _dcbrResourceType (\ s a -> s{_dcbrResourceType = a});+dcbrResourceType = lens _dcbrResourceType (\ s a -> s{_dcbrResourceType = a}) --- | Filters the results by compliance. The allowed values are @COMPLIANT@ , @NON_COMPLIANT@ , and @INSUFFICIENT_DATA@ .+-- | Filters the results by compliance. The allowed values are @COMPLIANT@ and @NON_COMPLIANT@ . dcbrComplianceTypes :: Lens' DescribeComplianceByResource [ComplianceType]-dcbrComplianceTypes = lens _dcbrComplianceTypes (\ s a -> s{_dcbrComplianceTypes = a}) . _Default . _Coerce;+dcbrComplianceTypes = lens _dcbrComplianceTypes (\ s a -> s{_dcbrComplianceTypes = a}) . _Default . _Coerce --- | The @NextToken@ string returned on a previous page that you use to get the next page of results in a paginated response.+-- | The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. dcbrNextToken :: Lens' DescribeComplianceByResource (Maybe Text)-dcbrNextToken = lens _dcbrNextToken (\ s a -> s{_dcbrNextToken = a});+dcbrNextToken = lens _dcbrNextToken (\ s a -> s{_dcbrNextToken = a}) --- | The maximum number of evaluation results returned on each page. The default is 10. You cannot specify a limit greater than 100. If you specify 0, AWS Config uses the default.+-- | The maximum number of evaluation results returned on each page. The default is 10. You cannot specify a number greater than 100. If you specify 0, AWS Config uses the default. dcbrLimit :: Lens' DescribeComplianceByResource (Maybe Natural)-dcbrLimit = lens _dcbrLimit (\ s a -> s{_dcbrLimit = a}) . mapping _Nat;+dcbrLimit = lens _dcbrLimit (\ s a -> s{_dcbrLimit = a}) . mapping _Nat instance AWSPager DescribeComplianceByResource where page rq rs@@ -199,23 +199,23 @@ -> DescribeComplianceByResourceResponse describeComplianceByResourceResponse pResponseStatus_ = DescribeComplianceByResourceResponse'- { _dcbrrsComplianceByResources = Nothing- , _dcbrrsNextToken = Nothing- , _dcbrrsResponseStatus = pResponseStatus_- }+ { _dcbrrsComplianceByResources = Nothing+ , _dcbrrsNextToken = Nothing+ , _dcbrrsResponseStatus = pResponseStatus_+ } -- | Indicates whether the specified AWS resource complies with all of the AWS Config rules that evaluate it. dcbrrsComplianceByResources :: Lens' DescribeComplianceByResourceResponse [ComplianceByResource]-dcbrrsComplianceByResources = lens _dcbrrsComplianceByResources (\ s a -> s{_dcbrrsComplianceByResources = a}) . _Default . _Coerce;+dcbrrsComplianceByResources = lens _dcbrrsComplianceByResources (\ s a -> s{_dcbrrsComplianceByResources = a}) . _Default . _Coerce -- | The string that you use in a subsequent request to get the next page of results in a paginated response. dcbrrsNextToken :: Lens' DescribeComplianceByResourceResponse (Maybe Text)-dcbrrsNextToken = lens _dcbrrsNextToken (\ s a -> s{_dcbrrsNextToken = a});+dcbrrsNextToken = lens _dcbrrsNextToken (\ s a -> s{_dcbrrsNextToken = a}) -- | -- | The response status code. dcbrrsResponseStatus :: Lens' DescribeComplianceByResourceResponse Int-dcbrrsResponseStatus = lens _dcbrrsResponseStatus (\ s a -> s{_dcbrrsResponseStatus = a});+dcbrrsResponseStatus = lens _dcbrrsResponseStatus (\ s a -> s{_dcbrrsResponseStatus = a}) instance NFData DescribeComplianceByResourceResponse where
gen/Network/AWS/Config/DescribeConfigRuleEvaluationStatus.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.DescribeConfigRuleEvaluationStatus--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -65,30 +65,30 @@ -- -- * 'dcresConfigRuleNames' - The name of the AWS managed Config rules for which you want status information. If you do not specify any names, AWS Config returns status information for all AWS managed Config rules that you use. ----- * 'dcresNextToken' - The @NextToken@ string returned on a previous page that you use to get the next page of results in a paginated response.+-- * 'dcresNextToken' - The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. ----- * 'dcresLimit' - The number of rule evaluation results that you want returned. This parameter is required if the rule limit for your account is more than the default of 50 rules. For more information about requesting a rule limit increase, see <http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_config AWS Config Limits> in the /AWS General Reference Guide/ .+-- * 'dcresLimit' - The number of rule evaluation results that you want returned. This parameter is required if the rule limit for your account is more than the default of 50 rules. For information about requesting a rule limit increase, see <http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_config AWS Config Limits> in the /AWS General Reference Guide/ . describeConfigRuleEvaluationStatus :: DescribeConfigRuleEvaluationStatus describeConfigRuleEvaluationStatus = DescribeConfigRuleEvaluationStatus'- { _dcresConfigRuleNames = Nothing- , _dcresNextToken = Nothing- , _dcresLimit = Nothing- }+ { _dcresConfigRuleNames = Nothing+ , _dcresNextToken = Nothing+ , _dcresLimit = Nothing+ } -- | The name of the AWS managed Config rules for which you want status information. If you do not specify any names, AWS Config returns status information for all AWS managed Config rules that you use. dcresConfigRuleNames :: Lens' DescribeConfigRuleEvaluationStatus [Text]-dcresConfigRuleNames = lens _dcresConfigRuleNames (\ s a -> s{_dcresConfigRuleNames = a}) . _Default . _Coerce;+dcresConfigRuleNames = lens _dcresConfigRuleNames (\ s a -> s{_dcresConfigRuleNames = a}) . _Default . _Coerce --- | The @NextToken@ string returned on a previous page that you use to get the next page of results in a paginated response.+-- | The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. dcresNextToken :: Lens' DescribeConfigRuleEvaluationStatus (Maybe Text)-dcresNextToken = lens _dcresNextToken (\ s a -> s{_dcresNextToken = a});+dcresNextToken = lens _dcresNextToken (\ s a -> s{_dcresNextToken = a}) --- | The number of rule evaluation results that you want returned. This parameter is required if the rule limit for your account is more than the default of 50 rules. For more information about requesting a rule limit increase, see <http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_config AWS Config Limits> in the /AWS General Reference Guide/ .+-- | The number of rule evaluation results that you want returned. This parameter is required if the rule limit for your account is more than the default of 50 rules. For information about requesting a rule limit increase, see <http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_config AWS Config Limits> in the /AWS General Reference Guide/ . dcresLimit :: Lens' DescribeConfigRuleEvaluationStatus (Maybe Natural)-dcresLimit = lens _dcresLimit (\ s a -> s{_dcresLimit = a}) . mapping _Nat;+dcresLimit = lens _dcresLimit (\ s a -> s{_dcresLimit = a}) . mapping _Nat instance AWSRequest DescribeConfigRuleEvaluationStatus@@ -164,23 +164,23 @@ -> DescribeConfigRuleEvaluationStatusResponse describeConfigRuleEvaluationStatusResponse pResponseStatus_ = DescribeConfigRuleEvaluationStatusResponse'- { _dcresrsConfigRulesEvaluationStatus = Nothing- , _dcresrsNextToken = Nothing- , _dcresrsResponseStatus = pResponseStatus_- }+ { _dcresrsConfigRulesEvaluationStatus = Nothing+ , _dcresrsNextToken = Nothing+ , _dcresrsResponseStatus = pResponseStatus_+ } -- | Status information about your AWS managed Config rules. dcresrsConfigRulesEvaluationStatus :: Lens' DescribeConfigRuleEvaluationStatusResponse [ConfigRuleEvaluationStatus]-dcresrsConfigRulesEvaluationStatus = lens _dcresrsConfigRulesEvaluationStatus (\ s a -> s{_dcresrsConfigRulesEvaluationStatus = a}) . _Default . _Coerce;+dcresrsConfigRulesEvaluationStatus = lens _dcresrsConfigRulesEvaluationStatus (\ s a -> s{_dcresrsConfigRulesEvaluationStatus = a}) . _Default . _Coerce -- | The string that you use in a subsequent request to get the next page of results in a paginated response. dcresrsNextToken :: Lens' DescribeConfigRuleEvaluationStatusResponse (Maybe Text)-dcresrsNextToken = lens _dcresrsNextToken (\ s a -> s{_dcresrsNextToken = a});+dcresrsNextToken = lens _dcresrsNextToken (\ s a -> s{_dcresrsNextToken = a}) -- | -- | The response status code. dcresrsResponseStatus :: Lens' DescribeConfigRuleEvaluationStatusResponse Int-dcresrsResponseStatus = lens _dcresrsResponseStatus (\ s a -> s{_dcresrsResponseStatus = a});+dcresrsResponseStatus = lens _dcresrsResponseStatus (\ s a -> s{_dcresrsResponseStatus = a}) instance NFData DescribeConfigRuleEvaluationStatusResponse
gen/Network/AWS/Config/DescribeConfigRules.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.DescribeConfigRules--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -66,7 +66,7 @@ -- -- * 'dcrConfigRuleNames' - The names of the AWS Config rules for which you want details. If you do not specify any names, AWS Config returns details for all your rules. ----- * 'dcrNextToken' - The @NextToken@ string returned on a previous page that you use to get the next page of results in a paginated response.+-- * 'dcrNextToken' - The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. describeConfigRules :: DescribeConfigRules describeConfigRules =@@ -75,11 +75,11 @@ -- | The names of the AWS Config rules for which you want details. If you do not specify any names, AWS Config returns details for all your rules. dcrConfigRuleNames :: Lens' DescribeConfigRules [Text]-dcrConfigRuleNames = lens _dcrConfigRuleNames (\ s a -> s{_dcrConfigRuleNames = a}) . _Default . _Coerce;+dcrConfigRuleNames = lens _dcrConfigRuleNames (\ s a -> s{_dcrConfigRuleNames = a}) . _Default . _Coerce --- | The @NextToken@ string returned on a previous page that you use to get the next page of results in a paginated response.+-- | The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. dcrNextToken :: Lens' DescribeConfigRules (Maybe Text)-dcrNextToken = lens _dcrNextToken (\ s a -> s{_dcrNextToken = a});+dcrNextToken = lens _dcrNextToken (\ s a -> s{_dcrNextToken = a}) instance AWSPager DescribeConfigRules where page rq rs@@ -153,22 +153,22 @@ -> DescribeConfigRulesResponse describeConfigRulesResponse pResponseStatus_ = DescribeConfigRulesResponse'- { _dcrrsConfigRules = Nothing- , _dcrrsNextToken = Nothing- , _dcrrsResponseStatus = pResponseStatus_- }+ { _dcrrsConfigRules = Nothing+ , _dcrrsNextToken = Nothing+ , _dcrrsResponseStatus = pResponseStatus_+ } -- | The details about your AWS Config rules. dcrrsConfigRules :: Lens' DescribeConfigRulesResponse [ConfigRule]-dcrrsConfigRules = lens _dcrrsConfigRules (\ s a -> s{_dcrrsConfigRules = a}) . _Default . _Coerce;+dcrrsConfigRules = lens _dcrrsConfigRules (\ s a -> s{_dcrrsConfigRules = a}) . _Default . _Coerce -- | The string that you use in a subsequent request to get the next page of results in a paginated response. dcrrsNextToken :: Lens' DescribeConfigRulesResponse (Maybe Text)-dcrrsNextToken = lens _dcrrsNextToken (\ s a -> s{_dcrrsNextToken = a});+dcrrsNextToken = lens _dcrrsNextToken (\ s a -> s{_dcrrsNextToken = a}) -- | -- | The response status code. dcrrsResponseStatus :: Lens' DescribeConfigRulesResponse Int-dcrrsResponseStatus = lens _dcrrsResponseStatus (\ s a -> s{_dcrrsResponseStatus = a});+dcrrsResponseStatus = lens _dcrrsResponseStatus (\ s a -> s{_dcrrsResponseStatus = a}) instance NFData DescribeConfigRulesResponse where
+ gen/Network/AWS/Config/DescribeConfigurationAggregatorSourcesStatus.hs view
@@ -0,0 +1,201 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus+-- Copyright : (c) 2013-2018 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns status information for sources within an aggregator. The status includes information about the last time AWS Config aggregated data from source accounts or AWS Config failed to aggregate data from source accounts with the related error code or message.+--+--+module Network.AWS.Config.DescribeConfigurationAggregatorSourcesStatus+ (+ -- * Creating a Request+ describeConfigurationAggregatorSourcesStatus+ , DescribeConfigurationAggregatorSourcesStatus+ -- * Request Lenses+ , dcassNextToken+ , dcassLimit+ , dcassUpdateStatus+ , dcassConfigurationAggregatorName++ -- * Destructuring the Response+ , describeConfigurationAggregatorSourcesStatusResponse+ , DescribeConfigurationAggregatorSourcesStatusResponse+ -- * Response Lenses+ , dcassrsAggregatedSourceStatusList+ , dcassrsNextToken+ , dcassrsResponseStatus+ ) where++import Network.AWS.Config.Types+import Network.AWS.Config.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'describeConfigurationAggregatorSourcesStatus' smart constructor.+data DescribeConfigurationAggregatorSourcesStatus = DescribeConfigurationAggregatorSourcesStatus'+ { _dcassNextToken :: !(Maybe Text)+ , _dcassLimit :: !(Maybe Nat)+ , _dcassUpdateStatus :: !(Maybe (List1 AggregatedSourceStatusType))+ , _dcassConfigurationAggregatorName :: !Text+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DescribeConfigurationAggregatorSourcesStatus' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dcassNextToken' - The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+--+-- * 'dcassLimit' - The maximum number of AggregatorSourceStatus returned on each page. The default is maximum. If you specify 0, AWS Config uses the default.+--+-- * 'dcassUpdateStatus' - Filters the status type. * Valid value FAILED indicates errors while moving data. * Valid value SUCCEEDED indicates the data was successfully moved. * Valid value OUTDATED indicates the data is not the most recent.+--+-- * 'dcassConfigurationAggregatorName' - The name of the configuration aggregator.+describeConfigurationAggregatorSourcesStatus+ :: Text -- ^ 'dcassConfigurationAggregatorName'+ -> DescribeConfigurationAggregatorSourcesStatus+describeConfigurationAggregatorSourcesStatus pConfigurationAggregatorName_ =+ DescribeConfigurationAggregatorSourcesStatus'+ { _dcassNextToken = Nothing+ , _dcassLimit = Nothing+ , _dcassUpdateStatus = Nothing+ , _dcassConfigurationAggregatorName = pConfigurationAggregatorName_+ }+++-- | The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+dcassNextToken :: Lens' DescribeConfigurationAggregatorSourcesStatus (Maybe Text)+dcassNextToken = lens _dcassNextToken (\ s a -> s{_dcassNextToken = a})++-- | The maximum number of AggregatorSourceStatus returned on each page. The default is maximum. If you specify 0, AWS Config uses the default.+dcassLimit :: Lens' DescribeConfigurationAggregatorSourcesStatus (Maybe Natural)+dcassLimit = lens _dcassLimit (\ s a -> s{_dcassLimit = a}) . mapping _Nat++-- | Filters the status type. * Valid value FAILED indicates errors while moving data. * Valid value SUCCEEDED indicates the data was successfully moved. * Valid value OUTDATED indicates the data is not the most recent.+dcassUpdateStatus :: Lens' DescribeConfigurationAggregatorSourcesStatus (Maybe (NonEmpty AggregatedSourceStatusType))+dcassUpdateStatus = lens _dcassUpdateStatus (\ s a -> s{_dcassUpdateStatus = a}) . mapping _List1++-- | The name of the configuration aggregator.+dcassConfigurationAggregatorName :: Lens' DescribeConfigurationAggregatorSourcesStatus Text+dcassConfigurationAggregatorName = lens _dcassConfigurationAggregatorName (\ s a -> s{_dcassConfigurationAggregatorName = a})++instance AWSRequest+ DescribeConfigurationAggregatorSourcesStatus+ where+ type Rs DescribeConfigurationAggregatorSourcesStatus+ =+ DescribeConfigurationAggregatorSourcesStatusResponse+ request = postJSON config+ response+ = receiveJSON+ (\ s h x ->+ DescribeConfigurationAggregatorSourcesStatusResponse'+ <$>+ (x .?> "AggregatedSourceStatusList" .!@ mempty) <*>+ (x .?> "NextToken")+ <*> (pure (fromEnum s)))++instance Hashable+ DescribeConfigurationAggregatorSourcesStatus+ where++instance NFData+ DescribeConfigurationAggregatorSourcesStatus+ where++instance ToHeaders+ DescribeConfigurationAggregatorSourcesStatus+ where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("StarlingDoveService.DescribeConfigurationAggregatorSourcesStatus"+ :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON+ DescribeConfigurationAggregatorSourcesStatus+ where+ toJSON+ DescribeConfigurationAggregatorSourcesStatus'{..}+ = object+ (catMaybes+ [("NextToken" .=) <$> _dcassNextToken,+ ("Limit" .=) <$> _dcassLimit,+ ("UpdateStatus" .=) <$> _dcassUpdateStatus,+ Just+ ("ConfigurationAggregatorName" .=+ _dcassConfigurationAggregatorName)])++instance ToPath+ DescribeConfigurationAggregatorSourcesStatus+ where+ toPath = const "/"++instance ToQuery+ DescribeConfigurationAggregatorSourcesStatus+ where+ toQuery = const mempty++-- | /See:/ 'describeConfigurationAggregatorSourcesStatusResponse' smart constructor.+data DescribeConfigurationAggregatorSourcesStatusResponse = DescribeConfigurationAggregatorSourcesStatusResponse'+ { _dcassrsAggregatedSourceStatusList :: !(Maybe [AggregatedSourceStatus])+ , _dcassrsNextToken :: !(Maybe Text)+ , _dcassrsResponseStatus :: !Int+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DescribeConfigurationAggregatorSourcesStatusResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dcassrsAggregatedSourceStatusList' - Retuns an AggregatedSourceStatus object.+--+-- * 'dcassrsNextToken' - The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+--+-- * 'dcassrsResponseStatus' - -- | The response status code.+describeConfigurationAggregatorSourcesStatusResponse+ :: Int -- ^ 'dcassrsResponseStatus'+ -> DescribeConfigurationAggregatorSourcesStatusResponse+describeConfigurationAggregatorSourcesStatusResponse pResponseStatus_ =+ DescribeConfigurationAggregatorSourcesStatusResponse'+ { _dcassrsAggregatedSourceStatusList = Nothing+ , _dcassrsNextToken = Nothing+ , _dcassrsResponseStatus = pResponseStatus_+ }+++-- | Retuns an AggregatedSourceStatus object.+dcassrsAggregatedSourceStatusList :: Lens' DescribeConfigurationAggregatorSourcesStatusResponse [AggregatedSourceStatus]+dcassrsAggregatedSourceStatusList = lens _dcassrsAggregatedSourceStatusList (\ s a -> s{_dcassrsAggregatedSourceStatusList = a}) . _Default . _Coerce++-- | The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+dcassrsNextToken :: Lens' DescribeConfigurationAggregatorSourcesStatusResponse (Maybe Text)+dcassrsNextToken = lens _dcassrsNextToken (\ s a -> s{_dcassrsNextToken = a})++-- | -- | The response status code.+dcassrsResponseStatus :: Lens' DescribeConfigurationAggregatorSourcesStatusResponse Int+dcassrsResponseStatus = lens _dcassrsResponseStatus (\ s a -> s{_dcassrsResponseStatus = a})++instance NFData+ DescribeConfigurationAggregatorSourcesStatusResponse+ where
+ gen/Network/AWS/Config/DescribeConfigurationAggregators.hs view
@@ -0,0 +1,179 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.Config.DescribeConfigurationAggregators+-- Copyright : (c) 2013-2018 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns the details of one or more configuration aggregators. If the configuration aggregator is not specified, this action returns the details for all the configuration aggregators associated with the account.+--+--+module Network.AWS.Config.DescribeConfigurationAggregators+ (+ -- * Creating a Request+ describeConfigurationAggregators+ , DescribeConfigurationAggregators+ -- * Request Lenses+ , dcaNextToken+ , dcaLimit+ , dcaConfigurationAggregatorNames++ -- * Destructuring the Response+ , describeConfigurationAggregatorsResponse+ , DescribeConfigurationAggregatorsResponse+ -- * Response Lenses+ , dcarsNextToken+ , dcarsConfigurationAggregators+ , dcarsResponseStatus+ ) where++import Network.AWS.Config.Types+import Network.AWS.Config.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'describeConfigurationAggregators' smart constructor.+data DescribeConfigurationAggregators = DescribeConfigurationAggregators'+ { _dcaNextToken :: !(Maybe Text)+ , _dcaLimit :: !(Maybe Nat)+ , _dcaConfigurationAggregatorNames :: !(Maybe [Text])+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DescribeConfigurationAggregators' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dcaNextToken' - The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+--+-- * 'dcaLimit' - The maximum number of configuration aggregators returned on each page. The default is maximum. If you specify 0, AWS Config uses the default.+--+-- * 'dcaConfigurationAggregatorNames' - The name of the configuration aggregators.+describeConfigurationAggregators+ :: DescribeConfigurationAggregators+describeConfigurationAggregators =+ DescribeConfigurationAggregators'+ { _dcaNextToken = Nothing+ , _dcaLimit = Nothing+ , _dcaConfigurationAggregatorNames = Nothing+ }+++-- | The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+dcaNextToken :: Lens' DescribeConfigurationAggregators (Maybe Text)+dcaNextToken = lens _dcaNextToken (\ s a -> s{_dcaNextToken = a})++-- | The maximum number of configuration aggregators returned on each page. The default is maximum. If you specify 0, AWS Config uses the default.+dcaLimit :: Lens' DescribeConfigurationAggregators (Maybe Natural)+dcaLimit = lens _dcaLimit (\ s a -> s{_dcaLimit = a}) . mapping _Nat++-- | The name of the configuration aggregators.+dcaConfigurationAggregatorNames :: Lens' DescribeConfigurationAggregators [Text]+dcaConfigurationAggregatorNames = lens _dcaConfigurationAggregatorNames (\ s a -> s{_dcaConfigurationAggregatorNames = a}) . _Default . _Coerce++instance AWSRequest DescribeConfigurationAggregators+ where+ type Rs DescribeConfigurationAggregators =+ DescribeConfigurationAggregatorsResponse+ request = postJSON config+ response+ = receiveJSON+ (\ s h x ->+ DescribeConfigurationAggregatorsResponse' <$>+ (x .?> "NextToken") <*>+ (x .?> "ConfigurationAggregators" .!@ mempty)+ <*> (pure (fromEnum s)))++instance Hashable DescribeConfigurationAggregators+ where++instance NFData DescribeConfigurationAggregators+ where++instance ToHeaders DescribeConfigurationAggregators+ where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("StarlingDoveService.DescribeConfigurationAggregators"+ :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON DescribeConfigurationAggregators+ where+ toJSON DescribeConfigurationAggregators'{..}+ = object+ (catMaybes+ [("NextToken" .=) <$> _dcaNextToken,+ ("Limit" .=) <$> _dcaLimit,+ ("ConfigurationAggregatorNames" .=) <$>+ _dcaConfigurationAggregatorNames])++instance ToPath DescribeConfigurationAggregators+ where+ toPath = const "/"++instance ToQuery DescribeConfigurationAggregators+ where+ toQuery = const mempty++-- | /See:/ 'describeConfigurationAggregatorsResponse' smart constructor.+data DescribeConfigurationAggregatorsResponse = DescribeConfigurationAggregatorsResponse'+ { _dcarsNextToken :: !(Maybe Text)+ , _dcarsConfigurationAggregators :: !(Maybe [ConfigurationAggregator])+ , _dcarsResponseStatus :: !Int+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DescribeConfigurationAggregatorsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dcarsNextToken' - The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+--+-- * 'dcarsConfigurationAggregators' - Returns a ConfigurationAggregators object.+--+-- * 'dcarsResponseStatus' - -- | The response status code.+describeConfigurationAggregatorsResponse+ :: Int -- ^ 'dcarsResponseStatus'+ -> DescribeConfigurationAggregatorsResponse+describeConfigurationAggregatorsResponse pResponseStatus_ =+ DescribeConfigurationAggregatorsResponse'+ { _dcarsNextToken = Nothing+ , _dcarsConfigurationAggregators = Nothing+ , _dcarsResponseStatus = pResponseStatus_+ }+++-- | The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+dcarsNextToken :: Lens' DescribeConfigurationAggregatorsResponse (Maybe Text)+dcarsNextToken = lens _dcarsNextToken (\ s a -> s{_dcarsNextToken = a})++-- | Returns a ConfigurationAggregators object.+dcarsConfigurationAggregators :: Lens' DescribeConfigurationAggregatorsResponse [ConfigurationAggregator]+dcarsConfigurationAggregators = lens _dcarsConfigurationAggregators (\ s a -> s{_dcarsConfigurationAggregators = a}) . _Default . _Coerce++-- | -- | The response status code.+dcarsResponseStatus :: Lens' DescribeConfigurationAggregatorsResponse Int+dcarsResponseStatus = lens _dcarsResponseStatus (\ s a -> s{_dcarsResponseStatus = a})++instance NFData+ DescribeConfigurationAggregatorsResponse+ where
gen/Network/AWS/Config/DescribeConfigurationRecorderStatus.hs view
@@ -12,13 +12,13 @@ -- | -- Module : Network.AWS.Config.DescribeConfigurationRecorderStatus--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Returns the current status of the specified configuration recorder. If a configuration recorder is not specified, this action returns the status of all configuration recorder associated with the account.+-- Returns the current status of the specified configuration recorder. If a configuration recorder is not specified, this action returns the status of all configuration recorders associated with the account. -- -- module Network.AWS.Config.DescribeConfigurationRecorderStatus@@ -63,12 +63,12 @@ :: DescribeConfigurationRecorderStatus describeConfigurationRecorderStatus = DescribeConfigurationRecorderStatus'- {_dcrsConfigurationRecorderNames = Nothing}+ {_dcrsConfigurationRecorderNames = Nothing} -- | The name(s) of the configuration recorder. If the name is not specified, the action returns the current status of all the configuration recorders associated with the account. dcrsConfigurationRecorderNames :: Lens' DescribeConfigurationRecorderStatus [Text]-dcrsConfigurationRecorderNames = lens _dcrsConfigurationRecorderNames (\ s a -> s{_dcrsConfigurationRecorderNames = a}) . _Default . _Coerce;+dcrsConfigurationRecorderNames = lens _dcrsConfigurationRecorderNames (\ s a -> s{_dcrsConfigurationRecorderNames = a}) . _Default . _Coerce instance AWSRequest DescribeConfigurationRecorderStatus@@ -117,7 +117,7 @@ where toQuery = const mempty --- | The output for the 'DescribeConfigurationRecorderStatus' action in JSON format.+-- | The output for the 'DescribeConfigurationRecorderStatus' action, in JSON format. -- -- --@@ -140,18 +140,18 @@ -> DescribeConfigurationRecorderStatusResponse describeConfigurationRecorderStatusResponse pResponseStatus_ = DescribeConfigurationRecorderStatusResponse'- { _dcrsrsConfigurationRecordersStatus = Nothing- , _dcrsrsResponseStatus = pResponseStatus_- }+ { _dcrsrsConfigurationRecordersStatus = Nothing+ , _dcrsrsResponseStatus = pResponseStatus_+ } -- | A list that contains status of the specified recorders. dcrsrsConfigurationRecordersStatus :: Lens' DescribeConfigurationRecorderStatusResponse [ConfigurationRecorderStatus]-dcrsrsConfigurationRecordersStatus = lens _dcrsrsConfigurationRecordersStatus (\ s a -> s{_dcrsrsConfigurationRecordersStatus = a}) . _Default . _Coerce;+dcrsrsConfigurationRecordersStatus = lens _dcrsrsConfigurationRecordersStatus (\ s a -> s{_dcrsrsConfigurationRecordersStatus = a}) . _Default . _Coerce -- | -- | The response status code. dcrsrsResponseStatus :: Lens' DescribeConfigurationRecorderStatusResponse Int-dcrsrsResponseStatus = lens _dcrsrsResponseStatus (\ s a -> s{_dcrsrsResponseStatus = a});+dcrsrsResponseStatus = lens _dcrsrsResponseStatus (\ s a -> s{_dcrsrsResponseStatus = a}) instance NFData DescribeConfigurationRecorderStatusResponse
gen/Network/AWS/Config/DescribeConfigurationRecorders.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.DescribeConfigurationRecorders--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -67,7 +67,7 @@ -- | A list of configuration recorder names. dcrConfigurationRecorderNames :: Lens' DescribeConfigurationRecorders [Text]-dcrConfigurationRecorderNames = lens _dcrConfigurationRecorderNames (\ s a -> s{_dcrConfigurationRecorderNames = a}) . _Default . _Coerce;+dcrConfigurationRecorderNames = lens _dcrConfigurationRecorderNames (\ s a -> s{_dcrConfigurationRecorderNames = a}) . _Default . _Coerce instance AWSRequest DescribeConfigurationRecorders where@@ -133,16 +133,18 @@ -> DescribeConfigurationRecordersResponse describeConfigurationRecordersResponse pResponseStatus_ = DescribeConfigurationRecordersResponse'- {_drsConfigurationRecorders = Nothing, _drsResponseStatus = pResponseStatus_}+ { _drsConfigurationRecorders = Nothing+ , _drsResponseStatus = pResponseStatus_+ } -- | A list that contains the descriptions of the specified configuration recorders. drsConfigurationRecorders :: Lens' DescribeConfigurationRecordersResponse [ConfigurationRecorder]-drsConfigurationRecorders = lens _drsConfigurationRecorders (\ s a -> s{_drsConfigurationRecorders = a}) . _Default . _Coerce;+drsConfigurationRecorders = lens _drsConfigurationRecorders (\ s a -> s{_drsConfigurationRecorders = a}) . _Default . _Coerce -- | -- | The response status code. drsResponseStatus :: Lens' DescribeConfigurationRecordersResponse Int-drsResponseStatus = lens _drsResponseStatus (\ s a -> s{_drsResponseStatus = a});+drsResponseStatus = lens _drsResponseStatus (\ s a -> s{_drsResponseStatus = a}) instance NFData DescribeConfigurationRecordersResponse
gen/Network/AWS/Config/DescribeDeliveryChannelStatus.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.DescribeDeliveryChannelStatus--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -67,7 +67,7 @@ -- | A list of delivery channel names. ddcsDeliveryChannelNames :: Lens' DescribeDeliveryChannelStatus [Text]-ddcsDeliveryChannelNames = lens _ddcsDeliveryChannelNames (\ s a -> s{_ddcsDeliveryChannelNames = a}) . _Default . _Coerce;+ddcsDeliveryChannelNames = lens _ddcsDeliveryChannelNames (\ s a -> s{_ddcsDeliveryChannelNames = a}) . _Default . _Coerce instance AWSRequest DescribeDeliveryChannelStatus where@@ -132,18 +132,18 @@ -> DescribeDeliveryChannelStatusResponse describeDeliveryChannelStatusResponse pResponseStatus_ = DescribeDeliveryChannelStatusResponse'- { _ddcsrsDeliveryChannelsStatus = Nothing- , _ddcsrsResponseStatus = pResponseStatus_- }+ { _ddcsrsDeliveryChannelsStatus = Nothing+ , _ddcsrsResponseStatus = pResponseStatus_+ } -- | A list that contains the status of a specified delivery channel. ddcsrsDeliveryChannelsStatus :: Lens' DescribeDeliveryChannelStatusResponse [DeliveryChannelStatus]-ddcsrsDeliveryChannelsStatus = lens _ddcsrsDeliveryChannelsStatus (\ s a -> s{_ddcsrsDeliveryChannelsStatus = a}) . _Default . _Coerce;+ddcsrsDeliveryChannelsStatus = lens _ddcsrsDeliveryChannelsStatus (\ s a -> s{_ddcsrsDeliveryChannelsStatus = a}) . _Default . _Coerce -- | -- | The response status code. ddcsrsResponseStatus :: Lens' DescribeDeliveryChannelStatusResponse Int-ddcsrsResponseStatus = lens _ddcsrsResponseStatus (\ s a -> s{_ddcsrsResponseStatus = a});+ddcsrsResponseStatus = lens _ddcsrsResponseStatus (\ s a -> s{_ddcsrsResponseStatus = a}) instance NFData DescribeDeliveryChannelStatusResponse where
gen/Network/AWS/Config/DescribeDeliveryChannels.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.DescribeDeliveryChannels--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -67,7 +67,7 @@ -- | A list of delivery channel names. ddcDeliveryChannelNames :: Lens' DescribeDeliveryChannels [Text]-ddcDeliveryChannelNames = lens _ddcDeliveryChannelNames (\ s a -> s{_ddcDeliveryChannelNames = a}) . _Default . _Coerce;+ddcDeliveryChannelNames = lens _ddcDeliveryChannelNames (\ s a -> s{_ddcDeliveryChannelNames = a}) . _Default . _Coerce instance AWSRequest DescribeDeliveryChannels where type Rs DescribeDeliveryChannels =@@ -130,16 +130,16 @@ -> DescribeDeliveryChannelsResponse describeDeliveryChannelsResponse pResponseStatus_ = DescribeDeliveryChannelsResponse'- {_ddcrsDeliveryChannels = Nothing, _ddcrsResponseStatus = pResponseStatus_}+ {_ddcrsDeliveryChannels = Nothing, _ddcrsResponseStatus = pResponseStatus_} -- | A list that contains the descriptions of the specified delivery channel. ddcrsDeliveryChannels :: Lens' DescribeDeliveryChannelsResponse [DeliveryChannel]-ddcrsDeliveryChannels = lens _ddcrsDeliveryChannels (\ s a -> s{_ddcrsDeliveryChannels = a}) . _Default . _Coerce;+ddcrsDeliveryChannels = lens _ddcrsDeliveryChannels (\ s a -> s{_ddcrsDeliveryChannels = a}) . _Default . _Coerce -- | -- | The response status code. ddcrsResponseStatus :: Lens' DescribeDeliveryChannelsResponse Int-ddcrsResponseStatus = lens _ddcrsResponseStatus (\ s a -> s{_ddcrsResponseStatus = a});+ddcrsResponseStatus = lens _ddcrsResponseStatus (\ s a -> s{_ddcrsResponseStatus = a}) instance NFData DescribeDeliveryChannelsResponse where
+ gen/Network/AWS/Config/DescribePendingAggregationRequests.hs view
@@ -0,0 +1,167 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.Config.DescribePendingAggregationRequests+-- Copyright : (c) 2013-2018 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of all pending aggregation requests.+--+--+module Network.AWS.Config.DescribePendingAggregationRequests+ (+ -- * Creating a Request+ describePendingAggregationRequests+ , DescribePendingAggregationRequests+ -- * Request Lenses+ , dparNextToken+ , dparLimit++ -- * Destructuring the Response+ , describePendingAggregationRequestsResponse+ , DescribePendingAggregationRequestsResponse+ -- * Response Lenses+ , dparrsNextToken+ , dparrsPendingAggregationRequests+ , dparrsResponseStatus+ ) where++import Network.AWS.Config.Types+import Network.AWS.Config.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'describePendingAggregationRequests' smart constructor.+data DescribePendingAggregationRequests = DescribePendingAggregationRequests'+ { _dparNextToken :: !(Maybe Text)+ , _dparLimit :: !(Maybe Nat)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DescribePendingAggregationRequests' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dparNextToken' - The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+--+-- * 'dparLimit' - The maximum number of evaluation results returned on each page. The default is maximum. If you specify 0, AWS Config uses the default.+describePendingAggregationRequests+ :: DescribePendingAggregationRequests+describePendingAggregationRequests =+ DescribePendingAggregationRequests'+ {_dparNextToken = Nothing, _dparLimit = Nothing}+++-- | The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+dparNextToken :: Lens' DescribePendingAggregationRequests (Maybe Text)+dparNextToken = lens _dparNextToken (\ s a -> s{_dparNextToken = a})++-- | The maximum number of evaluation results returned on each page. The default is maximum. If you specify 0, AWS Config uses the default.+dparLimit :: Lens' DescribePendingAggregationRequests (Maybe Natural)+dparLimit = lens _dparLimit (\ s a -> s{_dparLimit = a}) . mapping _Nat++instance AWSRequest+ DescribePendingAggregationRequests+ where+ type Rs DescribePendingAggregationRequests =+ DescribePendingAggregationRequestsResponse+ request = postJSON config+ response+ = receiveJSON+ (\ s h x ->+ DescribePendingAggregationRequestsResponse' <$>+ (x .?> "NextToken") <*>+ (x .?> "PendingAggregationRequests" .!@ mempty)+ <*> (pure (fromEnum s)))++instance Hashable DescribePendingAggregationRequests+ where++instance NFData DescribePendingAggregationRequests+ where++instance ToHeaders DescribePendingAggregationRequests+ where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("StarlingDoveService.DescribePendingAggregationRequests"+ :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON DescribePendingAggregationRequests+ where+ toJSON DescribePendingAggregationRequests'{..}+ = object+ (catMaybes+ [("NextToken" .=) <$> _dparNextToken,+ ("Limit" .=) <$> _dparLimit])++instance ToPath DescribePendingAggregationRequests+ where+ toPath = const "/"++instance ToQuery DescribePendingAggregationRequests+ where+ toQuery = const mempty++-- | /See:/ 'describePendingAggregationRequestsResponse' smart constructor.+data DescribePendingAggregationRequestsResponse = DescribePendingAggregationRequestsResponse'+ { _dparrsNextToken :: !(Maybe Text)+ , _dparrsPendingAggregationRequests :: !(Maybe [PendingAggregationRequest])+ , _dparrsResponseStatus :: !Int+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DescribePendingAggregationRequestsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dparrsNextToken' - The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+--+-- * 'dparrsPendingAggregationRequests' - Returns a PendingAggregationRequests object.+--+-- * 'dparrsResponseStatus' - -- | The response status code.+describePendingAggregationRequestsResponse+ :: Int -- ^ 'dparrsResponseStatus'+ -> DescribePendingAggregationRequestsResponse+describePendingAggregationRequestsResponse pResponseStatus_ =+ DescribePendingAggregationRequestsResponse'+ { _dparrsNextToken = Nothing+ , _dparrsPendingAggregationRequests = Nothing+ , _dparrsResponseStatus = pResponseStatus_+ }+++-- | The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+dparrsNextToken :: Lens' DescribePendingAggregationRequestsResponse (Maybe Text)+dparrsNextToken = lens _dparrsNextToken (\ s a -> s{_dparrsNextToken = a})++-- | Returns a PendingAggregationRequests object.+dparrsPendingAggregationRequests :: Lens' DescribePendingAggregationRequestsResponse [PendingAggregationRequest]+dparrsPendingAggregationRequests = lens _dparrsPendingAggregationRequests (\ s a -> s{_dparrsPendingAggregationRequests = a}) . _Default . _Coerce++-- | -- | The response status code.+dparrsResponseStatus :: Lens' DescribePendingAggregationRequestsResponse Int+dparrsResponseStatus = lens _dparrsResponseStatus (\ s a -> s{_dparrsResponseStatus = a})++instance NFData+ DescribePendingAggregationRequestsResponse+ where
+ gen/Network/AWS/Config/GetAggregateComplianceDetailsByConfigRule.hs view
@@ -0,0 +1,232 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule+-- Copyright : (c) 2013-2018 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns the evaluation results for the specified AWS Config rule for a specific resource in a rule. The results indicate which AWS resources were evaluated by the rule, when each resource was last evaluated, and whether each resource complies with the rule.+--+--+module Network.AWS.Config.GetAggregateComplianceDetailsByConfigRule+ (+ -- * Creating a Request+ getAggregateComplianceDetailsByConfigRule+ , GetAggregateComplianceDetailsByConfigRule+ -- * Request Lenses+ , gacdbcrNextToken+ , gacdbcrLimit+ , gacdbcrComplianceType+ , gacdbcrConfigurationAggregatorName+ , gacdbcrConfigRuleName+ , gacdbcrAccountId+ , gacdbcrAWSRegion++ -- * Destructuring the Response+ , getAggregateComplianceDetailsByConfigRuleResponse+ , GetAggregateComplianceDetailsByConfigRuleResponse+ -- * Response Lenses+ , gacdbcrrsNextToken+ , gacdbcrrsAggregateEvaluationResults+ , gacdbcrrsResponseStatus+ ) where++import Network.AWS.Config.Types+import Network.AWS.Config.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'getAggregateComplianceDetailsByConfigRule' smart constructor.+data GetAggregateComplianceDetailsByConfigRule = GetAggregateComplianceDetailsByConfigRule'+ { _gacdbcrNextToken :: !(Maybe Text)+ , _gacdbcrLimit :: !(Maybe Nat)+ , _gacdbcrComplianceType :: !(Maybe ComplianceType)+ , _gacdbcrConfigurationAggregatorName :: !Text+ , _gacdbcrConfigRuleName :: !Text+ , _gacdbcrAccountId :: !Text+ , _gacdbcrAWSRegion :: !Text+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GetAggregateComplianceDetailsByConfigRule' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gacdbcrNextToken' - The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+--+-- * 'gacdbcrLimit' - The maximum number of evaluation results returned on each page. The default is 50. You cannot specify a number greater than 100. If you specify 0, AWS Config uses the default.+--+-- * 'gacdbcrComplianceType' - The resource compliance status.+--+-- * 'gacdbcrConfigurationAggregatorName' - The name of the configuration aggregator.+--+-- * 'gacdbcrConfigRuleName' - The name of the AWS Config rule for which you want compliance information.+--+-- * 'gacdbcrAccountId' - The 12-digit account ID of the source account.+--+-- * 'gacdbcrAWSRegion' - The source region from where the data is aggregated.+getAggregateComplianceDetailsByConfigRule+ :: Text -- ^ 'gacdbcrConfigurationAggregatorName'+ -> Text -- ^ 'gacdbcrConfigRuleName'+ -> Text -- ^ 'gacdbcrAccountId'+ -> Text -- ^ 'gacdbcrAWSRegion'+ -> GetAggregateComplianceDetailsByConfigRule+getAggregateComplianceDetailsByConfigRule pConfigurationAggregatorName_ pConfigRuleName_ pAccountId_ pAWSRegion_ =+ GetAggregateComplianceDetailsByConfigRule'+ { _gacdbcrNextToken = Nothing+ , _gacdbcrLimit = Nothing+ , _gacdbcrComplianceType = Nothing+ , _gacdbcrConfigurationAggregatorName = pConfigurationAggregatorName_+ , _gacdbcrConfigRuleName = pConfigRuleName_+ , _gacdbcrAccountId = pAccountId_+ , _gacdbcrAWSRegion = pAWSRegion_+ }+++-- | The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+gacdbcrNextToken :: Lens' GetAggregateComplianceDetailsByConfigRule (Maybe Text)+gacdbcrNextToken = lens _gacdbcrNextToken (\ s a -> s{_gacdbcrNextToken = a})++-- | The maximum number of evaluation results returned on each page. The default is 50. You cannot specify a number greater than 100. If you specify 0, AWS Config uses the default.+gacdbcrLimit :: Lens' GetAggregateComplianceDetailsByConfigRule (Maybe Natural)+gacdbcrLimit = lens _gacdbcrLimit (\ s a -> s{_gacdbcrLimit = a}) . mapping _Nat++-- | The resource compliance status.+gacdbcrComplianceType :: Lens' GetAggregateComplianceDetailsByConfigRule (Maybe ComplianceType)+gacdbcrComplianceType = lens _gacdbcrComplianceType (\ s a -> s{_gacdbcrComplianceType = a})++-- | The name of the configuration aggregator.+gacdbcrConfigurationAggregatorName :: Lens' GetAggregateComplianceDetailsByConfigRule Text+gacdbcrConfigurationAggregatorName = lens _gacdbcrConfigurationAggregatorName (\ s a -> s{_gacdbcrConfigurationAggregatorName = a})++-- | The name of the AWS Config rule for which you want compliance information.+gacdbcrConfigRuleName :: Lens' GetAggregateComplianceDetailsByConfigRule Text+gacdbcrConfigRuleName = lens _gacdbcrConfigRuleName (\ s a -> s{_gacdbcrConfigRuleName = a})++-- | The 12-digit account ID of the source account.+gacdbcrAccountId :: Lens' GetAggregateComplianceDetailsByConfigRule Text+gacdbcrAccountId = lens _gacdbcrAccountId (\ s a -> s{_gacdbcrAccountId = a})++-- | The source region from where the data is aggregated.+gacdbcrAWSRegion :: Lens' GetAggregateComplianceDetailsByConfigRule Text+gacdbcrAWSRegion = lens _gacdbcrAWSRegion (\ s a -> s{_gacdbcrAWSRegion = a})++instance AWSRequest+ GetAggregateComplianceDetailsByConfigRule+ where+ type Rs GetAggregateComplianceDetailsByConfigRule =+ GetAggregateComplianceDetailsByConfigRuleResponse+ request = postJSON config+ response+ = receiveJSON+ (\ s h x ->+ GetAggregateComplianceDetailsByConfigRuleResponse'+ <$>+ (x .?> "NextToken") <*>+ (x .?> "AggregateEvaluationResults" .!@ mempty)+ <*> (pure (fromEnum s)))++instance Hashable+ GetAggregateComplianceDetailsByConfigRule+ where++instance NFData+ GetAggregateComplianceDetailsByConfigRule+ where++instance ToHeaders+ GetAggregateComplianceDetailsByConfigRule+ where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("StarlingDoveService.GetAggregateComplianceDetailsByConfigRule"+ :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON+ GetAggregateComplianceDetailsByConfigRule+ where+ toJSON GetAggregateComplianceDetailsByConfigRule'{..}+ = object+ (catMaybes+ [("NextToken" .=) <$> _gacdbcrNextToken,+ ("Limit" .=) <$> _gacdbcrLimit,+ ("ComplianceType" .=) <$> _gacdbcrComplianceType,+ Just+ ("ConfigurationAggregatorName" .=+ _gacdbcrConfigurationAggregatorName),+ Just ("ConfigRuleName" .= _gacdbcrConfigRuleName),+ Just ("AccountId" .= _gacdbcrAccountId),+ Just ("AwsRegion" .= _gacdbcrAWSRegion)])++instance ToPath+ GetAggregateComplianceDetailsByConfigRule+ where+ toPath = const "/"++instance ToQuery+ GetAggregateComplianceDetailsByConfigRule+ where+ toQuery = const mempty++-- | /See:/ 'getAggregateComplianceDetailsByConfigRuleResponse' smart constructor.+data GetAggregateComplianceDetailsByConfigRuleResponse = GetAggregateComplianceDetailsByConfigRuleResponse'+ { _gacdbcrrsNextToken :: !(Maybe Text)+ , _gacdbcrrsAggregateEvaluationResults :: !(Maybe [AggregateEvaluationResult])+ , _gacdbcrrsResponseStatus :: !Int+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GetAggregateComplianceDetailsByConfigRuleResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gacdbcrrsNextToken' - The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+--+-- * 'gacdbcrrsAggregateEvaluationResults' - Returns an AggregateEvaluationResults object.+--+-- * 'gacdbcrrsResponseStatus' - -- | The response status code.+getAggregateComplianceDetailsByConfigRuleResponse+ :: Int -- ^ 'gacdbcrrsResponseStatus'+ -> GetAggregateComplianceDetailsByConfigRuleResponse+getAggregateComplianceDetailsByConfigRuleResponse pResponseStatus_ =+ GetAggregateComplianceDetailsByConfigRuleResponse'+ { _gacdbcrrsNextToken = Nothing+ , _gacdbcrrsAggregateEvaluationResults = Nothing+ , _gacdbcrrsResponseStatus = pResponseStatus_+ }+++-- | The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+gacdbcrrsNextToken :: Lens' GetAggregateComplianceDetailsByConfigRuleResponse (Maybe Text)+gacdbcrrsNextToken = lens _gacdbcrrsNextToken (\ s a -> s{_gacdbcrrsNextToken = a})++-- | Returns an AggregateEvaluationResults object.+gacdbcrrsAggregateEvaluationResults :: Lens' GetAggregateComplianceDetailsByConfigRuleResponse [AggregateEvaluationResult]+gacdbcrrsAggregateEvaluationResults = lens _gacdbcrrsAggregateEvaluationResults (\ s a -> s{_gacdbcrrsAggregateEvaluationResults = a}) . _Default . _Coerce++-- | -- | The response status code.+gacdbcrrsResponseStatus :: Lens' GetAggregateComplianceDetailsByConfigRuleResponse Int+gacdbcrrsResponseStatus = lens _gacdbcrrsResponseStatus (\ s a -> s{_gacdbcrrsResponseStatus = a})++instance NFData+ GetAggregateComplianceDetailsByConfigRuleResponse+ where
+ gen/Network/AWS/Config/GetAggregateConfigRuleComplianceSummary.hs view
@@ -0,0 +1,218 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.Config.GetAggregateConfigRuleComplianceSummary+-- Copyright : (c) 2013-2018 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns the number of compliant and noncompliant rules for one or more accounts and regions in an aggregator.+--+--+module Network.AWS.Config.GetAggregateConfigRuleComplianceSummary+ (+ -- * Creating a Request+ getAggregateConfigRuleComplianceSummary+ , GetAggregateConfigRuleComplianceSummary+ -- * Request Lenses+ , gacrcsFilters+ , gacrcsNextToken+ , gacrcsLimit+ , gacrcsGroupByKey+ , gacrcsConfigurationAggregatorName++ -- * Destructuring the Response+ , getAggregateConfigRuleComplianceSummaryResponse+ , GetAggregateConfigRuleComplianceSummaryResponse+ -- * Response Lenses+ , gacrcsrsAggregateComplianceCounts+ , gacrcsrsNextToken+ , gacrcsrsGroupByKey+ , gacrcsrsResponseStatus+ ) where++import Network.AWS.Config.Types+import Network.AWS.Config.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'getAggregateConfigRuleComplianceSummary' smart constructor.+data GetAggregateConfigRuleComplianceSummary = GetAggregateConfigRuleComplianceSummary'+ { _gacrcsFilters :: !(Maybe ConfigRuleComplianceSummaryFilters)+ , _gacrcsNextToken :: !(Maybe Text)+ , _gacrcsLimit :: !(Maybe Nat)+ , _gacrcsGroupByKey :: !(Maybe ConfigRuleComplianceSummaryGroupKey)+ , _gacrcsConfigurationAggregatorName :: !Text+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GetAggregateConfigRuleComplianceSummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gacrcsFilters' - Filters the results based on the ConfigRuleComplianceSummaryFilters object.+--+-- * 'gacrcsNextToken' - The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+--+-- * 'gacrcsLimit' - The maximum number of evaluation results returned on each page. The default is 1000. You cannot specify a number greater than 1000. If you specify 0, AWS Config uses the default.+--+-- * 'gacrcsGroupByKey' - Groups the result based on ACCOUNT_ID or AWS_REGION.+--+-- * 'gacrcsConfigurationAggregatorName' - The name of the configuration aggregator.+getAggregateConfigRuleComplianceSummary+ :: Text -- ^ 'gacrcsConfigurationAggregatorName'+ -> GetAggregateConfigRuleComplianceSummary+getAggregateConfigRuleComplianceSummary pConfigurationAggregatorName_ =+ GetAggregateConfigRuleComplianceSummary'+ { _gacrcsFilters = Nothing+ , _gacrcsNextToken = Nothing+ , _gacrcsLimit = Nothing+ , _gacrcsGroupByKey = Nothing+ , _gacrcsConfigurationAggregatorName = pConfigurationAggregatorName_+ }+++-- | Filters the results based on the ConfigRuleComplianceSummaryFilters object.+gacrcsFilters :: Lens' GetAggregateConfigRuleComplianceSummary (Maybe ConfigRuleComplianceSummaryFilters)+gacrcsFilters = lens _gacrcsFilters (\ s a -> s{_gacrcsFilters = a})++-- | The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+gacrcsNextToken :: Lens' GetAggregateConfigRuleComplianceSummary (Maybe Text)+gacrcsNextToken = lens _gacrcsNextToken (\ s a -> s{_gacrcsNextToken = a})++-- | The maximum number of evaluation results returned on each page. The default is 1000. You cannot specify a number greater than 1000. If you specify 0, AWS Config uses the default.+gacrcsLimit :: Lens' GetAggregateConfigRuleComplianceSummary (Maybe Natural)+gacrcsLimit = lens _gacrcsLimit (\ s a -> s{_gacrcsLimit = a}) . mapping _Nat++-- | Groups the result based on ACCOUNT_ID or AWS_REGION.+gacrcsGroupByKey :: Lens' GetAggregateConfigRuleComplianceSummary (Maybe ConfigRuleComplianceSummaryGroupKey)+gacrcsGroupByKey = lens _gacrcsGroupByKey (\ s a -> s{_gacrcsGroupByKey = a})++-- | The name of the configuration aggregator.+gacrcsConfigurationAggregatorName :: Lens' GetAggregateConfigRuleComplianceSummary Text+gacrcsConfigurationAggregatorName = lens _gacrcsConfigurationAggregatorName (\ s a -> s{_gacrcsConfigurationAggregatorName = a})++instance AWSRequest+ GetAggregateConfigRuleComplianceSummary+ where+ type Rs GetAggregateConfigRuleComplianceSummary =+ GetAggregateConfigRuleComplianceSummaryResponse+ request = postJSON config+ response+ = receiveJSON+ (\ s h x ->+ GetAggregateConfigRuleComplianceSummaryResponse' <$>+ (x .?> "AggregateComplianceCounts" .!@ mempty) <*>+ (x .?> "NextToken")+ <*> (x .?> "GroupByKey")+ <*> (pure (fromEnum s)))++instance Hashable+ GetAggregateConfigRuleComplianceSummary+ where++instance NFData+ GetAggregateConfigRuleComplianceSummary+ where++instance ToHeaders+ GetAggregateConfigRuleComplianceSummary+ where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("StarlingDoveService.GetAggregateConfigRuleComplianceSummary"+ :: ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON+ GetAggregateConfigRuleComplianceSummary+ where+ toJSON GetAggregateConfigRuleComplianceSummary'{..}+ = object+ (catMaybes+ [("Filters" .=) <$> _gacrcsFilters,+ ("NextToken" .=) <$> _gacrcsNextToken,+ ("Limit" .=) <$> _gacrcsLimit,+ ("GroupByKey" .=) <$> _gacrcsGroupByKey,+ Just+ ("ConfigurationAggregatorName" .=+ _gacrcsConfigurationAggregatorName)])++instance ToPath+ GetAggregateConfigRuleComplianceSummary+ where+ toPath = const "/"++instance ToQuery+ GetAggregateConfigRuleComplianceSummary+ where+ toQuery = const mempty++-- | /See:/ 'getAggregateConfigRuleComplianceSummaryResponse' smart constructor.+data GetAggregateConfigRuleComplianceSummaryResponse = GetAggregateConfigRuleComplianceSummaryResponse'+ { _gacrcsrsAggregateComplianceCounts :: !(Maybe [AggregateComplianceCount])+ , _gacrcsrsNextToken :: !(Maybe Text)+ , _gacrcsrsGroupByKey :: !(Maybe Text)+ , _gacrcsrsResponseStatus :: !Int+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'GetAggregateConfigRuleComplianceSummaryResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gacrcsrsAggregateComplianceCounts' - Returns a list of AggregateComplianceCounts object.+--+-- * 'gacrcsrsNextToken' - The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+--+-- * 'gacrcsrsGroupByKey' - Groups the result based on ACCOUNT_ID or AWS_REGION.+--+-- * 'gacrcsrsResponseStatus' - -- | The response status code.+getAggregateConfigRuleComplianceSummaryResponse+ :: Int -- ^ 'gacrcsrsResponseStatus'+ -> GetAggregateConfigRuleComplianceSummaryResponse+getAggregateConfigRuleComplianceSummaryResponse pResponseStatus_ =+ GetAggregateConfigRuleComplianceSummaryResponse'+ { _gacrcsrsAggregateComplianceCounts = Nothing+ , _gacrcsrsNextToken = Nothing+ , _gacrcsrsGroupByKey = Nothing+ , _gacrcsrsResponseStatus = pResponseStatus_+ }+++-- | Returns a list of AggregateComplianceCounts object.+gacrcsrsAggregateComplianceCounts :: Lens' GetAggregateConfigRuleComplianceSummaryResponse [AggregateComplianceCount]+gacrcsrsAggregateComplianceCounts = lens _gacrcsrsAggregateComplianceCounts (\ s a -> s{_gacrcsrsAggregateComplianceCounts = a}) . _Default . _Coerce++-- | The nextToken string returned on a previous page that you use to get the next page of results in a paginated response.+gacrcsrsNextToken :: Lens' GetAggregateConfigRuleComplianceSummaryResponse (Maybe Text)+gacrcsrsNextToken = lens _gacrcsrsNextToken (\ s a -> s{_gacrcsrsNextToken = a})++-- | Groups the result based on ACCOUNT_ID or AWS_REGION.+gacrcsrsGroupByKey :: Lens' GetAggregateConfigRuleComplianceSummaryResponse (Maybe Text)+gacrcsrsGroupByKey = lens _gacrcsrsGroupByKey (\ s a -> s{_gacrcsrsGroupByKey = a})++-- | -- | The response status code.+gacrcsrsResponseStatus :: Lens' GetAggregateConfigRuleComplianceSummaryResponse Int+gacrcsrsResponseStatus = lens _gacrcsrsResponseStatus (\ s a -> s{_gacrcsrsResponseStatus = a})++instance NFData+ GetAggregateConfigRuleComplianceSummaryResponse+ where
gen/Network/AWS/Config/GetComplianceDetailsByConfigRule.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.GetComplianceDetailsByConfigRule--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -70,9 +70,9 @@ -- -- * 'gcdbcrComplianceTypes' - Filters the results by compliance. The allowed values are @COMPLIANT@ , @NON_COMPLIANT@ , and @NOT_APPLICABLE@ . ----- * 'gcdbcrNextToken' - The @NextToken@ string returned on a previous page that you use to get the next page of results in a paginated response.+-- * 'gcdbcrNextToken' - The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. ----- * 'gcdbcrLimit' - The maximum number of evaluation results returned on each page. The default is 10. You cannot specify a limit greater than 100. If you specify 0, AWS Config uses the default.+-- * 'gcdbcrLimit' - The maximum number of evaluation results returned on each page. The default is 10. You cannot specify a number greater than 100. If you specify 0, AWS Config uses the default. -- -- * 'gcdbcrConfigRuleName' - The name of the AWS Config rule for which you want compliance information. getComplianceDetailsByConfigRule@@ -80,28 +80,28 @@ -> GetComplianceDetailsByConfigRule getComplianceDetailsByConfigRule pConfigRuleName_ = GetComplianceDetailsByConfigRule'- { _gcdbcrComplianceTypes = Nothing- , _gcdbcrNextToken = Nothing- , _gcdbcrLimit = Nothing- , _gcdbcrConfigRuleName = pConfigRuleName_- }+ { _gcdbcrComplianceTypes = Nothing+ , _gcdbcrNextToken = Nothing+ , _gcdbcrLimit = Nothing+ , _gcdbcrConfigRuleName = pConfigRuleName_+ } -- | Filters the results by compliance. The allowed values are @COMPLIANT@ , @NON_COMPLIANT@ , and @NOT_APPLICABLE@ . gcdbcrComplianceTypes :: Lens' GetComplianceDetailsByConfigRule [ComplianceType]-gcdbcrComplianceTypes = lens _gcdbcrComplianceTypes (\ s a -> s{_gcdbcrComplianceTypes = a}) . _Default . _Coerce;+gcdbcrComplianceTypes = lens _gcdbcrComplianceTypes (\ s a -> s{_gcdbcrComplianceTypes = a}) . _Default . _Coerce --- | The @NextToken@ string returned on a previous page that you use to get the next page of results in a paginated response.+-- | The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. gcdbcrNextToken :: Lens' GetComplianceDetailsByConfigRule (Maybe Text)-gcdbcrNextToken = lens _gcdbcrNextToken (\ s a -> s{_gcdbcrNextToken = a});+gcdbcrNextToken = lens _gcdbcrNextToken (\ s a -> s{_gcdbcrNextToken = a}) --- | The maximum number of evaluation results returned on each page. The default is 10. You cannot specify a limit greater than 100. If you specify 0, AWS Config uses the default.+-- | The maximum number of evaluation results returned on each page. The default is 10. You cannot specify a number greater than 100. If you specify 0, AWS Config uses the default. gcdbcrLimit :: Lens' GetComplianceDetailsByConfigRule (Maybe Natural)-gcdbcrLimit = lens _gcdbcrLimit (\ s a -> s{_gcdbcrLimit = a}) . mapping _Nat;+gcdbcrLimit = lens _gcdbcrLimit (\ s a -> s{_gcdbcrLimit = a}) . mapping _Nat -- | The name of the AWS Config rule for which you want compliance information. gcdbcrConfigRuleName :: Lens' GetComplianceDetailsByConfigRule Text-gcdbcrConfigRuleName = lens _gcdbcrConfigRuleName (\ s a -> s{_gcdbcrConfigRuleName = a});+gcdbcrConfigRuleName = lens _gcdbcrConfigRuleName (\ s a -> s{_gcdbcrConfigRuleName = a}) instance AWSPager GetComplianceDetailsByConfigRule where@@ -186,23 +186,23 @@ -> GetComplianceDetailsByConfigRuleResponse getComplianceDetailsByConfigRuleResponse pResponseStatus_ = GetComplianceDetailsByConfigRuleResponse'- { _gcdbcrrsEvaluationResults = Nothing- , _gcdbcrrsNextToken = Nothing- , _gcdbcrrsResponseStatus = pResponseStatus_- }+ { _gcdbcrrsEvaluationResults = Nothing+ , _gcdbcrrsNextToken = Nothing+ , _gcdbcrrsResponseStatus = pResponseStatus_+ } -- | Indicates whether the AWS resource complies with the specified AWS Config rule. gcdbcrrsEvaluationResults :: Lens' GetComplianceDetailsByConfigRuleResponse [EvaluationResult]-gcdbcrrsEvaluationResults = lens _gcdbcrrsEvaluationResults (\ s a -> s{_gcdbcrrsEvaluationResults = a}) . _Default . _Coerce;+gcdbcrrsEvaluationResults = lens _gcdbcrrsEvaluationResults (\ s a -> s{_gcdbcrrsEvaluationResults = a}) . _Default . _Coerce -- | The string that you use in a subsequent request to get the next page of results in a paginated response. gcdbcrrsNextToken :: Lens' GetComplianceDetailsByConfigRuleResponse (Maybe Text)-gcdbcrrsNextToken = lens _gcdbcrrsNextToken (\ s a -> s{_gcdbcrrsNextToken = a});+gcdbcrrsNextToken = lens _gcdbcrrsNextToken (\ s a -> s{_gcdbcrrsNextToken = a}) -- | -- | The response status code. gcdbcrrsResponseStatus :: Lens' GetComplianceDetailsByConfigRuleResponse Int-gcdbcrrsResponseStatus = lens _gcdbcrrsResponseStatus (\ s a -> s{_gcdbcrrsResponseStatus = a});+gcdbcrrsResponseStatus = lens _gcdbcrrsResponseStatus (\ s a -> s{_gcdbcrrsResponseStatus = a}) instance NFData GetComplianceDetailsByConfigRuleResponse
gen/Network/AWS/Config/GetComplianceDetailsByResource.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.GetComplianceDetailsByResource--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -70,7 +70,7 @@ -- -- * 'gcdbrComplianceTypes' - Filters the results by compliance. The allowed values are @COMPLIANT@ , @NON_COMPLIANT@ , and @NOT_APPLICABLE@ . ----- * 'gcdbrNextToken' - The @NextToken@ string returned on a previous page that you use to get the next page of results in a paginated response.+-- * 'gcdbrNextToken' - The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. -- -- * 'gcdbrResourceType' - The type of the AWS resource for which you want compliance information. --@@ -81,28 +81,28 @@ -> GetComplianceDetailsByResource getComplianceDetailsByResource pResourceType_ pResourceId_ = GetComplianceDetailsByResource'- { _gcdbrComplianceTypes = Nothing- , _gcdbrNextToken = Nothing- , _gcdbrResourceType = pResourceType_- , _gcdbrResourceId = pResourceId_- }+ { _gcdbrComplianceTypes = Nothing+ , _gcdbrNextToken = Nothing+ , _gcdbrResourceType = pResourceType_+ , _gcdbrResourceId = pResourceId_+ } -- | Filters the results by compliance. The allowed values are @COMPLIANT@ , @NON_COMPLIANT@ , and @NOT_APPLICABLE@ . gcdbrComplianceTypes :: Lens' GetComplianceDetailsByResource [ComplianceType]-gcdbrComplianceTypes = lens _gcdbrComplianceTypes (\ s a -> s{_gcdbrComplianceTypes = a}) . _Default . _Coerce;+gcdbrComplianceTypes = lens _gcdbrComplianceTypes (\ s a -> s{_gcdbrComplianceTypes = a}) . _Default . _Coerce --- | The @NextToken@ string returned on a previous page that you use to get the next page of results in a paginated response.+-- | The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. gcdbrNextToken :: Lens' GetComplianceDetailsByResource (Maybe Text)-gcdbrNextToken = lens _gcdbrNextToken (\ s a -> s{_gcdbrNextToken = a});+gcdbrNextToken = lens _gcdbrNextToken (\ s a -> s{_gcdbrNextToken = a}) -- | The type of the AWS resource for which you want compliance information. gcdbrResourceType :: Lens' GetComplianceDetailsByResource Text-gcdbrResourceType = lens _gcdbrResourceType (\ s a -> s{_gcdbrResourceType = a});+gcdbrResourceType = lens _gcdbrResourceType (\ s a -> s{_gcdbrResourceType = a}) -- | The ID of the AWS resource for which you want compliance information. gcdbrResourceId :: Lens' GetComplianceDetailsByResource Text-gcdbrResourceId = lens _gcdbrResourceId (\ s a -> s{_gcdbrResourceId = a});+gcdbrResourceId = lens _gcdbrResourceId (\ s a -> s{_gcdbrResourceId = a}) instance AWSPager GetComplianceDetailsByResource where@@ -182,23 +182,23 @@ -> GetComplianceDetailsByResourceResponse getComplianceDetailsByResourceResponse pResponseStatus_ = GetComplianceDetailsByResourceResponse'- { _gcdbrrsEvaluationResults = Nothing- , _gcdbrrsNextToken = Nothing- , _gcdbrrsResponseStatus = pResponseStatus_- }+ { _gcdbrrsEvaluationResults = Nothing+ , _gcdbrrsNextToken = Nothing+ , _gcdbrrsResponseStatus = pResponseStatus_+ } -- | Indicates whether the specified AWS resource complies each AWS Config rule. gcdbrrsEvaluationResults :: Lens' GetComplianceDetailsByResourceResponse [EvaluationResult]-gcdbrrsEvaluationResults = lens _gcdbrrsEvaluationResults (\ s a -> s{_gcdbrrsEvaluationResults = a}) . _Default . _Coerce;+gcdbrrsEvaluationResults = lens _gcdbrrsEvaluationResults (\ s a -> s{_gcdbrrsEvaluationResults = a}) . _Default . _Coerce -- | The string that you use in a subsequent request to get the next page of results in a paginated response. gcdbrrsNextToken :: Lens' GetComplianceDetailsByResourceResponse (Maybe Text)-gcdbrrsNextToken = lens _gcdbrrsNextToken (\ s a -> s{_gcdbrrsNextToken = a});+gcdbrrsNextToken = lens _gcdbrrsNextToken (\ s a -> s{_gcdbrrsNextToken = a}) -- | -- | The response status code. gcdbrrsResponseStatus :: Lens' GetComplianceDetailsByResourceResponse Int-gcdbrrsResponseStatus = lens _gcdbrrsResponseStatus (\ s a -> s{_gcdbrrsResponseStatus = a});+gcdbrrsResponseStatus = lens _gcdbrrsResponseStatus (\ s a -> s{_gcdbrrsResponseStatus = a}) instance NFData GetComplianceDetailsByResourceResponse
gen/Network/AWS/Config/GetComplianceSummaryByConfigRule.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.GetComplianceSummaryByConfigRule--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -118,18 +118,18 @@ -> GetComplianceSummaryByConfigRuleResponse getComplianceSummaryByConfigRuleResponse pResponseStatus_ = GetComplianceSummaryByConfigRuleResponse'- { _gcsbcrrsComplianceSummary = Nothing- , _gcsbcrrsResponseStatus = pResponseStatus_- }+ { _gcsbcrrsComplianceSummary = Nothing+ , _gcsbcrrsResponseStatus = pResponseStatus_+ } -- | The number of AWS Config rules that are compliant and the number that are noncompliant, up to a maximum of 25 for each. gcsbcrrsComplianceSummary :: Lens' GetComplianceSummaryByConfigRuleResponse (Maybe ComplianceSummary)-gcsbcrrsComplianceSummary = lens _gcsbcrrsComplianceSummary (\ s a -> s{_gcsbcrrsComplianceSummary = a});+gcsbcrrsComplianceSummary = lens _gcsbcrrsComplianceSummary (\ s a -> s{_gcsbcrrsComplianceSummary = a}) -- | -- | The response status code. gcsbcrrsResponseStatus :: Lens' GetComplianceSummaryByConfigRuleResponse Int-gcsbcrrsResponseStatus = lens _gcsbcrrsResponseStatus (\ s a -> s{_gcsbcrrsResponseStatus = a});+gcsbcrrsResponseStatus = lens _gcsbcrrsResponseStatus (\ s a -> s{_gcsbcrrsResponseStatus = a}) instance NFData GetComplianceSummaryByConfigRuleResponse
gen/Network/AWS/Config/GetComplianceSummaryByResourceType.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.GetComplianceSummaryByResourceType--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -58,16 +58,16 @@ -- -- Use one of the following lenses to modify other fields as desired: ----- * 'gcsbrtResourceTypes' - Specify one or more resource types to get the number of resources that are compliant and the number that are noncompliant for each resource type. For this request, you can specify an AWS resource type such as @AWS::EC2::Instance@ , and you can specify that the resource type is an AWS account by specifying @AWS::::Account@ .+-- * 'gcsbrtResourceTypes' - Specify one or more resource types to get the number of resources that are compliant and the number that are noncompliant for each resource type. For this request, you can specify an AWS resource type such as @AWS::EC2::Instance@ . You can specify that the resource type is an AWS account by specifying @AWS::::Account@ . getComplianceSummaryByResourceType :: GetComplianceSummaryByResourceType getComplianceSummaryByResourceType = GetComplianceSummaryByResourceType' {_gcsbrtResourceTypes = Nothing} --- | Specify one or more resource types to get the number of resources that are compliant and the number that are noncompliant for each resource type. For this request, you can specify an AWS resource type such as @AWS::EC2::Instance@ , and you can specify that the resource type is an AWS account by specifying @AWS::::Account@ .+-- | Specify one or more resource types to get the number of resources that are compliant and the number that are noncompliant for each resource type. For this request, you can specify an AWS resource type such as @AWS::EC2::Instance@ . You can specify that the resource type is an AWS account by specifying @AWS::::Account@ . gcsbrtResourceTypes :: Lens' GetComplianceSummaryByResourceType [Text]-gcsbrtResourceTypes = lens _gcsbrtResourceTypes (\ s a -> s{_gcsbrtResourceTypes = a}) . _Default . _Coerce;+gcsbrtResourceTypes = lens _gcsbrtResourceTypes (\ s a -> s{_gcsbrtResourceTypes = a}) . _Default . _Coerce instance AWSRequest GetComplianceSummaryByResourceType@@ -138,18 +138,18 @@ -> GetComplianceSummaryByResourceTypeResponse getComplianceSummaryByResourceTypeResponse pResponseStatus_ = GetComplianceSummaryByResourceTypeResponse'- { _gcsbrtrsComplianceSummariesByResourceType = Nothing- , _gcsbrtrsResponseStatus = pResponseStatus_- }+ { _gcsbrtrsComplianceSummariesByResourceType = Nothing+ , _gcsbrtrsResponseStatus = pResponseStatus_+ } -- | The number of resources that are compliant and the number that are noncompliant. If one or more resource types were provided with the request, the numbers are returned for each resource type. The maximum number returned is 100. gcsbrtrsComplianceSummariesByResourceType :: Lens' GetComplianceSummaryByResourceTypeResponse [ComplianceSummaryByResourceType]-gcsbrtrsComplianceSummariesByResourceType = lens _gcsbrtrsComplianceSummariesByResourceType (\ s a -> s{_gcsbrtrsComplianceSummariesByResourceType = a}) . _Default . _Coerce;+gcsbrtrsComplianceSummariesByResourceType = lens _gcsbrtrsComplianceSummariesByResourceType (\ s a -> s{_gcsbrtrsComplianceSummariesByResourceType = a}) . _Default . _Coerce -- | -- | The response status code. gcsbrtrsResponseStatus :: Lens' GetComplianceSummaryByResourceTypeResponse Int-gcsbrtrsResponseStatus = lens _gcsbrtrsResponseStatus (\ s a -> s{_gcsbrtrsResponseStatus = a});+gcsbrtrsResponseStatus = lens _gcsbrtrsResponseStatus (\ s a -> s{_gcsbrtrsResponseStatus = a}) instance NFData GetComplianceSummaryByResourceTypeResponse
gen/Network/AWS/Config/GetDiscoveredResourceCounts.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.GetDiscoveredResourceCounts--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -29,11 +29,11 @@ -- -- * AWS Config returns the following: ----- * The resource types (EC2 instances, IAM users, and S3 buckets)+-- * The resource types (EC2 instances, IAM users, and S3 buckets). ----- * The number of each resource type (25, 20, and 15)+-- * The number of each resource type (25, 20, and 15). ----- * The total number of all resources (60)+-- * The total number of all resources (60). -- -- --@@ -82,27 +82,30 @@ -- -- * 'gdrcNextToken' - The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. ----- * 'gdrcLimit' - The maximum number of 'ResourceCount' objects returned on each page. The default is 100. You cannot specify a limit greater than 100. If you specify 0, AWS Config uses the default.+-- * 'gdrcLimit' - The maximum number of 'ResourceCount' objects returned on each page. The default is 100. You cannot specify a number greater than 100. If you specify 0, AWS Config uses the default. ----- * 'gdrcResourceTypes' - The comma-separated list that specifies the resource types that you want the AWS Config to return. For example, (@"AWS::EC2::Instance"@ , @"AWS::IAM::User"@ ). If a value for @resourceTypes@ is not specified, AWS Config returns all resource types that AWS Config is recording in the region for your account.+-- * 'gdrcResourceTypes' - The comma-separated list that specifies the resource types that you want AWS Config to return (for example, @"AWS::EC2::Instance"@ , @"AWS::IAM::User"@ ). If a value for @resourceTypes@ is not specified, AWS Config returns all resource types that AWS Config is recording in the region for your account. getDiscoveredResourceCounts :: GetDiscoveredResourceCounts getDiscoveredResourceCounts = GetDiscoveredResourceCounts'- {_gdrcNextToken = Nothing, _gdrcLimit = Nothing, _gdrcResourceTypes = Nothing}+ { _gdrcNextToken = Nothing+ , _gdrcLimit = Nothing+ , _gdrcResourceTypes = Nothing+ } -- | The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. gdrcNextToken :: Lens' GetDiscoveredResourceCounts (Maybe Text)-gdrcNextToken = lens _gdrcNextToken (\ s a -> s{_gdrcNextToken = a});+gdrcNextToken = lens _gdrcNextToken (\ s a -> s{_gdrcNextToken = a}) --- | The maximum number of 'ResourceCount' objects returned on each page. The default is 100. You cannot specify a limit greater than 100. If you specify 0, AWS Config uses the default.+-- | The maximum number of 'ResourceCount' objects returned on each page. The default is 100. You cannot specify a number greater than 100. If you specify 0, AWS Config uses the default. gdrcLimit :: Lens' GetDiscoveredResourceCounts (Maybe Natural)-gdrcLimit = lens _gdrcLimit (\ s a -> s{_gdrcLimit = a}) . mapping _Nat;+gdrcLimit = lens _gdrcLimit (\ s a -> s{_gdrcLimit = a}) . mapping _Nat --- | The comma-separated list that specifies the resource types that you want the AWS Config to return. For example, (@"AWS::EC2::Instance"@ , @"AWS::IAM::User"@ ). If a value for @resourceTypes@ is not specified, AWS Config returns all resource types that AWS Config is recording in the region for your account.+-- | The comma-separated list that specifies the resource types that you want AWS Config to return (for example, @"AWS::EC2::Instance"@ , @"AWS::IAM::User"@ ). If a value for @resourceTypes@ is not specified, AWS Config returns all resource types that AWS Config is recording in the region for your account. gdrcResourceTypes :: Lens' GetDiscoveredResourceCounts [Text]-gdrcResourceTypes = lens _gdrcResourceTypes (\ s a -> s{_gdrcResourceTypes = a}) . _Default . _Coerce;+gdrcResourceTypes = lens _gdrcResourceTypes (\ s a -> s{_gdrcResourceTypes = a}) . _Default . _Coerce instance AWSRequest GetDiscoveredResourceCounts where type Rs GetDiscoveredResourceCounts =@@ -158,7 +161,7 @@ -- -- Use one of the following lenses to modify other fields as desired: ----- * 'gdrcrsTotalDiscoveredResources' - The total number of resources that AWS Config is recording in the region for your account. If you specify resource types in the request, AWS Config returns only the total number of resources for those resource types. __Example__ * AWS Config is recording three resource types in the US East (Ohio) Region for your account: 25 EC2 instances, 20 IAM users, and 15 S3 buckets, for a total of 60 resources. * You make a call to the @GetDiscoveredResourceCounts@ action and specify the resource type, @"AWS::EC2::Instances"@ in the request. * AWS Config returns 25 for @totalDiscoveredResources@ .+-- * 'gdrcrsTotalDiscoveredResources' - The total number of resources that AWS Config is recording in the region for your account. If you specify resource types in the request, AWS Config returns only the total number of resources for those resource types. __Example__ * AWS Config is recording three resource types in the US East (Ohio) Region for your account: 25 EC2 instances, 20 IAM users, and 15 S3 buckets, for a total of 60 resources. * You make a call to the @GetDiscoveredResourceCounts@ action and specify the resource type, @"AWS::EC2::Instances"@ , in the request. * AWS Config returns 25 for @totalDiscoveredResources@ . -- -- * 'gdrcrsNextToken' - The string that you use in a subsequent request to get the next page of results in a paginated response. --@@ -170,28 +173,28 @@ -> GetDiscoveredResourceCountsResponse getDiscoveredResourceCountsResponse pResponseStatus_ = GetDiscoveredResourceCountsResponse'- { _gdrcrsTotalDiscoveredResources = Nothing- , _gdrcrsNextToken = Nothing- , _gdrcrsResourceCounts = Nothing- , _gdrcrsResponseStatus = pResponseStatus_- }+ { _gdrcrsTotalDiscoveredResources = Nothing+ , _gdrcrsNextToken = Nothing+ , _gdrcrsResourceCounts = Nothing+ , _gdrcrsResponseStatus = pResponseStatus_+ } --- | The total number of resources that AWS Config is recording in the region for your account. If you specify resource types in the request, AWS Config returns only the total number of resources for those resource types. __Example__ * AWS Config is recording three resource types in the US East (Ohio) Region for your account: 25 EC2 instances, 20 IAM users, and 15 S3 buckets, for a total of 60 resources. * You make a call to the @GetDiscoveredResourceCounts@ action and specify the resource type, @"AWS::EC2::Instances"@ in the request. * AWS Config returns 25 for @totalDiscoveredResources@ .+-- | The total number of resources that AWS Config is recording in the region for your account. If you specify resource types in the request, AWS Config returns only the total number of resources for those resource types. __Example__ * AWS Config is recording three resource types in the US East (Ohio) Region for your account: 25 EC2 instances, 20 IAM users, and 15 S3 buckets, for a total of 60 resources. * You make a call to the @GetDiscoveredResourceCounts@ action and specify the resource type, @"AWS::EC2::Instances"@ , in the request. * AWS Config returns 25 for @totalDiscoveredResources@ . gdrcrsTotalDiscoveredResources :: Lens' GetDiscoveredResourceCountsResponse (Maybe Integer)-gdrcrsTotalDiscoveredResources = lens _gdrcrsTotalDiscoveredResources (\ s a -> s{_gdrcrsTotalDiscoveredResources = a});+gdrcrsTotalDiscoveredResources = lens _gdrcrsTotalDiscoveredResources (\ s a -> s{_gdrcrsTotalDiscoveredResources = a}) -- | The string that you use in a subsequent request to get the next page of results in a paginated response. gdrcrsNextToken :: Lens' GetDiscoveredResourceCountsResponse (Maybe Text)-gdrcrsNextToken = lens _gdrcrsNextToken (\ s a -> s{_gdrcrsNextToken = a});+gdrcrsNextToken = lens _gdrcrsNextToken (\ s a -> s{_gdrcrsNextToken = a}) -- | The list of @ResourceCount@ objects. Each object is listed in descending order by the number of resources. gdrcrsResourceCounts :: Lens' GetDiscoveredResourceCountsResponse [ResourceCount]-gdrcrsResourceCounts = lens _gdrcrsResourceCounts (\ s a -> s{_gdrcrsResourceCounts = a}) . _Default . _Coerce;+gdrcrsResourceCounts = lens _gdrcrsResourceCounts (\ s a -> s{_gdrcrsResourceCounts = a}) . _Default . _Coerce -- | -- | The response status code. gdrcrsResponseStatus :: Lens' GetDiscoveredResourceCountsResponse Int-gdrcrsResponseStatus = lens _gdrcrsResponseStatus (\ s a -> s{_gdrcrsResponseStatus = a});+gdrcrsResponseStatus = lens _gdrcrsResponseStatus (\ s a -> s{_gdrcrsResponseStatus = a}) instance NFData GetDiscoveredResourceCountsResponse where
gen/Network/AWS/Config/GetResourceConfigHistory.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.GetResourceConfigHistory--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -76,15 +76,15 @@ -- -- Use one of the following lenses to modify other fields as desired: ----- * 'grchChronologicalOrder' - The chronological order for configuration items listed. By default the results are listed in reverse chronological order.+-- * 'grchChronologicalOrder' - The chronological order for configuration items listed. By default, the results are listed in reverse chronological order. -- -- * 'grchNextToken' - The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. ----- * 'grchLimit' - The maximum number of configuration items returned on each page. The default is 10. You cannot specify a limit greater than 100. If you specify 0, AWS Config uses the default.+-- * 'grchLimit' - The maximum number of configuration items returned on each page. The default is 10. You cannot specify a number greater than 100. If you specify 0, AWS Config uses the default. -- -- * 'grchLaterTime' - The time stamp that indicates a later time. If not specified, current time is taken. ----- * 'grchEarlierTime' - The time stamp that indicates an earlier time. If not specified, the action returns paginated results that contain configuration items that start from when the first configuration item was recorded.+-- * 'grchEarlierTime' - The time stamp that indicates an earlier time. If not specified, the action returns paginated results that contain configuration items that start when the first configuration item was recorded. -- -- * 'grchResourceType' - The resource type. --@@ -95,43 +95,43 @@ -> GetResourceConfigHistory getResourceConfigHistory pResourceType_ pResourceId_ = GetResourceConfigHistory'- { _grchChronologicalOrder = Nothing- , _grchNextToken = Nothing- , _grchLimit = Nothing- , _grchLaterTime = Nothing- , _grchEarlierTime = Nothing- , _grchResourceType = pResourceType_- , _grchResourceId = pResourceId_- }+ { _grchChronologicalOrder = Nothing+ , _grchNextToken = Nothing+ , _grchLimit = Nothing+ , _grchLaterTime = Nothing+ , _grchEarlierTime = Nothing+ , _grchResourceType = pResourceType_+ , _grchResourceId = pResourceId_+ } --- | The chronological order for configuration items listed. By default the results are listed in reverse chronological order.+-- | The chronological order for configuration items listed. By default, the results are listed in reverse chronological order. grchChronologicalOrder :: Lens' GetResourceConfigHistory (Maybe ChronologicalOrder)-grchChronologicalOrder = lens _grchChronologicalOrder (\ s a -> s{_grchChronologicalOrder = a});+grchChronologicalOrder = lens _grchChronologicalOrder (\ s a -> s{_grchChronologicalOrder = a}) -- | The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. grchNextToken :: Lens' GetResourceConfigHistory (Maybe Text)-grchNextToken = lens _grchNextToken (\ s a -> s{_grchNextToken = a});+grchNextToken = lens _grchNextToken (\ s a -> s{_grchNextToken = a}) --- | The maximum number of configuration items returned on each page. The default is 10. You cannot specify a limit greater than 100. If you specify 0, AWS Config uses the default.+-- | The maximum number of configuration items returned on each page. The default is 10. You cannot specify a number greater than 100. If you specify 0, AWS Config uses the default. grchLimit :: Lens' GetResourceConfigHistory (Maybe Natural)-grchLimit = lens _grchLimit (\ s a -> s{_grchLimit = a}) . mapping _Nat;+grchLimit = lens _grchLimit (\ s a -> s{_grchLimit = a}) . mapping _Nat -- | The time stamp that indicates a later time. If not specified, current time is taken. grchLaterTime :: Lens' GetResourceConfigHistory (Maybe UTCTime)-grchLaterTime = lens _grchLaterTime (\ s a -> s{_grchLaterTime = a}) . mapping _Time;+grchLaterTime = lens _grchLaterTime (\ s a -> s{_grchLaterTime = a}) . mapping _Time --- | The time stamp that indicates an earlier time. If not specified, the action returns paginated results that contain configuration items that start from when the first configuration item was recorded.+-- | The time stamp that indicates an earlier time. If not specified, the action returns paginated results that contain configuration items that start when the first configuration item was recorded. grchEarlierTime :: Lens' GetResourceConfigHistory (Maybe UTCTime)-grchEarlierTime = lens _grchEarlierTime (\ s a -> s{_grchEarlierTime = a}) . mapping _Time;+grchEarlierTime = lens _grchEarlierTime (\ s a -> s{_grchEarlierTime = a}) . mapping _Time -- | The resource type. grchResourceType :: Lens' GetResourceConfigHistory ResourceType-grchResourceType = lens _grchResourceType (\ s a -> s{_grchResourceType = a});+grchResourceType = lens _grchResourceType (\ s a -> s{_grchResourceType = a}) -- | The ID of the resource (for example., @sg-xxxxxx@ ). grchResourceId :: Lens' GetResourceConfigHistory Text-grchResourceId = lens _grchResourceId (\ s a -> s{_grchResourceId = a});+grchResourceId = lens _grchResourceId (\ s a -> s{_grchResourceId = a}) instance AWSPager GetResourceConfigHistory where page rq rs@@ -211,23 +211,23 @@ -> GetResourceConfigHistoryResponse getResourceConfigHistoryResponse pResponseStatus_ = GetResourceConfigHistoryResponse'- { _grchrsNextToken = Nothing- , _grchrsConfigurationItems = Nothing- , _grchrsResponseStatus = pResponseStatus_- }+ { _grchrsNextToken = Nothing+ , _grchrsConfigurationItems = Nothing+ , _grchrsResponseStatus = pResponseStatus_+ } -- | The string that you use in a subsequent request to get the next page of results in a paginated response. grchrsNextToken :: Lens' GetResourceConfigHistoryResponse (Maybe Text)-grchrsNextToken = lens _grchrsNextToken (\ s a -> s{_grchrsNextToken = a});+grchrsNextToken = lens _grchrsNextToken (\ s a -> s{_grchrsNextToken = a}) -- | A list that contains the configuration history of one or more resources. grchrsConfigurationItems :: Lens' GetResourceConfigHistoryResponse [ConfigurationItem]-grchrsConfigurationItems = lens _grchrsConfigurationItems (\ s a -> s{_grchrsConfigurationItems = a}) . _Default . _Coerce;+grchrsConfigurationItems = lens _grchrsConfigurationItems (\ s a -> s{_grchrsConfigurationItems = a}) . _Default . _Coerce -- | -- | The response status code. grchrsResponseStatus :: Lens' GetResourceConfigHistoryResponse Int-grchrsResponseStatus = lens _grchrsResponseStatus (\ s a -> s{_grchrsResponseStatus = a});+grchrsResponseStatus = lens _grchrsResponseStatus (\ s a -> s{_grchrsResponseStatus = a}) instance NFData GetResourceConfigHistoryResponse where
gen/Network/AWS/Config/ListDiscoveredResources.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.ListDiscoveredResources--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -82,7 +82,7 @@ -- -- * 'ldrNextToken' - The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. ----- * 'ldrLimit' - The maximum number of resource identifiers returned on each page. The default is 100. You cannot specify a limit greater than 100. If you specify 0, AWS Config uses the default.+-- * 'ldrLimit' - The maximum number of resource identifiers returned on each page. The default is 100. You cannot specify a number greater than 100. If you specify 0, AWS Config uses the default. -- -- * 'ldrResourceType' - The type of resources that you want AWS Config to list in the response. listDiscoveredResources@@ -90,38 +90,38 @@ -> ListDiscoveredResources listDiscoveredResources pResourceType_ = ListDiscoveredResources'- { _ldrResourceIds = Nothing- , _ldrResourceName = Nothing- , _ldrIncludeDeletedResources = Nothing- , _ldrNextToken = Nothing- , _ldrLimit = Nothing- , _ldrResourceType = pResourceType_- }+ { _ldrResourceIds = Nothing+ , _ldrResourceName = Nothing+ , _ldrIncludeDeletedResources = Nothing+ , _ldrNextToken = Nothing+ , _ldrLimit = Nothing+ , _ldrResourceType = pResourceType_+ } -- | The IDs of only those resources that you want AWS Config to list in the response. If you do not specify this parameter, AWS Config lists all resources of the specified type that it has discovered. ldrResourceIds :: Lens' ListDiscoveredResources [Text]-ldrResourceIds = lens _ldrResourceIds (\ s a -> s{_ldrResourceIds = a}) . _Default . _Coerce;+ldrResourceIds = lens _ldrResourceIds (\ s a -> s{_ldrResourceIds = a}) . _Default . _Coerce -- | The custom name of only those resources that you want AWS Config to list in the response. If you do not specify this parameter, AWS Config lists all resources of the specified type that it has discovered. ldrResourceName :: Lens' ListDiscoveredResources (Maybe Text)-ldrResourceName = lens _ldrResourceName (\ s a -> s{_ldrResourceName = a});+ldrResourceName = lens _ldrResourceName (\ s a -> s{_ldrResourceName = a}) -- | Specifies whether AWS Config includes deleted resources in the results. By default, deleted resources are not included. ldrIncludeDeletedResources :: Lens' ListDiscoveredResources (Maybe Bool)-ldrIncludeDeletedResources = lens _ldrIncludeDeletedResources (\ s a -> s{_ldrIncludeDeletedResources = a});+ldrIncludeDeletedResources = lens _ldrIncludeDeletedResources (\ s a -> s{_ldrIncludeDeletedResources = a}) -- | The @nextToken@ string returned on a previous page that you use to get the next page of results in a paginated response. ldrNextToken :: Lens' ListDiscoveredResources (Maybe Text)-ldrNextToken = lens _ldrNextToken (\ s a -> s{_ldrNextToken = a});+ldrNextToken = lens _ldrNextToken (\ s a -> s{_ldrNextToken = a}) --- | The maximum number of resource identifiers returned on each page. The default is 100. You cannot specify a limit greater than 100. If you specify 0, AWS Config uses the default.+-- | The maximum number of resource identifiers returned on each page. The default is 100. You cannot specify a number greater than 100. If you specify 0, AWS Config uses the default. ldrLimit :: Lens' ListDiscoveredResources (Maybe Natural)-ldrLimit = lens _ldrLimit (\ s a -> s{_ldrLimit = a}) . mapping _Nat;+ldrLimit = lens _ldrLimit (\ s a -> s{_ldrLimit = a}) . mapping _Nat -- | The type of resources that you want AWS Config to list in the response. ldrResourceType :: Lens' ListDiscoveredResources ResourceType-ldrResourceType = lens _ldrResourceType (\ s a -> s{_ldrResourceType = a});+ldrResourceType = lens _ldrResourceType (\ s a -> s{_ldrResourceType = a}) instance AWSPager ListDiscoveredResources where page rq rs@@ -200,22 +200,22 @@ -> ListDiscoveredResourcesResponse listDiscoveredResourcesResponse pResponseStatus_ = ListDiscoveredResourcesResponse'- { _ldrrsNextToken = Nothing- , _ldrrsResourceIdentifiers = Nothing- , _ldrrsResponseStatus = pResponseStatus_- }+ { _ldrrsNextToken = Nothing+ , _ldrrsResourceIdentifiers = Nothing+ , _ldrrsResponseStatus = pResponseStatus_+ } -- | The string that you use in a subsequent request to get the next page of results in a paginated response. ldrrsNextToken :: Lens' ListDiscoveredResourcesResponse (Maybe Text)-ldrrsNextToken = lens _ldrrsNextToken (\ s a -> s{_ldrrsNextToken = a});+ldrrsNextToken = lens _ldrrsNextToken (\ s a -> s{_ldrrsNextToken = a}) -- | The details that identify a resource that is discovered by AWS Config, including the resource type, ID, and (if available) the custom resource name. ldrrsResourceIdentifiers :: Lens' ListDiscoveredResourcesResponse [ResourceIdentifier]-ldrrsResourceIdentifiers = lens _ldrrsResourceIdentifiers (\ s a -> s{_ldrrsResourceIdentifiers = a}) . _Default . _Coerce;+ldrrsResourceIdentifiers = lens _ldrrsResourceIdentifiers (\ s a -> s{_ldrrsResourceIdentifiers = a}) . _Default . _Coerce -- | -- | The response status code. ldrrsResponseStatus :: Lens' ListDiscoveredResourcesResponse Int-ldrrsResponseStatus = lens _ldrrsResponseStatus (\ s a -> s{_ldrrsResponseStatus = a});+ldrrsResponseStatus = lens _ldrrsResponseStatus (\ s a -> s{_ldrrsResponseStatus = a}) instance NFData ListDiscoveredResourcesResponse where
+ gen/Network/AWS/Config/PutAggregationAuthorization.hs view
@@ -0,0 +1,154 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.Config.PutAggregationAuthorization+-- Copyright : (c) 2013-2018 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Authorizes the aggregator account and region to collect data from the source account and region.+--+--+module Network.AWS.Config.PutAggregationAuthorization+ (+ -- * Creating a Request+ putAggregationAuthorization+ , PutAggregationAuthorization+ -- * Request Lenses+ , paaAuthorizedAccountId+ , paaAuthorizedAWSRegion++ -- * Destructuring the Response+ , putAggregationAuthorizationResponse+ , PutAggregationAuthorizationResponse+ -- * Response Lenses+ , paarsAggregationAuthorization+ , paarsResponseStatus+ ) where++import Network.AWS.Config.Types+import Network.AWS.Config.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'putAggregationAuthorization' smart constructor.+data PutAggregationAuthorization = PutAggregationAuthorization'+ { _paaAuthorizedAccountId :: !Text+ , _paaAuthorizedAWSRegion :: !Text+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'PutAggregationAuthorization' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'paaAuthorizedAccountId' - The 12-digit account ID of the account authorized to aggregate data.+--+-- * 'paaAuthorizedAWSRegion' - The region authorized to collect aggregated data.+putAggregationAuthorization+ :: Text -- ^ 'paaAuthorizedAccountId'+ -> Text -- ^ 'paaAuthorizedAWSRegion'+ -> PutAggregationAuthorization+putAggregationAuthorization pAuthorizedAccountId_ pAuthorizedAWSRegion_ =+ PutAggregationAuthorization'+ { _paaAuthorizedAccountId = pAuthorizedAccountId_+ , _paaAuthorizedAWSRegion = pAuthorizedAWSRegion_+ }+++-- | The 12-digit account ID of the account authorized to aggregate data.+paaAuthorizedAccountId :: Lens' PutAggregationAuthorization Text+paaAuthorizedAccountId = lens _paaAuthorizedAccountId (\ s a -> s{_paaAuthorizedAccountId = a})++-- | The region authorized to collect aggregated data.+paaAuthorizedAWSRegion :: Lens' PutAggregationAuthorization Text+paaAuthorizedAWSRegion = lens _paaAuthorizedAWSRegion (\ s a -> s{_paaAuthorizedAWSRegion = a})++instance AWSRequest PutAggregationAuthorization where+ type Rs PutAggregationAuthorization =+ PutAggregationAuthorizationResponse+ request = postJSON config+ response+ = receiveJSON+ (\ s h x ->+ PutAggregationAuthorizationResponse' <$>+ (x .?> "AggregationAuthorization") <*>+ (pure (fromEnum s)))++instance Hashable PutAggregationAuthorization where++instance NFData PutAggregationAuthorization where++instance ToHeaders PutAggregationAuthorization where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("StarlingDoveService.PutAggregationAuthorization" ::+ ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON PutAggregationAuthorization where+ toJSON PutAggregationAuthorization'{..}+ = object+ (catMaybes+ [Just+ ("AuthorizedAccountId" .= _paaAuthorizedAccountId),+ Just+ ("AuthorizedAwsRegion" .= _paaAuthorizedAWSRegion)])++instance ToPath PutAggregationAuthorization where+ toPath = const "/"++instance ToQuery PutAggregationAuthorization where+ toQuery = const mempty++-- | /See:/ 'putAggregationAuthorizationResponse' smart constructor.+data PutAggregationAuthorizationResponse = PutAggregationAuthorizationResponse'+ { _paarsAggregationAuthorization :: !(Maybe AggregationAuthorization)+ , _paarsResponseStatus :: !Int+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'PutAggregationAuthorizationResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'paarsAggregationAuthorization' - Returns an AggregationAuthorization object.+--+-- * 'paarsResponseStatus' - -- | The response status code.+putAggregationAuthorizationResponse+ :: Int -- ^ 'paarsResponseStatus'+ -> PutAggregationAuthorizationResponse+putAggregationAuthorizationResponse pResponseStatus_ =+ PutAggregationAuthorizationResponse'+ { _paarsAggregationAuthorization = Nothing+ , _paarsResponseStatus = pResponseStatus_+ }+++-- | Returns an AggregationAuthorization object.+paarsAggregationAuthorization :: Lens' PutAggregationAuthorizationResponse (Maybe AggregationAuthorization)+paarsAggregationAuthorization = lens _paarsAggregationAuthorization (\ s a -> s{_paarsAggregationAuthorization = a})++-- | -- | The response status code.+paarsResponseStatus :: Lens' PutAggregationAuthorizationResponse Int+paarsResponseStatus = lens _paarsResponseStatus (\ s a -> s{_paarsResponseStatus = a})++instance NFData PutAggregationAuthorizationResponse+ where
gen/Network/AWS/Config/PutConfigRule.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.PutConfigRule--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -21,9 +21,9 @@ -- Adds or updates an AWS Config rule for evaluating whether your AWS resources comply with your desired configurations. -- ----- You can use this action for custom Config rules and AWS managed Config rules. A custom Config rule is a rule that you develop and maintain. An AWS managed Config rule is a customizable, predefined rule that AWS Config provides.+-- You can use this action for custom AWS Config rules and AWS managed Config rules. A custom AWS Config rule is a rule that you develop and maintain. An AWS managed Config rule is a customizable, predefined rule that AWS Config provides. ----- If you are adding a new custom Config rule, you must first create the AWS Lambda function that the rule invokes to evaluate your resources. When you use the @PutConfigRule@ action to add the rule to AWS Config, you must specify the Amazon Resource Name (ARN) that AWS Lambda assigns to the function. Specify the ARN for the @SourceIdentifier@ key. This key is part of the @Source@ object, which is part of the @ConfigRule@ object.+-- If you are adding a new custom AWS Config rule, you must first create the AWS Lambda function that the rule invokes to evaluate your resources. When you use the @PutConfigRule@ action to add the rule to AWS Config, you must specify the Amazon Resource Name (ARN) that AWS Lambda assigns to the function. Specify the ARN for the @SourceIdentifier@ key. This key is part of the @Source@ object, which is part of the @ConfigRule@ object. -- -- If you are adding an AWS managed Config rule, specify the rule's identifier for the @SourceIdentifier@ key. To reference AWS managed Config rule identifiers, see <http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html About AWS Managed Config Rules> . --@@ -33,7 +33,7 @@ -- -- The maximum number of rules that AWS Config supports is 50. ----- For more information about requesting a rule limit increase, see <http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_config AWS Config Limits> in the /AWS General Reference Guide/ .+-- For information about requesting a rule limit increase, see <http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_config AWS Config Limits> in the /AWS General Reference Guide/ . -- -- For more information about developing and using AWS Config rules, see <http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html Evaluating AWS Resource Configurations with AWS Config> in the /AWS Config Developer Guide/ . --@@ -76,7 +76,7 @@ -- | The rule that you want to add to your account. pcrConfigRule :: Lens' PutConfigRule ConfigRule-pcrConfigRule = lens _pcrConfigRule (\ s a -> s{_pcrConfigRule = a});+pcrConfigRule = lens _pcrConfigRule (\ s a -> s{_pcrConfigRule = a}) instance AWSRequest PutConfigRule where type Rs PutConfigRule = PutConfigRuleResponse
+ gen/Network/AWS/Config/PutConfigurationAggregator.hs view
@@ -0,0 +1,165 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.Config.PutConfigurationAggregator+-- Copyright : (c) 2013-2018 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates and updates the configuration aggregator with the selected source accounts and regions. The source account can be individual account(s) or an organization.+--+--+module Network.AWS.Config.PutConfigurationAggregator+ (+ -- * Creating a Request+ putConfigurationAggregator+ , PutConfigurationAggregator+ -- * Request Lenses+ , pcaOrganizationAggregationSource+ , pcaAccountAggregationSources+ , pcaConfigurationAggregatorName++ -- * Destructuring the Response+ , putConfigurationAggregatorResponse+ , PutConfigurationAggregatorResponse+ -- * Response Lenses+ , pcarsConfigurationAggregator+ , pcarsResponseStatus+ ) where++import Network.AWS.Config.Types+import Network.AWS.Config.Types.Product+import Network.AWS.Lens+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response++-- | /See:/ 'putConfigurationAggregator' smart constructor.+data PutConfigurationAggregator = PutConfigurationAggregator'+ { _pcaOrganizationAggregationSource :: !(Maybe OrganizationAggregationSource)+ , _pcaAccountAggregationSources :: !(Maybe [AccountAggregationSource])+ , _pcaConfigurationAggregatorName :: !Text+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'PutConfigurationAggregator' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pcaOrganizationAggregationSource' - An OrganizationAggregationSource object.+--+-- * 'pcaAccountAggregationSources' - A list of AccountAggregationSource object.+--+-- * 'pcaConfigurationAggregatorName' - The name of the configuration aggregator.+putConfigurationAggregator+ :: Text -- ^ 'pcaConfigurationAggregatorName'+ -> PutConfigurationAggregator+putConfigurationAggregator pConfigurationAggregatorName_ =+ PutConfigurationAggregator'+ { _pcaOrganizationAggregationSource = Nothing+ , _pcaAccountAggregationSources = Nothing+ , _pcaConfigurationAggregatorName = pConfigurationAggregatorName_+ }+++-- | An OrganizationAggregationSource object.+pcaOrganizationAggregationSource :: Lens' PutConfigurationAggregator (Maybe OrganizationAggregationSource)+pcaOrganizationAggregationSource = lens _pcaOrganizationAggregationSource (\ s a -> s{_pcaOrganizationAggregationSource = a})++-- | A list of AccountAggregationSource object.+pcaAccountAggregationSources :: Lens' PutConfigurationAggregator [AccountAggregationSource]+pcaAccountAggregationSources = lens _pcaAccountAggregationSources (\ s a -> s{_pcaAccountAggregationSources = a}) . _Default . _Coerce++-- | The name of the configuration aggregator.+pcaConfigurationAggregatorName :: Lens' PutConfigurationAggregator Text+pcaConfigurationAggregatorName = lens _pcaConfigurationAggregatorName (\ s a -> s{_pcaConfigurationAggregatorName = a})++instance AWSRequest PutConfigurationAggregator where+ type Rs PutConfigurationAggregator =+ PutConfigurationAggregatorResponse+ request = postJSON config+ response+ = receiveJSON+ (\ s h x ->+ PutConfigurationAggregatorResponse' <$>+ (x .?> "ConfigurationAggregator") <*>+ (pure (fromEnum s)))++instance Hashable PutConfigurationAggregator where++instance NFData PutConfigurationAggregator where++instance ToHeaders PutConfigurationAggregator where+ toHeaders+ = const+ (mconcat+ ["X-Amz-Target" =#+ ("StarlingDoveService.PutConfigurationAggregator" ::+ ByteString),+ "Content-Type" =#+ ("application/x-amz-json-1.1" :: ByteString)])++instance ToJSON PutConfigurationAggregator where+ toJSON PutConfigurationAggregator'{..}+ = object+ (catMaybes+ [("OrganizationAggregationSource" .=) <$>+ _pcaOrganizationAggregationSource,+ ("AccountAggregationSources" .=) <$>+ _pcaAccountAggregationSources,+ Just+ ("ConfigurationAggregatorName" .=+ _pcaConfigurationAggregatorName)])++instance ToPath PutConfigurationAggregator where+ toPath = const "/"++instance ToQuery PutConfigurationAggregator where+ toQuery = const mempty++-- | /See:/ 'putConfigurationAggregatorResponse' smart constructor.+data PutConfigurationAggregatorResponse = PutConfigurationAggregatorResponse'+ { _pcarsConfigurationAggregator :: !(Maybe ConfigurationAggregator)+ , _pcarsResponseStatus :: !Int+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'PutConfigurationAggregatorResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pcarsConfigurationAggregator' - Returns a ConfigurationAggregator object.+--+-- * 'pcarsResponseStatus' - -- | The response status code.+putConfigurationAggregatorResponse+ :: Int -- ^ 'pcarsResponseStatus'+ -> PutConfigurationAggregatorResponse+putConfigurationAggregatorResponse pResponseStatus_ =+ PutConfigurationAggregatorResponse'+ { _pcarsConfigurationAggregator = Nothing+ , _pcarsResponseStatus = pResponseStatus_+ }+++-- | Returns a ConfigurationAggregator object.+pcarsConfigurationAggregator :: Lens' PutConfigurationAggregatorResponse (Maybe ConfigurationAggregator)+pcarsConfigurationAggregator = lens _pcarsConfigurationAggregator (\ s a -> s{_pcarsConfigurationAggregator = a})++-- | -- | The response status code.+pcarsResponseStatus :: Lens' PutConfigurationAggregatorResponse Int+pcarsResponseStatus = lens _pcarsResponseStatus (\ s a -> s{_pcarsResponseStatus = a})++instance NFData PutConfigurationAggregatorResponse+ where
gen/Network/AWS/Config/PutConfigurationRecorder.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.PutConfigurationRecorder--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -21,7 +21,7 @@ -- Creates a new configuration recorder to record the selected resource configurations. -- ----- You can use this action to change the role @roleARN@ and/or the @recordingGroup@ of an existing recorder. To change the role, call the action on the existing configuration recorder and specify a role.+-- You can use this action to change the role @roleARN@ or the @recordingGroup@ of an existing recorder. To change the role, call the action on the existing configuration recorder and specify a role. -- module Network.AWS.Config.PutConfigurationRecorder (@@ -63,12 +63,12 @@ -> PutConfigurationRecorder putConfigurationRecorder pConfigurationRecorder_ = PutConfigurationRecorder'- {_pcrConfigurationRecorder = pConfigurationRecorder_}+ {_pcrConfigurationRecorder = pConfigurationRecorder_} -- | The configuration recorder object that records each configuration change made to the resources. pcrConfigurationRecorder :: Lens' PutConfigurationRecorder ConfigurationRecorder-pcrConfigurationRecorder = lens _pcrConfigurationRecorder (\ s a -> s{_pcrConfigurationRecorder = a});+pcrConfigurationRecorder = lens _pcrConfigurationRecorder (\ s a -> s{_pcrConfigurationRecorder = a}) instance AWSRequest PutConfigurationRecorder where type Rs PutConfigurationRecorder =
gen/Network/AWS/Config/PutDeliveryChannel.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.PutDeliveryChannel--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -59,7 +59,7 @@ -- -- Use one of the following lenses to modify other fields as desired: ----- * 'pdcDeliveryChannel' - The configuration delivery channel object that delivers the configuration information to an Amazon S3 bucket, and to an Amazon SNS topic.+-- * 'pdcDeliveryChannel' - The configuration delivery channel object that delivers the configuration information to an Amazon S3 bucket and to an Amazon SNS topic. putDeliveryChannel :: DeliveryChannel -- ^ 'pdcDeliveryChannel' -> PutDeliveryChannel@@ -67,9 +67,9 @@ PutDeliveryChannel' {_pdcDeliveryChannel = pDeliveryChannel_} --- | The configuration delivery channel object that delivers the configuration information to an Amazon S3 bucket, and to an Amazon SNS topic.+-- | The configuration delivery channel object that delivers the configuration information to an Amazon S3 bucket and to an Amazon SNS topic. pdcDeliveryChannel :: Lens' PutDeliveryChannel DeliveryChannel-pdcDeliveryChannel = lens _pdcDeliveryChannel (\ s a -> s{_pdcDeliveryChannel = a});+pdcDeliveryChannel = lens _pdcDeliveryChannel (\ s a -> s{_pdcDeliveryChannel = a}) instance AWSRequest PutDeliveryChannel where type Rs PutDeliveryChannel =
gen/Network/AWS/Config/PutEvaluations.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.PutEvaluations--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -66,29 +66,29 @@ -- -- * 'peTestMode' - Use this parameter to specify a test run for @PutEvaluations@ . You can verify whether your AWS Lambda function will deliver evaluation results to AWS Config. No updates occur to your existing evaluations, and evaluation results are not sent to AWS Config. ----- * 'peResultToken' - An encrypted token that associates an evaluation with an AWS Config rule. Identifies the rule and the event that triggered the evaluation+-- * 'peResultToken' - An encrypted token that associates an evaluation with an AWS Config rule. Identifies the rule and the event that triggered the evaluation. putEvaluations :: Text -- ^ 'peResultToken' -> PutEvaluations putEvaluations pResultToken_ = PutEvaluations'- { _peEvaluations = Nothing- , _peTestMode = Nothing- , _peResultToken = pResultToken_- }+ { _peEvaluations = Nothing+ , _peTestMode = Nothing+ , _peResultToken = pResultToken_+ } -- | The assessments that the AWS Lambda function performs. Each evaluation identifies an AWS resource and indicates whether it complies with the AWS Config rule that invokes the AWS Lambda function. peEvaluations :: Lens' PutEvaluations [Evaluation]-peEvaluations = lens _peEvaluations (\ s a -> s{_peEvaluations = a}) . _Default . _Coerce;+peEvaluations = lens _peEvaluations (\ s a -> s{_peEvaluations = a}) . _Default . _Coerce -- | Use this parameter to specify a test run for @PutEvaluations@ . You can verify whether your AWS Lambda function will deliver evaluation results to AWS Config. No updates occur to your existing evaluations, and evaluation results are not sent to AWS Config. peTestMode :: Lens' PutEvaluations (Maybe Bool)-peTestMode = lens _peTestMode (\ s a -> s{_peTestMode = a});+peTestMode = lens _peTestMode (\ s a -> s{_peTestMode = a}) --- | An encrypted token that associates an evaluation with an AWS Config rule. Identifies the rule and the event that triggered the evaluation+-- | An encrypted token that associates an evaluation with an AWS Config rule. Identifies the rule and the event that triggered the evaluation. peResultToken :: Lens' PutEvaluations Text-peResultToken = lens _peResultToken (\ s a -> s{_peResultToken = a});+peResultToken = lens _peResultToken (\ s a -> s{_peResultToken = a}) instance AWSRequest PutEvaluations where type Rs PutEvaluations = PutEvaluationsResponse@@ -150,15 +150,15 @@ -> PutEvaluationsResponse putEvaluationsResponse pResponseStatus_ = PutEvaluationsResponse'- {_persFailedEvaluations = Nothing, _persResponseStatus = pResponseStatus_}+ {_persFailedEvaluations = Nothing, _persResponseStatus = pResponseStatus_} -- | Requests that failed because of a client or server error. persFailedEvaluations :: Lens' PutEvaluationsResponse [Evaluation]-persFailedEvaluations = lens _persFailedEvaluations (\ s a -> s{_persFailedEvaluations = a}) . _Default . _Coerce;+persFailedEvaluations = lens _persFailedEvaluations (\ s a -> s{_persFailedEvaluations = a}) . _Default . _Coerce -- | -- | The response status code. persResponseStatus :: Lens' PutEvaluationsResponse Int-persResponseStatus = lens _persResponseStatus (\ s a -> s{_persResponseStatus = a});+persResponseStatus = lens _persResponseStatus (\ s a -> s{_persResponseStatus = a}) instance NFData PutEvaluationsResponse where
gen/Network/AWS/Config/StartConfigRulesEvaluation.hs view
@@ -12,18 +12,18 @@ -- | -- Module : Network.AWS.Config.StartConfigRulesEvaluation--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Runs an on-demand evaluation for the specified Config rules against the last known configuration state of the resources. Use @StartConfigRulesEvaluation@ when you want to test a rule that you updated is working as expected. @StartConfigRulesEvaluation@ does not re-record the latest configuration state for your resources; it re-runs an evaluation against the last known state of your resources.+-- Runs an on-demand evaluation for the specified AWS Config rules against the last known configuration state of the resources. Use @StartConfigRulesEvaluation@ when you want to test that a rule you updated is working as expected. @StartConfigRulesEvaluation@ does not re-record the latest configuration state for your resources. It re-runs an evaluation against the last known state of your resources. -- ----- You can specify up to 25 Config rules per request.+-- You can specify up to 25 AWS Config rules per request. ----- An existing @StartConfigRulesEvaluation@ call must complete for the specified rules before you can call the API again. If you chose to have AWS Config stream to an Amazon SNS topic, you will receive a @ConfigRuleEvaluationStarted@ notification when the evaluation starts.+-- An existing @StartConfigRulesEvaluation@ call for the specified rules must complete before you can call the API again. If you chose to have AWS Config stream to an Amazon SNS topic, you will receive a @ConfigRuleEvaluationStarted@ notification when the evaluation starts. -- -- The @StartConfigRulesEvaluation@ API is useful if you want to run on-demand evaluations, such as the following example: --@@ -75,16 +75,16 @@ -- -- Use one of the following lenses to modify other fields as desired: ----- * 'screConfigRuleNames' - The list of names of Config rules that you want to run evaluations for.+-- * 'screConfigRuleNames' - The list of names of AWS Config rules that you want to run evaluations for. startConfigRulesEvaluation :: StartConfigRulesEvaluation startConfigRulesEvaluation = StartConfigRulesEvaluation' {_screConfigRuleNames = Nothing} --- | The list of names of Config rules that you want to run evaluations for.+-- | The list of names of AWS Config rules that you want to run evaluations for. screConfigRuleNames :: Lens' StartConfigRulesEvaluation (Maybe (NonEmpty Text))-screConfigRuleNames = lens _screConfigRuleNames (\ s a -> s{_screConfigRuleNames = a}) . mapping _List1;+screConfigRuleNames = lens _screConfigRuleNames (\ s a -> s{_screConfigRuleNames = a}) . mapping _List1 instance AWSRequest StartConfigRulesEvaluation where type Rs StartConfigRulesEvaluation =@@ -122,7 +122,7 @@ instance ToQuery StartConfigRulesEvaluation where toQuery = const mempty --- | The output when you start the evaluation for the specified Config rule.+-- | The output when you start the evaluation for the specified AWS Config rule. -- -- --@@ -146,7 +146,7 @@ -- | -- | The response status code. scrersResponseStatus :: Lens' StartConfigRulesEvaluationResponse Int-scrersResponseStatus = lens _scrersResponseStatus (\ s a -> s{_scrersResponseStatus = a});+scrersResponseStatus = lens _scrersResponseStatus (\ s a -> s{_scrersResponseStatus = a}) instance NFData StartConfigRulesEvaluationResponse where
gen/Network/AWS/Config/StartConfigurationRecorder.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.StartConfigurationRecorder--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -63,12 +63,12 @@ -> StartConfigurationRecorder startConfigurationRecorder pConfigurationRecorderName_ = StartConfigurationRecorder'- {_sConfigurationRecorderName = pConfigurationRecorderName_}+ {_sConfigurationRecorderName = pConfigurationRecorderName_} -- | The name of the recorder object that records each configuration change made to the resources. sConfigurationRecorderName :: Lens' StartConfigurationRecorder Text-sConfigurationRecorderName = lens _sConfigurationRecorderName (\ s a -> s{_sConfigurationRecorderName = a});+sConfigurationRecorderName = lens _sConfigurationRecorderName (\ s a -> s{_sConfigurationRecorderName = a}) instance AWSRequest StartConfigurationRecorder where type Rs StartConfigurationRecorder =
gen/Network/AWS/Config/StopConfigurationRecorder.hs view
@@ -12,7 +12,7 @@ -- | -- Module : Network.AWS.Config.StopConfigurationRecorder--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -61,12 +61,12 @@ -> StopConfigurationRecorder stopConfigurationRecorder pConfigurationRecorderName_ = StopConfigurationRecorder'- {_scrConfigurationRecorderName = pConfigurationRecorderName_}+ {_scrConfigurationRecorderName = pConfigurationRecorderName_} -- | The name of the recorder object that records each configuration change made to the resources. scrConfigurationRecorderName :: Lens' StopConfigurationRecorder Text-scrConfigurationRecorderName = lens _scrConfigurationRecorderName (\ s a -> s{_scrConfigurationRecorderName = a});+scrConfigurationRecorderName = lens _scrConfigurationRecorderName (\ s a -> s{_scrConfigurationRecorderName = a}) instance AWSRequest StopConfigurationRecorder where type Rs StopConfigurationRecorder =
gen/Network/AWS/Config/Types.hs view
@@ -4,7 +4,7 @@ -- | -- Module : Network.AWS.Config.Types--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -19,7 +19,10 @@ , _InvalidTimeRangeException , _InvalidSNSTopicARNException , _InvalidRecordingGroupException+ , _NoAvailableOrganizationException , _ValidationException+ , _OrganizationAccessDeniedException+ , _NoSuchConfigurationAggregatorException , _InvalidRoleException , _LastDeliveryChannelDeleteFailedException , _InvalidLimitException@@ -28,6 +31,7 @@ , _InvalidResultTokenException , _NoSuchDeliveryChannelException , _NoSuchConfigRuleException+ , _OrganizationAllFeaturesNotEnabledException , _InsufficientPermissionsException , _ResourceNotDiscoveredException , _InvalidNextTokenException@@ -45,12 +49,21 @@ , _LimitExceededException , _ResourceInUseException + -- * AggregatedSourceStatusType+ , AggregatedSourceStatusType (..)++ -- * AggregatedSourceType+ , AggregatedSourceType (..)+ -- * ChronologicalOrder , ChronologicalOrder (..) -- * ComplianceType , ComplianceType (..) + -- * ConfigRuleComplianceSummaryGroupKey+ , ConfigRuleComplianceSummaryGroupKey (..)+ -- * ConfigRuleState , ConfigRuleState (..) @@ -78,6 +91,75 @@ -- * ResourceType , ResourceType (..) + -- * AccountAggregationSource+ , AccountAggregationSource+ , accountAggregationSource+ , aasAWSRegions+ , aasAllAWSRegions+ , aasAccountIds++ -- * AggregateComplianceByConfigRule+ , AggregateComplianceByConfigRule+ , aggregateComplianceByConfigRule+ , acbcrCompliance+ , acbcrConfigRuleName+ , acbcrAccountId+ , acbcrAWSRegion++ -- * AggregateComplianceCount+ , AggregateComplianceCount+ , aggregateComplianceCount+ , accGroupName+ , accComplianceSummary++ -- * AggregateEvaluationResult+ , AggregateEvaluationResult+ , aggregateEvaluationResult+ , aerEvaluationResultIdentifier+ , aerAnnotation+ , aerConfigRuleInvokedTime+ , aerResultRecordedTime+ , aerAccountId+ , aerComplianceType+ , aerAWSRegion++ -- * AggregatedSourceStatus+ , AggregatedSourceStatus+ , aggregatedSourceStatus+ , assLastErrorCode+ , assLastUpdateStatus+ , assSourceType+ , assSourceId+ , assLastErrorMessage+ , assAWSRegion+ , assLastUpdateTime++ -- * AggregationAuthorization+ , AggregationAuthorization+ , aggregationAuthorization+ , aaCreationTime+ , aaAuthorizedAWSRegion+ , aaAggregationAuthorizationARN+ , aaAuthorizedAccountId++ -- * BaseConfigurationItem+ , BaseConfigurationItem+ , baseConfigurationItem+ , bciResourceId+ , bciResourceType+ , bciConfigurationStateId+ , bciArn+ , bciResourceName+ , bciResourceCreationTime+ , bciConfigurationItemStatus+ , bciConfigurationItemCaptureTime+ , bciAccountId+ , bciSupplementaryConfiguration+ , bciAvailabilityZone+ , bciVersion+ , bciAwsRegion+ , bciConfiguration+ -- * Compliance , Compliance , compliance@@ -139,6 +221,20 @@ , crConfigRuleARN , crSource + -- * ConfigRuleComplianceFilters+ , ConfigRuleComplianceFilters+ , configRuleComplianceFilters+ , crcfConfigRuleName+ , crcfAccountId+ , crcfComplianceType+ , crcfAWSRegion++ -- * ConfigRuleComplianceSummaryFilters+ , ConfigRuleComplianceSummaryFilters+ , configRuleComplianceSummaryFilters+ , crcsfAccountId+ , crcsfAWSRegion+ -- * ConfigRuleEvaluationStatus , ConfigRuleEvaluationStatus , configRuleEvaluationStatus@@ -167,6 +263,16 @@ , csdiLastStatus , csdiLastErrorMessage + -- * ConfigurationAggregator+ , ConfigurationAggregator+ , configurationAggregator+ , caConfigurationAggregatorARN+ , caCreationTime+ , caOrganizationAggregationSource+ , caLastUpdatedTime+ , caAccountAggregationSources+ , caConfigurationAggregatorName+ -- * ConfigurationItem , ConfigurationItem , configurationItem@@ -257,6 +363,19 @@ , erqResourceType , erqConfigRuleName + -- * OrganizationAggregationSource+ , OrganizationAggregationSource+ , organizationAggregationSource+ , oasAWSRegions+ , oasAllAWSRegions+ , oasRoleARN++ -- * PendingAggregationRequest+ , PendingAggregationRequest+ , pendingAggregationRequest+ , parRequesterAccountId+ , parRequesterAWSRegion+ -- * RecordingGroup , RecordingGroup , recordingGroup@@ -286,6 +405,12 @@ , riResourceName , riResourceDeletionTime + -- * ResourceKey+ , ResourceKey+ , resourceKey+ , rkResourceType+ , rkResourceId+ -- * Scope , Scope , scope@@ -319,24 +444,24 @@ config :: Service config = Service- { _svcAbbrev = "Config"- , _svcSigner = v4- , _svcPrefix = "config"- , _svcVersion = "2014-11-12"- , _svcEndpoint = defaultEndpoint config- , _svcTimeout = Just 70- , _svcCheck = statusSuccess- , _svcError = parseJSONError "Config"- , _svcRetry = retry- }+ { _svcAbbrev = "Config"+ , _svcSigner = v4+ , _svcPrefix = "config"+ , _svcVersion = "2014-11-12"+ , _svcEndpoint = defaultEndpoint config+ , _svcTimeout = Just 70+ , _svcCheck = statusSuccess+ , _svcError = parseJSONError "Config"+ , _svcRetry = retry+ } where retry = Exponential- { _retryBase = 5.0e-2- , _retryGrowth = 2- , _retryAttempts = 5- , _retryCheck = check- }+ { _retryBase = 5.0e-2+ , _retryGrowth = 2+ , _retryAttempts = 5+ , _retryCheck = check+ } check e | has (hasCode "ThrottledException" . hasStatus 400) e = Just "throttled_exception"@@ -345,6 +470,8 @@ Just "throttling_exception" | has (hasCode "Throttling" . hasStatus 400) e = Just "throttling" | has (hasStatus 504) e = Just "gateway_timeout"+ | has (hasCode "RequestThrottledException" . hasStatus 400) e =+ Just "request_throttled_exception" | has (hasStatus 502) e = Just "bad_gateway" | has (hasStatus 503) e = Just "service_unavailable" | has (hasStatus 500) e = Just "general_server_error"@@ -368,7 +495,7 @@ _MatchServiceError config "InvalidSNSTopicARNException" --- | AWS Config throws an exception if the recording group does not contain a valid list of resource types. Invalid values could also be incorrectly formatted.+-- | AWS Config throws an exception if the recording group does not contain a valid list of resource types. Invalid values might also be incorrectly formatted. -- -- _InvalidRecordingGroupException :: AsError a => Getting (First ServiceError) a ServiceError@@ -376,6 +503,14 @@ _MatchServiceError config "InvalidRecordingGroupException" +-- | Organization does is no longer available.+--+--+_NoAvailableOrganizationException :: AsError a => Getting (First ServiceError) a ServiceError+_NoAvailableOrganizationException =+ _MatchServiceError config "NoAvailableOrganizationException"++ -- | The requested action is not valid. -- --@@ -383,6 +518,22 @@ _ValidationException = _MatchServiceError config "ValidationException" +-- | No permission to call the EnableAWSServiceAccess API.+--+--+_OrganizationAccessDeniedException :: AsError a => Getting (First ServiceError) a ServiceError+_OrganizationAccessDeniedException =+ _MatchServiceError config "OrganizationAccessDeniedException"+++-- | You have specified a configuration aggregator that does not exist.+--+--+_NoSuchConfigurationAggregatorException :: AsError a => Getting (First ServiceError) a ServiceError+_NoSuchConfigurationAggregatorException =+ _MatchServiceError config "NoSuchConfigurationAggregatorException"++ -- | You have provided a null or empty role ARN. -- --@@ -445,6 +596,14 @@ _MatchServiceError config "NoSuchConfigRuleException" +-- | The configuration aggregator cannot be created because organization does not have all features enabled.+--+--+_OrganizationAllFeaturesNotEnabledException :: AsError a => Getting (First ServiceError) a ServiceError+_OrganizationAllFeaturesNotEnabledException =+ _MatchServiceError config "OrganizationAllFeaturesNotEnabledException"++ -- | Indicates one of the following errors: -- --@@ -467,7 +626,7 @@ _MatchServiceError config "ResourceNotDiscoveredException" --- | The specified next token is invalid. Specify the @NextToken@ string that was returned in the previous response to get the next page of results.+-- | The specified next token is invalid. Specify the @nextToken@ string that was returned in the previous response to get the next page of results. -- -- _InvalidNextTokenException :: AsError a => Getting (First ServiceError) a ServiceError@@ -475,7 +634,7 @@ _MatchServiceError config "InvalidNextTokenException" --- | Failed to add the AWS Config rule because the account already contains the maximum number of 50 rules. Consider deleting any deactivated rules before adding new rules.+-- | Failed to add the AWS Config rule because the account already contains the maximum number of 50 rules. Consider deleting any deactivated rules before you add new rules. -- -- _MaxNumberOfConfigRulesExceededException :: AsError a => Getting (First ServiceError) a ServiceError@@ -522,7 +681,7 @@ _MatchServiceError config "NoRunningConfigurationRecorderException" --- | You have reached the limit on the number of recorders you can create.+-- | You have reached the limit of the number of recorders you can create. -- -- _MaxNumberOfConfigurationRecordersExceededException :: AsError a => Getting (First ServiceError) a ServiceError@@ -538,7 +697,7 @@ _MatchServiceError config "InsufficientDeliveryPolicyException" --- | You have reached the limit on the number of delivery channels you can create.+-- | You have reached the limit of the number of delivery channels you can create. -- -- _MaxNumberOfDeliveryChannelsExceededException :: AsError a => Getting (First ServiceError) a ServiceError
gen/Network/AWS/Config/Types/Product.hs view
@@ -9,1992 +9,2926 @@ -- | -- Module : Network.AWS.Config.Types.Product--- Copyright : (c) 2013-2017 Brendan Hay--- License : Mozilla Public License, v. 2.0.--- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>--- Stability : auto-generated--- Portability : non-portable (GHC extensions)----module Network.AWS.Config.Types.Product where--import Network.AWS.Config.Types.Sum-import Network.AWS.Lens-import Network.AWS.Prelude---- | Indicates whether an AWS resource or AWS Config rule is compliant and provides the number of contributors that affect the compliance.------------ /See:/ 'compliance' smart constructor.-data Compliance = Compliance'- { _cComplianceContributorCount :: !(Maybe ComplianceContributorCount)- , _cComplianceType :: !(Maybe ComplianceType)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'Compliance' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cComplianceContributorCount' - The number of AWS resources or AWS Config rules that cause a result of @NON_COMPLIANT@ , up to a maximum number.------ * 'cComplianceType' - Indicates whether an AWS resource or AWS Config rule is compliant. A resource is compliant if it complies with all of the AWS Config rules that evaluate it, and it is noncompliant if it does not comply with one or more of these rules. A rule is compliant if all of the resources that the rule evaluates comply with it, and it is noncompliant if any of these resources do not comply. AWS Config returns the @INSUFFICIENT_DATA@ value when no evaluation results are available for the AWS resource or Config rule. For the @Compliance@ data type, AWS Config supports only @COMPLIANT@ , @NON_COMPLIANT@ , and @INSUFFICIENT_DATA@ values. AWS Config does not support the @NOT_APPLICABLE@ value for the @Compliance@ data type.-compliance- :: Compliance-compliance =- Compliance'- {_cComplianceContributorCount = Nothing, _cComplianceType = Nothing}----- | The number of AWS resources or AWS Config rules that cause a result of @NON_COMPLIANT@ , up to a maximum number.-cComplianceContributorCount :: Lens' Compliance (Maybe ComplianceContributorCount)-cComplianceContributorCount = lens _cComplianceContributorCount (\ s a -> s{_cComplianceContributorCount = a});---- | Indicates whether an AWS resource or AWS Config rule is compliant. A resource is compliant if it complies with all of the AWS Config rules that evaluate it, and it is noncompliant if it does not comply with one or more of these rules. A rule is compliant if all of the resources that the rule evaluates comply with it, and it is noncompliant if any of these resources do not comply. AWS Config returns the @INSUFFICIENT_DATA@ value when no evaluation results are available for the AWS resource or Config rule. For the @Compliance@ data type, AWS Config supports only @COMPLIANT@ , @NON_COMPLIANT@ , and @INSUFFICIENT_DATA@ values. AWS Config does not support the @NOT_APPLICABLE@ value for the @Compliance@ data type.-cComplianceType :: Lens' Compliance (Maybe ComplianceType)-cComplianceType = lens _cComplianceType (\ s a -> s{_cComplianceType = a});--instance FromJSON Compliance where- parseJSON- = withObject "Compliance"- (\ x ->- Compliance' <$>- (x .:? "ComplianceContributorCount") <*>- (x .:? "ComplianceType"))--instance Hashable Compliance where--instance NFData Compliance where---- | Indicates whether an AWS Config rule is compliant. A rule is compliant if all of the resources that the rule evaluated comply with it, and it is noncompliant if any of these resources do not comply.------------ /See:/ 'complianceByConfigRule' smart constructor.-data ComplianceByConfigRule = ComplianceByConfigRule'- { _cbcrCompliance :: !(Maybe Compliance)- , _cbcrConfigRuleName :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ComplianceByConfigRule' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cbcrCompliance' - Indicates whether the AWS Config rule is compliant.------ * 'cbcrConfigRuleName' - The name of the AWS Config rule.-complianceByConfigRule- :: ComplianceByConfigRule-complianceByConfigRule =- ComplianceByConfigRule'- {_cbcrCompliance = Nothing, _cbcrConfigRuleName = Nothing}----- | Indicates whether the AWS Config rule is compliant.-cbcrCompliance :: Lens' ComplianceByConfigRule (Maybe Compliance)-cbcrCompliance = lens _cbcrCompliance (\ s a -> s{_cbcrCompliance = a});---- | The name of the AWS Config rule.-cbcrConfigRuleName :: Lens' ComplianceByConfigRule (Maybe Text)-cbcrConfigRuleName = lens _cbcrConfigRuleName (\ s a -> s{_cbcrConfigRuleName = a});--instance FromJSON ComplianceByConfigRule where- parseJSON- = withObject "ComplianceByConfigRule"- (\ x ->- ComplianceByConfigRule' <$>- (x .:? "Compliance") <*> (x .:? "ConfigRuleName"))--instance Hashable ComplianceByConfigRule where--instance NFData ComplianceByConfigRule where---- | Indicates whether an AWS resource that is evaluated according to one or more AWS Config rules is compliant. A resource is compliant if it complies with all of the rules that evaluate it, and it is noncompliant if it does not comply with one or more of these rules.------------ /See:/ 'complianceByResource' smart constructor.-data ComplianceByResource = ComplianceByResource'- { _cbrResourceId :: !(Maybe Text)- , _cbrResourceType :: !(Maybe Text)- , _cbrCompliance :: !(Maybe Compliance)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ComplianceByResource' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cbrResourceId' - The ID of the AWS resource that was evaluated.------ * 'cbrResourceType' - The type of the AWS resource that was evaluated.------ * 'cbrCompliance' - Indicates whether the AWS resource complies with all of the AWS Config rules that evaluated it.-complianceByResource- :: ComplianceByResource-complianceByResource =- ComplianceByResource'- { _cbrResourceId = Nothing- , _cbrResourceType = Nothing- , _cbrCompliance = Nothing- }----- | The ID of the AWS resource that was evaluated.-cbrResourceId :: Lens' ComplianceByResource (Maybe Text)-cbrResourceId = lens _cbrResourceId (\ s a -> s{_cbrResourceId = a});---- | The type of the AWS resource that was evaluated.-cbrResourceType :: Lens' ComplianceByResource (Maybe Text)-cbrResourceType = lens _cbrResourceType (\ s a -> s{_cbrResourceType = a});---- | Indicates whether the AWS resource complies with all of the AWS Config rules that evaluated it.-cbrCompliance :: Lens' ComplianceByResource (Maybe Compliance)-cbrCompliance = lens _cbrCompliance (\ s a -> s{_cbrCompliance = a});--instance FromJSON ComplianceByResource where- parseJSON- = withObject "ComplianceByResource"- (\ x ->- ComplianceByResource' <$>- (x .:? "ResourceId") <*> (x .:? "ResourceType") <*>- (x .:? "Compliance"))--instance Hashable ComplianceByResource where--instance NFData ComplianceByResource where---- | The number of AWS resources or AWS Config rules responsible for the current compliance of the item, up to a maximum number.------------ /See:/ 'complianceContributorCount' smart constructor.-data ComplianceContributorCount = ComplianceContributorCount'- { _cccCappedCount :: !(Maybe Int)- , _cccCapExceeded :: !(Maybe Bool)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ComplianceContributorCount' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cccCappedCount' - The number of AWS resources or AWS Config rules responsible for the current compliance of the item.------ * 'cccCapExceeded' - Indicates whether the maximum count is reached.-complianceContributorCount- :: ComplianceContributorCount-complianceContributorCount =- ComplianceContributorCount'- {_cccCappedCount = Nothing, _cccCapExceeded = Nothing}----- | The number of AWS resources or AWS Config rules responsible for the current compliance of the item.-cccCappedCount :: Lens' ComplianceContributorCount (Maybe Int)-cccCappedCount = lens _cccCappedCount (\ s a -> s{_cccCappedCount = a});---- | Indicates whether the maximum count is reached.-cccCapExceeded :: Lens' ComplianceContributorCount (Maybe Bool)-cccCapExceeded = lens _cccCapExceeded (\ s a -> s{_cccCapExceeded = a});--instance FromJSON ComplianceContributorCount where- parseJSON- = withObject "ComplianceContributorCount"- (\ x ->- ComplianceContributorCount' <$>- (x .:? "CappedCount") <*> (x .:? "CapExceeded"))--instance Hashable ComplianceContributorCount where--instance NFData ComplianceContributorCount where---- | The number of AWS Config rules or AWS resources that are compliant and noncompliant.------------ /See:/ 'complianceSummary' smart constructor.-data ComplianceSummary = ComplianceSummary'- { _csComplianceSummaryTimestamp :: !(Maybe POSIX)- , _csCompliantResourceCount :: !(Maybe ComplianceContributorCount)- , _csNonCompliantResourceCount :: !(Maybe ComplianceContributorCount)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ComplianceSummary' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'csComplianceSummaryTimestamp' - The time that AWS Config created the compliance summary.------ * 'csCompliantResourceCount' - The number of AWS Config rules or AWS resources that are compliant, up to a maximum of 25 for rules and 100 for resources.------ * 'csNonCompliantResourceCount' - The number of AWS Config rules or AWS resources that are noncompliant, up to a maximum of 25 for rules and 100 for resources.-complianceSummary- :: ComplianceSummary-complianceSummary =- ComplianceSummary'- { _csComplianceSummaryTimestamp = Nothing- , _csCompliantResourceCount = Nothing- , _csNonCompliantResourceCount = Nothing- }----- | The time that AWS Config created the compliance summary.-csComplianceSummaryTimestamp :: Lens' ComplianceSummary (Maybe UTCTime)-csComplianceSummaryTimestamp = lens _csComplianceSummaryTimestamp (\ s a -> s{_csComplianceSummaryTimestamp = a}) . mapping _Time;---- | The number of AWS Config rules or AWS resources that are compliant, up to a maximum of 25 for rules and 100 for resources.-csCompliantResourceCount :: Lens' ComplianceSummary (Maybe ComplianceContributorCount)-csCompliantResourceCount = lens _csCompliantResourceCount (\ s a -> s{_csCompliantResourceCount = a});---- | The number of AWS Config rules or AWS resources that are noncompliant, up to a maximum of 25 for rules and 100 for resources.-csNonCompliantResourceCount :: Lens' ComplianceSummary (Maybe ComplianceContributorCount)-csNonCompliantResourceCount = lens _csNonCompliantResourceCount (\ s a -> s{_csNonCompliantResourceCount = a});--instance FromJSON ComplianceSummary where- parseJSON- = withObject "ComplianceSummary"- (\ x ->- ComplianceSummary' <$>- (x .:? "ComplianceSummaryTimestamp") <*>- (x .:? "CompliantResourceCount")- <*> (x .:? "NonCompliantResourceCount"))--instance Hashable ComplianceSummary where--instance NFData ComplianceSummary where---- | The number of AWS resources of a specific type that are compliant or noncompliant, up to a maximum of 100 for each compliance.------------ /See:/ 'complianceSummaryByResourceType' smart constructor.-data ComplianceSummaryByResourceType = ComplianceSummaryByResourceType'- { _csbrtResourceType :: !(Maybe Text)- , _csbrtComplianceSummary :: !(Maybe ComplianceSummary)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ComplianceSummaryByResourceType' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'csbrtResourceType' - The type of AWS resource.------ * 'csbrtComplianceSummary' - The number of AWS resources that are compliant or noncompliant, up to a maximum of 100 for each compliance.-complianceSummaryByResourceType- :: ComplianceSummaryByResourceType-complianceSummaryByResourceType =- ComplianceSummaryByResourceType'- {_csbrtResourceType = Nothing, _csbrtComplianceSummary = Nothing}----- | The type of AWS resource.-csbrtResourceType :: Lens' ComplianceSummaryByResourceType (Maybe Text)-csbrtResourceType = lens _csbrtResourceType (\ s a -> s{_csbrtResourceType = a});---- | The number of AWS resources that are compliant or noncompliant, up to a maximum of 100 for each compliance.-csbrtComplianceSummary :: Lens' ComplianceSummaryByResourceType (Maybe ComplianceSummary)-csbrtComplianceSummary = lens _csbrtComplianceSummary (\ s a -> s{_csbrtComplianceSummary = a});--instance FromJSON ComplianceSummaryByResourceType- where- parseJSON- = withObject "ComplianceSummaryByResourceType"- (\ x ->- ComplianceSummaryByResourceType' <$>- (x .:? "ResourceType") <*>- (x .:? "ComplianceSummary"))--instance Hashable ComplianceSummaryByResourceType- where--instance NFData ComplianceSummaryByResourceType where---- | Provides status of the delivery of the snapshot or the configuration history to the specified Amazon S3 bucket. Also provides the status of notifications about the Amazon S3 delivery to the specified Amazon SNS topic.------------ /See:/ 'configExportDeliveryInfo' smart constructor.-data ConfigExportDeliveryInfo = ConfigExportDeliveryInfo'- { _cediLastErrorCode :: !(Maybe Text)- , _cediLastAttemptTime :: !(Maybe POSIX)- , _cediLastSuccessfulTime :: !(Maybe POSIX)- , _cediLastStatus :: !(Maybe DeliveryStatus)- , _cediLastErrorMessage :: !(Maybe Text)- , _cediNextDeliveryTime :: !(Maybe POSIX)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ConfigExportDeliveryInfo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cediLastErrorCode' - The error code from the last attempted delivery.------ * 'cediLastAttemptTime' - The time of the last attempted delivery.------ * 'cediLastSuccessfulTime' - The time of the last successful delivery.------ * 'cediLastStatus' - Status of the last attempted delivery.------ * 'cediLastErrorMessage' - The error message from the last attempted delivery.------ * 'cediNextDeliveryTime' - The time that the next delivery occurs.-configExportDeliveryInfo- :: ConfigExportDeliveryInfo-configExportDeliveryInfo =- ConfigExportDeliveryInfo'- { _cediLastErrorCode = Nothing- , _cediLastAttemptTime = Nothing- , _cediLastSuccessfulTime = Nothing- , _cediLastStatus = Nothing- , _cediLastErrorMessage = Nothing- , _cediNextDeliveryTime = Nothing- }----- | The error code from the last attempted delivery.-cediLastErrorCode :: Lens' ConfigExportDeliveryInfo (Maybe Text)-cediLastErrorCode = lens _cediLastErrorCode (\ s a -> s{_cediLastErrorCode = a});---- | The time of the last attempted delivery.-cediLastAttemptTime :: Lens' ConfigExportDeliveryInfo (Maybe UTCTime)-cediLastAttemptTime = lens _cediLastAttemptTime (\ s a -> s{_cediLastAttemptTime = a}) . mapping _Time;---- | The time of the last successful delivery.-cediLastSuccessfulTime :: Lens' ConfigExportDeliveryInfo (Maybe UTCTime)-cediLastSuccessfulTime = lens _cediLastSuccessfulTime (\ s a -> s{_cediLastSuccessfulTime = a}) . mapping _Time;---- | Status of the last attempted delivery.-cediLastStatus :: Lens' ConfigExportDeliveryInfo (Maybe DeliveryStatus)-cediLastStatus = lens _cediLastStatus (\ s a -> s{_cediLastStatus = a});---- | The error message from the last attempted delivery.-cediLastErrorMessage :: Lens' ConfigExportDeliveryInfo (Maybe Text)-cediLastErrorMessage = lens _cediLastErrorMessage (\ s a -> s{_cediLastErrorMessage = a});---- | The time that the next delivery occurs.-cediNextDeliveryTime :: Lens' ConfigExportDeliveryInfo (Maybe UTCTime)-cediNextDeliveryTime = lens _cediNextDeliveryTime (\ s a -> s{_cediNextDeliveryTime = a}) . mapping _Time;--instance FromJSON ConfigExportDeliveryInfo where- parseJSON- = withObject "ConfigExportDeliveryInfo"- (\ x ->- ConfigExportDeliveryInfo' <$>- (x .:? "lastErrorCode") <*> (x .:? "lastAttemptTime")- <*> (x .:? "lastSuccessfulTime")- <*> (x .:? "lastStatus")- <*> (x .:? "lastErrorMessage")- <*> (x .:? "nextDeliveryTime"))--instance Hashable ConfigExportDeliveryInfo where--instance NFData ConfigExportDeliveryInfo where---- | An AWS Config rule represents an AWS Lambda function that you create for a custom rule or a predefined function for an AWS managed rule. The function evaluates configuration items to assess whether your AWS resources comply with your desired configurations. This function can run when AWS Config detects a configuration change to an AWS resource and at a periodic frequency that you choose (for example, every 24 hours).--------- For more information about developing and using AWS Config rules, see <http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html Evaluating AWS Resource Configurations with AWS Config> in the /AWS Config Developer Guide/ .--------- /See:/ 'configRule' smart constructor.-data ConfigRule = ConfigRule'- { _crInputParameters :: !(Maybe Text)- , _crConfigRuleName :: !(Maybe Text)- , _crMaximumExecutionFrequency :: !(Maybe MaximumExecutionFrequency)- , _crConfigRuleId :: !(Maybe Text)- , _crScope :: !(Maybe Scope)- , _crConfigRuleState :: !(Maybe ConfigRuleState)- , _crDescription :: !(Maybe Text)- , _crConfigRuleARN :: !(Maybe Text)- , _crSource :: !Source- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ConfigRule' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'crInputParameters' - A string in JSON format that is passed to the AWS Config rule Lambda function.------ * 'crConfigRuleName' - The name that you assign to the AWS Config rule. The name is required if you are adding a new rule.------ * 'crMaximumExecutionFrequency' - The maximum frequency with which AWS Config runs evaluations for a rule. You can specify a value for @MaximumExecutionFrequency@ when: * You are using an AWS managed rule that is triggered at a periodic frequency. * Your custom rule is triggered when AWS Config delivers the configuration snapshot. For more information, see 'ConfigSnapshotDeliveryProperties' .------ * 'crConfigRuleId' - The ID of the AWS Config rule.------ * 'crScope' - Defines which resources can trigger an evaluation for the rule. The scope can include one or more resource types, a combination of one resource type and one resource ID, or a combination of a tag key and value. Specify a scope to constrain the resources that can trigger an evaluation for the rule. If you do not specify a scope, evaluations are triggered when any resource in the recording group changes.------ * 'crConfigRuleState' - Indicates whether the AWS Config rule is active or is currently being deleted by AWS Config. It can also indicate the evaluation status for the Config rule. AWS Config sets the state of the rule to @EVALUATING@ temporarily after you use the @StartConfigRulesEvaluation@ request to evaluate your resources against the Config rule. AWS Config sets the state of the rule to @DELETING_RESULTS@ temporarily after you use the @DeleteEvaluationResults@ request to delete the current evaluation results for the Config rule. AWS Config sets the state of a rule to @DELETING@ temporarily after you use the @DeleteConfigRule@ request to delete the rule. After AWS Config deletes the rule, the rule and all of its evaluations are erased and are no longer available.------ * 'crDescription' - The description that you provide for the AWS Config rule.------ * 'crConfigRuleARN' - The Amazon Resource Name (ARN) of the AWS Config rule.------ * 'crSource' - Provides the rule owner (AWS or customer), the rule identifier, and the notifications that cause the function to evaluate your AWS resources.-configRule- :: Source -- ^ 'crSource'- -> ConfigRule-configRule pSource_ =- ConfigRule'- { _crInputParameters = Nothing- , _crConfigRuleName = Nothing- , _crMaximumExecutionFrequency = Nothing- , _crConfigRuleId = Nothing- , _crScope = Nothing- , _crConfigRuleState = Nothing- , _crDescription = Nothing- , _crConfigRuleARN = Nothing- , _crSource = pSource_- }----- | A string in JSON format that is passed to the AWS Config rule Lambda function.-crInputParameters :: Lens' ConfigRule (Maybe Text)-crInputParameters = lens _crInputParameters (\ s a -> s{_crInputParameters = a});---- | The name that you assign to the AWS Config rule. The name is required if you are adding a new rule.-crConfigRuleName :: Lens' ConfigRule (Maybe Text)-crConfigRuleName = lens _crConfigRuleName (\ s a -> s{_crConfigRuleName = a});---- | The maximum frequency with which AWS Config runs evaluations for a rule. You can specify a value for @MaximumExecutionFrequency@ when: * You are using an AWS managed rule that is triggered at a periodic frequency. * Your custom rule is triggered when AWS Config delivers the configuration snapshot. For more information, see 'ConfigSnapshotDeliveryProperties' .-crMaximumExecutionFrequency :: Lens' ConfigRule (Maybe MaximumExecutionFrequency)-crMaximumExecutionFrequency = lens _crMaximumExecutionFrequency (\ s a -> s{_crMaximumExecutionFrequency = a});---- | The ID of the AWS Config rule.-crConfigRuleId :: Lens' ConfigRule (Maybe Text)-crConfigRuleId = lens _crConfigRuleId (\ s a -> s{_crConfigRuleId = a});---- | Defines which resources can trigger an evaluation for the rule. The scope can include one or more resource types, a combination of one resource type and one resource ID, or a combination of a tag key and value. Specify a scope to constrain the resources that can trigger an evaluation for the rule. If you do not specify a scope, evaluations are triggered when any resource in the recording group changes.-crScope :: Lens' ConfigRule (Maybe Scope)-crScope = lens _crScope (\ s a -> s{_crScope = a});---- | Indicates whether the AWS Config rule is active or is currently being deleted by AWS Config. It can also indicate the evaluation status for the Config rule. AWS Config sets the state of the rule to @EVALUATING@ temporarily after you use the @StartConfigRulesEvaluation@ request to evaluate your resources against the Config rule. AWS Config sets the state of the rule to @DELETING_RESULTS@ temporarily after you use the @DeleteEvaluationResults@ request to delete the current evaluation results for the Config rule. AWS Config sets the state of a rule to @DELETING@ temporarily after you use the @DeleteConfigRule@ request to delete the rule. After AWS Config deletes the rule, the rule and all of its evaluations are erased and are no longer available.-crConfigRuleState :: Lens' ConfigRule (Maybe ConfigRuleState)-crConfigRuleState = lens _crConfigRuleState (\ s a -> s{_crConfigRuleState = a});---- | The description that you provide for the AWS Config rule.-crDescription :: Lens' ConfigRule (Maybe Text)-crDescription = lens _crDescription (\ s a -> s{_crDescription = a});---- | The Amazon Resource Name (ARN) of the AWS Config rule.-crConfigRuleARN :: Lens' ConfigRule (Maybe Text)-crConfigRuleARN = lens _crConfigRuleARN (\ s a -> s{_crConfigRuleARN = a});---- | Provides the rule owner (AWS or customer), the rule identifier, and the notifications that cause the function to evaluate your AWS resources.-crSource :: Lens' ConfigRule Source-crSource = lens _crSource (\ s a -> s{_crSource = a});--instance FromJSON ConfigRule where- parseJSON- = withObject "ConfigRule"- (\ x ->- ConfigRule' <$>- (x .:? "InputParameters") <*>- (x .:? "ConfigRuleName")- <*> (x .:? "MaximumExecutionFrequency")- <*> (x .:? "ConfigRuleId")- <*> (x .:? "Scope")- <*> (x .:? "ConfigRuleState")- <*> (x .:? "Description")- <*> (x .:? "ConfigRuleArn")- <*> (x .: "Source"))--instance Hashable ConfigRule where--instance NFData ConfigRule where--instance ToJSON ConfigRule where- toJSON ConfigRule'{..}- = object- (catMaybes- [("InputParameters" .=) <$> _crInputParameters,- ("ConfigRuleName" .=) <$> _crConfigRuleName,- ("MaximumExecutionFrequency" .=) <$>- _crMaximumExecutionFrequency,- ("ConfigRuleId" .=) <$> _crConfigRuleId,- ("Scope" .=) <$> _crScope,- ("ConfigRuleState" .=) <$> _crConfigRuleState,- ("Description" .=) <$> _crDescription,- ("ConfigRuleArn" .=) <$> _crConfigRuleARN,- Just ("Source" .= _crSource)])---- | Status information for your AWS managed Config rules. The status includes information such as the last time the rule ran, the last time it failed, and the related error for the last failure.--------- This action does not return status information about custom Config rules.--------- /See:/ 'configRuleEvaluationStatus' smart constructor.-data ConfigRuleEvaluationStatus = ConfigRuleEvaluationStatus'- { _cresLastErrorCode :: !(Maybe Text)- , _cresLastFailedEvaluationTime :: !(Maybe POSIX)- , _cresFirstActivatedTime :: !(Maybe POSIX)- , _cresLastSuccessfulEvaluationTime :: !(Maybe POSIX)- , _cresConfigRuleName :: !(Maybe Text)- , _cresLastErrorMessage :: !(Maybe Text)- , _cresConfigRuleId :: !(Maybe Text)- , _cresLastFailedInvocationTime :: !(Maybe POSIX)- , _cresFirstEvaluationStarted :: !(Maybe Bool)- , _cresLastSuccessfulInvocationTime :: !(Maybe POSIX)- , _cresConfigRuleARN :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ConfigRuleEvaluationStatus' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cresLastErrorCode' - The error code that AWS Config returned when the rule last failed.------ * 'cresLastFailedEvaluationTime' - The time that AWS Config last failed to evaluate your AWS resources against the rule.------ * 'cresFirstActivatedTime' - The time that you first activated the AWS Config rule.------ * 'cresLastSuccessfulEvaluationTime' - The time that AWS Config last successfully evaluated your AWS resources against the rule.------ * 'cresConfigRuleName' - The name of the AWS Config rule.------ * 'cresLastErrorMessage' - The error message that AWS Config returned when the rule last failed.------ * 'cresConfigRuleId' - The ID of the AWS Config rule.------ * 'cresLastFailedInvocationTime' - The time that AWS Config last failed to invoke the AWS Config rule to evaluate your AWS resources.------ * 'cresFirstEvaluationStarted' - Indicates whether AWS Config has evaluated your resources against the rule at least once. * @true@ - AWS Config has evaluated your AWS resources against the rule at least once. * @false@ - AWS Config has not once finished evaluating your AWS resources against the rule.------ * 'cresLastSuccessfulInvocationTime' - The time that AWS Config last successfully invoked the AWS Config rule to evaluate your AWS resources.------ * 'cresConfigRuleARN' - The Amazon Resource Name (ARN) of the AWS Config rule.-configRuleEvaluationStatus- :: ConfigRuleEvaluationStatus-configRuleEvaluationStatus =- ConfigRuleEvaluationStatus'- { _cresLastErrorCode = Nothing- , _cresLastFailedEvaluationTime = Nothing- , _cresFirstActivatedTime = Nothing- , _cresLastSuccessfulEvaluationTime = Nothing- , _cresConfigRuleName = Nothing- , _cresLastErrorMessage = Nothing- , _cresConfigRuleId = Nothing- , _cresLastFailedInvocationTime = Nothing- , _cresFirstEvaluationStarted = Nothing- , _cresLastSuccessfulInvocationTime = Nothing- , _cresConfigRuleARN = Nothing- }----- | The error code that AWS Config returned when the rule last failed.-cresLastErrorCode :: Lens' ConfigRuleEvaluationStatus (Maybe Text)-cresLastErrorCode = lens _cresLastErrorCode (\ s a -> s{_cresLastErrorCode = a});---- | The time that AWS Config last failed to evaluate your AWS resources against the rule.-cresLastFailedEvaluationTime :: Lens' ConfigRuleEvaluationStatus (Maybe UTCTime)-cresLastFailedEvaluationTime = lens _cresLastFailedEvaluationTime (\ s a -> s{_cresLastFailedEvaluationTime = a}) . mapping _Time;---- | The time that you first activated the AWS Config rule.-cresFirstActivatedTime :: Lens' ConfigRuleEvaluationStatus (Maybe UTCTime)-cresFirstActivatedTime = lens _cresFirstActivatedTime (\ s a -> s{_cresFirstActivatedTime = a}) . mapping _Time;---- | The time that AWS Config last successfully evaluated your AWS resources against the rule.-cresLastSuccessfulEvaluationTime :: Lens' ConfigRuleEvaluationStatus (Maybe UTCTime)-cresLastSuccessfulEvaluationTime = lens _cresLastSuccessfulEvaluationTime (\ s a -> s{_cresLastSuccessfulEvaluationTime = a}) . mapping _Time;---- | The name of the AWS Config rule.-cresConfigRuleName :: Lens' ConfigRuleEvaluationStatus (Maybe Text)-cresConfigRuleName = lens _cresConfigRuleName (\ s a -> s{_cresConfigRuleName = a});---- | The error message that AWS Config returned when the rule last failed.-cresLastErrorMessage :: Lens' ConfigRuleEvaluationStatus (Maybe Text)-cresLastErrorMessage = lens _cresLastErrorMessage (\ s a -> s{_cresLastErrorMessage = a});---- | The ID of the AWS Config rule.-cresConfigRuleId :: Lens' ConfigRuleEvaluationStatus (Maybe Text)-cresConfigRuleId = lens _cresConfigRuleId (\ s a -> s{_cresConfigRuleId = a});---- | The time that AWS Config last failed to invoke the AWS Config rule to evaluate your AWS resources.-cresLastFailedInvocationTime :: Lens' ConfigRuleEvaluationStatus (Maybe UTCTime)-cresLastFailedInvocationTime = lens _cresLastFailedInvocationTime (\ s a -> s{_cresLastFailedInvocationTime = a}) . mapping _Time;---- | Indicates whether AWS Config has evaluated your resources against the rule at least once. * @true@ - AWS Config has evaluated your AWS resources against the rule at least once. * @false@ - AWS Config has not once finished evaluating your AWS resources against the rule.-cresFirstEvaluationStarted :: Lens' ConfigRuleEvaluationStatus (Maybe Bool)-cresFirstEvaluationStarted = lens _cresFirstEvaluationStarted (\ s a -> s{_cresFirstEvaluationStarted = a});---- | The time that AWS Config last successfully invoked the AWS Config rule to evaluate your AWS resources.-cresLastSuccessfulInvocationTime :: Lens' ConfigRuleEvaluationStatus (Maybe UTCTime)-cresLastSuccessfulInvocationTime = lens _cresLastSuccessfulInvocationTime (\ s a -> s{_cresLastSuccessfulInvocationTime = a}) . mapping _Time;---- | The Amazon Resource Name (ARN) of the AWS Config rule.-cresConfigRuleARN :: Lens' ConfigRuleEvaluationStatus (Maybe Text)-cresConfigRuleARN = lens _cresConfigRuleARN (\ s a -> s{_cresConfigRuleARN = a});--instance FromJSON ConfigRuleEvaluationStatus where- parseJSON- = withObject "ConfigRuleEvaluationStatus"- (\ x ->- ConfigRuleEvaluationStatus' <$>- (x .:? "LastErrorCode") <*>- (x .:? "LastFailedEvaluationTime")- <*> (x .:? "FirstActivatedTime")- <*> (x .:? "LastSuccessfulEvaluationTime")- <*> (x .:? "ConfigRuleName")- <*> (x .:? "LastErrorMessage")- <*> (x .:? "ConfigRuleId")- <*> (x .:? "LastFailedInvocationTime")- <*> (x .:? "FirstEvaluationStarted")- <*> (x .:? "LastSuccessfulInvocationTime")- <*> (x .:? "ConfigRuleArn"))--instance Hashable ConfigRuleEvaluationStatus where--instance NFData ConfigRuleEvaluationStatus where---- | Provides options for how often AWS Config delivers configuration snapshots to the Amazon S3 bucket in your delivery channel.--------- The frequency for a rule that triggers evaluations for your resources when AWS Config delivers the configuration snapshot is set by one of two values, depending on which is less frequent:------ * The value for the @deliveryFrequency@ parameter within the delivery channel configuration, which sets how often AWS Config delivers configuration snapshots. This value also sets how often AWS Config invokes evaluations for Config rules.------ * The value for the @MaximumExecutionFrequency@ parameter, which sets the maximum frequency with which AWS Config invokes evaluations for the rule. For more information, see 'ConfigRule' .------------ If the @deliveryFrequency@ value is less frequent than the @MaximumExecutionFrequency@ value for a rule, AWS Config invokes the rule only as often as the @deliveryFrequency@ value.------ * For example, you want your rule to run evaluations when AWS Config delivers the configuration snapshot.------ * You specify the @MaximumExecutionFrequency@ value for @Six_Hours@ .------ * You then specify the delivery channel @deliveryFrequency@ value for @TwentyFour_Hours@ .------ * Because the value for @deliveryFrequency@ is less frequent than @MaximumExecutionFrequency@ , AWS Config invokes evaluations for the rule every 24 hours.------------ You should set the @MaximumExecutionFrequency@ value to be at least as frequent as the @deliveryFrequency@ value. You can view the @deliveryFrequency@ value by using the @DescribeDeliveryChannnels@ action.------ To update the @deliveryFrequency@ with which AWS Config delivers your configuration snapshots, use the @PutDeliveryChannel@ action.--------- /See:/ 'configSnapshotDeliveryProperties' smart constructor.-newtype ConfigSnapshotDeliveryProperties = ConfigSnapshotDeliveryProperties'- { _csdpDeliveryFrequency :: Maybe MaximumExecutionFrequency- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ConfigSnapshotDeliveryProperties' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'csdpDeliveryFrequency' - The frequency with which AWS Config delivers configuration snapshots.-configSnapshotDeliveryProperties- :: ConfigSnapshotDeliveryProperties-configSnapshotDeliveryProperties =- ConfigSnapshotDeliveryProperties' {_csdpDeliveryFrequency = Nothing}----- | The frequency with which AWS Config delivers configuration snapshots.-csdpDeliveryFrequency :: Lens' ConfigSnapshotDeliveryProperties (Maybe MaximumExecutionFrequency)-csdpDeliveryFrequency = lens _csdpDeliveryFrequency (\ s a -> s{_csdpDeliveryFrequency = a});--instance FromJSON ConfigSnapshotDeliveryProperties- where- parseJSON- = withObject "ConfigSnapshotDeliveryProperties"- (\ x ->- ConfigSnapshotDeliveryProperties' <$>- (x .:? "deliveryFrequency"))--instance Hashable ConfigSnapshotDeliveryProperties- where--instance NFData ConfigSnapshotDeliveryProperties- where--instance ToJSON ConfigSnapshotDeliveryProperties- where- toJSON ConfigSnapshotDeliveryProperties'{..}- = object- (catMaybes- [("deliveryFrequency" .=) <$>- _csdpDeliveryFrequency])---- | A list that contains the status of the delivery of the configuration stream notification to the Amazon SNS topic.------------ /See:/ 'configStreamDeliveryInfo' smart constructor.-data ConfigStreamDeliveryInfo = ConfigStreamDeliveryInfo'- { _csdiLastErrorCode :: !(Maybe Text)- , _csdiLastStatusChangeTime :: !(Maybe POSIX)- , _csdiLastStatus :: !(Maybe DeliveryStatus)- , _csdiLastErrorMessage :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ConfigStreamDeliveryInfo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'csdiLastErrorCode' - The error code from the last attempted delivery.------ * 'csdiLastStatusChangeTime' - The time from the last status change.------ * 'csdiLastStatus' - Status of the last attempted delivery. __Note__ Providing an SNS topic on a <http://docs.aws.amazon.com/config/latest/APIReference/API_DeliveryChannel.html DeliveryChannel> for AWS Config is optional. If the SNS delivery is turned off, the last status will be __Not_Applicable__ .------ * 'csdiLastErrorMessage' - The error message from the last attempted delivery.-configStreamDeliveryInfo- :: ConfigStreamDeliveryInfo-configStreamDeliveryInfo =- ConfigStreamDeliveryInfo'- { _csdiLastErrorCode = Nothing- , _csdiLastStatusChangeTime = Nothing- , _csdiLastStatus = Nothing- , _csdiLastErrorMessage = Nothing- }----- | The error code from the last attempted delivery.-csdiLastErrorCode :: Lens' ConfigStreamDeliveryInfo (Maybe Text)-csdiLastErrorCode = lens _csdiLastErrorCode (\ s a -> s{_csdiLastErrorCode = a});---- | The time from the last status change.-csdiLastStatusChangeTime :: Lens' ConfigStreamDeliveryInfo (Maybe UTCTime)-csdiLastStatusChangeTime = lens _csdiLastStatusChangeTime (\ s a -> s{_csdiLastStatusChangeTime = a}) . mapping _Time;---- | Status of the last attempted delivery. __Note__ Providing an SNS topic on a <http://docs.aws.amazon.com/config/latest/APIReference/API_DeliveryChannel.html DeliveryChannel> for AWS Config is optional. If the SNS delivery is turned off, the last status will be __Not_Applicable__ .-csdiLastStatus :: Lens' ConfigStreamDeliveryInfo (Maybe DeliveryStatus)-csdiLastStatus = lens _csdiLastStatus (\ s a -> s{_csdiLastStatus = a});---- | The error message from the last attempted delivery.-csdiLastErrorMessage :: Lens' ConfigStreamDeliveryInfo (Maybe Text)-csdiLastErrorMessage = lens _csdiLastErrorMessage (\ s a -> s{_csdiLastErrorMessage = a});--instance FromJSON ConfigStreamDeliveryInfo where- parseJSON- = withObject "ConfigStreamDeliveryInfo"- (\ x ->- ConfigStreamDeliveryInfo' <$>- (x .:? "lastErrorCode") <*>- (x .:? "lastStatusChangeTime")- <*> (x .:? "lastStatus")- <*> (x .:? "lastErrorMessage"))--instance Hashable ConfigStreamDeliveryInfo where--instance NFData ConfigStreamDeliveryInfo where---- | A list that contains detailed configurations of a specified resource.------------ /See:/ 'configurationItem' smart constructor.-data ConfigurationItem = ConfigurationItem'- { _ciResourceId :: !(Maybe Text)- , _ciResourceType :: !(Maybe ResourceType)- , _ciConfigurationStateId :: !(Maybe Text)- , _ciArn :: !(Maybe Text)- , _ciResourceName :: !(Maybe Text)- , _ciResourceCreationTime :: !(Maybe POSIX)- , _ciConfigurationItemStatus :: !(Maybe ConfigurationItemStatus)- , _ciConfigurationItemCaptureTime :: !(Maybe POSIX)- , _ciAccountId :: !(Maybe Text)- , _ciSupplementaryConfiguration :: !(Maybe (Map Text Text))- , _ciAvailabilityZone :: !(Maybe Text)- , _ciRelationships :: !(Maybe [Relationship])- , _ciVersion :: !(Maybe Text)- , _ciAwsRegion :: !(Maybe Text)- , _ciRelatedEvents :: !(Maybe [Text])- , _ciConfiguration :: !(Maybe Text)- , _ciConfigurationItemMD5Hash :: !(Maybe Text)- , _ciTags :: !(Maybe (Map Text Text))- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ConfigurationItem' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ciResourceId' - The ID of the resource (for example., @sg-xxxxxx@ ).------ * 'ciResourceType' - The type of AWS resource.------ * 'ciConfigurationStateId' - An identifier that indicates the ordering of the configuration items of a resource.------ * 'ciArn' - The Amazon Resource Name (ARN) of the resource.------ * 'ciResourceName' - The custom name of the resource, if available.------ * 'ciResourceCreationTime' - The time stamp when the resource was created.------ * 'ciConfigurationItemStatus' - The configuration item status.------ * 'ciConfigurationItemCaptureTime' - The time when the configuration recording was initiated.------ * 'ciAccountId' - The 12 digit AWS account ID associated with the resource.------ * 'ciSupplementaryConfiguration' - Configuration attributes that AWS Config returns for certain resource types to supplement the information returned for the @configuration@ parameter.------ * 'ciAvailabilityZone' - The Availability Zone associated with the resource.------ * 'ciRelationships' - A list of related AWS resources.------ * 'ciVersion' - The version number of the resource configuration.------ * 'ciAwsRegion' - The region where the resource resides.------ * 'ciRelatedEvents' - A list of CloudTrail event IDs. A populated field indicates that the current configuration was initiated by the events recorded in the CloudTrail log. For more information about CloudTrail, see <http://docs.aws.amazon.com/awscloudtrail/latest/userguide/what_is_cloud_trail_top_level.html What is AWS CloudTrail?> . An empty field indicates that the current configuration was not initiated by any event.------ * 'ciConfiguration' - The description of the resource configuration.------ * 'ciConfigurationItemMD5Hash' - Unique MD5 hash that represents the configuration item's state. You can use MD5 hash to compare the states of two or more configuration items that are associated with the same resource.------ * 'ciTags' - A mapping of key value tags associated with the resource.-configurationItem- :: ConfigurationItem-configurationItem =- ConfigurationItem'- { _ciResourceId = Nothing- , _ciResourceType = Nothing- , _ciConfigurationStateId = Nothing- , _ciArn = Nothing- , _ciResourceName = Nothing- , _ciResourceCreationTime = Nothing- , _ciConfigurationItemStatus = Nothing- , _ciConfigurationItemCaptureTime = Nothing- , _ciAccountId = Nothing- , _ciSupplementaryConfiguration = Nothing- , _ciAvailabilityZone = Nothing- , _ciRelationships = Nothing- , _ciVersion = Nothing- , _ciAwsRegion = Nothing- , _ciRelatedEvents = Nothing- , _ciConfiguration = Nothing- , _ciConfigurationItemMD5Hash = Nothing- , _ciTags = Nothing- }----- | The ID of the resource (for example., @sg-xxxxxx@ ).-ciResourceId :: Lens' ConfigurationItem (Maybe Text)-ciResourceId = lens _ciResourceId (\ s a -> s{_ciResourceId = a});---- | The type of AWS resource.-ciResourceType :: Lens' ConfigurationItem (Maybe ResourceType)-ciResourceType = lens _ciResourceType (\ s a -> s{_ciResourceType = a});---- | An identifier that indicates the ordering of the configuration items of a resource.-ciConfigurationStateId :: Lens' ConfigurationItem (Maybe Text)-ciConfigurationStateId = lens _ciConfigurationStateId (\ s a -> s{_ciConfigurationStateId = a});---- | The Amazon Resource Name (ARN) of the resource.-ciArn :: Lens' ConfigurationItem (Maybe Text)-ciArn = lens _ciArn (\ s a -> s{_ciArn = a});---- | The custom name of the resource, if available.-ciResourceName :: Lens' ConfigurationItem (Maybe Text)-ciResourceName = lens _ciResourceName (\ s a -> s{_ciResourceName = a});---- | The time stamp when the resource was created.-ciResourceCreationTime :: Lens' ConfigurationItem (Maybe UTCTime)-ciResourceCreationTime = lens _ciResourceCreationTime (\ s a -> s{_ciResourceCreationTime = a}) . mapping _Time;---- | The configuration item status.-ciConfigurationItemStatus :: Lens' ConfigurationItem (Maybe ConfigurationItemStatus)-ciConfigurationItemStatus = lens _ciConfigurationItemStatus (\ s a -> s{_ciConfigurationItemStatus = a});---- | The time when the configuration recording was initiated.-ciConfigurationItemCaptureTime :: Lens' ConfigurationItem (Maybe UTCTime)-ciConfigurationItemCaptureTime = lens _ciConfigurationItemCaptureTime (\ s a -> s{_ciConfigurationItemCaptureTime = a}) . mapping _Time;---- | The 12 digit AWS account ID associated with the resource.-ciAccountId :: Lens' ConfigurationItem (Maybe Text)-ciAccountId = lens _ciAccountId (\ s a -> s{_ciAccountId = a});---- | Configuration attributes that AWS Config returns for certain resource types to supplement the information returned for the @configuration@ parameter.-ciSupplementaryConfiguration :: Lens' ConfigurationItem (HashMap Text Text)-ciSupplementaryConfiguration = lens _ciSupplementaryConfiguration (\ s a -> s{_ciSupplementaryConfiguration = a}) . _Default . _Map;---- | The Availability Zone associated with the resource.-ciAvailabilityZone :: Lens' ConfigurationItem (Maybe Text)-ciAvailabilityZone = lens _ciAvailabilityZone (\ s a -> s{_ciAvailabilityZone = a});---- | A list of related AWS resources.-ciRelationships :: Lens' ConfigurationItem [Relationship]-ciRelationships = lens _ciRelationships (\ s a -> s{_ciRelationships = a}) . _Default . _Coerce;---- | The version number of the resource configuration.-ciVersion :: Lens' ConfigurationItem (Maybe Text)-ciVersion = lens _ciVersion (\ s a -> s{_ciVersion = a});---- | The region where the resource resides.-ciAwsRegion :: Lens' ConfigurationItem (Maybe Text)-ciAwsRegion = lens _ciAwsRegion (\ s a -> s{_ciAwsRegion = a});---- | A list of CloudTrail event IDs. A populated field indicates that the current configuration was initiated by the events recorded in the CloudTrail log. For more information about CloudTrail, see <http://docs.aws.amazon.com/awscloudtrail/latest/userguide/what_is_cloud_trail_top_level.html What is AWS CloudTrail?> . An empty field indicates that the current configuration was not initiated by any event.-ciRelatedEvents :: Lens' ConfigurationItem [Text]-ciRelatedEvents = lens _ciRelatedEvents (\ s a -> s{_ciRelatedEvents = a}) . _Default . _Coerce;---- | The description of the resource configuration.-ciConfiguration :: Lens' ConfigurationItem (Maybe Text)-ciConfiguration = lens _ciConfiguration (\ s a -> s{_ciConfiguration = a});---- | Unique MD5 hash that represents the configuration item's state. You can use MD5 hash to compare the states of two or more configuration items that are associated with the same resource.-ciConfigurationItemMD5Hash :: Lens' ConfigurationItem (Maybe Text)-ciConfigurationItemMD5Hash = lens _ciConfigurationItemMD5Hash (\ s a -> s{_ciConfigurationItemMD5Hash = a});---- | A mapping of key value tags associated with the resource.-ciTags :: Lens' ConfigurationItem (HashMap Text Text)-ciTags = lens _ciTags (\ s a -> s{_ciTags = a}) . _Default . _Map;--instance FromJSON ConfigurationItem where- parseJSON- = withObject "ConfigurationItem"- (\ x ->- ConfigurationItem' <$>- (x .:? "resourceId") <*> (x .:? "resourceType") <*>- (x .:? "configurationStateId")- <*> (x .:? "arn")- <*> (x .:? "resourceName")- <*> (x .:? "resourceCreationTime")- <*> (x .:? "configurationItemStatus")- <*> (x .:? "configurationItemCaptureTime")- <*> (x .:? "accountId")- <*> (x .:? "supplementaryConfiguration" .!= mempty)- <*> (x .:? "availabilityZone")- <*> (x .:? "relationships" .!= mempty)- <*> (x .:? "version")- <*> (x .:? "awsRegion")- <*> (x .:? "relatedEvents" .!= mempty)- <*> (x .:? "configuration")- <*> (x .:? "configurationItemMD5Hash")- <*> (x .:? "tags" .!= mempty))--instance Hashable ConfigurationItem where--instance NFData ConfigurationItem where---- | An object that represents the recording of configuration changes of an AWS resource.------------ /See:/ 'configurationRecorder' smart constructor.-data ConfigurationRecorder = ConfigurationRecorder'- { _crName :: !(Maybe Text)- , _crRecordingGroup :: !(Maybe RecordingGroup)- , _crRoleARN :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ConfigurationRecorder' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'crName' - The name of the recorder. By default, AWS Config automatically assigns the name "default" when creating the configuration recorder. You cannot change the assigned name.------ * 'crRecordingGroup' - Specifies the types of AWS resource for which AWS Config records configuration changes.------ * 'crRoleARN' - Amazon Resource Name (ARN) of the IAM role used to describe the AWS resources associated with the account.-configurationRecorder- :: ConfigurationRecorder-configurationRecorder =- ConfigurationRecorder'- {_crName = Nothing, _crRecordingGroup = Nothing, _crRoleARN = Nothing}----- | The name of the recorder. By default, AWS Config automatically assigns the name "default" when creating the configuration recorder. You cannot change the assigned name.-crName :: Lens' ConfigurationRecorder (Maybe Text)-crName = lens _crName (\ s a -> s{_crName = a});---- | Specifies the types of AWS resource for which AWS Config records configuration changes.-crRecordingGroup :: Lens' ConfigurationRecorder (Maybe RecordingGroup)-crRecordingGroup = lens _crRecordingGroup (\ s a -> s{_crRecordingGroup = a});---- | Amazon Resource Name (ARN) of the IAM role used to describe the AWS resources associated with the account.-crRoleARN :: Lens' ConfigurationRecorder (Maybe Text)-crRoleARN = lens _crRoleARN (\ s a -> s{_crRoleARN = a});--instance FromJSON ConfigurationRecorder where- parseJSON- = withObject "ConfigurationRecorder"- (\ x ->- ConfigurationRecorder' <$>- (x .:? "name") <*> (x .:? "recordingGroup") <*>- (x .:? "roleARN"))--instance Hashable ConfigurationRecorder where--instance NFData ConfigurationRecorder where--instance ToJSON ConfigurationRecorder where- toJSON ConfigurationRecorder'{..}- = object- (catMaybes- [("name" .=) <$> _crName,- ("recordingGroup" .=) <$> _crRecordingGroup,- ("roleARN" .=) <$> _crRoleARN])---- | The current status of the configuration recorder.------------ /See:/ 'configurationRecorderStatus' smart constructor.-data ConfigurationRecorderStatus = ConfigurationRecorderStatus'- { _crsLastErrorCode :: !(Maybe Text)- , _crsLastStopTime :: !(Maybe POSIX)- , _crsLastStatusChangeTime :: !(Maybe POSIX)- , _crsRecording :: !(Maybe Bool)- , _crsLastStatus :: !(Maybe RecorderStatus)- , _crsLastErrorMessage :: !(Maybe Text)- , _crsName :: !(Maybe Text)- , _crsLastStartTime :: !(Maybe POSIX)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ConfigurationRecorderStatus' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'crsLastErrorCode' - The error code indicating that the recording failed.------ * 'crsLastStopTime' - The time the recorder was last stopped.------ * 'crsLastStatusChangeTime' - The time when the status was last changed.------ * 'crsRecording' - Specifies whether the recorder is currently recording or not.------ * 'crsLastStatus' - The last (previous) status of the recorder.------ * 'crsLastErrorMessage' - The message indicating that the recording failed due to an error.------ * 'crsName' - The name of the configuration recorder.------ * 'crsLastStartTime' - The time the recorder was last started.-configurationRecorderStatus- :: ConfigurationRecorderStatus-configurationRecorderStatus =- ConfigurationRecorderStatus'- { _crsLastErrorCode = Nothing- , _crsLastStopTime = Nothing- , _crsLastStatusChangeTime = Nothing- , _crsRecording = Nothing- , _crsLastStatus = Nothing- , _crsLastErrorMessage = Nothing- , _crsName = Nothing- , _crsLastStartTime = Nothing- }----- | The error code indicating that the recording failed.-crsLastErrorCode :: Lens' ConfigurationRecorderStatus (Maybe Text)-crsLastErrorCode = lens _crsLastErrorCode (\ s a -> s{_crsLastErrorCode = a});---- | The time the recorder was last stopped.-crsLastStopTime :: Lens' ConfigurationRecorderStatus (Maybe UTCTime)-crsLastStopTime = lens _crsLastStopTime (\ s a -> s{_crsLastStopTime = a}) . mapping _Time;---- | The time when the status was last changed.-crsLastStatusChangeTime :: Lens' ConfigurationRecorderStatus (Maybe UTCTime)-crsLastStatusChangeTime = lens _crsLastStatusChangeTime (\ s a -> s{_crsLastStatusChangeTime = a}) . mapping _Time;---- | Specifies whether the recorder is currently recording or not.-crsRecording :: Lens' ConfigurationRecorderStatus (Maybe Bool)-crsRecording = lens _crsRecording (\ s a -> s{_crsRecording = a});---- | The last (previous) status of the recorder.-crsLastStatus :: Lens' ConfigurationRecorderStatus (Maybe RecorderStatus)-crsLastStatus = lens _crsLastStatus (\ s a -> s{_crsLastStatus = a});---- | The message indicating that the recording failed due to an error.-crsLastErrorMessage :: Lens' ConfigurationRecorderStatus (Maybe Text)-crsLastErrorMessage = lens _crsLastErrorMessage (\ s a -> s{_crsLastErrorMessage = a});---- | The name of the configuration recorder.-crsName :: Lens' ConfigurationRecorderStatus (Maybe Text)-crsName = lens _crsName (\ s a -> s{_crsName = a});---- | The time the recorder was last started.-crsLastStartTime :: Lens' ConfigurationRecorderStatus (Maybe UTCTime)-crsLastStartTime = lens _crsLastStartTime (\ s a -> s{_crsLastStartTime = a}) . mapping _Time;--instance FromJSON ConfigurationRecorderStatus where- parseJSON- = withObject "ConfigurationRecorderStatus"- (\ x ->- ConfigurationRecorderStatus' <$>- (x .:? "lastErrorCode") <*> (x .:? "lastStopTime")- <*> (x .:? "lastStatusChangeTime")- <*> (x .:? "recording")- <*> (x .:? "lastStatus")- <*> (x .:? "lastErrorMessage")- <*> (x .:? "name")- <*> (x .:? "lastStartTime"))--instance Hashable ConfigurationRecorderStatus where--instance NFData ConfigurationRecorderStatus where---- | The channel through which AWS Config delivers notifications and updated configuration states.------------ /See:/ 'deliveryChannel' smart constructor.-data DeliveryChannel = DeliveryChannel'- { _dcS3KeyPrefix :: !(Maybe Text)- , _dcSnsTopicARN :: !(Maybe Text)- , _dcName :: !(Maybe Text)- , _dcConfigSnapshotDeliveryProperties :: !(Maybe ConfigSnapshotDeliveryProperties)- , _dcS3BucketName :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeliveryChannel' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dcS3KeyPrefix' - The prefix for the specified Amazon S3 bucket.------ * 'dcSnsTopicARN' - The Amazon Resource Name (ARN) of the Amazon SNS topic to which AWS Config sends notifications about configuration changes. If you choose a topic from another account, the topic must have policies that grant access permissions to AWS Config. For more information, see <http://docs.aws.amazon.com/config/latest/developerguide/sns-topic-policy.html Permissions for the Amazon SNS Topic> in the AWS Config Developer Guide.------ * 'dcName' - The name of the delivery channel. By default, AWS Config assigns the name "default" when creating the delivery channel. To change the delivery channel name, you must use the DeleteDeliveryChannel action to delete your current delivery channel, and then you must use the PutDeliveryChannel command to create a delivery channel that has the desired name.------ * 'dcConfigSnapshotDeliveryProperties' - The options for how often AWS Config delivers configuration snapshots to the Amazon S3 bucket.------ * 'dcS3BucketName' - The name of the Amazon S3 bucket to which AWS Config delivers configuration snapshots and configuration history files. If you specify a bucket that belongs to another AWS account, that bucket must have policies that grant access permissions to AWS Config. For more information, see <http://docs.aws.amazon.com/config/latest/developerguide/s3-bucket-policy.html Permissions for the Amazon S3 Bucket> in the AWS Config Developer Guide.-deliveryChannel- :: DeliveryChannel-deliveryChannel =- DeliveryChannel'- { _dcS3KeyPrefix = Nothing- , _dcSnsTopicARN = Nothing- , _dcName = Nothing- , _dcConfigSnapshotDeliveryProperties = Nothing- , _dcS3BucketName = Nothing- }----- | The prefix for the specified Amazon S3 bucket.-dcS3KeyPrefix :: Lens' DeliveryChannel (Maybe Text)-dcS3KeyPrefix = lens _dcS3KeyPrefix (\ s a -> s{_dcS3KeyPrefix = a});---- | The Amazon Resource Name (ARN) of the Amazon SNS topic to which AWS Config sends notifications about configuration changes. If you choose a topic from another account, the topic must have policies that grant access permissions to AWS Config. For more information, see <http://docs.aws.amazon.com/config/latest/developerguide/sns-topic-policy.html Permissions for the Amazon SNS Topic> in the AWS Config Developer Guide.-dcSnsTopicARN :: Lens' DeliveryChannel (Maybe Text)-dcSnsTopicARN = lens _dcSnsTopicARN (\ s a -> s{_dcSnsTopicARN = a});---- | The name of the delivery channel. By default, AWS Config assigns the name "default" when creating the delivery channel. To change the delivery channel name, you must use the DeleteDeliveryChannel action to delete your current delivery channel, and then you must use the PutDeliveryChannel command to create a delivery channel that has the desired name.-dcName :: Lens' DeliveryChannel (Maybe Text)-dcName = lens _dcName (\ s a -> s{_dcName = a});---- | The options for how often AWS Config delivers configuration snapshots to the Amazon S3 bucket.-dcConfigSnapshotDeliveryProperties :: Lens' DeliveryChannel (Maybe ConfigSnapshotDeliveryProperties)-dcConfigSnapshotDeliveryProperties = lens _dcConfigSnapshotDeliveryProperties (\ s a -> s{_dcConfigSnapshotDeliveryProperties = a});---- | The name of the Amazon S3 bucket to which AWS Config delivers configuration snapshots and configuration history files. If you specify a bucket that belongs to another AWS account, that bucket must have policies that grant access permissions to AWS Config. For more information, see <http://docs.aws.amazon.com/config/latest/developerguide/s3-bucket-policy.html Permissions for the Amazon S3 Bucket> in the AWS Config Developer Guide.-dcS3BucketName :: Lens' DeliveryChannel (Maybe Text)-dcS3BucketName = lens _dcS3BucketName (\ s a -> s{_dcS3BucketName = a});--instance FromJSON DeliveryChannel where- parseJSON- = withObject "DeliveryChannel"- (\ x ->- DeliveryChannel' <$>- (x .:? "s3KeyPrefix") <*> (x .:? "snsTopicARN") <*>- (x .:? "name")- <*> (x .:? "configSnapshotDeliveryProperties")- <*> (x .:? "s3BucketName"))--instance Hashable DeliveryChannel where--instance NFData DeliveryChannel where--instance ToJSON DeliveryChannel where- toJSON DeliveryChannel'{..}- = object- (catMaybes- [("s3KeyPrefix" .=) <$> _dcS3KeyPrefix,- ("snsTopicARN" .=) <$> _dcSnsTopicARN,- ("name" .=) <$> _dcName,- ("configSnapshotDeliveryProperties" .=) <$>- _dcConfigSnapshotDeliveryProperties,- ("s3BucketName" .=) <$> _dcS3BucketName])---- | The status of a specified delivery channel.--------- Valid values: @Success@ | @Failure@--------- /See:/ 'deliveryChannelStatus' smart constructor.-data DeliveryChannelStatus = DeliveryChannelStatus'- { _dcsConfigSnapshotDeliveryInfo :: !(Maybe ConfigExportDeliveryInfo)- , _dcsConfigStreamDeliveryInfo :: !(Maybe ConfigStreamDeliveryInfo)- , _dcsConfigHistoryDeliveryInfo :: !(Maybe ConfigExportDeliveryInfo)- , _dcsName :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'DeliveryChannelStatus' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dcsConfigSnapshotDeliveryInfo' - A list containing the status of the delivery of the snapshot to the specified Amazon S3 bucket.------ * 'dcsConfigStreamDeliveryInfo' - A list containing the status of the delivery of the configuration stream notification to the specified Amazon SNS topic.------ * 'dcsConfigHistoryDeliveryInfo' - A list that contains the status of the delivery of the configuration history to the specified Amazon S3 bucket.------ * 'dcsName' - The name of the delivery channel.-deliveryChannelStatus- :: DeliveryChannelStatus-deliveryChannelStatus =- DeliveryChannelStatus'- { _dcsConfigSnapshotDeliveryInfo = Nothing- , _dcsConfigStreamDeliveryInfo = Nothing- , _dcsConfigHistoryDeliveryInfo = Nothing- , _dcsName = Nothing- }----- | A list containing the status of the delivery of the snapshot to the specified Amazon S3 bucket.-dcsConfigSnapshotDeliveryInfo :: Lens' DeliveryChannelStatus (Maybe ConfigExportDeliveryInfo)-dcsConfigSnapshotDeliveryInfo = lens _dcsConfigSnapshotDeliveryInfo (\ s a -> s{_dcsConfigSnapshotDeliveryInfo = a});---- | A list containing the status of the delivery of the configuration stream notification to the specified Amazon SNS topic.-dcsConfigStreamDeliveryInfo :: Lens' DeliveryChannelStatus (Maybe ConfigStreamDeliveryInfo)-dcsConfigStreamDeliveryInfo = lens _dcsConfigStreamDeliveryInfo (\ s a -> s{_dcsConfigStreamDeliveryInfo = a});---- | A list that contains the status of the delivery of the configuration history to the specified Amazon S3 bucket.-dcsConfigHistoryDeliveryInfo :: Lens' DeliveryChannelStatus (Maybe ConfigExportDeliveryInfo)-dcsConfigHistoryDeliveryInfo = lens _dcsConfigHistoryDeliveryInfo (\ s a -> s{_dcsConfigHistoryDeliveryInfo = a});---- | The name of the delivery channel.-dcsName :: Lens' DeliveryChannelStatus (Maybe Text)-dcsName = lens _dcsName (\ s a -> s{_dcsName = a});--instance FromJSON DeliveryChannelStatus where- parseJSON- = withObject "DeliveryChannelStatus"- (\ x ->- DeliveryChannelStatus' <$>- (x .:? "configSnapshotDeliveryInfo") <*>- (x .:? "configStreamDeliveryInfo")- <*> (x .:? "configHistoryDeliveryInfo")- <*> (x .:? "name"))--instance Hashable DeliveryChannelStatus where--instance NFData DeliveryChannelStatus where---- | Identifies an AWS resource and indicates whether it complies with the AWS Config rule that it was evaluated against.------------ /See:/ 'evaluation' smart constructor.-data Evaluation = Evaluation'- { _eAnnotation :: !(Maybe Text)- , _eComplianceResourceType :: !Text- , _eComplianceResourceId :: !Text- , _eComplianceType :: !ComplianceType- , _eOrderingTimestamp :: !POSIX- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'Evaluation' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'eAnnotation' - Supplementary information about how the evaluation determined the compliance.------ * 'eComplianceResourceType' - The type of AWS resource that was evaluated.------ * 'eComplianceResourceId' - The ID of the AWS resource that was evaluated.------ * 'eComplianceType' - Indicates whether the AWS resource complies with the AWS Config rule that it was evaluated against. For the @Evaluation@ data type, AWS Config supports only the @COMPLIANT@ , @NON_COMPLIANT@ , and @NOT_APPLICABLE@ values. AWS Config does not support the @INSUFFICIENT_DATA@ value for this data type. Similarly, AWS Config does not accept @INSUFFICIENT_DATA@ as the value for @ComplianceType@ from a @PutEvaluations@ request. For example, an AWS Lambda function for a custom Config rule cannot pass an @INSUFFICIENT_DATA@ value to AWS Config.------ * 'eOrderingTimestamp' - The time of the event in AWS Config that triggered the evaluation. For event-based evaluations, the time indicates when AWS Config created the configuration item that triggered the evaluation. For periodic evaluations, the time indicates when AWS Config triggered the evaluation at the frequency that you specified (for example, every 24 hours).-evaluation- :: Text -- ^ 'eComplianceResourceType'- -> Text -- ^ 'eComplianceResourceId'- -> ComplianceType -- ^ 'eComplianceType'- -> UTCTime -- ^ 'eOrderingTimestamp'- -> Evaluation-evaluation pComplianceResourceType_ pComplianceResourceId_ pComplianceType_ pOrderingTimestamp_ =- Evaluation'- { _eAnnotation = Nothing- , _eComplianceResourceType = pComplianceResourceType_- , _eComplianceResourceId = pComplianceResourceId_- , _eComplianceType = pComplianceType_- , _eOrderingTimestamp = _Time # pOrderingTimestamp_- }----- | Supplementary information about how the evaluation determined the compliance.-eAnnotation :: Lens' Evaluation (Maybe Text)-eAnnotation = lens _eAnnotation (\ s a -> s{_eAnnotation = a});---- | The type of AWS resource that was evaluated.-eComplianceResourceType :: Lens' Evaluation Text-eComplianceResourceType = lens _eComplianceResourceType (\ s a -> s{_eComplianceResourceType = a});---- | The ID of the AWS resource that was evaluated.-eComplianceResourceId :: Lens' Evaluation Text-eComplianceResourceId = lens _eComplianceResourceId (\ s a -> s{_eComplianceResourceId = a});---- | Indicates whether the AWS resource complies with the AWS Config rule that it was evaluated against. For the @Evaluation@ data type, AWS Config supports only the @COMPLIANT@ , @NON_COMPLIANT@ , and @NOT_APPLICABLE@ values. AWS Config does not support the @INSUFFICIENT_DATA@ value for this data type. Similarly, AWS Config does not accept @INSUFFICIENT_DATA@ as the value for @ComplianceType@ from a @PutEvaluations@ request. For example, an AWS Lambda function for a custom Config rule cannot pass an @INSUFFICIENT_DATA@ value to AWS Config.-eComplianceType :: Lens' Evaluation ComplianceType-eComplianceType = lens _eComplianceType (\ s a -> s{_eComplianceType = a});---- | The time of the event in AWS Config that triggered the evaluation. For event-based evaluations, the time indicates when AWS Config created the configuration item that triggered the evaluation. For periodic evaluations, the time indicates when AWS Config triggered the evaluation at the frequency that you specified (for example, every 24 hours).-eOrderingTimestamp :: Lens' Evaluation UTCTime-eOrderingTimestamp = lens _eOrderingTimestamp (\ s a -> s{_eOrderingTimestamp = a}) . _Time;--instance FromJSON Evaluation where- parseJSON- = withObject "Evaluation"- (\ x ->- Evaluation' <$>- (x .:? "Annotation") <*>- (x .: "ComplianceResourceType")- <*> (x .: "ComplianceResourceId")- <*> (x .: "ComplianceType")- <*> (x .: "OrderingTimestamp"))--instance Hashable Evaluation where--instance NFData Evaluation where--instance ToJSON Evaluation where- toJSON Evaluation'{..}- = object- (catMaybes- [("Annotation" .=) <$> _eAnnotation,- Just- ("ComplianceResourceType" .=- _eComplianceResourceType),- Just- ("ComplianceResourceId" .= _eComplianceResourceId),- Just ("ComplianceType" .= _eComplianceType),- Just ("OrderingTimestamp" .= _eOrderingTimestamp)])---- | The details of an AWS Config evaluation. Provides the AWS resource that was evaluated, the compliance of the resource, related timestamps, and supplementary information.------------ /See:/ 'evaluationResult' smart constructor.-data EvaluationResult = EvaluationResult'- { _erEvaluationResultIdentifier :: !(Maybe EvaluationResultIdentifier)- , _erAnnotation :: !(Maybe Text)- , _erConfigRuleInvokedTime :: !(Maybe POSIX)- , _erResultRecordedTime :: !(Maybe POSIX)- , _erResultToken :: !(Maybe Text)- , _erComplianceType :: !(Maybe ComplianceType)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'EvaluationResult' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'erEvaluationResultIdentifier' - Uniquely identifies the evaluation result.------ * 'erAnnotation' - Supplementary information about how the evaluation determined the compliance.------ * 'erConfigRuleInvokedTime' - The time when the AWS Config rule evaluated the AWS resource.------ * 'erResultRecordedTime' - The time when AWS Config recorded the evaluation result.------ * 'erResultToken' - An encrypted token that associates an evaluation with an AWS Config rule. The token identifies the rule, the AWS resource being evaluated, and the event that triggered the evaluation.------ * 'erComplianceType' - Indicates whether the AWS resource complies with the AWS Config rule that evaluated it. For the @EvaluationResult@ data type, AWS Config supports only the @COMPLIANT@ , @NON_COMPLIANT@ , and @NOT_APPLICABLE@ values. AWS Config does not support the @INSUFFICIENT_DATA@ value for the @EvaluationResult@ data type.-evaluationResult- :: EvaluationResult-evaluationResult =- EvaluationResult'- { _erEvaluationResultIdentifier = Nothing- , _erAnnotation = Nothing- , _erConfigRuleInvokedTime = Nothing- , _erResultRecordedTime = Nothing- , _erResultToken = Nothing- , _erComplianceType = Nothing- }----- | Uniquely identifies the evaluation result.-erEvaluationResultIdentifier :: Lens' EvaluationResult (Maybe EvaluationResultIdentifier)-erEvaluationResultIdentifier = lens _erEvaluationResultIdentifier (\ s a -> s{_erEvaluationResultIdentifier = a});---- | Supplementary information about how the evaluation determined the compliance.-erAnnotation :: Lens' EvaluationResult (Maybe Text)-erAnnotation = lens _erAnnotation (\ s a -> s{_erAnnotation = a});---- | The time when the AWS Config rule evaluated the AWS resource.-erConfigRuleInvokedTime :: Lens' EvaluationResult (Maybe UTCTime)-erConfigRuleInvokedTime = lens _erConfigRuleInvokedTime (\ s a -> s{_erConfigRuleInvokedTime = a}) . mapping _Time;---- | The time when AWS Config recorded the evaluation result.-erResultRecordedTime :: Lens' EvaluationResult (Maybe UTCTime)-erResultRecordedTime = lens _erResultRecordedTime (\ s a -> s{_erResultRecordedTime = a}) . mapping _Time;---- | An encrypted token that associates an evaluation with an AWS Config rule. The token identifies the rule, the AWS resource being evaluated, and the event that triggered the evaluation.-erResultToken :: Lens' EvaluationResult (Maybe Text)-erResultToken = lens _erResultToken (\ s a -> s{_erResultToken = a});---- | Indicates whether the AWS resource complies with the AWS Config rule that evaluated it. For the @EvaluationResult@ data type, AWS Config supports only the @COMPLIANT@ , @NON_COMPLIANT@ , and @NOT_APPLICABLE@ values. AWS Config does not support the @INSUFFICIENT_DATA@ value for the @EvaluationResult@ data type.-erComplianceType :: Lens' EvaluationResult (Maybe ComplianceType)-erComplianceType = lens _erComplianceType (\ s a -> s{_erComplianceType = a});--instance FromJSON EvaluationResult where- parseJSON- = withObject "EvaluationResult"- (\ x ->- EvaluationResult' <$>- (x .:? "EvaluationResultIdentifier") <*>- (x .:? "Annotation")- <*> (x .:? "ConfigRuleInvokedTime")- <*> (x .:? "ResultRecordedTime")- <*> (x .:? "ResultToken")- <*> (x .:? "ComplianceType"))--instance Hashable EvaluationResult where--instance NFData EvaluationResult where---- | Uniquely identifies an evaluation result.------------ /See:/ 'evaluationResultIdentifier' smart constructor.-data EvaluationResultIdentifier = EvaluationResultIdentifier'- { _eriEvaluationResultQualifier :: !(Maybe EvaluationResultQualifier)- , _eriOrderingTimestamp :: !(Maybe POSIX)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'EvaluationResultIdentifier' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'eriEvaluationResultQualifier' - Identifies an AWS Config rule used to evaluate an AWS resource, and provides the type and ID of the evaluated resource.------ * 'eriOrderingTimestamp' - The time of the event that triggered the evaluation of your AWS resources. The time can indicate when AWS Config delivered a configuration item change notification, or it can indicate when AWS Config delivered the configuration snapshot, depending on which event triggered the evaluation.-evaluationResultIdentifier- :: EvaluationResultIdentifier-evaluationResultIdentifier =- EvaluationResultIdentifier'- {_eriEvaluationResultQualifier = Nothing, _eriOrderingTimestamp = Nothing}----- | Identifies an AWS Config rule used to evaluate an AWS resource, and provides the type and ID of the evaluated resource.-eriEvaluationResultQualifier :: Lens' EvaluationResultIdentifier (Maybe EvaluationResultQualifier)-eriEvaluationResultQualifier = lens _eriEvaluationResultQualifier (\ s a -> s{_eriEvaluationResultQualifier = a});---- | The time of the event that triggered the evaluation of your AWS resources. The time can indicate when AWS Config delivered a configuration item change notification, or it can indicate when AWS Config delivered the configuration snapshot, depending on which event triggered the evaluation.-eriOrderingTimestamp :: Lens' EvaluationResultIdentifier (Maybe UTCTime)-eriOrderingTimestamp = lens _eriOrderingTimestamp (\ s a -> s{_eriOrderingTimestamp = a}) . mapping _Time;--instance FromJSON EvaluationResultIdentifier where- parseJSON- = withObject "EvaluationResultIdentifier"- (\ x ->- EvaluationResultIdentifier' <$>- (x .:? "EvaluationResultQualifier") <*>- (x .:? "OrderingTimestamp"))--instance Hashable EvaluationResultIdentifier where--instance NFData EvaluationResultIdentifier where---- | Identifies an AWS Config rule that evaluated an AWS resource, and provides the type and ID of the resource that the rule evaluated.------------ /See:/ 'evaluationResultQualifier' smart constructor.-data EvaluationResultQualifier = EvaluationResultQualifier'- { _erqResourceId :: !(Maybe Text)- , _erqResourceType :: !(Maybe Text)- , _erqConfigRuleName :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'EvaluationResultQualifier' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'erqResourceId' - The ID of the evaluated AWS resource.------ * 'erqResourceType' - The type of AWS resource that was evaluated.------ * 'erqConfigRuleName' - The name of the AWS Config rule that was used in the evaluation.-evaluationResultQualifier- :: EvaluationResultQualifier-evaluationResultQualifier =- EvaluationResultQualifier'- { _erqResourceId = Nothing- , _erqResourceType = Nothing- , _erqConfigRuleName = Nothing- }----- | The ID of the evaluated AWS resource.-erqResourceId :: Lens' EvaluationResultQualifier (Maybe Text)-erqResourceId = lens _erqResourceId (\ s a -> s{_erqResourceId = a});---- | The type of AWS resource that was evaluated.-erqResourceType :: Lens' EvaluationResultQualifier (Maybe Text)-erqResourceType = lens _erqResourceType (\ s a -> s{_erqResourceType = a});---- | The name of the AWS Config rule that was used in the evaluation.-erqConfigRuleName :: Lens' EvaluationResultQualifier (Maybe Text)-erqConfigRuleName = lens _erqConfigRuleName (\ s a -> s{_erqConfigRuleName = a});--instance FromJSON EvaluationResultQualifier where- parseJSON- = withObject "EvaluationResultQualifier"- (\ x ->- EvaluationResultQualifier' <$>- (x .:? "ResourceId") <*> (x .:? "ResourceType") <*>- (x .:? "ConfigRuleName"))--instance Hashable EvaluationResultQualifier where--instance NFData EvaluationResultQualifier where---- | Specifies the types of AWS resource for which AWS Config records configuration changes.--------- In the recording group, you specify whether all supported types or specific types of resources are recorded.------ By default, AWS Config records configuration changes for all supported types of regional resources that AWS Config discovers in the region in which it is running. Regional resources are tied to a region and can be used only in that region. Examples of regional resources are EC2 instances and EBS volumes.------ You can also have AWS Config record configuration changes for supported types of global resources (for example, IAM resources). Global resources are not tied to an individual region and can be used in all regions.------ /Important:/ The configuration details for any global resource are the same in all regions. If you customize AWS Config in multiple regions to record global resources, it will create multiple configuration items each time a global resource changes: one configuration item for each region. These configuration items will contain identical data. To prevent duplicate configuration items, you should consider customizing AWS Config in only one region to record global resources, unless you want the configuration items to be available in multiple regions.------ If you don't want AWS Config to record all resources, you can specify which types of resources it will record with the @resourceTypes@ parameter.------ For a list of supported resource types, see <http://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources Supported resource types> .------ For more information, see <http://docs.aws.amazon.com/config/latest/developerguide/select-resources.html Selecting Which Resources AWS Config Records> .--------- /See:/ 'recordingGroup' smart constructor.-data RecordingGroup = RecordingGroup'- { _rgAllSupported :: !(Maybe Bool)- , _rgIncludeGlobalResourceTypes :: !(Maybe Bool)- , _rgResourceTypes :: !(Maybe [ResourceType])- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'RecordingGroup' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rgAllSupported' - Specifies whether AWS Config records configuration changes for every supported type of regional resource. If you set this option to @true@ , when AWS Config adds support for a new type of regional resource, it automatically starts recording resources of that type. If you set this option to @true@ , you cannot enumerate a list of @resourceTypes@ .------ * 'rgIncludeGlobalResourceTypes' - Specifies whether AWS Config includes all supported types of global resources (for example, IAM resources) with the resources that it records. Before you can set this option to @true@ , you must set the @allSupported@ option to @true@ . If you set this option to @true@ , when AWS Config adds support for a new type of global resource, it automatically starts recording resources of that type. The configuration details for any global resource are the same in all regions. To prevent duplicate configuration items, you should consider customizing AWS Config in only one region to record global resources.------ * 'rgResourceTypes' - A comma-separated list that specifies the types of AWS resources for which AWS Config records configuration changes (for example, @AWS::EC2::Instance@ or @AWS::CloudTrail::Trail@ ). Before you can set this option to @true@ , you must set the @allSupported@ option to @false@ . If you set this option to @true@ , when AWS Config adds support for a new type of resource, it will not record resources of that type unless you manually add that type to your recording group. For a list of valid @resourceTypes@ values, see the __resourceType Value__ column in <http://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources Supported AWS Resource Types> .-recordingGroup- :: RecordingGroup-recordingGroup =- RecordingGroup'- { _rgAllSupported = Nothing- , _rgIncludeGlobalResourceTypes = Nothing- , _rgResourceTypes = Nothing- }----- | Specifies whether AWS Config records configuration changes for every supported type of regional resource. If you set this option to @true@ , when AWS Config adds support for a new type of regional resource, it automatically starts recording resources of that type. If you set this option to @true@ , you cannot enumerate a list of @resourceTypes@ .-rgAllSupported :: Lens' RecordingGroup (Maybe Bool)-rgAllSupported = lens _rgAllSupported (\ s a -> s{_rgAllSupported = a});---- | Specifies whether AWS Config includes all supported types of global resources (for example, IAM resources) with the resources that it records. Before you can set this option to @true@ , you must set the @allSupported@ option to @true@ . If you set this option to @true@ , when AWS Config adds support for a new type of global resource, it automatically starts recording resources of that type. The configuration details for any global resource are the same in all regions. To prevent duplicate configuration items, you should consider customizing AWS Config in only one region to record global resources.-rgIncludeGlobalResourceTypes :: Lens' RecordingGroup (Maybe Bool)-rgIncludeGlobalResourceTypes = lens _rgIncludeGlobalResourceTypes (\ s a -> s{_rgIncludeGlobalResourceTypes = a});---- | A comma-separated list that specifies the types of AWS resources for which AWS Config records configuration changes (for example, @AWS::EC2::Instance@ or @AWS::CloudTrail::Trail@ ). Before you can set this option to @true@ , you must set the @allSupported@ option to @false@ . If you set this option to @true@ , when AWS Config adds support for a new type of resource, it will not record resources of that type unless you manually add that type to your recording group. For a list of valid @resourceTypes@ values, see the __resourceType Value__ column in <http://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources Supported AWS Resource Types> .-rgResourceTypes :: Lens' RecordingGroup [ResourceType]-rgResourceTypes = lens _rgResourceTypes (\ s a -> s{_rgResourceTypes = a}) . _Default . _Coerce;--instance FromJSON RecordingGroup where- parseJSON- = withObject "RecordingGroup"- (\ x ->- RecordingGroup' <$>- (x .:? "allSupported") <*>- (x .:? "includeGlobalResourceTypes")- <*> (x .:? "resourceTypes" .!= mempty))--instance Hashable RecordingGroup where--instance NFData RecordingGroup where--instance ToJSON RecordingGroup where- toJSON RecordingGroup'{..}- = object- (catMaybes- [("allSupported" .=) <$> _rgAllSupported,- ("includeGlobalResourceTypes" .=) <$>- _rgIncludeGlobalResourceTypes,- ("resourceTypes" .=) <$> _rgResourceTypes])---- | The relationship of the related resource to the main resource.------------ /See:/ 'relationship' smart constructor.-data Relationship = Relationship'- { _rResourceId :: !(Maybe Text)- , _rResourceType :: !(Maybe ResourceType)- , _rResourceName :: !(Maybe Text)- , _rRelationshipName :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'Relationship' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rResourceId' - The ID of the related resource (for example, @sg-xxxxxx@ ).------ * 'rResourceType' - The resource type of the related resource.------ * 'rResourceName' - The custom name of the related resource, if available.------ * 'rRelationshipName' - The type of relationship with the related resource.-relationship- :: Relationship-relationship =- Relationship'- { _rResourceId = Nothing- , _rResourceType = Nothing- , _rResourceName = Nothing- , _rRelationshipName = Nothing- }----- | The ID of the related resource (for example, @sg-xxxxxx@ ).-rResourceId :: Lens' Relationship (Maybe Text)-rResourceId = lens _rResourceId (\ s a -> s{_rResourceId = a});---- | The resource type of the related resource.-rResourceType :: Lens' Relationship (Maybe ResourceType)-rResourceType = lens _rResourceType (\ s a -> s{_rResourceType = a});---- | The custom name of the related resource, if available.-rResourceName :: Lens' Relationship (Maybe Text)-rResourceName = lens _rResourceName (\ s a -> s{_rResourceName = a});---- | The type of relationship with the related resource.-rRelationshipName :: Lens' Relationship (Maybe Text)-rRelationshipName = lens _rRelationshipName (\ s a -> s{_rRelationshipName = a});--instance FromJSON Relationship where- parseJSON- = withObject "Relationship"- (\ x ->- Relationship' <$>- (x .:? "resourceId") <*> (x .:? "resourceType") <*>- (x .:? "resourceName")- <*> (x .:? "relationshipName"))--instance Hashable Relationship where--instance NFData Relationship where---- | An object that contains the resource type and the number of resources.------------ /See:/ 'resourceCount' smart constructor.-data ResourceCount = ResourceCount'- { _rcResourceType :: !(Maybe ResourceType)- , _rcCount :: !(Maybe Integer)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ResourceCount' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'rcResourceType' - The resource type, for example @"AWS::EC2::Instance"@ .------ * 'rcCount' - The number of resources.-resourceCount- :: ResourceCount-resourceCount = ResourceCount' {_rcResourceType = Nothing, _rcCount = Nothing}----- | The resource type, for example @"AWS::EC2::Instance"@ .-rcResourceType :: Lens' ResourceCount (Maybe ResourceType)-rcResourceType = lens _rcResourceType (\ s a -> s{_rcResourceType = a});---- | The number of resources.-rcCount :: Lens' ResourceCount (Maybe Integer)-rcCount = lens _rcCount (\ s a -> s{_rcCount = a});--instance FromJSON ResourceCount where- parseJSON- = withObject "ResourceCount"- (\ x ->- ResourceCount' <$>- (x .:? "resourceType") <*> (x .:? "count"))--instance Hashable ResourceCount where--instance NFData ResourceCount where---- | The details that identify a resource that is discovered by AWS Config, including the resource type, ID, and (if available) the custom resource name.------------ /See:/ 'resourceIdentifier' smart constructor.-data ResourceIdentifier = ResourceIdentifier'- { _riResourceId :: !(Maybe Text)- , _riResourceType :: !(Maybe ResourceType)- , _riResourceName :: !(Maybe Text)- , _riResourceDeletionTime :: !(Maybe POSIX)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'ResourceIdentifier' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'riResourceId' - The ID of the resource (for example., @sg-xxxxxx@ ).------ * 'riResourceType' - The type of resource.------ * 'riResourceName' - The custom name of the resource (if available).------ * 'riResourceDeletionTime' - The time that the resource was deleted.-resourceIdentifier- :: ResourceIdentifier-resourceIdentifier =- ResourceIdentifier'- { _riResourceId = Nothing- , _riResourceType = Nothing- , _riResourceName = Nothing- , _riResourceDeletionTime = Nothing- }----- | The ID of the resource (for example., @sg-xxxxxx@ ).-riResourceId :: Lens' ResourceIdentifier (Maybe Text)-riResourceId = lens _riResourceId (\ s a -> s{_riResourceId = a});---- | The type of resource.-riResourceType :: Lens' ResourceIdentifier (Maybe ResourceType)-riResourceType = lens _riResourceType (\ s a -> s{_riResourceType = a});---- | The custom name of the resource (if available).-riResourceName :: Lens' ResourceIdentifier (Maybe Text)-riResourceName = lens _riResourceName (\ s a -> s{_riResourceName = a});---- | The time that the resource was deleted.-riResourceDeletionTime :: Lens' ResourceIdentifier (Maybe UTCTime)-riResourceDeletionTime = lens _riResourceDeletionTime (\ s a -> s{_riResourceDeletionTime = a}) . mapping _Time;--instance FromJSON ResourceIdentifier where- parseJSON- = withObject "ResourceIdentifier"- (\ x ->- ResourceIdentifier' <$>- (x .:? "resourceId") <*> (x .:? "resourceType") <*>- (x .:? "resourceName")- <*> (x .:? "resourceDeletionTime"))--instance Hashable ResourceIdentifier where--instance NFData ResourceIdentifier where---- | Defines which resources trigger an evaluation for an AWS Config rule. The scope can include one or more resource types, a combination of a tag key and value, or a combination of one resource type and one resource ID. Specify a scope to constrain which resources trigger an evaluation for a rule. Otherwise, evaluations for the rule are triggered when any resource in your recording group changes in configuration.------------ /See:/ 'scope' smart constructor.-data Scope = Scope'- { _sComplianceResourceTypes :: !(Maybe [Text])- , _sComplianceResourceId :: !(Maybe Text)- , _sTagValue :: !(Maybe Text)- , _sTagKey :: !(Maybe Text)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'Scope' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sComplianceResourceTypes' - The resource types of only those AWS resources that you want to trigger an evaluation for the rule. You can only specify one type if you also specify a resource ID for @ComplianceResourceId@ .------ * 'sComplianceResourceId' - The IDs of the only AWS resource that you want to trigger an evaluation for the rule. If you specify a resource ID, you must specify one resource type for @ComplianceResourceTypes@ .------ * 'sTagValue' - The tag value applied to only those AWS resources that you want to trigger an evaluation for the rule. If you specify a value for @TagValue@ , you must also specify a value for @TagKey@ .------ * 'sTagKey' - The tag key that is applied to only those AWS resources that you want to trigger an evaluation for the rule.-scope- :: Scope-scope =- Scope'- { _sComplianceResourceTypes = Nothing- , _sComplianceResourceId = Nothing- , _sTagValue = Nothing- , _sTagKey = Nothing- }----- | The resource types of only those AWS resources that you want to trigger an evaluation for the rule. You can only specify one type if you also specify a resource ID for @ComplianceResourceId@ .-sComplianceResourceTypes :: Lens' Scope [Text]-sComplianceResourceTypes = lens _sComplianceResourceTypes (\ s a -> s{_sComplianceResourceTypes = a}) . _Default . _Coerce;---- | The IDs of the only AWS resource that you want to trigger an evaluation for the rule. If you specify a resource ID, you must specify one resource type for @ComplianceResourceTypes@ .-sComplianceResourceId :: Lens' Scope (Maybe Text)-sComplianceResourceId = lens _sComplianceResourceId (\ s a -> s{_sComplianceResourceId = a});---- | The tag value applied to only those AWS resources that you want to trigger an evaluation for the rule. If you specify a value for @TagValue@ , you must also specify a value for @TagKey@ .-sTagValue :: Lens' Scope (Maybe Text)-sTagValue = lens _sTagValue (\ s a -> s{_sTagValue = a});---- | The tag key that is applied to only those AWS resources that you want to trigger an evaluation for the rule.-sTagKey :: Lens' Scope (Maybe Text)-sTagKey = lens _sTagKey (\ s a -> s{_sTagKey = a});--instance FromJSON Scope where- parseJSON- = withObject "Scope"- (\ x ->- Scope' <$>- (x .:? "ComplianceResourceTypes" .!= mempty) <*>- (x .:? "ComplianceResourceId")- <*> (x .:? "TagValue")- <*> (x .:? "TagKey"))--instance Hashable Scope where--instance NFData Scope where--instance ToJSON Scope where- toJSON Scope'{..}- = object- (catMaybes- [("ComplianceResourceTypes" .=) <$>- _sComplianceResourceTypes,- ("ComplianceResourceId" .=) <$>- _sComplianceResourceId,- ("TagValue" .=) <$> _sTagValue,- ("TagKey" .=) <$> _sTagKey])---- | Provides the AWS Config rule owner (AWS or customer), the rule identifier, and the events that trigger the evaluation of your AWS resources.------------ /See:/ 'source' smart constructor.-data Source = Source'- { _sSourceDetails :: !(Maybe [SourceDetail])- , _sOwner :: !Owner- , _sSourceIdentifier :: !Text- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'Source' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sSourceDetails' - Provides the source and type of the event that causes AWS Config to evaluate your AWS resources.------ * 'sOwner' - Indicates whether AWS or the customer owns and manages the AWS Config rule.------ * 'sSourceIdentifier' - For AWS Config managed rules, a predefined identifier from a list. For example, @IAM_PASSWORD_POLICY@ is a managed rule. To reference a managed rule, see <http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html Using AWS Managed Config Rules> . For custom rules, the identifier is the Amazon Resource Name (ARN) of the rule's AWS Lambda function, such as @arn:aws:lambda:us-east-2:123456789012:function:custom_rule_name@ .-source- :: Owner -- ^ 'sOwner'- -> Text -- ^ 'sSourceIdentifier'- -> Source-source pOwner_ pSourceIdentifier_ =- Source'- { _sSourceDetails = Nothing- , _sOwner = pOwner_- , _sSourceIdentifier = pSourceIdentifier_- }----- | Provides the source and type of the event that causes AWS Config to evaluate your AWS resources.-sSourceDetails :: Lens' Source [SourceDetail]-sSourceDetails = lens _sSourceDetails (\ s a -> s{_sSourceDetails = a}) . _Default . _Coerce;---- | Indicates whether AWS or the customer owns and manages the AWS Config rule.-sOwner :: Lens' Source Owner-sOwner = lens _sOwner (\ s a -> s{_sOwner = a});---- | For AWS Config managed rules, a predefined identifier from a list. For example, @IAM_PASSWORD_POLICY@ is a managed rule. To reference a managed rule, see <http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html Using AWS Managed Config Rules> . For custom rules, the identifier is the Amazon Resource Name (ARN) of the rule's AWS Lambda function, such as @arn:aws:lambda:us-east-2:123456789012:function:custom_rule_name@ .-sSourceIdentifier :: Lens' Source Text-sSourceIdentifier = lens _sSourceIdentifier (\ s a -> s{_sSourceIdentifier = a});--instance FromJSON Source where- parseJSON- = withObject "Source"- (\ x ->- Source' <$>- (x .:? "SourceDetails" .!= mempty) <*> (x .: "Owner")- <*> (x .: "SourceIdentifier"))--instance Hashable Source where--instance NFData Source where--instance ToJSON Source where- toJSON Source'{..}- = object- (catMaybes- [("SourceDetails" .=) <$> _sSourceDetails,- Just ("Owner" .= _sOwner),- Just ("SourceIdentifier" .= _sSourceIdentifier)])---- | Provides the source and the message types that trigger AWS Config to evaluate your AWS resources against a rule. It also provides the frequency with which you want AWS Config to run evaluations for the rule if the trigger type is periodic. You can specify the parameter values for @SourceDetail@ only for custom rules.------------ /See:/ 'sourceDetail' smart constructor.-data SourceDetail = SourceDetail'- { _sdMessageType :: !(Maybe MessageType)- , _sdMaximumExecutionFrequency :: !(Maybe MaximumExecutionFrequency)- , _sdEventSource :: !(Maybe EventSource)- } deriving (Eq, Read, Show, Data, Typeable, Generic)----- | Creates a value of 'SourceDetail' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sdMessageType' - The type of notification that triggers AWS Config to run an evaluation for a rule. You can specify the following notification types: * @ConfigurationItemChangeNotification@ - Triggers an evaluation when AWS Config delivers a configuration item as a result of a resource change. * @OversizedConfigurationItemChangeNotification@ - Triggers an evaluation when AWS Config delivers an oversized configuration item. AWS Config may generate this notification type when a resource changes and the notification exceeds the maximum size allowed by Amazon SNS. * @ScheduledNotification@ - Triggers a periodic evaluation at the frequency specified for @MaximumExecutionFrequency@ . * @ConfigurationSnapshotDeliveryCompleted@ - Triggers a periodic evaluation when AWS Config delivers a configuration snapshot. If you want your custom rule to be triggered by configuration changes, specify both @ConfigurationItemChangeNotification@ and @OversizedConfigurationItemChangeNotification@ .------ * 'sdMaximumExecutionFrequency' - The frequency that you want AWS Config to run evaluations for a custom rule with a periodic trigger. If you specify a value for @MaximumExecutionFrequency@ , then @MessageType@ must use the @ScheduledNotification@ value.------ * 'sdEventSource' - The source of the event, such as an AWS service, that triggers AWS Config to evaluate your AWS resources.-sourceDetail- :: SourceDetail-sourceDetail =- SourceDetail'- { _sdMessageType = Nothing- , _sdMaximumExecutionFrequency = Nothing- , _sdEventSource = Nothing- }----- | The type of notification that triggers AWS Config to run an evaluation for a rule. You can specify the following notification types: * @ConfigurationItemChangeNotification@ - Triggers an evaluation when AWS Config delivers a configuration item as a result of a resource change. * @OversizedConfigurationItemChangeNotification@ - Triggers an evaluation when AWS Config delivers an oversized configuration item. AWS Config may generate this notification type when a resource changes and the notification exceeds the maximum size allowed by Amazon SNS. * @ScheduledNotification@ - Triggers a periodic evaluation at the frequency specified for @MaximumExecutionFrequency@ . * @ConfigurationSnapshotDeliveryCompleted@ - Triggers a periodic evaluation when AWS Config delivers a configuration snapshot. If you want your custom rule to be triggered by configuration changes, specify both @ConfigurationItemChangeNotification@ and @OversizedConfigurationItemChangeNotification@ .-sdMessageType :: Lens' SourceDetail (Maybe MessageType)-sdMessageType = lens _sdMessageType (\ s a -> s{_sdMessageType = a});---- | The frequency that you want AWS Config to run evaluations for a custom rule with a periodic trigger. If you specify a value for @MaximumExecutionFrequency@ , then @MessageType@ must use the @ScheduledNotification@ value.-sdMaximumExecutionFrequency :: Lens' SourceDetail (Maybe MaximumExecutionFrequency)-sdMaximumExecutionFrequency = lens _sdMaximumExecutionFrequency (\ s a -> s{_sdMaximumExecutionFrequency = a});---- | The source of the event, such as an AWS service, that triggers AWS Config to evaluate your AWS resources.-sdEventSource :: Lens' SourceDetail (Maybe EventSource)-sdEventSource = lens _sdEventSource (\ s a -> s{_sdEventSource = a});+-- Copyright : (c) 2013-2018 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.Config.Types.Product where++import Network.AWS.Config.Types.Sum+import Network.AWS.Lens+import Network.AWS.Prelude++-- | A collection of accounts and regions.+--+--+--+-- /See:/ 'accountAggregationSource' smart constructor.+data AccountAggregationSource = AccountAggregationSource'+ { _aasAWSRegions :: !(Maybe (List1 Text))+ , _aasAllAWSRegions :: !(Maybe Bool)+ , _aasAccountIds :: !(List1 Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AccountAggregationSource' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aasAWSRegions' - The source regions being aggregated.+--+-- * 'aasAllAWSRegions' - If true, aggreagate existing AWS Config regions and future regions.+--+-- * 'aasAccountIds' - The 12-digit account ID of the account being aggregated.+accountAggregationSource+ :: NonEmpty Text -- ^ 'aasAccountIds'+ -> AccountAggregationSource+accountAggregationSource pAccountIds_ =+ AccountAggregationSource'+ { _aasAWSRegions = Nothing+ , _aasAllAWSRegions = Nothing+ , _aasAccountIds = _List1 # pAccountIds_+ }+++-- | The source regions being aggregated.+aasAWSRegions :: Lens' AccountAggregationSource (Maybe (NonEmpty Text))+aasAWSRegions = lens _aasAWSRegions (\ s a -> s{_aasAWSRegions = a}) . mapping _List1++-- | If true, aggreagate existing AWS Config regions and future regions.+aasAllAWSRegions :: Lens' AccountAggregationSource (Maybe Bool)+aasAllAWSRegions = lens _aasAllAWSRegions (\ s a -> s{_aasAllAWSRegions = a})++-- | The 12-digit account ID of the account being aggregated.+aasAccountIds :: Lens' AccountAggregationSource (NonEmpty Text)+aasAccountIds = lens _aasAccountIds (\ s a -> s{_aasAccountIds = a}) . _List1++instance FromJSON AccountAggregationSource where+ parseJSON+ = withObject "AccountAggregationSource"+ (\ x ->+ AccountAggregationSource' <$>+ (x .:? "AwsRegions") <*> (x .:? "AllAwsRegions") <*>+ (x .: "AccountIds"))++instance Hashable AccountAggregationSource where++instance NFData AccountAggregationSource where++instance ToJSON AccountAggregationSource where+ toJSON AccountAggregationSource'{..}+ = object+ (catMaybes+ [("AwsRegions" .=) <$> _aasAWSRegions,+ ("AllAwsRegions" .=) <$> _aasAllAWSRegions,+ Just ("AccountIds" .= _aasAccountIds)])++-- | Indicates whether an AWS Config rule is compliant based on account ID, region, compliance, and rule name.+--+--+-- A rule is compliant if all of the resources that the rule evaluated comply with it. It is noncompliant if any of these resources do not comply.+--+--+-- /See:/ 'aggregateComplianceByConfigRule' smart constructor.+data AggregateComplianceByConfigRule = AggregateComplianceByConfigRule'+ { _acbcrCompliance :: !(Maybe Compliance)+ , _acbcrConfigRuleName :: !(Maybe Text)+ , _acbcrAccountId :: !(Maybe Text)+ , _acbcrAWSRegion :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AggregateComplianceByConfigRule' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'acbcrCompliance' - Indicates whether an AWS resource or AWS Config rule is compliant and provides the number of contributors that affect the compliance.+--+-- * 'acbcrConfigRuleName' - The name of the AWS Config rule.+--+-- * 'acbcrAccountId' - The 12-digit account ID of the source account.+--+-- * 'acbcrAWSRegion' - The source region from where the data is aggregated.+aggregateComplianceByConfigRule+ :: AggregateComplianceByConfigRule+aggregateComplianceByConfigRule =+ AggregateComplianceByConfigRule'+ { _acbcrCompliance = Nothing+ , _acbcrConfigRuleName = Nothing+ , _acbcrAccountId = Nothing+ , _acbcrAWSRegion = Nothing+ }+++-- | Indicates whether an AWS resource or AWS Config rule is compliant and provides the number of contributors that affect the compliance.+acbcrCompliance :: Lens' AggregateComplianceByConfigRule (Maybe Compliance)+acbcrCompliance = lens _acbcrCompliance (\ s a -> s{_acbcrCompliance = a})++-- | The name of the AWS Config rule.+acbcrConfigRuleName :: Lens' AggregateComplianceByConfigRule (Maybe Text)+acbcrConfigRuleName = lens _acbcrConfigRuleName (\ s a -> s{_acbcrConfigRuleName = a})++-- | The 12-digit account ID of the source account.+acbcrAccountId :: Lens' AggregateComplianceByConfigRule (Maybe Text)+acbcrAccountId = lens _acbcrAccountId (\ s a -> s{_acbcrAccountId = a})++-- | The source region from where the data is aggregated.+acbcrAWSRegion :: Lens' AggregateComplianceByConfigRule (Maybe Text)+acbcrAWSRegion = lens _acbcrAWSRegion (\ s a -> s{_acbcrAWSRegion = a})++instance FromJSON AggregateComplianceByConfigRule+ where+ parseJSON+ = withObject "AggregateComplianceByConfigRule"+ (\ x ->+ AggregateComplianceByConfigRule' <$>+ (x .:? "Compliance") <*> (x .:? "ConfigRuleName") <*>+ (x .:? "AccountId")+ <*> (x .:? "AwsRegion"))++instance Hashable AggregateComplianceByConfigRule+ where++instance NFData AggregateComplianceByConfigRule where++-- | Returns the number of compliant and noncompliant rules for one or more accounts and regions in an aggregator.+--+--+--+-- /See:/ 'aggregateComplianceCount' smart constructor.+data AggregateComplianceCount = AggregateComplianceCount'+ { _accGroupName :: !(Maybe Text)+ , _accComplianceSummary :: !(Maybe ComplianceSummary)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AggregateComplianceCount' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'accGroupName' - The 12-digit account ID or region based on the GroupByKey value.+--+-- * 'accComplianceSummary' - The number of compliant and noncompliant AWS Config rules.+aggregateComplianceCount+ :: AggregateComplianceCount+aggregateComplianceCount =+ AggregateComplianceCount'+ {_accGroupName = Nothing, _accComplianceSummary = Nothing}+++-- | The 12-digit account ID or region based on the GroupByKey value.+accGroupName :: Lens' AggregateComplianceCount (Maybe Text)+accGroupName = lens _accGroupName (\ s a -> s{_accGroupName = a})++-- | The number of compliant and noncompliant AWS Config rules.+accComplianceSummary :: Lens' AggregateComplianceCount (Maybe ComplianceSummary)+accComplianceSummary = lens _accComplianceSummary (\ s a -> s{_accComplianceSummary = a})++instance FromJSON AggregateComplianceCount where+ parseJSON+ = withObject "AggregateComplianceCount"+ (\ x ->+ AggregateComplianceCount' <$>+ (x .:? "GroupName") <*> (x .:? "ComplianceSummary"))++instance Hashable AggregateComplianceCount where++instance NFData AggregateComplianceCount where++-- | The details of an AWS Config evaluation for an account ID and region in an aggregator. Provides the AWS resource that was evaluated, the compliance of the resource, related time stamps, and supplementary information.+--+--+--+-- /See:/ 'aggregateEvaluationResult' smart constructor.+data AggregateEvaluationResult = AggregateEvaluationResult'+ { _aerEvaluationResultIdentifier :: !(Maybe EvaluationResultIdentifier)+ , _aerAnnotation :: !(Maybe Text)+ , _aerConfigRuleInvokedTime :: !(Maybe POSIX)+ , _aerResultRecordedTime :: !(Maybe POSIX)+ , _aerAccountId :: !(Maybe Text)+ , _aerComplianceType :: !(Maybe ComplianceType)+ , _aerAWSRegion :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AggregateEvaluationResult' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aerEvaluationResultIdentifier' - Uniquely identifies the evaluation result.+--+-- * 'aerAnnotation' - Supplementary information about how the agrregate evaluation determined the compliance.+--+-- * 'aerConfigRuleInvokedTime' - The time when the AWS Config rule evaluated the AWS resource.+--+-- * 'aerResultRecordedTime' - The time when AWS Config recorded the aggregate evaluation result.+--+-- * 'aerAccountId' - The 12-digit account ID of the source account.+--+-- * 'aerComplianceType' - The resource compliance status. For the @AggregationEvaluationResult@ data type, AWS Config supports only the @COMPLIANT@ and @NON_COMPLIANT@ . AWS Config does not support the @NOT_APPLICABLE@ and @INSUFFICIENT_DATA@ value.+--+-- * 'aerAWSRegion' - The source region from where the data is aggregated.+aggregateEvaluationResult+ :: AggregateEvaluationResult+aggregateEvaluationResult =+ AggregateEvaluationResult'+ { _aerEvaluationResultIdentifier = Nothing+ , _aerAnnotation = Nothing+ , _aerConfigRuleInvokedTime = Nothing+ , _aerResultRecordedTime = Nothing+ , _aerAccountId = Nothing+ , _aerComplianceType = Nothing+ , _aerAWSRegion = Nothing+ }+++-- | Uniquely identifies the evaluation result.+aerEvaluationResultIdentifier :: Lens' AggregateEvaluationResult (Maybe EvaluationResultIdentifier)+aerEvaluationResultIdentifier = lens _aerEvaluationResultIdentifier (\ s a -> s{_aerEvaluationResultIdentifier = a})++-- | Supplementary information about how the agrregate evaluation determined the compliance.+aerAnnotation :: Lens' AggregateEvaluationResult (Maybe Text)+aerAnnotation = lens _aerAnnotation (\ s a -> s{_aerAnnotation = a})++-- | The time when the AWS Config rule evaluated the AWS resource.+aerConfigRuleInvokedTime :: Lens' AggregateEvaluationResult (Maybe UTCTime)+aerConfigRuleInvokedTime = lens _aerConfigRuleInvokedTime (\ s a -> s{_aerConfigRuleInvokedTime = a}) . mapping _Time++-- | The time when AWS Config recorded the aggregate evaluation result.+aerResultRecordedTime :: Lens' AggregateEvaluationResult (Maybe UTCTime)+aerResultRecordedTime = lens _aerResultRecordedTime (\ s a -> s{_aerResultRecordedTime = a}) . mapping _Time++-- | The 12-digit account ID of the source account.+aerAccountId :: Lens' AggregateEvaluationResult (Maybe Text)+aerAccountId = lens _aerAccountId (\ s a -> s{_aerAccountId = a})++-- | The resource compliance status. For the @AggregationEvaluationResult@ data type, AWS Config supports only the @COMPLIANT@ and @NON_COMPLIANT@ . AWS Config does not support the @NOT_APPLICABLE@ and @INSUFFICIENT_DATA@ value.+aerComplianceType :: Lens' AggregateEvaluationResult (Maybe ComplianceType)+aerComplianceType = lens _aerComplianceType (\ s a -> s{_aerComplianceType = a})++-- | The source region from where the data is aggregated.+aerAWSRegion :: Lens' AggregateEvaluationResult (Maybe Text)+aerAWSRegion = lens _aerAWSRegion (\ s a -> s{_aerAWSRegion = a})++instance FromJSON AggregateEvaluationResult where+ parseJSON+ = withObject "AggregateEvaluationResult"+ (\ x ->+ AggregateEvaluationResult' <$>+ (x .:? "EvaluationResultIdentifier") <*>+ (x .:? "Annotation")+ <*> (x .:? "ConfigRuleInvokedTime")+ <*> (x .:? "ResultRecordedTime")+ <*> (x .:? "AccountId")+ <*> (x .:? "ComplianceType")+ <*> (x .:? "AwsRegion"))++instance Hashable AggregateEvaluationResult where++instance NFData AggregateEvaluationResult where++-- | The current sync status between the source and the aggregator account.+--+--+--+-- /See:/ 'aggregatedSourceStatus' smart constructor.+data AggregatedSourceStatus = AggregatedSourceStatus'+ { _assLastErrorCode :: !(Maybe Text)+ , _assLastUpdateStatus :: !(Maybe AggregatedSourceStatusType)+ , _assSourceType :: !(Maybe AggregatedSourceType)+ , _assSourceId :: !(Maybe Text)+ , _assLastErrorMessage :: !(Maybe Text)+ , _assAWSRegion :: !(Maybe Text)+ , _assLastUpdateTime :: !(Maybe POSIX)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AggregatedSourceStatus' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'assLastErrorCode' - The error code that AWS Config returned when the source account aggregation last failed.+--+-- * 'assLastUpdateStatus' - Filters the last updated status type. * Valid value FAILED indicates errors while moving data. * Valid value SUCCEEDED indicates the data was successfully moved. * Valid value OUTDATED indicates the data is not the most recent.+--+-- * 'assSourceType' - The source account or an organization.+--+-- * 'assSourceId' - The source account ID or an organization.+--+-- * 'assLastErrorMessage' - The message indicating that the source account aggregation failed due to an error.+--+-- * 'assAWSRegion' - The region authorized to collect aggregated data.+--+-- * 'assLastUpdateTime' - The time of the last update.+aggregatedSourceStatus+ :: AggregatedSourceStatus+aggregatedSourceStatus =+ AggregatedSourceStatus'+ { _assLastErrorCode = Nothing+ , _assLastUpdateStatus = Nothing+ , _assSourceType = Nothing+ , _assSourceId = Nothing+ , _assLastErrorMessage = Nothing+ , _assAWSRegion = Nothing+ , _assLastUpdateTime = Nothing+ }+++-- | The error code that AWS Config returned when the source account aggregation last failed.+assLastErrorCode :: Lens' AggregatedSourceStatus (Maybe Text)+assLastErrorCode = lens _assLastErrorCode (\ s a -> s{_assLastErrorCode = a})++-- | Filters the last updated status type. * Valid value FAILED indicates errors while moving data. * Valid value SUCCEEDED indicates the data was successfully moved. * Valid value OUTDATED indicates the data is not the most recent.+assLastUpdateStatus :: Lens' AggregatedSourceStatus (Maybe AggregatedSourceStatusType)+assLastUpdateStatus = lens _assLastUpdateStatus (\ s a -> s{_assLastUpdateStatus = a})++-- | The source account or an organization.+assSourceType :: Lens' AggregatedSourceStatus (Maybe AggregatedSourceType)+assSourceType = lens _assSourceType (\ s a -> s{_assSourceType = a})++-- | The source account ID or an organization.+assSourceId :: Lens' AggregatedSourceStatus (Maybe Text)+assSourceId = lens _assSourceId (\ s a -> s{_assSourceId = a})++-- | The message indicating that the source account aggregation failed due to an error.+assLastErrorMessage :: Lens' AggregatedSourceStatus (Maybe Text)+assLastErrorMessage = lens _assLastErrorMessage (\ s a -> s{_assLastErrorMessage = a})++-- | The region authorized to collect aggregated data.+assAWSRegion :: Lens' AggregatedSourceStatus (Maybe Text)+assAWSRegion = lens _assAWSRegion (\ s a -> s{_assAWSRegion = a})++-- | The time of the last update.+assLastUpdateTime :: Lens' AggregatedSourceStatus (Maybe UTCTime)+assLastUpdateTime = lens _assLastUpdateTime (\ s a -> s{_assLastUpdateTime = a}) . mapping _Time++instance FromJSON AggregatedSourceStatus where+ parseJSON+ = withObject "AggregatedSourceStatus"+ (\ x ->+ AggregatedSourceStatus' <$>+ (x .:? "LastErrorCode") <*>+ (x .:? "LastUpdateStatus")+ <*> (x .:? "SourceType")+ <*> (x .:? "SourceId")+ <*> (x .:? "LastErrorMessage")+ <*> (x .:? "AwsRegion")+ <*> (x .:? "LastUpdateTime"))++instance Hashable AggregatedSourceStatus where++instance NFData AggregatedSourceStatus where++-- | An object that represents the authorizations granted to aggregator accounts and regions.+--+--+--+-- /See:/ 'aggregationAuthorization' smart constructor.+data AggregationAuthorization = AggregationAuthorization'+ { _aaCreationTime :: !(Maybe POSIX)+ , _aaAuthorizedAWSRegion :: !(Maybe Text)+ , _aaAggregationAuthorizationARN :: !(Maybe Text)+ , _aaAuthorizedAccountId :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'AggregationAuthorization' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aaCreationTime' - The time stamp when the aggregation authorization was created.+--+-- * 'aaAuthorizedAWSRegion' - The region authorized to collect aggregated data.+--+-- * 'aaAggregationAuthorizationARN' - The Amazon Resource Name (ARN) of the aggregation object.+--+-- * 'aaAuthorizedAccountId' - The 12-digit account ID of the account authorized to aggregate data.+aggregationAuthorization+ :: AggregationAuthorization+aggregationAuthorization =+ AggregationAuthorization'+ { _aaCreationTime = Nothing+ , _aaAuthorizedAWSRegion = Nothing+ , _aaAggregationAuthorizationARN = Nothing+ , _aaAuthorizedAccountId = Nothing+ }+++-- | The time stamp when the aggregation authorization was created.+aaCreationTime :: Lens' AggregationAuthorization (Maybe UTCTime)+aaCreationTime = lens _aaCreationTime (\ s a -> s{_aaCreationTime = a}) . mapping _Time++-- | The region authorized to collect aggregated data.+aaAuthorizedAWSRegion :: Lens' AggregationAuthorization (Maybe Text)+aaAuthorizedAWSRegion = lens _aaAuthorizedAWSRegion (\ s a -> s{_aaAuthorizedAWSRegion = a})++-- | The Amazon Resource Name (ARN) of the aggregation object.+aaAggregationAuthorizationARN :: Lens' AggregationAuthorization (Maybe Text)+aaAggregationAuthorizationARN = lens _aaAggregationAuthorizationARN (\ s a -> s{_aaAggregationAuthorizationARN = a})++-- | The 12-digit account ID of the account authorized to aggregate data.+aaAuthorizedAccountId :: Lens' AggregationAuthorization (Maybe Text)+aaAuthorizedAccountId = lens _aaAuthorizedAccountId (\ s a -> s{_aaAuthorizedAccountId = a})++instance FromJSON AggregationAuthorization where+ parseJSON+ = withObject "AggregationAuthorization"+ (\ x ->+ AggregationAuthorization' <$>+ (x .:? "CreationTime") <*>+ (x .:? "AuthorizedAwsRegion")+ <*> (x .:? "AggregationAuthorizationArn")+ <*> (x .:? "AuthorizedAccountId"))++instance Hashable AggregationAuthorization where++instance NFData AggregationAuthorization where++-- | The detailed configuration of a specified resource.+--+--+--+-- /See:/ 'baseConfigurationItem' smart constructor.+data BaseConfigurationItem = BaseConfigurationItem'+ { _bciResourceId :: !(Maybe Text)+ , _bciResourceType :: !(Maybe ResourceType)+ , _bciConfigurationStateId :: !(Maybe Text)+ , _bciArn :: !(Maybe Text)+ , _bciResourceName :: !(Maybe Text)+ , _bciResourceCreationTime :: !(Maybe POSIX)+ , _bciConfigurationItemStatus :: !(Maybe ConfigurationItemStatus)+ , _bciConfigurationItemCaptureTime :: !(Maybe POSIX)+ , _bciAccountId :: !(Maybe Text)+ , _bciSupplementaryConfiguration :: !(Maybe (Map Text Text))+ , _bciAvailabilityZone :: !(Maybe Text)+ , _bciVersion :: !(Maybe Text)+ , _bciAwsRegion :: !(Maybe Text)+ , _bciConfiguration :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'BaseConfigurationItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'bciResourceId' - The ID of the resource (for example., sg-xxxxxx).+--+-- * 'bciResourceType' - The type of AWS resource.+--+-- * 'bciConfigurationStateId' - An identifier that indicates the ordering of the configuration items of a resource.+--+-- * 'bciArn' - The Amazon Resource Name (ARN) of the resource.+--+-- * 'bciResourceName' - The custom name of the resource, if available.+--+-- * 'bciResourceCreationTime' - The time stamp when the resource was created.+--+-- * 'bciConfigurationItemStatus' - The configuration item status.+--+-- * 'bciConfigurationItemCaptureTime' - The time when the configuration recording was initiated.+--+-- * 'bciAccountId' - The 12 digit AWS account ID associated with the resource.+--+-- * 'bciSupplementaryConfiguration' - Configuration attributes that AWS Config returns for certain resource types to supplement the information returned for the configuration parameter.+--+-- * 'bciAvailabilityZone' - The Availability Zone associated with the resource.+--+-- * 'bciVersion' - The version number of the resource configuration.+--+-- * 'bciAwsRegion' - The region where the resource resides.+--+-- * 'bciConfiguration' - The description of the resource configuration.+baseConfigurationItem+ :: BaseConfigurationItem+baseConfigurationItem =+ BaseConfigurationItem'+ { _bciResourceId = Nothing+ , _bciResourceType = Nothing+ , _bciConfigurationStateId = Nothing+ , _bciArn = Nothing+ , _bciResourceName = Nothing+ , _bciResourceCreationTime = Nothing+ , _bciConfigurationItemStatus = Nothing+ , _bciConfigurationItemCaptureTime = Nothing+ , _bciAccountId = Nothing+ , _bciSupplementaryConfiguration = Nothing+ , _bciAvailabilityZone = Nothing+ , _bciVersion = Nothing+ , _bciAwsRegion = Nothing+ , _bciConfiguration = Nothing+ }+++-- | The ID of the resource (for example., sg-xxxxxx).+bciResourceId :: Lens' BaseConfigurationItem (Maybe Text)+bciResourceId = lens _bciResourceId (\ s a -> s{_bciResourceId = a})++-- | The type of AWS resource.+bciResourceType :: Lens' BaseConfigurationItem (Maybe ResourceType)+bciResourceType = lens _bciResourceType (\ s a -> s{_bciResourceType = a})++-- | An identifier that indicates the ordering of the configuration items of a resource.+bciConfigurationStateId :: Lens' BaseConfigurationItem (Maybe Text)+bciConfigurationStateId = lens _bciConfigurationStateId (\ s a -> s{_bciConfigurationStateId = a})++-- | The Amazon Resource Name (ARN) of the resource.+bciArn :: Lens' BaseConfigurationItem (Maybe Text)+bciArn = lens _bciArn (\ s a -> s{_bciArn = a})++-- | The custom name of the resource, if available.+bciResourceName :: Lens' BaseConfigurationItem (Maybe Text)+bciResourceName = lens _bciResourceName (\ s a -> s{_bciResourceName = a})++-- | The time stamp when the resource was created.+bciResourceCreationTime :: Lens' BaseConfigurationItem (Maybe UTCTime)+bciResourceCreationTime = lens _bciResourceCreationTime (\ s a -> s{_bciResourceCreationTime = a}) . mapping _Time++-- | The configuration item status.+bciConfigurationItemStatus :: Lens' BaseConfigurationItem (Maybe ConfigurationItemStatus)+bciConfigurationItemStatus = lens _bciConfigurationItemStatus (\ s a -> s{_bciConfigurationItemStatus = a})++-- | The time when the configuration recording was initiated.+bciConfigurationItemCaptureTime :: Lens' BaseConfigurationItem (Maybe UTCTime)+bciConfigurationItemCaptureTime = lens _bciConfigurationItemCaptureTime (\ s a -> s{_bciConfigurationItemCaptureTime = a}) . mapping _Time++-- | The 12 digit AWS account ID associated with the resource.+bciAccountId :: Lens' BaseConfigurationItem (Maybe Text)+bciAccountId = lens _bciAccountId (\ s a -> s{_bciAccountId = a})++-- | Configuration attributes that AWS Config returns for certain resource types to supplement the information returned for the configuration parameter.+bciSupplementaryConfiguration :: Lens' BaseConfigurationItem (HashMap Text Text)+bciSupplementaryConfiguration = lens _bciSupplementaryConfiguration (\ s a -> s{_bciSupplementaryConfiguration = a}) . _Default . _Map++-- | The Availability Zone associated with the resource.+bciAvailabilityZone :: Lens' BaseConfigurationItem (Maybe Text)+bciAvailabilityZone = lens _bciAvailabilityZone (\ s a -> s{_bciAvailabilityZone = a})++-- | The version number of the resource configuration.+bciVersion :: Lens' BaseConfigurationItem (Maybe Text)+bciVersion = lens _bciVersion (\ s a -> s{_bciVersion = a})++-- | The region where the resource resides.+bciAwsRegion :: Lens' BaseConfigurationItem (Maybe Text)+bciAwsRegion = lens _bciAwsRegion (\ s a -> s{_bciAwsRegion = a})++-- | The description of the resource configuration.+bciConfiguration :: Lens' BaseConfigurationItem (Maybe Text)+bciConfiguration = lens _bciConfiguration (\ s a -> s{_bciConfiguration = a})++instance FromJSON BaseConfigurationItem where+ parseJSON+ = withObject "BaseConfigurationItem"+ (\ x ->+ BaseConfigurationItem' <$>+ (x .:? "resourceId") <*> (x .:? "resourceType") <*>+ (x .:? "configurationStateId")+ <*> (x .:? "arn")+ <*> (x .:? "resourceName")+ <*> (x .:? "resourceCreationTime")+ <*> (x .:? "configurationItemStatus")+ <*> (x .:? "configurationItemCaptureTime")+ <*> (x .:? "accountId")+ <*> (x .:? "supplementaryConfiguration" .!= mempty)+ <*> (x .:? "availabilityZone")+ <*> (x .:? "version")+ <*> (x .:? "awsRegion")+ <*> (x .:? "configuration"))++instance Hashable BaseConfigurationItem where++instance NFData BaseConfigurationItem where++-- | Indicates whether an AWS resource or AWS Config rule is compliant and provides the number of contributors that affect the compliance.+--+--+--+-- /See:/ 'compliance' smart constructor.+data Compliance = Compliance'+ { _cComplianceContributorCount :: !(Maybe ComplianceContributorCount)+ , _cComplianceType :: !(Maybe ComplianceType)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Compliance' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cComplianceContributorCount' - The number of AWS resources or AWS Config rules that cause a result of @NON_COMPLIANT@ , up to a maximum number.+--+-- * 'cComplianceType' - Indicates whether an AWS resource or AWS Config rule is compliant. A resource is compliant if it complies with all of the AWS Config rules that evaluate it. A resource is noncompliant if it does not comply with one or more of these rules. A rule is compliant if all of the resources that the rule evaluates comply with it. A rule is noncompliant if any of these resources do not comply. AWS Config returns the @INSUFFICIENT_DATA@ value when no evaluation results are available for the AWS resource or AWS Config rule. For the @Compliance@ data type, AWS Config supports only @COMPLIANT@ , @NON_COMPLIANT@ , and @INSUFFICIENT_DATA@ values. AWS Config does not support the @NOT_APPLICABLE@ value for the @Compliance@ data type.+compliance+ :: Compliance+compliance =+ Compliance'+ {_cComplianceContributorCount = Nothing, _cComplianceType = Nothing}+++-- | The number of AWS resources or AWS Config rules that cause a result of @NON_COMPLIANT@ , up to a maximum number.+cComplianceContributorCount :: Lens' Compliance (Maybe ComplianceContributorCount)+cComplianceContributorCount = lens _cComplianceContributorCount (\ s a -> s{_cComplianceContributorCount = a})++-- | Indicates whether an AWS resource or AWS Config rule is compliant. A resource is compliant if it complies with all of the AWS Config rules that evaluate it. A resource is noncompliant if it does not comply with one or more of these rules. A rule is compliant if all of the resources that the rule evaluates comply with it. A rule is noncompliant if any of these resources do not comply. AWS Config returns the @INSUFFICIENT_DATA@ value when no evaluation results are available for the AWS resource or AWS Config rule. For the @Compliance@ data type, AWS Config supports only @COMPLIANT@ , @NON_COMPLIANT@ , and @INSUFFICIENT_DATA@ values. AWS Config does not support the @NOT_APPLICABLE@ value for the @Compliance@ data type.+cComplianceType :: Lens' Compliance (Maybe ComplianceType)+cComplianceType = lens _cComplianceType (\ s a -> s{_cComplianceType = a})++instance FromJSON Compliance where+ parseJSON+ = withObject "Compliance"+ (\ x ->+ Compliance' <$>+ (x .:? "ComplianceContributorCount") <*>+ (x .:? "ComplianceType"))++instance Hashable Compliance where++instance NFData Compliance where++-- | Indicates whether an AWS Config rule is compliant. A rule is compliant if all of the resources that the rule evaluated comply with it. A rule is noncompliant if any of these resources do not comply.+--+--+--+-- /See:/ 'complianceByConfigRule' smart constructor.+data ComplianceByConfigRule = ComplianceByConfigRule'+ { _cbcrCompliance :: !(Maybe Compliance)+ , _cbcrConfigRuleName :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ComplianceByConfigRule' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cbcrCompliance' - Indicates whether the AWS Config rule is compliant.+--+-- * 'cbcrConfigRuleName' - The name of the AWS Config rule.+complianceByConfigRule+ :: ComplianceByConfigRule+complianceByConfigRule =+ ComplianceByConfigRule'+ {_cbcrCompliance = Nothing, _cbcrConfigRuleName = Nothing}+++-- | Indicates whether the AWS Config rule is compliant.+cbcrCompliance :: Lens' ComplianceByConfigRule (Maybe Compliance)+cbcrCompliance = lens _cbcrCompliance (\ s a -> s{_cbcrCompliance = a})++-- | The name of the AWS Config rule.+cbcrConfigRuleName :: Lens' ComplianceByConfigRule (Maybe Text)+cbcrConfigRuleName = lens _cbcrConfigRuleName (\ s a -> s{_cbcrConfigRuleName = a})++instance FromJSON ComplianceByConfigRule where+ parseJSON+ = withObject "ComplianceByConfigRule"+ (\ x ->+ ComplianceByConfigRule' <$>+ (x .:? "Compliance") <*> (x .:? "ConfigRuleName"))++instance Hashable ComplianceByConfigRule where++instance NFData ComplianceByConfigRule where++-- | Indicates whether an AWS resource that is evaluated according to one or more AWS Config rules is compliant. A resource is compliant if it complies with all of the rules that evaluate it. A resource is noncompliant if it does not comply with one or more of these rules.+--+--+--+-- /See:/ 'complianceByResource' smart constructor.+data ComplianceByResource = ComplianceByResource'+ { _cbrResourceId :: !(Maybe Text)+ , _cbrResourceType :: !(Maybe Text)+ , _cbrCompliance :: !(Maybe Compliance)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ComplianceByResource' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cbrResourceId' - The ID of the AWS resource that was evaluated.+--+-- * 'cbrResourceType' - The type of the AWS resource that was evaluated.+--+-- * 'cbrCompliance' - Indicates whether the AWS resource complies with all of the AWS Config rules that evaluated it.+complianceByResource+ :: ComplianceByResource+complianceByResource =+ ComplianceByResource'+ { _cbrResourceId = Nothing+ , _cbrResourceType = Nothing+ , _cbrCompliance = Nothing+ }+++-- | The ID of the AWS resource that was evaluated.+cbrResourceId :: Lens' ComplianceByResource (Maybe Text)+cbrResourceId = lens _cbrResourceId (\ s a -> s{_cbrResourceId = a})++-- | The type of the AWS resource that was evaluated.+cbrResourceType :: Lens' ComplianceByResource (Maybe Text)+cbrResourceType = lens _cbrResourceType (\ s a -> s{_cbrResourceType = a})++-- | Indicates whether the AWS resource complies with all of the AWS Config rules that evaluated it.+cbrCompliance :: Lens' ComplianceByResource (Maybe Compliance)+cbrCompliance = lens _cbrCompliance (\ s a -> s{_cbrCompliance = a})++instance FromJSON ComplianceByResource where+ parseJSON+ = withObject "ComplianceByResource"+ (\ x ->+ ComplianceByResource' <$>+ (x .:? "ResourceId") <*> (x .:? "ResourceType") <*>+ (x .:? "Compliance"))++instance Hashable ComplianceByResource where++instance NFData ComplianceByResource where++-- | The number of AWS resources or AWS Config rules responsible for the current compliance of the item, up to a maximum number.+--+--+--+-- /See:/ 'complianceContributorCount' smart constructor.+data ComplianceContributorCount = ComplianceContributorCount'+ { _cccCappedCount :: !(Maybe Int)+ , _cccCapExceeded :: !(Maybe Bool)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ComplianceContributorCount' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cccCappedCount' - The number of AWS resources or AWS Config rules responsible for the current compliance of the item.+--+-- * 'cccCapExceeded' - Indicates whether the maximum count is reached.+complianceContributorCount+ :: ComplianceContributorCount+complianceContributorCount =+ ComplianceContributorCount'+ {_cccCappedCount = Nothing, _cccCapExceeded = Nothing}+++-- | The number of AWS resources or AWS Config rules responsible for the current compliance of the item.+cccCappedCount :: Lens' ComplianceContributorCount (Maybe Int)+cccCappedCount = lens _cccCappedCount (\ s a -> s{_cccCappedCount = a})++-- | Indicates whether the maximum count is reached.+cccCapExceeded :: Lens' ComplianceContributorCount (Maybe Bool)+cccCapExceeded = lens _cccCapExceeded (\ s a -> s{_cccCapExceeded = a})++instance FromJSON ComplianceContributorCount where+ parseJSON+ = withObject "ComplianceContributorCount"+ (\ x ->+ ComplianceContributorCount' <$>+ (x .:? "CappedCount") <*> (x .:? "CapExceeded"))++instance Hashable ComplianceContributorCount where++instance NFData ComplianceContributorCount where++-- | The number of AWS Config rules or AWS resources that are compliant and noncompliant.+--+--+--+-- /See:/ 'complianceSummary' smart constructor.+data ComplianceSummary = ComplianceSummary'+ { _csComplianceSummaryTimestamp :: !(Maybe POSIX)+ , _csCompliantResourceCount :: !(Maybe ComplianceContributorCount)+ , _csNonCompliantResourceCount :: !(Maybe ComplianceContributorCount)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ComplianceSummary' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'csComplianceSummaryTimestamp' - The time that AWS Config created the compliance summary.+--+-- * 'csCompliantResourceCount' - The number of AWS Config rules or AWS resources that are compliant, up to a maximum of 25 for rules and 100 for resources.+--+-- * 'csNonCompliantResourceCount' - The number of AWS Config rules or AWS resources that are noncompliant, up to a maximum of 25 for rules and 100 for resources.+complianceSummary+ :: ComplianceSummary+complianceSummary =+ ComplianceSummary'+ { _csComplianceSummaryTimestamp = Nothing+ , _csCompliantResourceCount = Nothing+ , _csNonCompliantResourceCount = Nothing+ }+++-- | The time that AWS Config created the compliance summary.+csComplianceSummaryTimestamp :: Lens' ComplianceSummary (Maybe UTCTime)+csComplianceSummaryTimestamp = lens _csComplianceSummaryTimestamp (\ s a -> s{_csComplianceSummaryTimestamp = a}) . mapping _Time++-- | The number of AWS Config rules or AWS resources that are compliant, up to a maximum of 25 for rules and 100 for resources.+csCompliantResourceCount :: Lens' ComplianceSummary (Maybe ComplianceContributorCount)+csCompliantResourceCount = lens _csCompliantResourceCount (\ s a -> s{_csCompliantResourceCount = a})++-- | The number of AWS Config rules or AWS resources that are noncompliant, up to a maximum of 25 for rules and 100 for resources.+csNonCompliantResourceCount :: Lens' ComplianceSummary (Maybe ComplianceContributorCount)+csNonCompliantResourceCount = lens _csNonCompliantResourceCount (\ s a -> s{_csNonCompliantResourceCount = a})++instance FromJSON ComplianceSummary where+ parseJSON+ = withObject "ComplianceSummary"+ (\ x ->+ ComplianceSummary' <$>+ (x .:? "ComplianceSummaryTimestamp") <*>+ (x .:? "CompliantResourceCount")+ <*> (x .:? "NonCompliantResourceCount"))++instance Hashable ComplianceSummary where++instance NFData ComplianceSummary where++-- | The number of AWS resources of a specific type that are compliant or noncompliant, up to a maximum of 100 for each.+--+--+--+-- /See:/ 'complianceSummaryByResourceType' smart constructor.+data ComplianceSummaryByResourceType = ComplianceSummaryByResourceType'+ { _csbrtResourceType :: !(Maybe Text)+ , _csbrtComplianceSummary :: !(Maybe ComplianceSummary)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ComplianceSummaryByResourceType' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'csbrtResourceType' - The type of AWS resource.+--+-- * 'csbrtComplianceSummary' - The number of AWS resources that are compliant or noncompliant, up to a maximum of 100 for each.+complianceSummaryByResourceType+ :: ComplianceSummaryByResourceType+complianceSummaryByResourceType =+ ComplianceSummaryByResourceType'+ {_csbrtResourceType = Nothing, _csbrtComplianceSummary = Nothing}+++-- | The type of AWS resource.+csbrtResourceType :: Lens' ComplianceSummaryByResourceType (Maybe Text)+csbrtResourceType = lens _csbrtResourceType (\ s a -> s{_csbrtResourceType = a})++-- | The number of AWS resources that are compliant or noncompliant, up to a maximum of 100 for each.+csbrtComplianceSummary :: Lens' ComplianceSummaryByResourceType (Maybe ComplianceSummary)+csbrtComplianceSummary = lens _csbrtComplianceSummary (\ s a -> s{_csbrtComplianceSummary = a})++instance FromJSON ComplianceSummaryByResourceType+ where+ parseJSON+ = withObject "ComplianceSummaryByResourceType"+ (\ x ->+ ComplianceSummaryByResourceType' <$>+ (x .:? "ResourceType") <*>+ (x .:? "ComplianceSummary"))++instance Hashable ComplianceSummaryByResourceType+ where++instance NFData ComplianceSummaryByResourceType where++-- | Provides status of the delivery of the snapshot or the configuration history to the specified Amazon S3 bucket. Also provides the status of notifications about the Amazon S3 delivery to the specified Amazon SNS topic.+--+--+--+-- /See:/ 'configExportDeliveryInfo' smart constructor.+data ConfigExportDeliveryInfo = ConfigExportDeliveryInfo'+ { _cediLastErrorCode :: !(Maybe Text)+ , _cediLastAttemptTime :: !(Maybe POSIX)+ , _cediLastSuccessfulTime :: !(Maybe POSIX)+ , _cediLastStatus :: !(Maybe DeliveryStatus)+ , _cediLastErrorMessage :: !(Maybe Text)+ , _cediNextDeliveryTime :: !(Maybe POSIX)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ConfigExportDeliveryInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cediLastErrorCode' - The error code from the last attempted delivery.+--+-- * 'cediLastAttemptTime' - The time of the last attempted delivery.+--+-- * 'cediLastSuccessfulTime' - The time of the last successful delivery.+--+-- * 'cediLastStatus' - Status of the last attempted delivery.+--+-- * 'cediLastErrorMessage' - The error message from the last attempted delivery.+--+-- * 'cediNextDeliveryTime' - The time that the next delivery occurs.+configExportDeliveryInfo+ :: ConfigExportDeliveryInfo+configExportDeliveryInfo =+ ConfigExportDeliveryInfo'+ { _cediLastErrorCode = Nothing+ , _cediLastAttemptTime = Nothing+ , _cediLastSuccessfulTime = Nothing+ , _cediLastStatus = Nothing+ , _cediLastErrorMessage = Nothing+ , _cediNextDeliveryTime = Nothing+ }+++-- | The error code from the last attempted delivery.+cediLastErrorCode :: Lens' ConfigExportDeliveryInfo (Maybe Text)+cediLastErrorCode = lens _cediLastErrorCode (\ s a -> s{_cediLastErrorCode = a})++-- | The time of the last attempted delivery.+cediLastAttemptTime :: Lens' ConfigExportDeliveryInfo (Maybe UTCTime)+cediLastAttemptTime = lens _cediLastAttemptTime (\ s a -> s{_cediLastAttemptTime = a}) . mapping _Time++-- | The time of the last successful delivery.+cediLastSuccessfulTime :: Lens' ConfigExportDeliveryInfo (Maybe UTCTime)+cediLastSuccessfulTime = lens _cediLastSuccessfulTime (\ s a -> s{_cediLastSuccessfulTime = a}) . mapping _Time++-- | Status of the last attempted delivery.+cediLastStatus :: Lens' ConfigExportDeliveryInfo (Maybe DeliveryStatus)+cediLastStatus = lens _cediLastStatus (\ s a -> s{_cediLastStatus = a})++-- | The error message from the last attempted delivery.+cediLastErrorMessage :: Lens' ConfigExportDeliveryInfo (Maybe Text)+cediLastErrorMessage = lens _cediLastErrorMessage (\ s a -> s{_cediLastErrorMessage = a})++-- | The time that the next delivery occurs.+cediNextDeliveryTime :: Lens' ConfigExportDeliveryInfo (Maybe UTCTime)+cediNextDeliveryTime = lens _cediNextDeliveryTime (\ s a -> s{_cediNextDeliveryTime = a}) . mapping _Time++instance FromJSON ConfigExportDeliveryInfo where+ parseJSON+ = withObject "ConfigExportDeliveryInfo"+ (\ x ->+ ConfigExportDeliveryInfo' <$>+ (x .:? "lastErrorCode") <*> (x .:? "lastAttemptTime")+ <*> (x .:? "lastSuccessfulTime")+ <*> (x .:? "lastStatus")+ <*> (x .:? "lastErrorMessage")+ <*> (x .:? "nextDeliveryTime"))++instance Hashable ConfigExportDeliveryInfo where++instance NFData ConfigExportDeliveryInfo where++-- | An AWS Config rule represents an AWS Lambda function that you create for a custom rule or a predefined function for an AWS managed rule. The function evaluates configuration items to assess whether your AWS resources comply with your desired configurations. This function can run when AWS Config detects a configuration change to an AWS resource and at a periodic frequency that you choose (for example, every 24 hours).+--+--+-- For more information about developing and using AWS Config rules, see <http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html Evaluating AWS Resource Configurations with AWS Config> in the /AWS Config Developer Guide/ .+--+--+-- /See:/ 'configRule' smart constructor.+data ConfigRule = ConfigRule'+ { _crInputParameters :: !(Maybe Text)+ , _crConfigRuleName :: !(Maybe Text)+ , _crMaximumExecutionFrequency :: !(Maybe MaximumExecutionFrequency)+ , _crConfigRuleId :: !(Maybe Text)+ , _crScope :: !(Maybe Scope)+ , _crConfigRuleState :: !(Maybe ConfigRuleState)+ , _crDescription :: !(Maybe Text)+ , _crConfigRuleARN :: !(Maybe Text)+ , _crSource :: !Source+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ConfigRule' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'crInputParameters' - A string, in JSON format, that is passed to the AWS Config rule Lambda function.+--+-- * 'crConfigRuleName' - The name that you assign to the AWS Config rule. The name is required if you are adding a new rule.+--+-- * 'crMaximumExecutionFrequency' - The maximum frequency with which AWS Config runs evaluations for a rule. You can specify a value for @MaximumExecutionFrequency@ when: * You are using an AWS managed rule that is triggered at a periodic frequency. * Your custom rule is triggered when AWS Config delivers the configuration snapshot. For more information, see 'ConfigSnapshotDeliveryProperties' .+--+-- * 'crConfigRuleId' - The ID of the AWS Config rule.+--+-- * 'crScope' - Defines which resources can trigger an evaluation for the rule. The scope can include one or more resource types, a combination of one resource type and one resource ID, or a combination of a tag key and value. Specify a scope to constrain the resources that can trigger an evaluation for the rule. If you do not specify a scope, evaluations are triggered when any resource in the recording group changes.+--+-- * 'crConfigRuleState' - Indicates whether the AWS Config rule is active or is currently being deleted by AWS Config. It can also indicate the evaluation status for the AWS Config rule. AWS Config sets the state of the rule to @EVALUATING@ temporarily after you use the @StartConfigRulesEvaluation@ request to evaluate your resources against the AWS Config rule. AWS Config sets the state of the rule to @DELETING_RESULTS@ temporarily after you use the @DeleteEvaluationResults@ request to delete the current evaluation results for the AWS Config rule. AWS Config temporarily sets the state of a rule to @DELETING@ after you use the @DeleteConfigRule@ request to delete the rule. After AWS Config deletes the rule, the rule and all of its evaluations are erased and are no longer available.+--+-- * 'crDescription' - The description that you provide for the AWS Config rule.+--+-- * 'crConfigRuleARN' - The Amazon Resource Name (ARN) of the AWS Config rule.+--+-- * 'crSource' - Provides the rule owner (AWS or customer), the rule identifier, and the notifications that cause the function to evaluate your AWS resources.+configRule+ :: Source -- ^ 'crSource'+ -> ConfigRule+configRule pSource_ =+ ConfigRule'+ { _crInputParameters = Nothing+ , _crConfigRuleName = Nothing+ , _crMaximumExecutionFrequency = Nothing+ , _crConfigRuleId = Nothing+ , _crScope = Nothing+ , _crConfigRuleState = Nothing+ , _crDescription = Nothing+ , _crConfigRuleARN = Nothing+ , _crSource = pSource_+ }+++-- | A string, in JSON format, that is passed to the AWS Config rule Lambda function.+crInputParameters :: Lens' ConfigRule (Maybe Text)+crInputParameters = lens _crInputParameters (\ s a -> s{_crInputParameters = a})++-- | The name that you assign to the AWS Config rule. The name is required if you are adding a new rule.+crConfigRuleName :: Lens' ConfigRule (Maybe Text)+crConfigRuleName = lens _crConfigRuleName (\ s a -> s{_crConfigRuleName = a})++-- | The maximum frequency with which AWS Config runs evaluations for a rule. You can specify a value for @MaximumExecutionFrequency@ when: * You are using an AWS managed rule that is triggered at a periodic frequency. * Your custom rule is triggered when AWS Config delivers the configuration snapshot. For more information, see 'ConfigSnapshotDeliveryProperties' .+crMaximumExecutionFrequency :: Lens' ConfigRule (Maybe MaximumExecutionFrequency)+crMaximumExecutionFrequency = lens _crMaximumExecutionFrequency (\ s a -> s{_crMaximumExecutionFrequency = a})++-- | The ID of the AWS Config rule.+crConfigRuleId :: Lens' ConfigRule (Maybe Text)+crConfigRuleId = lens _crConfigRuleId (\ s a -> s{_crConfigRuleId = a})++-- | Defines which resources can trigger an evaluation for the rule. The scope can include one or more resource types, a combination of one resource type and one resource ID, or a combination of a tag key and value. Specify a scope to constrain the resources that can trigger an evaluation for the rule. If you do not specify a scope, evaluations are triggered when any resource in the recording group changes.+crScope :: Lens' ConfigRule (Maybe Scope)+crScope = lens _crScope (\ s a -> s{_crScope = a})++-- | Indicates whether the AWS Config rule is active or is currently being deleted by AWS Config. It can also indicate the evaluation status for the AWS Config rule. AWS Config sets the state of the rule to @EVALUATING@ temporarily after you use the @StartConfigRulesEvaluation@ request to evaluate your resources against the AWS Config rule. AWS Config sets the state of the rule to @DELETING_RESULTS@ temporarily after you use the @DeleteEvaluationResults@ request to delete the current evaluation results for the AWS Config rule. AWS Config temporarily sets the state of a rule to @DELETING@ after you use the @DeleteConfigRule@ request to delete the rule. After AWS Config deletes the rule, the rule and all of its evaluations are erased and are no longer available.+crConfigRuleState :: Lens' ConfigRule (Maybe ConfigRuleState)+crConfigRuleState = lens _crConfigRuleState (\ s a -> s{_crConfigRuleState = a})++-- | The description that you provide for the AWS Config rule.+crDescription :: Lens' ConfigRule (Maybe Text)+crDescription = lens _crDescription (\ s a -> s{_crDescription = a})++-- | The Amazon Resource Name (ARN) of the AWS Config rule.+crConfigRuleARN :: Lens' ConfigRule (Maybe Text)+crConfigRuleARN = lens _crConfigRuleARN (\ s a -> s{_crConfigRuleARN = a})++-- | Provides the rule owner (AWS or customer), the rule identifier, and the notifications that cause the function to evaluate your AWS resources.+crSource :: Lens' ConfigRule Source+crSource = lens _crSource (\ s a -> s{_crSource = a})++instance FromJSON ConfigRule where+ parseJSON+ = withObject "ConfigRule"+ (\ x ->+ ConfigRule' <$>+ (x .:? "InputParameters") <*>+ (x .:? "ConfigRuleName")+ <*> (x .:? "MaximumExecutionFrequency")+ <*> (x .:? "ConfigRuleId")+ <*> (x .:? "Scope")+ <*> (x .:? "ConfigRuleState")+ <*> (x .:? "Description")+ <*> (x .:? "ConfigRuleArn")+ <*> (x .: "Source"))++instance Hashable ConfigRule where++instance NFData ConfigRule where++instance ToJSON ConfigRule where+ toJSON ConfigRule'{..}+ = object+ (catMaybes+ [("InputParameters" .=) <$> _crInputParameters,+ ("ConfigRuleName" .=) <$> _crConfigRuleName,+ ("MaximumExecutionFrequency" .=) <$>+ _crMaximumExecutionFrequency,+ ("ConfigRuleId" .=) <$> _crConfigRuleId,+ ("Scope" .=) <$> _crScope,+ ("ConfigRuleState" .=) <$> _crConfigRuleState,+ ("Description" .=) <$> _crDescription,+ ("ConfigRuleArn" .=) <$> _crConfigRuleARN,+ Just ("Source" .= _crSource)])++-- | Filters the compliance results based on account ID, region, compliance type, and rule name.+--+--+--+-- /See:/ 'configRuleComplianceFilters' smart constructor.+data ConfigRuleComplianceFilters = ConfigRuleComplianceFilters'+ { _crcfConfigRuleName :: !(Maybe Text)+ , _crcfAccountId :: !(Maybe Text)+ , _crcfComplianceType :: !(Maybe ComplianceType)+ , _crcfAWSRegion :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ConfigRuleComplianceFilters' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'crcfConfigRuleName' - The name of the AWS Config rule.+--+-- * 'crcfAccountId' - The 12-digit account ID of the source account.+--+-- * 'crcfComplianceType' - The rule compliance status. For the @ConfigRuleComplianceFilters@ data type, AWS Config supports only @COMPLIANT@ and @NON_COMPLIANT@ . AWS Config does not support the @NOT_APPLICABLE@ and the @INSUFFICIENT_DATA@ values.+--+-- * 'crcfAWSRegion' - The source region where the data is aggregated.+configRuleComplianceFilters+ :: ConfigRuleComplianceFilters+configRuleComplianceFilters =+ ConfigRuleComplianceFilters'+ { _crcfConfigRuleName = Nothing+ , _crcfAccountId = Nothing+ , _crcfComplianceType = Nothing+ , _crcfAWSRegion = Nothing+ }+++-- | The name of the AWS Config rule.+crcfConfigRuleName :: Lens' ConfigRuleComplianceFilters (Maybe Text)+crcfConfigRuleName = lens _crcfConfigRuleName (\ s a -> s{_crcfConfigRuleName = a})++-- | The 12-digit account ID of the source account.+crcfAccountId :: Lens' ConfigRuleComplianceFilters (Maybe Text)+crcfAccountId = lens _crcfAccountId (\ s a -> s{_crcfAccountId = a})++-- | The rule compliance status. For the @ConfigRuleComplianceFilters@ data type, AWS Config supports only @COMPLIANT@ and @NON_COMPLIANT@ . AWS Config does not support the @NOT_APPLICABLE@ and the @INSUFFICIENT_DATA@ values.+crcfComplianceType :: Lens' ConfigRuleComplianceFilters (Maybe ComplianceType)+crcfComplianceType = lens _crcfComplianceType (\ s a -> s{_crcfComplianceType = a})++-- | The source region where the data is aggregated.+crcfAWSRegion :: Lens' ConfigRuleComplianceFilters (Maybe Text)+crcfAWSRegion = lens _crcfAWSRegion (\ s a -> s{_crcfAWSRegion = a})++instance Hashable ConfigRuleComplianceFilters where++instance NFData ConfigRuleComplianceFilters where++instance ToJSON ConfigRuleComplianceFilters where+ toJSON ConfigRuleComplianceFilters'{..}+ = object+ (catMaybes+ [("ConfigRuleName" .=) <$> _crcfConfigRuleName,+ ("AccountId" .=) <$> _crcfAccountId,+ ("ComplianceType" .=) <$> _crcfComplianceType,+ ("AwsRegion" .=) <$> _crcfAWSRegion])++-- | Filters the results based on the account IDs and regions.+--+--+--+-- /See:/ 'configRuleComplianceSummaryFilters' smart constructor.+data ConfigRuleComplianceSummaryFilters = ConfigRuleComplianceSummaryFilters'+ { _crcsfAccountId :: !(Maybe Text)+ , _crcsfAWSRegion :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ConfigRuleComplianceSummaryFilters' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'crcsfAccountId' - The 12-digit account ID of the source account.+--+-- * 'crcsfAWSRegion' - The source region where the data is aggregated.+configRuleComplianceSummaryFilters+ :: ConfigRuleComplianceSummaryFilters+configRuleComplianceSummaryFilters =+ ConfigRuleComplianceSummaryFilters'+ {_crcsfAccountId = Nothing, _crcsfAWSRegion = Nothing}+++-- | The 12-digit account ID of the source account.+crcsfAccountId :: Lens' ConfigRuleComplianceSummaryFilters (Maybe Text)+crcsfAccountId = lens _crcsfAccountId (\ s a -> s{_crcsfAccountId = a})++-- | The source region where the data is aggregated.+crcsfAWSRegion :: Lens' ConfigRuleComplianceSummaryFilters (Maybe Text)+crcsfAWSRegion = lens _crcsfAWSRegion (\ s a -> s{_crcsfAWSRegion = a})++instance Hashable ConfigRuleComplianceSummaryFilters+ where++instance NFData ConfigRuleComplianceSummaryFilters+ where++instance ToJSON ConfigRuleComplianceSummaryFilters+ where+ toJSON ConfigRuleComplianceSummaryFilters'{..}+ = object+ (catMaybes+ [("AccountId" .=) <$> _crcsfAccountId,+ ("AwsRegion" .=) <$> _crcsfAWSRegion])++-- | Status information for your AWS managed Config rules. The status includes information such as the last time the rule ran, the last time it failed, and the related error for the last failure.+--+--+-- This action does not return status information about custom AWS Config rules.+--+--+-- /See:/ 'configRuleEvaluationStatus' smart constructor.+data ConfigRuleEvaluationStatus = ConfigRuleEvaluationStatus'+ { _cresLastErrorCode :: !(Maybe Text)+ , _cresLastFailedEvaluationTime :: !(Maybe POSIX)+ , _cresFirstActivatedTime :: !(Maybe POSIX)+ , _cresLastSuccessfulEvaluationTime :: !(Maybe POSIX)+ , _cresConfigRuleName :: !(Maybe Text)+ , _cresLastErrorMessage :: !(Maybe Text)+ , _cresConfigRuleId :: !(Maybe Text)+ , _cresLastFailedInvocationTime :: !(Maybe POSIX)+ , _cresFirstEvaluationStarted :: !(Maybe Bool)+ , _cresLastSuccessfulInvocationTime :: !(Maybe POSIX)+ , _cresConfigRuleARN :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ConfigRuleEvaluationStatus' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cresLastErrorCode' - The error code that AWS Config returned when the rule last failed.+--+-- * 'cresLastFailedEvaluationTime' - The time that AWS Config last failed to evaluate your AWS resources against the rule.+--+-- * 'cresFirstActivatedTime' - The time that you first activated the AWS Config rule.+--+-- * 'cresLastSuccessfulEvaluationTime' - The time that AWS Config last successfully evaluated your AWS resources against the rule.+--+-- * 'cresConfigRuleName' - The name of the AWS Config rule.+--+-- * 'cresLastErrorMessage' - The error message that AWS Config returned when the rule last failed.+--+-- * 'cresConfigRuleId' - The ID of the AWS Config rule.+--+-- * 'cresLastFailedInvocationTime' - The time that AWS Config last failed to invoke the AWS Config rule to evaluate your AWS resources.+--+-- * 'cresFirstEvaluationStarted' - Indicates whether AWS Config has evaluated your resources against the rule at least once. * @true@ - AWS Config has evaluated your AWS resources against the rule at least once. * @false@ - AWS Config has not once finished evaluating your AWS resources against the rule.+--+-- * 'cresLastSuccessfulInvocationTime' - The time that AWS Config last successfully invoked the AWS Config rule to evaluate your AWS resources.+--+-- * 'cresConfigRuleARN' - The Amazon Resource Name (ARN) of the AWS Config rule.+configRuleEvaluationStatus+ :: ConfigRuleEvaluationStatus+configRuleEvaluationStatus =+ ConfigRuleEvaluationStatus'+ { _cresLastErrorCode = Nothing+ , _cresLastFailedEvaluationTime = Nothing+ , _cresFirstActivatedTime = Nothing+ , _cresLastSuccessfulEvaluationTime = Nothing+ , _cresConfigRuleName = Nothing+ , _cresLastErrorMessage = Nothing+ , _cresConfigRuleId = Nothing+ , _cresLastFailedInvocationTime = Nothing+ , _cresFirstEvaluationStarted = Nothing+ , _cresLastSuccessfulInvocationTime = Nothing+ , _cresConfigRuleARN = Nothing+ }+++-- | The error code that AWS Config returned when the rule last failed.+cresLastErrorCode :: Lens' ConfigRuleEvaluationStatus (Maybe Text)+cresLastErrorCode = lens _cresLastErrorCode (\ s a -> s{_cresLastErrorCode = a})++-- | The time that AWS Config last failed to evaluate your AWS resources against the rule.+cresLastFailedEvaluationTime :: Lens' ConfigRuleEvaluationStatus (Maybe UTCTime)+cresLastFailedEvaluationTime = lens _cresLastFailedEvaluationTime (\ s a -> s{_cresLastFailedEvaluationTime = a}) . mapping _Time++-- | The time that you first activated the AWS Config rule.+cresFirstActivatedTime :: Lens' ConfigRuleEvaluationStatus (Maybe UTCTime)+cresFirstActivatedTime = lens _cresFirstActivatedTime (\ s a -> s{_cresFirstActivatedTime = a}) . mapping _Time++-- | The time that AWS Config last successfully evaluated your AWS resources against the rule.+cresLastSuccessfulEvaluationTime :: Lens' ConfigRuleEvaluationStatus (Maybe UTCTime)+cresLastSuccessfulEvaluationTime = lens _cresLastSuccessfulEvaluationTime (\ s a -> s{_cresLastSuccessfulEvaluationTime = a}) . mapping _Time++-- | The name of the AWS Config rule.+cresConfigRuleName :: Lens' ConfigRuleEvaluationStatus (Maybe Text)+cresConfigRuleName = lens _cresConfigRuleName (\ s a -> s{_cresConfigRuleName = a})++-- | The error message that AWS Config returned when the rule last failed.+cresLastErrorMessage :: Lens' ConfigRuleEvaluationStatus (Maybe Text)+cresLastErrorMessage = lens _cresLastErrorMessage (\ s a -> s{_cresLastErrorMessage = a})++-- | The ID of the AWS Config rule.+cresConfigRuleId :: Lens' ConfigRuleEvaluationStatus (Maybe Text)+cresConfigRuleId = lens _cresConfigRuleId (\ s a -> s{_cresConfigRuleId = a})++-- | The time that AWS Config last failed to invoke the AWS Config rule to evaluate your AWS resources.+cresLastFailedInvocationTime :: Lens' ConfigRuleEvaluationStatus (Maybe UTCTime)+cresLastFailedInvocationTime = lens _cresLastFailedInvocationTime (\ s a -> s{_cresLastFailedInvocationTime = a}) . mapping _Time++-- | Indicates whether AWS Config has evaluated your resources against the rule at least once. * @true@ - AWS Config has evaluated your AWS resources against the rule at least once. * @false@ - AWS Config has not once finished evaluating your AWS resources against the rule.+cresFirstEvaluationStarted :: Lens' ConfigRuleEvaluationStatus (Maybe Bool)+cresFirstEvaluationStarted = lens _cresFirstEvaluationStarted (\ s a -> s{_cresFirstEvaluationStarted = a})++-- | The time that AWS Config last successfully invoked the AWS Config rule to evaluate your AWS resources.+cresLastSuccessfulInvocationTime :: Lens' ConfigRuleEvaluationStatus (Maybe UTCTime)+cresLastSuccessfulInvocationTime = lens _cresLastSuccessfulInvocationTime (\ s a -> s{_cresLastSuccessfulInvocationTime = a}) . mapping _Time++-- | The Amazon Resource Name (ARN) of the AWS Config rule.+cresConfigRuleARN :: Lens' ConfigRuleEvaluationStatus (Maybe Text)+cresConfigRuleARN = lens _cresConfigRuleARN (\ s a -> s{_cresConfigRuleARN = a})++instance FromJSON ConfigRuleEvaluationStatus where+ parseJSON+ = withObject "ConfigRuleEvaluationStatus"+ (\ x ->+ ConfigRuleEvaluationStatus' <$>+ (x .:? "LastErrorCode") <*>+ (x .:? "LastFailedEvaluationTime")+ <*> (x .:? "FirstActivatedTime")+ <*> (x .:? "LastSuccessfulEvaluationTime")+ <*> (x .:? "ConfigRuleName")+ <*> (x .:? "LastErrorMessage")+ <*> (x .:? "ConfigRuleId")+ <*> (x .:? "LastFailedInvocationTime")+ <*> (x .:? "FirstEvaluationStarted")+ <*> (x .:? "LastSuccessfulInvocationTime")+ <*> (x .:? "ConfigRuleArn"))++instance Hashable ConfigRuleEvaluationStatus where++instance NFData ConfigRuleEvaluationStatus where++-- | Provides options for how often AWS Config delivers configuration snapshots to the Amazon S3 bucket in your delivery channel.+--+--+-- The frequency for a rule that triggers evaluations for your resources when AWS Config delivers the configuration snapshot is set by one of two values, depending on which is less frequent:+--+-- * The value for the @deliveryFrequency@ parameter within the delivery channel configuration, which sets how often AWS Config delivers configuration snapshots. This value also sets how often AWS Config invokes evaluations for AWS Config rules.+--+-- * The value for the @MaximumExecutionFrequency@ parameter, which sets the maximum frequency with which AWS Config invokes evaluations for the rule. For more information, see 'ConfigRule' .+--+--+--+-- If the @deliveryFrequency@ value is less frequent than the @MaximumExecutionFrequency@ value for a rule, AWS Config invokes the rule only as often as the @deliveryFrequency@ value.+--+-- * For example, you want your rule to run evaluations when AWS Config delivers the configuration snapshot.+--+-- * You specify the @MaximumExecutionFrequency@ value for @Six_Hours@ .+--+-- * You then specify the delivery channel @deliveryFrequency@ value for @TwentyFour_Hours@ .+--+-- * Because the value for @deliveryFrequency@ is less frequent than @MaximumExecutionFrequency@ , AWS Config invokes evaluations for the rule every 24 hours.+--+--+--+-- You should set the @MaximumExecutionFrequency@ value to be at least as frequent as the @deliveryFrequency@ value. You can view the @deliveryFrequency@ value by using the @DescribeDeliveryChannnels@ action.+--+-- To update the @deliveryFrequency@ with which AWS Config delivers your configuration snapshots, use the @PutDeliveryChannel@ action.+--+--+-- /See:/ 'configSnapshotDeliveryProperties' smart constructor.+newtype ConfigSnapshotDeliveryProperties = ConfigSnapshotDeliveryProperties'+ { _csdpDeliveryFrequency :: Maybe MaximumExecutionFrequency+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ConfigSnapshotDeliveryProperties' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'csdpDeliveryFrequency' - The frequency with which AWS Config delivers configuration snapshots.+configSnapshotDeliveryProperties+ :: ConfigSnapshotDeliveryProperties+configSnapshotDeliveryProperties =+ ConfigSnapshotDeliveryProperties' {_csdpDeliveryFrequency = Nothing}+++-- | The frequency with which AWS Config delivers configuration snapshots.+csdpDeliveryFrequency :: Lens' ConfigSnapshotDeliveryProperties (Maybe MaximumExecutionFrequency)+csdpDeliveryFrequency = lens _csdpDeliveryFrequency (\ s a -> s{_csdpDeliveryFrequency = a})++instance FromJSON ConfigSnapshotDeliveryProperties+ where+ parseJSON+ = withObject "ConfigSnapshotDeliveryProperties"+ (\ x ->+ ConfigSnapshotDeliveryProperties' <$>+ (x .:? "deliveryFrequency"))++instance Hashable ConfigSnapshotDeliveryProperties+ where++instance NFData ConfigSnapshotDeliveryProperties+ where++instance ToJSON ConfigSnapshotDeliveryProperties+ where+ toJSON ConfigSnapshotDeliveryProperties'{..}+ = object+ (catMaybes+ [("deliveryFrequency" .=) <$>+ _csdpDeliveryFrequency])++-- | A list that contains the status of the delivery of the configuration stream notification to the Amazon SNS topic.+--+--+--+-- /See:/ 'configStreamDeliveryInfo' smart constructor.+data ConfigStreamDeliveryInfo = ConfigStreamDeliveryInfo'+ { _csdiLastErrorCode :: !(Maybe Text)+ , _csdiLastStatusChangeTime :: !(Maybe POSIX)+ , _csdiLastStatus :: !(Maybe DeliveryStatus)+ , _csdiLastErrorMessage :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ConfigStreamDeliveryInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'csdiLastErrorCode' - The error code from the last attempted delivery.+--+-- * 'csdiLastStatusChangeTime' - The time from the last status change.+--+-- * 'csdiLastStatus' - Status of the last attempted delivery. __Note__ Providing an SNS topic on a <http://docs.aws.amazon.com/config/latest/APIReference/API_DeliveryChannel.html DeliveryChannel> for AWS Config is optional. If the SNS delivery is turned off, the last status will be __Not_Applicable__ .+--+-- * 'csdiLastErrorMessage' - The error message from the last attempted delivery.+configStreamDeliveryInfo+ :: ConfigStreamDeliveryInfo+configStreamDeliveryInfo =+ ConfigStreamDeliveryInfo'+ { _csdiLastErrorCode = Nothing+ , _csdiLastStatusChangeTime = Nothing+ , _csdiLastStatus = Nothing+ , _csdiLastErrorMessage = Nothing+ }+++-- | The error code from the last attempted delivery.+csdiLastErrorCode :: Lens' ConfigStreamDeliveryInfo (Maybe Text)+csdiLastErrorCode = lens _csdiLastErrorCode (\ s a -> s{_csdiLastErrorCode = a})++-- | The time from the last status change.+csdiLastStatusChangeTime :: Lens' ConfigStreamDeliveryInfo (Maybe UTCTime)+csdiLastStatusChangeTime = lens _csdiLastStatusChangeTime (\ s a -> s{_csdiLastStatusChangeTime = a}) . mapping _Time++-- | Status of the last attempted delivery. __Note__ Providing an SNS topic on a <http://docs.aws.amazon.com/config/latest/APIReference/API_DeliveryChannel.html DeliveryChannel> for AWS Config is optional. If the SNS delivery is turned off, the last status will be __Not_Applicable__ .+csdiLastStatus :: Lens' ConfigStreamDeliveryInfo (Maybe DeliveryStatus)+csdiLastStatus = lens _csdiLastStatus (\ s a -> s{_csdiLastStatus = a})++-- | The error message from the last attempted delivery.+csdiLastErrorMessage :: Lens' ConfigStreamDeliveryInfo (Maybe Text)+csdiLastErrorMessage = lens _csdiLastErrorMessage (\ s a -> s{_csdiLastErrorMessage = a})++instance FromJSON ConfigStreamDeliveryInfo where+ parseJSON+ = withObject "ConfigStreamDeliveryInfo"+ (\ x ->+ ConfigStreamDeliveryInfo' <$>+ (x .:? "lastErrorCode") <*>+ (x .:? "lastStatusChangeTime")+ <*> (x .:? "lastStatus")+ <*> (x .:? "lastErrorMessage"))++instance Hashable ConfigStreamDeliveryInfo where++instance NFData ConfigStreamDeliveryInfo where++-- | The details about the configuration aggregator, including information about source accounts, regions, and metadata of the aggregator.+--+--+--+-- /See:/ 'configurationAggregator' smart constructor.+data ConfigurationAggregator = ConfigurationAggregator'+ { _caConfigurationAggregatorARN :: !(Maybe Text)+ , _caCreationTime :: !(Maybe POSIX)+ , _caOrganizationAggregationSource :: !(Maybe OrganizationAggregationSource)+ , _caLastUpdatedTime :: !(Maybe POSIX)+ , _caAccountAggregationSources :: !(Maybe [AccountAggregationSource])+ , _caConfigurationAggregatorName :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ConfigurationAggregator' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'caConfigurationAggregatorARN' - The Amazon Resource Name (ARN) of the aggregator.+--+-- * 'caCreationTime' - The time stamp when the configuration aggregator was created.+--+-- * 'caOrganizationAggregationSource' - Provides an organization and list of regions to be aggregated.+--+-- * 'caLastUpdatedTime' - The time of the last update.+--+-- * 'caAccountAggregationSources' - Provides a list of source accounts and regions to be aggregated.+--+-- * 'caConfigurationAggregatorName' - The name of the aggregator.+configurationAggregator+ :: ConfigurationAggregator+configurationAggregator =+ ConfigurationAggregator'+ { _caConfigurationAggregatorARN = Nothing+ , _caCreationTime = Nothing+ , _caOrganizationAggregationSource = Nothing+ , _caLastUpdatedTime = Nothing+ , _caAccountAggregationSources = Nothing+ , _caConfigurationAggregatorName = Nothing+ }+++-- | The Amazon Resource Name (ARN) of the aggregator.+caConfigurationAggregatorARN :: Lens' ConfigurationAggregator (Maybe Text)+caConfigurationAggregatorARN = lens _caConfigurationAggregatorARN (\ s a -> s{_caConfigurationAggregatorARN = a})++-- | The time stamp when the configuration aggregator was created.+caCreationTime :: Lens' ConfigurationAggregator (Maybe UTCTime)+caCreationTime = lens _caCreationTime (\ s a -> s{_caCreationTime = a}) . mapping _Time++-- | Provides an organization and list of regions to be aggregated.+caOrganizationAggregationSource :: Lens' ConfigurationAggregator (Maybe OrganizationAggregationSource)+caOrganizationAggregationSource = lens _caOrganizationAggregationSource (\ s a -> s{_caOrganizationAggregationSource = a})++-- | The time of the last update.+caLastUpdatedTime :: Lens' ConfigurationAggregator (Maybe UTCTime)+caLastUpdatedTime = lens _caLastUpdatedTime (\ s a -> s{_caLastUpdatedTime = a}) . mapping _Time++-- | Provides a list of source accounts and regions to be aggregated.+caAccountAggregationSources :: Lens' ConfigurationAggregator [AccountAggregationSource]+caAccountAggregationSources = lens _caAccountAggregationSources (\ s a -> s{_caAccountAggregationSources = a}) . _Default . _Coerce++-- | The name of the aggregator.+caConfigurationAggregatorName :: Lens' ConfigurationAggregator (Maybe Text)+caConfigurationAggregatorName = lens _caConfigurationAggregatorName (\ s a -> s{_caConfigurationAggregatorName = a})++instance FromJSON ConfigurationAggregator where+ parseJSON+ = withObject "ConfigurationAggregator"+ (\ x ->+ ConfigurationAggregator' <$>+ (x .:? "ConfigurationAggregatorArn") <*>+ (x .:? "CreationTime")+ <*> (x .:? "OrganizationAggregationSource")+ <*> (x .:? "LastUpdatedTime")+ <*> (x .:? "AccountAggregationSources" .!= mempty)+ <*> (x .:? "ConfigurationAggregatorName"))++instance Hashable ConfigurationAggregator where++instance NFData ConfigurationAggregator where++-- | A list that contains detailed configurations of a specified resource.+--+--+--+-- /See:/ 'configurationItem' smart constructor.+data ConfigurationItem = ConfigurationItem'+ { _ciResourceId :: !(Maybe Text)+ , _ciResourceType :: !(Maybe ResourceType)+ , _ciConfigurationStateId :: !(Maybe Text)+ , _ciArn :: !(Maybe Text)+ , _ciResourceName :: !(Maybe Text)+ , _ciResourceCreationTime :: !(Maybe POSIX)+ , _ciConfigurationItemStatus :: !(Maybe ConfigurationItemStatus)+ , _ciConfigurationItemCaptureTime :: !(Maybe POSIX)+ , _ciAccountId :: !(Maybe Text)+ , _ciSupplementaryConfiguration :: !(Maybe (Map Text Text))+ , _ciAvailabilityZone :: !(Maybe Text)+ , _ciRelationships :: !(Maybe [Relationship])+ , _ciVersion :: !(Maybe Text)+ , _ciAwsRegion :: !(Maybe Text)+ , _ciRelatedEvents :: !(Maybe [Text])+ , _ciConfiguration :: !(Maybe Text)+ , _ciConfigurationItemMD5Hash :: !(Maybe Text)+ , _ciTags :: !(Maybe (Map Text Text))+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ConfigurationItem' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ciResourceId' - The ID of the resource (for example, @sg-xxxxxx@ ).+--+-- * 'ciResourceType' - The type of AWS resource.+--+-- * 'ciConfigurationStateId' - An identifier that indicates the ordering of the configuration items of a resource.+--+-- * 'ciArn' - The Amazon Resource Name (ARN) of the resource.+--+-- * 'ciResourceName' - The custom name of the resource, if available.+--+-- * 'ciResourceCreationTime' - The time stamp when the resource was created.+--+-- * 'ciConfigurationItemStatus' - The configuration item status.+--+-- * 'ciConfigurationItemCaptureTime' - The time when the configuration recording was initiated.+--+-- * 'ciAccountId' - The 12-digit AWS account ID associated with the resource.+--+-- * 'ciSupplementaryConfiguration' - Configuration attributes that AWS Config returns for certain resource types to supplement the information returned for the @configuration@ parameter.+--+-- * 'ciAvailabilityZone' - The Availability Zone associated with the resource.+--+-- * 'ciRelationships' - A list of related AWS resources.+--+-- * 'ciVersion' - The version number of the resource configuration.+--+-- * 'ciAwsRegion' - The region where the resource resides.+--+-- * 'ciRelatedEvents' - A list of CloudTrail event IDs. A populated field indicates that the current configuration was initiated by the events recorded in the CloudTrail log. For more information about CloudTrail, see <http://docs.aws.amazon.com/awscloudtrail/latest/userguide/what_is_cloud_trail_top_level.html What Is AWS CloudTrail> . An empty field indicates that the current configuration was not initiated by any event.+--+-- * 'ciConfiguration' - The description of the resource configuration.+--+-- * 'ciConfigurationItemMD5Hash' - Unique MD5 hash that represents the configuration item's state. You can use MD5 hash to compare the states of two or more configuration items that are associated with the same resource.+--+-- * 'ciTags' - A mapping of key value tags associated with the resource.+configurationItem+ :: ConfigurationItem+configurationItem =+ ConfigurationItem'+ { _ciResourceId = Nothing+ , _ciResourceType = Nothing+ , _ciConfigurationStateId = Nothing+ , _ciArn = Nothing+ , _ciResourceName = Nothing+ , _ciResourceCreationTime = Nothing+ , _ciConfigurationItemStatus = Nothing+ , _ciConfigurationItemCaptureTime = Nothing+ , _ciAccountId = Nothing+ , _ciSupplementaryConfiguration = Nothing+ , _ciAvailabilityZone = Nothing+ , _ciRelationships = Nothing+ , _ciVersion = Nothing+ , _ciAwsRegion = Nothing+ , _ciRelatedEvents = Nothing+ , _ciConfiguration = Nothing+ , _ciConfigurationItemMD5Hash = Nothing+ , _ciTags = Nothing+ }+++-- | The ID of the resource (for example, @sg-xxxxxx@ ).+ciResourceId :: Lens' ConfigurationItem (Maybe Text)+ciResourceId = lens _ciResourceId (\ s a -> s{_ciResourceId = a})++-- | The type of AWS resource.+ciResourceType :: Lens' ConfigurationItem (Maybe ResourceType)+ciResourceType = lens _ciResourceType (\ s a -> s{_ciResourceType = a})++-- | An identifier that indicates the ordering of the configuration items of a resource.+ciConfigurationStateId :: Lens' ConfigurationItem (Maybe Text)+ciConfigurationStateId = lens _ciConfigurationStateId (\ s a -> s{_ciConfigurationStateId = a})++-- | The Amazon Resource Name (ARN) of the resource.+ciArn :: Lens' ConfigurationItem (Maybe Text)+ciArn = lens _ciArn (\ s a -> s{_ciArn = a})++-- | The custom name of the resource, if available.+ciResourceName :: Lens' ConfigurationItem (Maybe Text)+ciResourceName = lens _ciResourceName (\ s a -> s{_ciResourceName = a})++-- | The time stamp when the resource was created.+ciResourceCreationTime :: Lens' ConfigurationItem (Maybe UTCTime)+ciResourceCreationTime = lens _ciResourceCreationTime (\ s a -> s{_ciResourceCreationTime = a}) . mapping _Time++-- | The configuration item status.+ciConfigurationItemStatus :: Lens' ConfigurationItem (Maybe ConfigurationItemStatus)+ciConfigurationItemStatus = lens _ciConfigurationItemStatus (\ s a -> s{_ciConfigurationItemStatus = a})++-- | The time when the configuration recording was initiated.+ciConfigurationItemCaptureTime :: Lens' ConfigurationItem (Maybe UTCTime)+ciConfigurationItemCaptureTime = lens _ciConfigurationItemCaptureTime (\ s a -> s{_ciConfigurationItemCaptureTime = a}) . mapping _Time++-- | The 12-digit AWS account ID associated with the resource.+ciAccountId :: Lens' ConfigurationItem (Maybe Text)+ciAccountId = lens _ciAccountId (\ s a -> s{_ciAccountId = a})++-- | Configuration attributes that AWS Config returns for certain resource types to supplement the information returned for the @configuration@ parameter.+ciSupplementaryConfiguration :: Lens' ConfigurationItem (HashMap Text Text)+ciSupplementaryConfiguration = lens _ciSupplementaryConfiguration (\ s a -> s{_ciSupplementaryConfiguration = a}) . _Default . _Map++-- | The Availability Zone associated with the resource.+ciAvailabilityZone :: Lens' ConfigurationItem (Maybe Text)+ciAvailabilityZone = lens _ciAvailabilityZone (\ s a -> s{_ciAvailabilityZone = a})++-- | A list of related AWS resources.+ciRelationships :: Lens' ConfigurationItem [Relationship]+ciRelationships = lens _ciRelationships (\ s a -> s{_ciRelationships = a}) . _Default . _Coerce++-- | The version number of the resource configuration.+ciVersion :: Lens' ConfigurationItem (Maybe Text)+ciVersion = lens _ciVersion (\ s a -> s{_ciVersion = a})++-- | The region where the resource resides.+ciAwsRegion :: Lens' ConfigurationItem (Maybe Text)+ciAwsRegion = lens _ciAwsRegion (\ s a -> s{_ciAwsRegion = a})++-- | A list of CloudTrail event IDs. A populated field indicates that the current configuration was initiated by the events recorded in the CloudTrail log. For more information about CloudTrail, see <http://docs.aws.amazon.com/awscloudtrail/latest/userguide/what_is_cloud_trail_top_level.html What Is AWS CloudTrail> . An empty field indicates that the current configuration was not initiated by any event.+ciRelatedEvents :: Lens' ConfigurationItem [Text]+ciRelatedEvents = lens _ciRelatedEvents (\ s a -> s{_ciRelatedEvents = a}) . _Default . _Coerce++-- | The description of the resource configuration.+ciConfiguration :: Lens' ConfigurationItem (Maybe Text)+ciConfiguration = lens _ciConfiguration (\ s a -> s{_ciConfiguration = a})++-- | Unique MD5 hash that represents the configuration item's state. You can use MD5 hash to compare the states of two or more configuration items that are associated with the same resource.+ciConfigurationItemMD5Hash :: Lens' ConfigurationItem (Maybe Text)+ciConfigurationItemMD5Hash = lens _ciConfigurationItemMD5Hash (\ s a -> s{_ciConfigurationItemMD5Hash = a})++-- | A mapping of key value tags associated with the resource.+ciTags :: Lens' ConfigurationItem (HashMap Text Text)+ciTags = lens _ciTags (\ s a -> s{_ciTags = a}) . _Default . _Map++instance FromJSON ConfigurationItem where+ parseJSON+ = withObject "ConfigurationItem"+ (\ x ->+ ConfigurationItem' <$>+ (x .:? "resourceId") <*> (x .:? "resourceType") <*>+ (x .:? "configurationStateId")+ <*> (x .:? "arn")+ <*> (x .:? "resourceName")+ <*> (x .:? "resourceCreationTime")+ <*> (x .:? "configurationItemStatus")+ <*> (x .:? "configurationItemCaptureTime")+ <*> (x .:? "accountId")+ <*> (x .:? "supplementaryConfiguration" .!= mempty)+ <*> (x .:? "availabilityZone")+ <*> (x .:? "relationships" .!= mempty)+ <*> (x .:? "version")+ <*> (x .:? "awsRegion")+ <*> (x .:? "relatedEvents" .!= mempty)+ <*> (x .:? "configuration")+ <*> (x .:? "configurationItemMD5Hash")+ <*> (x .:? "tags" .!= mempty))++instance Hashable ConfigurationItem where++instance NFData ConfigurationItem where++-- | An object that represents the recording of configuration changes of an AWS resource.+--+--+--+-- /See:/ 'configurationRecorder' smart constructor.+data ConfigurationRecorder = ConfigurationRecorder'+ { _crName :: !(Maybe Text)+ , _crRecordingGroup :: !(Maybe RecordingGroup)+ , _crRoleARN :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ConfigurationRecorder' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'crName' - The name of the recorder. By default, AWS Config automatically assigns the name "default" when creating the configuration recorder. You cannot change the assigned name.+--+-- * 'crRecordingGroup' - Specifies the types of AWS resources for which AWS Config records configuration changes.+--+-- * 'crRoleARN' - Amazon Resource Name (ARN) of the IAM role used to describe the AWS resources associated with the account.+configurationRecorder+ :: ConfigurationRecorder+configurationRecorder =+ ConfigurationRecorder'+ {_crName = Nothing, _crRecordingGroup = Nothing, _crRoleARN = Nothing}+++-- | The name of the recorder. By default, AWS Config automatically assigns the name "default" when creating the configuration recorder. You cannot change the assigned name.+crName :: Lens' ConfigurationRecorder (Maybe Text)+crName = lens _crName (\ s a -> s{_crName = a})++-- | Specifies the types of AWS resources for which AWS Config records configuration changes.+crRecordingGroup :: Lens' ConfigurationRecorder (Maybe RecordingGroup)+crRecordingGroup = lens _crRecordingGroup (\ s a -> s{_crRecordingGroup = a})++-- | Amazon Resource Name (ARN) of the IAM role used to describe the AWS resources associated with the account.+crRoleARN :: Lens' ConfigurationRecorder (Maybe Text)+crRoleARN = lens _crRoleARN (\ s a -> s{_crRoleARN = a})++instance FromJSON ConfigurationRecorder where+ parseJSON+ = withObject "ConfigurationRecorder"+ (\ x ->+ ConfigurationRecorder' <$>+ (x .:? "name") <*> (x .:? "recordingGroup") <*>+ (x .:? "roleARN"))++instance Hashable ConfigurationRecorder where++instance NFData ConfigurationRecorder where++instance ToJSON ConfigurationRecorder where+ toJSON ConfigurationRecorder'{..}+ = object+ (catMaybes+ [("name" .=) <$> _crName,+ ("recordingGroup" .=) <$> _crRecordingGroup,+ ("roleARN" .=) <$> _crRoleARN])++-- | The current status of the configuration recorder.+--+--+--+-- /See:/ 'configurationRecorderStatus' smart constructor.+data ConfigurationRecorderStatus = ConfigurationRecorderStatus'+ { _crsLastErrorCode :: !(Maybe Text)+ , _crsLastStopTime :: !(Maybe POSIX)+ , _crsLastStatusChangeTime :: !(Maybe POSIX)+ , _crsRecording :: !(Maybe Bool)+ , _crsLastStatus :: !(Maybe RecorderStatus)+ , _crsLastErrorMessage :: !(Maybe Text)+ , _crsName :: !(Maybe Text)+ , _crsLastStartTime :: !(Maybe POSIX)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ConfigurationRecorderStatus' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'crsLastErrorCode' - The error code indicating that the recording failed.+--+-- * 'crsLastStopTime' - The time the recorder was last stopped.+--+-- * 'crsLastStatusChangeTime' - The time when the status was last changed.+--+-- * 'crsRecording' - Specifies whether or not the recorder is currently recording.+--+-- * 'crsLastStatus' - The last (previous) status of the recorder.+--+-- * 'crsLastErrorMessage' - The message indicating that the recording failed due to an error.+--+-- * 'crsName' - The name of the configuration recorder.+--+-- * 'crsLastStartTime' - The time the recorder was last started.+configurationRecorderStatus+ :: ConfigurationRecorderStatus+configurationRecorderStatus =+ ConfigurationRecorderStatus'+ { _crsLastErrorCode = Nothing+ , _crsLastStopTime = Nothing+ , _crsLastStatusChangeTime = Nothing+ , _crsRecording = Nothing+ , _crsLastStatus = Nothing+ , _crsLastErrorMessage = Nothing+ , _crsName = Nothing+ , _crsLastStartTime = Nothing+ }+++-- | The error code indicating that the recording failed.+crsLastErrorCode :: Lens' ConfigurationRecorderStatus (Maybe Text)+crsLastErrorCode = lens _crsLastErrorCode (\ s a -> s{_crsLastErrorCode = a})++-- | The time the recorder was last stopped.+crsLastStopTime :: Lens' ConfigurationRecorderStatus (Maybe UTCTime)+crsLastStopTime = lens _crsLastStopTime (\ s a -> s{_crsLastStopTime = a}) . mapping _Time++-- | The time when the status was last changed.+crsLastStatusChangeTime :: Lens' ConfigurationRecorderStatus (Maybe UTCTime)+crsLastStatusChangeTime = lens _crsLastStatusChangeTime (\ s a -> s{_crsLastStatusChangeTime = a}) . mapping _Time++-- | Specifies whether or not the recorder is currently recording.+crsRecording :: Lens' ConfigurationRecorderStatus (Maybe Bool)+crsRecording = lens _crsRecording (\ s a -> s{_crsRecording = a})++-- | The last (previous) status of the recorder.+crsLastStatus :: Lens' ConfigurationRecorderStatus (Maybe RecorderStatus)+crsLastStatus = lens _crsLastStatus (\ s a -> s{_crsLastStatus = a})++-- | The message indicating that the recording failed due to an error.+crsLastErrorMessage :: Lens' ConfigurationRecorderStatus (Maybe Text)+crsLastErrorMessage = lens _crsLastErrorMessage (\ s a -> s{_crsLastErrorMessage = a})++-- | The name of the configuration recorder.+crsName :: Lens' ConfigurationRecorderStatus (Maybe Text)+crsName = lens _crsName (\ s a -> s{_crsName = a})++-- | The time the recorder was last started.+crsLastStartTime :: Lens' ConfigurationRecorderStatus (Maybe UTCTime)+crsLastStartTime = lens _crsLastStartTime (\ s a -> s{_crsLastStartTime = a}) . mapping _Time++instance FromJSON ConfigurationRecorderStatus where+ parseJSON+ = withObject "ConfigurationRecorderStatus"+ (\ x ->+ ConfigurationRecorderStatus' <$>+ (x .:? "lastErrorCode") <*> (x .:? "lastStopTime")+ <*> (x .:? "lastStatusChangeTime")+ <*> (x .:? "recording")+ <*> (x .:? "lastStatus")+ <*> (x .:? "lastErrorMessage")+ <*> (x .:? "name")+ <*> (x .:? "lastStartTime"))++instance Hashable ConfigurationRecorderStatus where++instance NFData ConfigurationRecorderStatus where++-- | The channel through which AWS Config delivers notifications and updated configuration states.+--+--+--+-- /See:/ 'deliveryChannel' smart constructor.+data DeliveryChannel = DeliveryChannel'+ { _dcS3KeyPrefix :: !(Maybe Text)+ , _dcSnsTopicARN :: !(Maybe Text)+ , _dcName :: !(Maybe Text)+ , _dcConfigSnapshotDeliveryProperties :: !(Maybe ConfigSnapshotDeliveryProperties)+ , _dcS3BucketName :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DeliveryChannel' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dcS3KeyPrefix' - The prefix for the specified Amazon S3 bucket.+--+-- * 'dcSnsTopicARN' - The Amazon Resource Name (ARN) of the Amazon SNS topic to which AWS Config sends notifications about configuration changes. If you choose a topic from another account, the topic must have policies that grant access permissions to AWS Config. For more information, see <http://docs.aws.amazon.com/config/latest/developerguide/sns-topic-policy.html Permissions for the Amazon SNS Topic> in the AWS Config Developer Guide.+--+-- * 'dcName' - The name of the delivery channel. By default, AWS Config assigns the name "default" when creating the delivery channel. To change the delivery channel name, you must use the DeleteDeliveryChannel action to delete your current delivery channel, and then you must use the PutDeliveryChannel command to create a delivery channel that has the desired name.+--+-- * 'dcConfigSnapshotDeliveryProperties' - The options for how often AWS Config delivers configuration snapshots to the Amazon S3 bucket.+--+-- * 'dcS3BucketName' - The name of the Amazon S3 bucket to which AWS Config delivers configuration snapshots and configuration history files. If you specify a bucket that belongs to another AWS account, that bucket must have policies that grant access permissions to AWS Config. For more information, see <http://docs.aws.amazon.com/config/latest/developerguide/s3-bucket-policy.html Permissions for the Amazon S3 Bucket> in the AWS Config Developer Guide.+deliveryChannel+ :: DeliveryChannel+deliveryChannel =+ DeliveryChannel'+ { _dcS3KeyPrefix = Nothing+ , _dcSnsTopicARN = Nothing+ , _dcName = Nothing+ , _dcConfigSnapshotDeliveryProperties = Nothing+ , _dcS3BucketName = Nothing+ }+++-- | The prefix for the specified Amazon S3 bucket.+dcS3KeyPrefix :: Lens' DeliveryChannel (Maybe Text)+dcS3KeyPrefix = lens _dcS3KeyPrefix (\ s a -> s{_dcS3KeyPrefix = a})++-- | The Amazon Resource Name (ARN) of the Amazon SNS topic to which AWS Config sends notifications about configuration changes. If you choose a topic from another account, the topic must have policies that grant access permissions to AWS Config. For more information, see <http://docs.aws.amazon.com/config/latest/developerguide/sns-topic-policy.html Permissions for the Amazon SNS Topic> in the AWS Config Developer Guide.+dcSnsTopicARN :: Lens' DeliveryChannel (Maybe Text)+dcSnsTopicARN = lens _dcSnsTopicARN (\ s a -> s{_dcSnsTopicARN = a})++-- | The name of the delivery channel. By default, AWS Config assigns the name "default" when creating the delivery channel. To change the delivery channel name, you must use the DeleteDeliveryChannel action to delete your current delivery channel, and then you must use the PutDeliveryChannel command to create a delivery channel that has the desired name.+dcName :: Lens' DeliveryChannel (Maybe Text)+dcName = lens _dcName (\ s a -> s{_dcName = a})++-- | The options for how often AWS Config delivers configuration snapshots to the Amazon S3 bucket.+dcConfigSnapshotDeliveryProperties :: Lens' DeliveryChannel (Maybe ConfigSnapshotDeliveryProperties)+dcConfigSnapshotDeliveryProperties = lens _dcConfigSnapshotDeliveryProperties (\ s a -> s{_dcConfigSnapshotDeliveryProperties = a})++-- | The name of the Amazon S3 bucket to which AWS Config delivers configuration snapshots and configuration history files. If you specify a bucket that belongs to another AWS account, that bucket must have policies that grant access permissions to AWS Config. For more information, see <http://docs.aws.amazon.com/config/latest/developerguide/s3-bucket-policy.html Permissions for the Amazon S3 Bucket> in the AWS Config Developer Guide.+dcS3BucketName :: Lens' DeliveryChannel (Maybe Text)+dcS3BucketName = lens _dcS3BucketName (\ s a -> s{_dcS3BucketName = a})++instance FromJSON DeliveryChannel where+ parseJSON+ = withObject "DeliveryChannel"+ (\ x ->+ DeliveryChannel' <$>+ (x .:? "s3KeyPrefix") <*> (x .:? "snsTopicARN") <*>+ (x .:? "name")+ <*> (x .:? "configSnapshotDeliveryProperties")+ <*> (x .:? "s3BucketName"))++instance Hashable DeliveryChannel where++instance NFData DeliveryChannel where++instance ToJSON DeliveryChannel where+ toJSON DeliveryChannel'{..}+ = object+ (catMaybes+ [("s3KeyPrefix" .=) <$> _dcS3KeyPrefix,+ ("snsTopicARN" .=) <$> _dcSnsTopicARN,+ ("name" .=) <$> _dcName,+ ("configSnapshotDeliveryProperties" .=) <$>+ _dcConfigSnapshotDeliveryProperties,+ ("s3BucketName" .=) <$> _dcS3BucketName])++-- | The status of a specified delivery channel.+--+--+-- Valid values: @Success@ | @Failure@+--+--+-- /See:/ 'deliveryChannelStatus' smart constructor.+data DeliveryChannelStatus = DeliveryChannelStatus'+ { _dcsConfigSnapshotDeliveryInfo :: !(Maybe ConfigExportDeliveryInfo)+ , _dcsConfigStreamDeliveryInfo :: !(Maybe ConfigStreamDeliveryInfo)+ , _dcsConfigHistoryDeliveryInfo :: !(Maybe ConfigExportDeliveryInfo)+ , _dcsName :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'DeliveryChannelStatus' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dcsConfigSnapshotDeliveryInfo' - A list containing the status of the delivery of the snapshot to the specified Amazon S3 bucket.+--+-- * 'dcsConfigStreamDeliveryInfo' - A list containing the status of the delivery of the configuration stream notification to the specified Amazon SNS topic.+--+-- * 'dcsConfigHistoryDeliveryInfo' - A list that contains the status of the delivery of the configuration history to the specified Amazon S3 bucket.+--+-- * 'dcsName' - The name of the delivery channel.+deliveryChannelStatus+ :: DeliveryChannelStatus+deliveryChannelStatus =+ DeliveryChannelStatus'+ { _dcsConfigSnapshotDeliveryInfo = Nothing+ , _dcsConfigStreamDeliveryInfo = Nothing+ , _dcsConfigHistoryDeliveryInfo = Nothing+ , _dcsName = Nothing+ }+++-- | A list containing the status of the delivery of the snapshot to the specified Amazon S3 bucket.+dcsConfigSnapshotDeliveryInfo :: Lens' DeliveryChannelStatus (Maybe ConfigExportDeliveryInfo)+dcsConfigSnapshotDeliveryInfo = lens _dcsConfigSnapshotDeliveryInfo (\ s a -> s{_dcsConfigSnapshotDeliveryInfo = a})++-- | A list containing the status of the delivery of the configuration stream notification to the specified Amazon SNS topic.+dcsConfigStreamDeliveryInfo :: Lens' DeliveryChannelStatus (Maybe ConfigStreamDeliveryInfo)+dcsConfigStreamDeliveryInfo = lens _dcsConfigStreamDeliveryInfo (\ s a -> s{_dcsConfigStreamDeliveryInfo = a})++-- | A list that contains the status of the delivery of the configuration history to the specified Amazon S3 bucket.+dcsConfigHistoryDeliveryInfo :: Lens' DeliveryChannelStatus (Maybe ConfigExportDeliveryInfo)+dcsConfigHistoryDeliveryInfo = lens _dcsConfigHistoryDeliveryInfo (\ s a -> s{_dcsConfigHistoryDeliveryInfo = a})++-- | The name of the delivery channel.+dcsName :: Lens' DeliveryChannelStatus (Maybe Text)+dcsName = lens _dcsName (\ s a -> s{_dcsName = a})++instance FromJSON DeliveryChannelStatus where+ parseJSON+ = withObject "DeliveryChannelStatus"+ (\ x ->+ DeliveryChannelStatus' <$>+ (x .:? "configSnapshotDeliveryInfo") <*>+ (x .:? "configStreamDeliveryInfo")+ <*> (x .:? "configHistoryDeliveryInfo")+ <*> (x .:? "name"))++instance Hashable DeliveryChannelStatus where++instance NFData DeliveryChannelStatus where++-- | Identifies an AWS resource and indicates whether it complies with the AWS Config rule that it was evaluated against.+--+--+--+-- /See:/ 'evaluation' smart constructor.+data Evaluation = Evaluation'+ { _eAnnotation :: !(Maybe Text)+ , _eComplianceResourceType :: !Text+ , _eComplianceResourceId :: !Text+ , _eComplianceType :: !ComplianceType+ , _eOrderingTimestamp :: !POSIX+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Evaluation' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'eAnnotation' - Supplementary information about how the evaluation determined the compliance.+--+-- * 'eComplianceResourceType' - The type of AWS resource that was evaluated.+--+-- * 'eComplianceResourceId' - The ID of the AWS resource that was evaluated.+--+-- * 'eComplianceType' - Indicates whether the AWS resource complies with the AWS Config rule that it was evaluated against. For the @Evaluation@ data type, AWS Config supports only the @COMPLIANT@ , @NON_COMPLIANT@ , and @NOT_APPLICABLE@ values. AWS Config does not support the @INSUFFICIENT_DATA@ value for this data type. Similarly, AWS Config does not accept @INSUFFICIENT_DATA@ as the value for @ComplianceType@ from a @PutEvaluations@ request. For example, an AWS Lambda function for a custom AWS Config rule cannot pass an @INSUFFICIENT_DATA@ value to AWS Config.+--+-- * 'eOrderingTimestamp' - The time of the event in AWS Config that triggered the evaluation. For event-based evaluations, the time indicates when AWS Config created the configuration item that triggered the evaluation. For periodic evaluations, the time indicates when AWS Config triggered the evaluation at the frequency that you specified (for example, every 24 hours).+evaluation+ :: Text -- ^ 'eComplianceResourceType'+ -> Text -- ^ 'eComplianceResourceId'+ -> ComplianceType -- ^ 'eComplianceType'+ -> UTCTime -- ^ 'eOrderingTimestamp'+ -> Evaluation+evaluation pComplianceResourceType_ pComplianceResourceId_ pComplianceType_ pOrderingTimestamp_ =+ Evaluation'+ { _eAnnotation = Nothing+ , _eComplianceResourceType = pComplianceResourceType_+ , _eComplianceResourceId = pComplianceResourceId_+ , _eComplianceType = pComplianceType_+ , _eOrderingTimestamp = _Time # pOrderingTimestamp_+ }+++-- | Supplementary information about how the evaluation determined the compliance.+eAnnotation :: Lens' Evaluation (Maybe Text)+eAnnotation = lens _eAnnotation (\ s a -> s{_eAnnotation = a})++-- | The type of AWS resource that was evaluated.+eComplianceResourceType :: Lens' Evaluation Text+eComplianceResourceType = lens _eComplianceResourceType (\ s a -> s{_eComplianceResourceType = a})++-- | The ID of the AWS resource that was evaluated.+eComplianceResourceId :: Lens' Evaluation Text+eComplianceResourceId = lens _eComplianceResourceId (\ s a -> s{_eComplianceResourceId = a})++-- | Indicates whether the AWS resource complies with the AWS Config rule that it was evaluated against. For the @Evaluation@ data type, AWS Config supports only the @COMPLIANT@ , @NON_COMPLIANT@ , and @NOT_APPLICABLE@ values. AWS Config does not support the @INSUFFICIENT_DATA@ value for this data type. Similarly, AWS Config does not accept @INSUFFICIENT_DATA@ as the value for @ComplianceType@ from a @PutEvaluations@ request. For example, an AWS Lambda function for a custom AWS Config rule cannot pass an @INSUFFICIENT_DATA@ value to AWS Config.+eComplianceType :: Lens' Evaluation ComplianceType+eComplianceType = lens _eComplianceType (\ s a -> s{_eComplianceType = a})++-- | The time of the event in AWS Config that triggered the evaluation. For event-based evaluations, the time indicates when AWS Config created the configuration item that triggered the evaluation. For periodic evaluations, the time indicates when AWS Config triggered the evaluation at the frequency that you specified (for example, every 24 hours).+eOrderingTimestamp :: Lens' Evaluation UTCTime+eOrderingTimestamp = lens _eOrderingTimestamp (\ s a -> s{_eOrderingTimestamp = a}) . _Time++instance FromJSON Evaluation where+ parseJSON+ = withObject "Evaluation"+ (\ x ->+ Evaluation' <$>+ (x .:? "Annotation") <*>+ (x .: "ComplianceResourceType")+ <*> (x .: "ComplianceResourceId")+ <*> (x .: "ComplianceType")+ <*> (x .: "OrderingTimestamp"))++instance Hashable Evaluation where++instance NFData Evaluation where++instance ToJSON Evaluation where+ toJSON Evaluation'{..}+ = object+ (catMaybes+ [("Annotation" .=) <$> _eAnnotation,+ Just+ ("ComplianceResourceType" .=+ _eComplianceResourceType),+ Just+ ("ComplianceResourceId" .= _eComplianceResourceId),+ Just ("ComplianceType" .= _eComplianceType),+ Just ("OrderingTimestamp" .= _eOrderingTimestamp)])++-- | The details of an AWS Config evaluation. Provides the AWS resource that was evaluated, the compliance of the resource, related time stamps, and supplementary information.+--+--+--+-- /See:/ 'evaluationResult' smart constructor.+data EvaluationResult = EvaluationResult'+ { _erEvaluationResultIdentifier :: !(Maybe EvaluationResultIdentifier)+ , _erAnnotation :: !(Maybe Text)+ , _erConfigRuleInvokedTime :: !(Maybe POSIX)+ , _erResultRecordedTime :: !(Maybe POSIX)+ , _erResultToken :: !(Maybe Text)+ , _erComplianceType :: !(Maybe ComplianceType)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'EvaluationResult' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'erEvaluationResultIdentifier' - Uniquely identifies the evaluation result.+--+-- * 'erAnnotation' - Supplementary information about how the evaluation determined the compliance.+--+-- * 'erConfigRuleInvokedTime' - The time when the AWS Config rule evaluated the AWS resource.+--+-- * 'erResultRecordedTime' - The time when AWS Config recorded the evaluation result.+--+-- * 'erResultToken' - An encrypted token that associates an evaluation with an AWS Config rule. The token identifies the rule, the AWS resource being evaluated, and the event that triggered the evaluation.+--+-- * 'erComplianceType' - Indicates whether the AWS resource complies with the AWS Config rule that evaluated it. For the @EvaluationResult@ data type, AWS Config supports only the @COMPLIANT@ , @NON_COMPLIANT@ , and @NOT_APPLICABLE@ values. AWS Config does not support the @INSUFFICIENT_DATA@ value for the @EvaluationResult@ data type.+evaluationResult+ :: EvaluationResult+evaluationResult =+ EvaluationResult'+ { _erEvaluationResultIdentifier = Nothing+ , _erAnnotation = Nothing+ , _erConfigRuleInvokedTime = Nothing+ , _erResultRecordedTime = Nothing+ , _erResultToken = Nothing+ , _erComplianceType = Nothing+ }+++-- | Uniquely identifies the evaluation result.+erEvaluationResultIdentifier :: Lens' EvaluationResult (Maybe EvaluationResultIdentifier)+erEvaluationResultIdentifier = lens _erEvaluationResultIdentifier (\ s a -> s{_erEvaluationResultIdentifier = a})++-- | Supplementary information about how the evaluation determined the compliance.+erAnnotation :: Lens' EvaluationResult (Maybe Text)+erAnnotation = lens _erAnnotation (\ s a -> s{_erAnnotation = a})++-- | The time when the AWS Config rule evaluated the AWS resource.+erConfigRuleInvokedTime :: Lens' EvaluationResult (Maybe UTCTime)+erConfigRuleInvokedTime = lens _erConfigRuleInvokedTime (\ s a -> s{_erConfigRuleInvokedTime = a}) . mapping _Time++-- | The time when AWS Config recorded the evaluation result.+erResultRecordedTime :: Lens' EvaluationResult (Maybe UTCTime)+erResultRecordedTime = lens _erResultRecordedTime (\ s a -> s{_erResultRecordedTime = a}) . mapping _Time++-- | An encrypted token that associates an evaluation with an AWS Config rule. The token identifies the rule, the AWS resource being evaluated, and the event that triggered the evaluation.+erResultToken :: Lens' EvaluationResult (Maybe Text)+erResultToken = lens _erResultToken (\ s a -> s{_erResultToken = a})++-- | Indicates whether the AWS resource complies with the AWS Config rule that evaluated it. For the @EvaluationResult@ data type, AWS Config supports only the @COMPLIANT@ , @NON_COMPLIANT@ , and @NOT_APPLICABLE@ values. AWS Config does not support the @INSUFFICIENT_DATA@ value for the @EvaluationResult@ data type.+erComplianceType :: Lens' EvaluationResult (Maybe ComplianceType)+erComplianceType = lens _erComplianceType (\ s a -> s{_erComplianceType = a})++instance FromJSON EvaluationResult where+ parseJSON+ = withObject "EvaluationResult"+ (\ x ->+ EvaluationResult' <$>+ (x .:? "EvaluationResultIdentifier") <*>+ (x .:? "Annotation")+ <*> (x .:? "ConfigRuleInvokedTime")+ <*> (x .:? "ResultRecordedTime")+ <*> (x .:? "ResultToken")+ <*> (x .:? "ComplianceType"))++instance Hashable EvaluationResult where++instance NFData EvaluationResult where++-- | Uniquely identifies an evaluation result.+--+--+--+-- /See:/ 'evaluationResultIdentifier' smart constructor.+data EvaluationResultIdentifier = EvaluationResultIdentifier'+ { _eriEvaluationResultQualifier :: !(Maybe EvaluationResultQualifier)+ , _eriOrderingTimestamp :: !(Maybe POSIX)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'EvaluationResultIdentifier' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'eriEvaluationResultQualifier' - Identifies an AWS Config rule used to evaluate an AWS resource, and provides the type and ID of the evaluated resource.+--+-- * 'eriOrderingTimestamp' - The time of the event that triggered the evaluation of your AWS resources. The time can indicate when AWS Config delivered a configuration item change notification, or it can indicate when AWS Config delivered the configuration snapshot, depending on which event triggered the evaluation.+evaluationResultIdentifier+ :: EvaluationResultIdentifier+evaluationResultIdentifier =+ EvaluationResultIdentifier'+ {_eriEvaluationResultQualifier = Nothing, _eriOrderingTimestamp = Nothing}+++-- | Identifies an AWS Config rule used to evaluate an AWS resource, and provides the type and ID of the evaluated resource.+eriEvaluationResultQualifier :: Lens' EvaluationResultIdentifier (Maybe EvaluationResultQualifier)+eriEvaluationResultQualifier = lens _eriEvaluationResultQualifier (\ s a -> s{_eriEvaluationResultQualifier = a})++-- | The time of the event that triggered the evaluation of your AWS resources. The time can indicate when AWS Config delivered a configuration item change notification, or it can indicate when AWS Config delivered the configuration snapshot, depending on which event triggered the evaluation.+eriOrderingTimestamp :: Lens' EvaluationResultIdentifier (Maybe UTCTime)+eriOrderingTimestamp = lens _eriOrderingTimestamp (\ s a -> s{_eriOrderingTimestamp = a}) . mapping _Time++instance FromJSON EvaluationResultIdentifier where+ parseJSON+ = withObject "EvaluationResultIdentifier"+ (\ x ->+ EvaluationResultIdentifier' <$>+ (x .:? "EvaluationResultQualifier") <*>+ (x .:? "OrderingTimestamp"))++instance Hashable EvaluationResultIdentifier where++instance NFData EvaluationResultIdentifier where++-- | Identifies an AWS Config rule that evaluated an AWS resource, and provides the type and ID of the resource that the rule evaluated.+--+--+--+-- /See:/ 'evaluationResultQualifier' smart constructor.+data EvaluationResultQualifier = EvaluationResultQualifier'+ { _erqResourceId :: !(Maybe Text)+ , _erqResourceType :: !(Maybe Text)+ , _erqConfigRuleName :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'EvaluationResultQualifier' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'erqResourceId' - The ID of the evaluated AWS resource.+--+-- * 'erqResourceType' - The type of AWS resource that was evaluated.+--+-- * 'erqConfigRuleName' - The name of the AWS Config rule that was used in the evaluation.+evaluationResultQualifier+ :: EvaluationResultQualifier+evaluationResultQualifier =+ EvaluationResultQualifier'+ { _erqResourceId = Nothing+ , _erqResourceType = Nothing+ , _erqConfigRuleName = Nothing+ }+++-- | The ID of the evaluated AWS resource.+erqResourceId :: Lens' EvaluationResultQualifier (Maybe Text)+erqResourceId = lens _erqResourceId (\ s a -> s{_erqResourceId = a})++-- | The type of AWS resource that was evaluated.+erqResourceType :: Lens' EvaluationResultQualifier (Maybe Text)+erqResourceType = lens _erqResourceType (\ s a -> s{_erqResourceType = a})++-- | The name of the AWS Config rule that was used in the evaluation.+erqConfigRuleName :: Lens' EvaluationResultQualifier (Maybe Text)+erqConfigRuleName = lens _erqConfigRuleName (\ s a -> s{_erqConfigRuleName = a})++instance FromJSON EvaluationResultQualifier where+ parseJSON+ = withObject "EvaluationResultQualifier"+ (\ x ->+ EvaluationResultQualifier' <$>+ (x .:? "ResourceId") <*> (x .:? "ResourceType") <*>+ (x .:? "ConfigRuleName"))++instance Hashable EvaluationResultQualifier where++instance NFData EvaluationResultQualifier where++-- | This object contains regions to setup the aggregator and an IAM role to retrieve organization details.+--+--+--+-- /See:/ 'organizationAggregationSource' smart constructor.+data OrganizationAggregationSource = OrganizationAggregationSource'+ { _oasAWSRegions :: !(Maybe (List1 Text))+ , _oasAllAWSRegions :: !(Maybe Bool)+ , _oasRoleARN :: !Text+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'OrganizationAggregationSource' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'oasAWSRegions' - The source regions being aggregated.+--+-- * 'oasAllAWSRegions' - If true, aggreagate existing AWS Config regions and future regions.+--+-- * 'oasRoleARN' - ARN of the IAM role used to retreive AWS Organization details associated with the aggregator account.+organizationAggregationSource+ :: Text -- ^ 'oasRoleARN'+ -> OrganizationAggregationSource+organizationAggregationSource pRoleARN_ =+ OrganizationAggregationSource'+ { _oasAWSRegions = Nothing+ , _oasAllAWSRegions = Nothing+ , _oasRoleARN = pRoleARN_+ }+++-- | The source regions being aggregated.+oasAWSRegions :: Lens' OrganizationAggregationSource (Maybe (NonEmpty Text))+oasAWSRegions = lens _oasAWSRegions (\ s a -> s{_oasAWSRegions = a}) . mapping _List1++-- | If true, aggreagate existing AWS Config regions and future regions.+oasAllAWSRegions :: Lens' OrganizationAggregationSource (Maybe Bool)+oasAllAWSRegions = lens _oasAllAWSRegions (\ s a -> s{_oasAllAWSRegions = a})++-- | ARN of the IAM role used to retreive AWS Organization details associated with the aggregator account.+oasRoleARN :: Lens' OrganizationAggregationSource Text+oasRoleARN = lens _oasRoleARN (\ s a -> s{_oasRoleARN = a})++instance FromJSON OrganizationAggregationSource where+ parseJSON+ = withObject "OrganizationAggregationSource"+ (\ x ->+ OrganizationAggregationSource' <$>+ (x .:? "AwsRegions") <*> (x .:? "AllAwsRegions") <*>+ (x .: "RoleArn"))++instance Hashable OrganizationAggregationSource where++instance NFData OrganizationAggregationSource where++instance ToJSON OrganizationAggregationSource where+ toJSON OrganizationAggregationSource'{..}+ = object+ (catMaybes+ [("AwsRegions" .=) <$> _oasAWSRegions,+ ("AllAwsRegions" .=) <$> _oasAllAWSRegions,+ Just ("RoleArn" .= _oasRoleARN)])++-- | An object that represents the account ID and region of an aggregator account that is requesting authorization but is not yet authorized.+--+--+--+-- /See:/ 'pendingAggregationRequest' smart constructor.+data PendingAggregationRequest = PendingAggregationRequest'+ { _parRequesterAccountId :: !(Maybe Text)+ , _parRequesterAWSRegion :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'PendingAggregationRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'parRequesterAccountId' - The 12-digit account ID of the account requesting to aggregate data.+--+-- * 'parRequesterAWSRegion' - The region requesting to aggregate data.+pendingAggregationRequest+ :: PendingAggregationRequest+pendingAggregationRequest =+ PendingAggregationRequest'+ {_parRequesterAccountId = Nothing, _parRequesterAWSRegion = Nothing}+++-- | The 12-digit account ID of the account requesting to aggregate data.+parRequesterAccountId :: Lens' PendingAggregationRequest (Maybe Text)+parRequesterAccountId = lens _parRequesterAccountId (\ s a -> s{_parRequesterAccountId = a})++-- | The region requesting to aggregate data.+parRequesterAWSRegion :: Lens' PendingAggregationRequest (Maybe Text)+parRequesterAWSRegion = lens _parRequesterAWSRegion (\ s a -> s{_parRequesterAWSRegion = a})++instance FromJSON PendingAggregationRequest where+ parseJSON+ = withObject "PendingAggregationRequest"+ (\ x ->+ PendingAggregationRequest' <$>+ (x .:? "RequesterAccountId") <*>+ (x .:? "RequesterAwsRegion"))++instance Hashable PendingAggregationRequest where++instance NFData PendingAggregationRequest where++-- | Specifies the types of AWS resource for which AWS Config records configuration changes.+--+--+-- In the recording group, you specify whether all supported types or specific types of resources are recorded.+--+-- By default, AWS Config records configuration changes for all supported types of regional resources that AWS Config discovers in the region in which it is running. Regional resources are tied to a region and can be used only in that region. Examples of regional resources are EC2 instances and EBS volumes.+--+-- You can also have AWS Config record configuration changes for supported types of global resources (for example, IAM resources). Global resources are not tied to an individual region and can be used in all regions.+--+-- /Important:/ The configuration details for any global resource are the same in all regions. If you customize AWS Config in multiple regions to record global resources, it will create multiple configuration items each time a global resource changes: one configuration item for each region. These configuration items will contain identical data. To prevent duplicate configuration items, you should consider customizing AWS Config in only one region to record global resources, unless you want the configuration items to be available in multiple regions.+--+-- If you don't want AWS Config to record all resources, you can specify which types of resources it will record with the @resourceTypes@ parameter.+--+-- For a list of supported resource types, see <http://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources Supported Resource Types> .+--+-- For more information, see <http://docs.aws.amazon.com/config/latest/developerguide/select-resources.html Selecting Which Resources AWS Config Records> .+--+--+-- /See:/ 'recordingGroup' smart constructor.+data RecordingGroup = RecordingGroup'+ { _rgAllSupported :: !(Maybe Bool)+ , _rgIncludeGlobalResourceTypes :: !(Maybe Bool)+ , _rgResourceTypes :: !(Maybe [ResourceType])+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'RecordingGroup' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rgAllSupported' - Specifies whether AWS Config records configuration changes for every supported type of regional resource. If you set this option to @true@ , when AWS Config adds support for a new type of regional resource, it starts recording resources of that type automatically. If you set this option to @true@ , you cannot enumerate a list of @resourceTypes@ .+--+-- * 'rgIncludeGlobalResourceTypes' - Specifies whether AWS Config includes all supported types of global resources (for example, IAM resources) with the resources that it records. Before you can set this option to @true@ , you must set the @allSupported@ option to @true@ . If you set this option to @true@ , when AWS Config adds support for a new type of global resource, it starts recording resources of that type automatically. The configuration details for any global resource are the same in all regions. To prevent duplicate configuration items, you should consider customizing AWS Config in only one region to record global resources.+--+-- * 'rgResourceTypes' - A comma-separated list that specifies the types of AWS resources for which AWS Config records configuration changes (for example, @AWS::EC2::Instance@ or @AWS::CloudTrail::Trail@ ). Before you can set this option to @true@ , you must set the @allSupported@ option to @false@ . If you set this option to @true@ , when AWS Config adds support for a new type of resource, it will not record resources of that type unless you manually add that type to your recording group. For a list of valid @resourceTypes@ values, see the __resourceType Value__ column in <http://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources Supported AWS Resource Types> .+recordingGroup+ :: RecordingGroup+recordingGroup =+ RecordingGroup'+ { _rgAllSupported = Nothing+ , _rgIncludeGlobalResourceTypes = Nothing+ , _rgResourceTypes = Nothing+ }+++-- | Specifies whether AWS Config records configuration changes for every supported type of regional resource. If you set this option to @true@ , when AWS Config adds support for a new type of regional resource, it starts recording resources of that type automatically. If you set this option to @true@ , you cannot enumerate a list of @resourceTypes@ .+rgAllSupported :: Lens' RecordingGroup (Maybe Bool)+rgAllSupported = lens _rgAllSupported (\ s a -> s{_rgAllSupported = a})++-- | Specifies whether AWS Config includes all supported types of global resources (for example, IAM resources) with the resources that it records. Before you can set this option to @true@ , you must set the @allSupported@ option to @true@ . If you set this option to @true@ , when AWS Config adds support for a new type of global resource, it starts recording resources of that type automatically. The configuration details for any global resource are the same in all regions. To prevent duplicate configuration items, you should consider customizing AWS Config in only one region to record global resources.+rgIncludeGlobalResourceTypes :: Lens' RecordingGroup (Maybe Bool)+rgIncludeGlobalResourceTypes = lens _rgIncludeGlobalResourceTypes (\ s a -> s{_rgIncludeGlobalResourceTypes = a})++-- | A comma-separated list that specifies the types of AWS resources for which AWS Config records configuration changes (for example, @AWS::EC2::Instance@ or @AWS::CloudTrail::Trail@ ). Before you can set this option to @true@ , you must set the @allSupported@ option to @false@ . If you set this option to @true@ , when AWS Config adds support for a new type of resource, it will not record resources of that type unless you manually add that type to your recording group. For a list of valid @resourceTypes@ values, see the __resourceType Value__ column in <http://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html#supported-resources Supported AWS Resource Types> .+rgResourceTypes :: Lens' RecordingGroup [ResourceType]+rgResourceTypes = lens _rgResourceTypes (\ s a -> s{_rgResourceTypes = a}) . _Default . _Coerce++instance FromJSON RecordingGroup where+ parseJSON+ = withObject "RecordingGroup"+ (\ x ->+ RecordingGroup' <$>+ (x .:? "allSupported") <*>+ (x .:? "includeGlobalResourceTypes")+ <*> (x .:? "resourceTypes" .!= mempty))++instance Hashable RecordingGroup where++instance NFData RecordingGroup where++instance ToJSON RecordingGroup where+ toJSON RecordingGroup'{..}+ = object+ (catMaybes+ [("allSupported" .=) <$> _rgAllSupported,+ ("includeGlobalResourceTypes" .=) <$>+ _rgIncludeGlobalResourceTypes,+ ("resourceTypes" .=) <$> _rgResourceTypes])++-- | The relationship of the related resource to the main resource.+--+--+--+-- /See:/ 'relationship' smart constructor.+data Relationship = Relationship'+ { _rResourceId :: !(Maybe Text)+ , _rResourceType :: !(Maybe ResourceType)+ , _rResourceName :: !(Maybe Text)+ , _rRelationshipName :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Relationship' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rResourceId' - The ID of the related resource (for example, @sg-xxxxxx@ ).+--+-- * 'rResourceType' - The resource type of the related resource.+--+-- * 'rResourceName' - The custom name of the related resource, if available.+--+-- * 'rRelationshipName' - The type of relationship with the related resource.+relationship+ :: Relationship+relationship =+ Relationship'+ { _rResourceId = Nothing+ , _rResourceType = Nothing+ , _rResourceName = Nothing+ , _rRelationshipName = Nothing+ }+++-- | The ID of the related resource (for example, @sg-xxxxxx@ ).+rResourceId :: Lens' Relationship (Maybe Text)+rResourceId = lens _rResourceId (\ s a -> s{_rResourceId = a})++-- | The resource type of the related resource.+rResourceType :: Lens' Relationship (Maybe ResourceType)+rResourceType = lens _rResourceType (\ s a -> s{_rResourceType = a})++-- | The custom name of the related resource, if available.+rResourceName :: Lens' Relationship (Maybe Text)+rResourceName = lens _rResourceName (\ s a -> s{_rResourceName = a})++-- | The type of relationship with the related resource.+rRelationshipName :: Lens' Relationship (Maybe Text)+rRelationshipName = lens _rRelationshipName (\ s a -> s{_rRelationshipName = a})++instance FromJSON Relationship where+ parseJSON+ = withObject "Relationship"+ (\ x ->+ Relationship' <$>+ (x .:? "resourceId") <*> (x .:? "resourceType") <*>+ (x .:? "resourceName")+ <*> (x .:? "relationshipName"))++instance Hashable Relationship where++instance NFData Relationship where++-- | An object that contains the resource type and the number of resources.+--+--+--+-- /See:/ 'resourceCount' smart constructor.+data ResourceCount = ResourceCount'+ { _rcResourceType :: !(Maybe ResourceType)+ , _rcCount :: !(Maybe Integer)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ResourceCount' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rcResourceType' - The resource type (for example, @"AWS::EC2::Instance"@ ).+--+-- * 'rcCount' - The number of resources.+resourceCount+ :: ResourceCount+resourceCount = ResourceCount' {_rcResourceType = Nothing, _rcCount = Nothing}+++-- | The resource type (for example, @"AWS::EC2::Instance"@ ).+rcResourceType :: Lens' ResourceCount (Maybe ResourceType)+rcResourceType = lens _rcResourceType (\ s a -> s{_rcResourceType = a})++-- | The number of resources.+rcCount :: Lens' ResourceCount (Maybe Integer)+rcCount = lens _rcCount (\ s a -> s{_rcCount = a})++instance FromJSON ResourceCount where+ parseJSON+ = withObject "ResourceCount"+ (\ x ->+ ResourceCount' <$>+ (x .:? "resourceType") <*> (x .:? "count"))++instance Hashable ResourceCount where++instance NFData ResourceCount where++-- | The details that identify a resource that is discovered by AWS Config, including the resource type, ID, and (if available) the custom resource name.+--+--+--+-- /See:/ 'resourceIdentifier' smart constructor.+data ResourceIdentifier = ResourceIdentifier'+ { _riResourceId :: !(Maybe Text)+ , _riResourceType :: !(Maybe ResourceType)+ , _riResourceName :: !(Maybe Text)+ , _riResourceDeletionTime :: !(Maybe POSIX)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ResourceIdentifier' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'riResourceId' - The ID of the resource (for example, @sg-xxxxxx@ ).+--+-- * 'riResourceType' - The type of resource.+--+-- * 'riResourceName' - The custom name of the resource (if available).+--+-- * 'riResourceDeletionTime' - The time that the resource was deleted.+resourceIdentifier+ :: ResourceIdentifier+resourceIdentifier =+ ResourceIdentifier'+ { _riResourceId = Nothing+ , _riResourceType = Nothing+ , _riResourceName = Nothing+ , _riResourceDeletionTime = Nothing+ }+++-- | The ID of the resource (for example, @sg-xxxxxx@ ).+riResourceId :: Lens' ResourceIdentifier (Maybe Text)+riResourceId = lens _riResourceId (\ s a -> s{_riResourceId = a})++-- | The type of resource.+riResourceType :: Lens' ResourceIdentifier (Maybe ResourceType)+riResourceType = lens _riResourceType (\ s a -> s{_riResourceType = a})++-- | The custom name of the resource (if available).+riResourceName :: Lens' ResourceIdentifier (Maybe Text)+riResourceName = lens _riResourceName (\ s a -> s{_riResourceName = a})++-- | The time that the resource was deleted.+riResourceDeletionTime :: Lens' ResourceIdentifier (Maybe UTCTime)+riResourceDeletionTime = lens _riResourceDeletionTime (\ s a -> s{_riResourceDeletionTime = a}) . mapping _Time++instance FromJSON ResourceIdentifier where+ parseJSON+ = withObject "ResourceIdentifier"+ (\ x ->+ ResourceIdentifier' <$>+ (x .:? "resourceId") <*> (x .:? "resourceType") <*>+ (x .:? "resourceName")+ <*> (x .:? "resourceDeletionTime"))++instance Hashable ResourceIdentifier where++instance NFData ResourceIdentifier where++-- | The details that identify a resource within AWS Config, including the resource type and resource ID.+--+--+--+-- /See:/ 'resourceKey' smart constructor.+data ResourceKey = ResourceKey'+ { _rkResourceType :: !ResourceType+ , _rkResourceId :: !Text+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'ResourceKey' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rkResourceType' - The resource type.+--+-- * 'rkResourceId' - The ID of the resource (for example., sg-xxxxxx).+resourceKey+ :: ResourceType -- ^ 'rkResourceType'+ -> Text -- ^ 'rkResourceId'+ -> ResourceKey+resourceKey pResourceType_ pResourceId_ =+ ResourceKey' {_rkResourceType = pResourceType_, _rkResourceId = pResourceId_}+++-- | The resource type.+rkResourceType :: Lens' ResourceKey ResourceType+rkResourceType = lens _rkResourceType (\ s a -> s{_rkResourceType = a})++-- | The ID of the resource (for example., sg-xxxxxx).+rkResourceId :: Lens' ResourceKey Text+rkResourceId = lens _rkResourceId (\ s a -> s{_rkResourceId = a})++instance FromJSON ResourceKey where+ parseJSON+ = withObject "ResourceKey"+ (\ x ->+ ResourceKey' <$>+ (x .: "resourceType") <*> (x .: "resourceId"))++instance Hashable ResourceKey where++instance NFData ResourceKey where++instance ToJSON ResourceKey where+ toJSON ResourceKey'{..}+ = object+ (catMaybes+ [Just ("resourceType" .= _rkResourceType),+ Just ("resourceId" .= _rkResourceId)])++-- | Defines which resources trigger an evaluation for an AWS Config rule. The scope can include one or more resource types, a combination of a tag key and value, or a combination of one resource type and one resource ID. Specify a scope to constrain which resources trigger an evaluation for a rule. Otherwise, evaluations for the rule are triggered when any resource in your recording group changes in configuration.+--+--+--+-- /See:/ 'scope' smart constructor.+data Scope = Scope'+ { _sComplianceResourceTypes :: !(Maybe [Text])+ , _sComplianceResourceId :: !(Maybe Text)+ , _sTagValue :: !(Maybe Text)+ , _sTagKey :: !(Maybe Text)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Scope' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sComplianceResourceTypes' - The resource types of only those AWS resources that you want to trigger an evaluation for the rule. You can only specify one type if you also specify a resource ID for @ComplianceResourceId@ .+--+-- * 'sComplianceResourceId' - The ID of the only AWS resource that you want to trigger an evaluation for the rule. If you specify a resource ID, you must specify one resource type for @ComplianceResourceTypes@ .+--+-- * 'sTagValue' - The tag value applied to only those AWS resources that you want to trigger an evaluation for the rule. If you specify a value for @TagValue@ , you must also specify a value for @TagKey@ .+--+-- * 'sTagKey' - The tag key that is applied to only those AWS resources that you want to trigger an evaluation for the rule.+scope+ :: Scope+scope =+ Scope'+ { _sComplianceResourceTypes = Nothing+ , _sComplianceResourceId = Nothing+ , _sTagValue = Nothing+ , _sTagKey = Nothing+ }+++-- | The resource types of only those AWS resources that you want to trigger an evaluation for the rule. You can only specify one type if you also specify a resource ID for @ComplianceResourceId@ .+sComplianceResourceTypes :: Lens' Scope [Text]+sComplianceResourceTypes = lens _sComplianceResourceTypes (\ s a -> s{_sComplianceResourceTypes = a}) . _Default . _Coerce++-- | The ID of the only AWS resource that you want to trigger an evaluation for the rule. If you specify a resource ID, you must specify one resource type for @ComplianceResourceTypes@ .+sComplianceResourceId :: Lens' Scope (Maybe Text)+sComplianceResourceId = lens _sComplianceResourceId (\ s a -> s{_sComplianceResourceId = a})++-- | The tag value applied to only those AWS resources that you want to trigger an evaluation for the rule. If you specify a value for @TagValue@ , you must also specify a value for @TagKey@ .+sTagValue :: Lens' Scope (Maybe Text)+sTagValue = lens _sTagValue (\ s a -> s{_sTagValue = a})++-- | The tag key that is applied to only those AWS resources that you want to trigger an evaluation for the rule.+sTagKey :: Lens' Scope (Maybe Text)+sTagKey = lens _sTagKey (\ s a -> s{_sTagKey = a})++instance FromJSON Scope where+ parseJSON+ = withObject "Scope"+ (\ x ->+ Scope' <$>+ (x .:? "ComplianceResourceTypes" .!= mempty) <*>+ (x .:? "ComplianceResourceId")+ <*> (x .:? "TagValue")+ <*> (x .:? "TagKey"))++instance Hashable Scope where++instance NFData Scope where++instance ToJSON Scope where+ toJSON Scope'{..}+ = object+ (catMaybes+ [("ComplianceResourceTypes" .=) <$>+ _sComplianceResourceTypes,+ ("ComplianceResourceId" .=) <$>+ _sComplianceResourceId,+ ("TagValue" .=) <$> _sTagValue,+ ("TagKey" .=) <$> _sTagKey])++-- | Provides the AWS Config rule owner (AWS or customer), the rule identifier, and the events that trigger the evaluation of your AWS resources.+--+--+--+-- /See:/ 'source' smart constructor.+data Source = Source'+ { _sSourceDetails :: !(Maybe [SourceDetail])+ , _sOwner :: !Owner+ , _sSourceIdentifier :: !Text+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'Source' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sSourceDetails' - Provides the source and type of the event that causes AWS Config to evaluate your AWS resources.+--+-- * 'sOwner' - Indicates whether AWS or the customer owns and manages the AWS Config rule.+--+-- * 'sSourceIdentifier' - For AWS Config managed rules, a predefined identifier from a list. For example, @IAM_PASSWORD_POLICY@ is a managed rule. To reference a managed rule, see <http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html Using AWS Managed Config Rules> . For custom rules, the identifier is the Amazon Resource Name (ARN) of the rule's AWS Lambda function, such as @arn:aws:lambda:us-east-2:123456789012:function:custom_rule_name@ .+source+ :: Owner -- ^ 'sOwner'+ -> Text -- ^ 'sSourceIdentifier'+ -> Source+source pOwner_ pSourceIdentifier_ =+ Source'+ { _sSourceDetails = Nothing+ , _sOwner = pOwner_+ , _sSourceIdentifier = pSourceIdentifier_+ }+++-- | Provides the source and type of the event that causes AWS Config to evaluate your AWS resources.+sSourceDetails :: Lens' Source [SourceDetail]+sSourceDetails = lens _sSourceDetails (\ s a -> s{_sSourceDetails = a}) . _Default . _Coerce++-- | Indicates whether AWS or the customer owns and manages the AWS Config rule.+sOwner :: Lens' Source Owner+sOwner = lens _sOwner (\ s a -> s{_sOwner = a})++-- | For AWS Config managed rules, a predefined identifier from a list. For example, @IAM_PASSWORD_POLICY@ is a managed rule. To reference a managed rule, see <http://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html Using AWS Managed Config Rules> . For custom rules, the identifier is the Amazon Resource Name (ARN) of the rule's AWS Lambda function, such as @arn:aws:lambda:us-east-2:123456789012:function:custom_rule_name@ .+sSourceIdentifier :: Lens' Source Text+sSourceIdentifier = lens _sSourceIdentifier (\ s a -> s{_sSourceIdentifier = a})++instance FromJSON Source where+ parseJSON+ = withObject "Source"+ (\ x ->+ Source' <$>+ (x .:? "SourceDetails" .!= mempty) <*> (x .: "Owner")+ <*> (x .: "SourceIdentifier"))++instance Hashable Source where++instance NFData Source where++instance ToJSON Source where+ toJSON Source'{..}+ = object+ (catMaybes+ [("SourceDetails" .=) <$> _sSourceDetails,+ Just ("Owner" .= _sOwner),+ Just ("SourceIdentifier" .= _sSourceIdentifier)])++-- | Provides the source and the message types that trigger AWS Config to evaluate your AWS resources against a rule. It also provides the frequency with which you want AWS Config to run evaluations for the rule if the trigger type is periodic. You can specify the parameter values for @SourceDetail@ only for custom rules.+--+--+--+-- /See:/ 'sourceDetail' smart constructor.+data SourceDetail = SourceDetail'+ { _sdMessageType :: !(Maybe MessageType)+ , _sdMaximumExecutionFrequency :: !(Maybe MaximumExecutionFrequency)+ , _sdEventSource :: !(Maybe EventSource)+ } deriving (Eq, Read, Show, Data, Typeable, Generic)+++-- | Creates a value of 'SourceDetail' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sdMessageType' - The type of notification that triggers AWS Config to run an evaluation for a rule. You can specify the following notification types: * @ConfigurationItemChangeNotification@ - Triggers an evaluation when AWS Config delivers a configuration item as a result of a resource change. * @OversizedConfigurationItemChangeNotification@ - Triggers an evaluation when AWS Config delivers an oversized configuration item. AWS Config may generate this notification type when a resource changes and the notification exceeds the maximum size allowed by Amazon SNS. * @ScheduledNotification@ - Triggers a periodic evaluation at the frequency specified for @MaximumExecutionFrequency@ . * @ConfigurationSnapshotDeliveryCompleted@ - Triggers a periodic evaluation when AWS Config delivers a configuration snapshot. If you want your custom rule to be triggered by configuration changes, specify two SourceDetail objects, one for @ConfigurationItemChangeNotification@ and one for @OversizedConfigurationItemChangeNotification@ .+--+-- * 'sdMaximumExecutionFrequency' - The frequency at which you want AWS Config to run evaluations for a custom rule with a periodic trigger. If you specify a value for @MaximumExecutionFrequency@ , then @MessageType@ must use the @ScheduledNotification@ value.+--+-- * 'sdEventSource' - The source of the event, such as an AWS service, that triggers AWS Config to evaluate your AWS resources.+sourceDetail+ :: SourceDetail+sourceDetail =+ SourceDetail'+ { _sdMessageType = Nothing+ , _sdMaximumExecutionFrequency = Nothing+ , _sdEventSource = Nothing+ }+++-- | The type of notification that triggers AWS Config to run an evaluation for a rule. You can specify the following notification types: * @ConfigurationItemChangeNotification@ - Triggers an evaluation when AWS Config delivers a configuration item as a result of a resource change. * @OversizedConfigurationItemChangeNotification@ - Triggers an evaluation when AWS Config delivers an oversized configuration item. AWS Config may generate this notification type when a resource changes and the notification exceeds the maximum size allowed by Amazon SNS. * @ScheduledNotification@ - Triggers a periodic evaluation at the frequency specified for @MaximumExecutionFrequency@ . * @ConfigurationSnapshotDeliveryCompleted@ - Triggers a periodic evaluation when AWS Config delivers a configuration snapshot. If you want your custom rule to be triggered by configuration changes, specify two SourceDetail objects, one for @ConfigurationItemChangeNotification@ and one for @OversizedConfigurationItemChangeNotification@ .+sdMessageType :: Lens' SourceDetail (Maybe MessageType)+sdMessageType = lens _sdMessageType (\ s a -> s{_sdMessageType = a})++-- | The frequency at which you want AWS Config to run evaluations for a custom rule with a periodic trigger. If you specify a value for @MaximumExecutionFrequency@ , then @MessageType@ must use the @ScheduledNotification@ value.+sdMaximumExecutionFrequency :: Lens' SourceDetail (Maybe MaximumExecutionFrequency)+sdMaximumExecutionFrequency = lens _sdMaximumExecutionFrequency (\ s a -> s{_sdMaximumExecutionFrequency = a})++-- | The source of the event, such as an AWS service, that triggers AWS Config to evaluate your AWS resources.+sdEventSource :: Lens' SourceDetail (Maybe EventSource)+sdEventSource = lens _sdEventSource (\ s a -> s{_sdEventSource = a}) instance FromJSON SourceDetail where parseJSON
gen/Network/AWS/Config/Types/Sum.hs view
@@ -9,7 +9,7 @@ -- | -- Module : Network.AWS.Config.Types.Sum--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -19,6 +19,66 @@ import Network.AWS.Prelude +data AggregatedSourceStatusType+ = Failed+ | Outdated+ | Succeeded+ deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)+++instance FromText AggregatedSourceStatusType where+ parser = takeLowerText >>= \case+ "failed" -> pure Failed+ "outdated" -> pure Outdated+ "succeeded" -> pure Succeeded+ e -> fromTextError $ "Failure parsing AggregatedSourceStatusType from value: '" <> e+ <> "'. Accepted values: failed, outdated, succeeded"++instance ToText AggregatedSourceStatusType where+ toText = \case+ Failed -> "FAILED"+ Outdated -> "OUTDATED"+ Succeeded -> "SUCCEEDED"++instance Hashable AggregatedSourceStatusType+instance NFData AggregatedSourceStatusType+instance ToByteString AggregatedSourceStatusType+instance ToQuery AggregatedSourceStatusType+instance ToHeader AggregatedSourceStatusType++instance ToJSON AggregatedSourceStatusType where+ toJSON = toJSONText++instance FromJSON AggregatedSourceStatusType where+ parseJSON = parseJSONText "AggregatedSourceStatusType"++data AggregatedSourceType+ = Account+ | Organization+ deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)+++instance FromText AggregatedSourceType where+ parser = takeLowerText >>= \case+ "account" -> pure Account+ "organization" -> pure Organization+ e -> fromTextError $ "Failure parsing AggregatedSourceType from value: '" <> e+ <> "'. Accepted values: account, organization"++instance ToText AggregatedSourceType where+ toText = \case+ Account -> "ACCOUNT"+ Organization -> "ORGANIZATION"++instance Hashable AggregatedSourceType+instance NFData AggregatedSourceType+instance ToByteString AggregatedSourceType+instance ToQuery AggregatedSourceType+instance ToHeader AggregatedSourceType++instance FromJSON AggregatedSourceType where+ parseJSON = parseJSONText "AggregatedSourceType"+ data ChronologicalOrder = Forward | Reverse@@ -82,6 +142,33 @@ instance FromJSON ComplianceType where parseJSON = parseJSONText "ComplianceType" +data ConfigRuleComplianceSummaryGroupKey+ = AWSRegion+ | AccountId+ deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)+++instance FromText ConfigRuleComplianceSummaryGroupKey where+ parser = takeLowerText >>= \case+ "aws_region" -> pure AWSRegion+ "account_id" -> pure AccountId+ e -> fromTextError $ "Failure parsing ConfigRuleComplianceSummaryGroupKey from value: '" <> e+ <> "'. Accepted values: aws_region, account_id"++instance ToText ConfigRuleComplianceSummaryGroupKey where+ toText = \case+ AWSRegion -> "AWS_REGION"+ AccountId -> "ACCOUNT_ID"++instance Hashable ConfigRuleComplianceSummaryGroupKey+instance NFData ConfigRuleComplianceSummaryGroupKey+instance ToByteString ConfigRuleComplianceSummaryGroupKey+instance ToQuery ConfigRuleComplianceSummaryGroupKey+instance ToHeader ConfigRuleComplianceSummaryGroupKey++instance ToJSON ConfigRuleComplianceSummaryGroupKey where+ toJSON = toJSONText+ data ConfigRuleState = Active | Deleting@@ -119,28 +206,31 @@ parseJSON = parseJSONText "ConfigRuleState" data ConfigurationItemStatus- = Deleted- | Discovered- | Failed- | OK+ = OK+ | ResourceDeleted+ | ResourceDeletedNotRecorded+ | ResourceDiscovered+ | ResourceNotRecorded deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) instance FromText ConfigurationItemStatus where parser = takeLowerText >>= \case- "deleted" -> pure Deleted- "discovered" -> pure Discovered- "failed" -> pure Failed "ok" -> pure OK+ "resourcedeleted" -> pure ResourceDeleted+ "resourcedeletednotrecorded" -> pure ResourceDeletedNotRecorded+ "resourcediscovered" -> pure ResourceDiscovered+ "resourcenotrecorded" -> pure ResourceNotRecorded e -> fromTextError $ "Failure parsing ConfigurationItemStatus from value: '" <> e- <> "'. Accepted values: deleted, discovered, failed, ok"+ <> "'. Accepted values: ok, resourcedeleted, resourcedeletednotrecorded, resourcediscovered, resourcenotrecorded" instance ToText ConfigurationItemStatus where toText = \case- Deleted -> "Deleted"- Discovered -> "Discovered"- Failed -> "Failed"- OK -> "Ok"+ OK -> "OK"+ ResourceDeleted -> "ResourceDeleted"+ ResourceDeletedNotRecorded -> "ResourceDeletedNotRecorded"+ ResourceDiscovered -> "ResourceDiscovered"+ ResourceNotRecorded -> "ResourceNotRecorded" instance Hashable ConfigurationItemStatus instance NFData ConfigurationItemStatus@@ -350,6 +440,8 @@ | AWSAutoScalingScalingPolicy | AWSAutoScalingScheduledAction | AWSCloudFormationStack+ | AWSCloudFrontDistribution+ | AWSCloudFrontStreamingDistribution | AWSCloudTrailTrail | AWSCloudWatchAlarm | AWSCodeBuildProject@@ -369,10 +461,15 @@ | AWSEC2VPNGateway | AWSEC2Volume | AWSELASTICLOADBALANCINGV2LoadBalancer+ | AWSElasticBeanstalkApplication+ | AWSElasticBeanstalkApplicationVersion+ | AWSElasticBeanstalkEnvironment+ | AWSElasticLoadBalancingLoadBalancer | AWSIAMGroup | AWSIAMPolicy | AWSIAMRole | AWSIAMUser+ | AWSLambdaFunction | AWSRDSDBInstance | AWSRDSDBSecurityGroup | AWSRDSDBSnapshot@@ -386,6 +483,14 @@ | AWSRedshiftEventSubscription | AWSS3Bucket | AWSSsmManagedInstanceInventory+ | AWSWAFRegionalRateBasedRule+ | AWSWAFRegionalRule+ | AWSWAFRegionalRuleGroup+ | AWSWAFRegionalWebACL+ | AWSWafRateBasedRule+ | AWSWafRule+ | AWSWafRuleGroup+ | AWSWafWebACL deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic) @@ -397,6 +502,8 @@ "aws::autoscaling::scalingpolicy" -> pure AWSAutoScalingScalingPolicy "aws::autoscaling::scheduledaction" -> pure AWSAutoScalingScheduledAction "aws::cloudformation::stack" -> pure AWSCloudFormationStack+ "aws::cloudfront::distribution" -> pure AWSCloudFrontDistribution+ "aws::cloudfront::streamingdistribution" -> pure AWSCloudFrontStreamingDistribution "aws::cloudtrail::trail" -> pure AWSCloudTrailTrail "aws::cloudwatch::alarm" -> pure AWSCloudWatchAlarm "aws::codebuild::project" -> pure AWSCodeBuildProject@@ -416,10 +523,15 @@ "aws::ec2::vpngateway" -> pure AWSEC2VPNGateway "aws::ec2::volume" -> pure AWSEC2Volume "aws::elasticloadbalancingv2::loadbalancer" -> pure AWSELASTICLOADBALANCINGV2LoadBalancer+ "aws::elasticbeanstalk::application" -> pure AWSElasticBeanstalkApplication+ "aws::elasticbeanstalk::applicationversion" -> pure AWSElasticBeanstalkApplicationVersion+ "aws::elasticbeanstalk::environment" -> pure AWSElasticBeanstalkEnvironment+ "aws::elasticloadbalancing::loadbalancer" -> pure AWSElasticLoadBalancingLoadBalancer "aws::iam::group" -> pure AWSIAMGroup "aws::iam::policy" -> pure AWSIAMPolicy "aws::iam::role" -> pure AWSIAMRole "aws::iam::user" -> pure AWSIAMUser+ "aws::lambda::function" -> pure AWSLambdaFunction "aws::rds::dbinstance" -> pure AWSRDSDBInstance "aws::rds::dbsecuritygroup" -> pure AWSRDSDBSecurityGroup "aws::rds::dbsnapshot" -> pure AWSRDSDBSnapshot@@ -433,8 +545,16 @@ "aws::redshift::eventsubscription" -> pure AWSRedshiftEventSubscription "aws::s3::bucket" -> pure AWSS3Bucket "aws::ssm::managedinstanceinventory" -> pure AWSSsmManagedInstanceInventory+ "aws::wafregional::ratebasedrule" -> pure AWSWAFRegionalRateBasedRule+ "aws::wafregional::rule" -> pure AWSWAFRegionalRule+ "aws::wafregional::rulegroup" -> pure AWSWAFRegionalRuleGroup+ "aws::wafregional::webacl" -> pure AWSWAFRegionalWebACL+ "aws::waf::ratebasedrule" -> pure AWSWafRateBasedRule+ "aws::waf::rule" -> pure AWSWafRule+ "aws::waf::rulegroup" -> pure AWSWafRuleGroup+ "aws::waf::webacl" -> pure AWSWafWebACL e -> fromTextError $ "Failure parsing ResourceType from value: '" <> e- <> "'. Accepted values: aws::acm::certificate, aws::autoscaling::autoscalinggroup, aws::autoscaling::launchconfiguration, aws::autoscaling::scalingpolicy, aws::autoscaling::scheduledaction, aws::cloudformation::stack, aws::cloudtrail::trail, aws::cloudwatch::alarm, aws::codebuild::project, aws::dynamodb::table, aws::ec2::customergateway, aws::ec2::eip, aws::ec2::host, aws::ec2::instance, aws::ec2::internetgateway, aws::ec2::networkacl, aws::ec2::networkinterface, aws::ec2::routetable, aws::ec2::securitygroup, aws::ec2::subnet, aws::ec2::vpc, aws::ec2::vpnconnection, aws::ec2::vpngateway, aws::ec2::volume, aws::elasticloadbalancingv2::loadbalancer, aws::iam::group, aws::iam::policy, aws::iam::role, aws::iam::user, aws::rds::dbinstance, aws::rds::dbsecuritygroup, aws::rds::dbsnapshot, aws::rds::dbsubnetgroup, aws::rds::eventsubscription, aws::redshift::cluster, aws::redshift::clusterparametergroup, aws::redshift::clustersecuritygroup, aws::redshift::clustersnapshot, aws::redshift::clustersubnetgroup, aws::redshift::eventsubscription, aws::s3::bucket, aws::ssm::managedinstanceinventory"+ <> "'. Accepted values: aws::acm::certificate, aws::autoscaling::autoscalinggroup, aws::autoscaling::launchconfiguration, aws::autoscaling::scalingpolicy, aws::autoscaling::scheduledaction, aws::cloudformation::stack, aws::cloudfront::distribution, aws::cloudfront::streamingdistribution, aws::cloudtrail::trail, aws::cloudwatch::alarm, aws::codebuild::project, aws::dynamodb::table, aws::ec2::customergateway, aws::ec2::eip, aws::ec2::host, aws::ec2::instance, aws::ec2::internetgateway, aws::ec2::networkacl, aws::ec2::networkinterface, aws::ec2::routetable, aws::ec2::securitygroup, aws::ec2::subnet, aws::ec2::vpc, aws::ec2::vpnconnection, aws::ec2::vpngateway, aws::ec2::volume, aws::elasticloadbalancingv2::loadbalancer, aws::elasticbeanstalk::application, aws::elasticbeanstalk::applicationversion, aws::elasticbeanstalk::environment, aws::elasticloadbalancing::loadbalancer, aws::iam::group, aws::iam::policy, aws::iam::role, aws::iam::user, aws::lambda::function, aws::rds::dbinstance, aws::rds::dbsecuritygroup, aws::rds::dbsnapshot, aws::rds::dbsubnetgroup, aws::rds::eventsubscription, aws::redshift::cluster, aws::redshift::clusterparametergroup, aws::redshift::clustersecuritygroup, aws::redshift::clustersnapshot, aws::redshift::clustersubnetgroup, aws::redshift::eventsubscription, aws::s3::bucket, aws::ssm::managedinstanceinventory, aws::wafregional::ratebasedrule, aws::wafregional::rule, aws::wafregional::rulegroup, aws::wafregional::webacl, aws::waf::ratebasedrule, aws::waf::rule, aws::waf::rulegroup, aws::waf::webacl" instance ToText ResourceType where toText = \case@@ -444,6 +564,8 @@ AWSAutoScalingScalingPolicy -> "AWS::AutoScaling::ScalingPolicy" AWSAutoScalingScheduledAction -> "AWS::AutoScaling::ScheduledAction" AWSCloudFormationStack -> "AWS::CloudFormation::Stack"+ AWSCloudFrontDistribution -> "AWS::CloudFront::Distribution"+ AWSCloudFrontStreamingDistribution -> "AWS::CloudFront::StreamingDistribution" AWSCloudTrailTrail -> "AWS::CloudTrail::Trail" AWSCloudWatchAlarm -> "AWS::CloudWatch::Alarm" AWSCodeBuildProject -> "AWS::CodeBuild::Project"@@ -463,10 +585,15 @@ AWSEC2VPNGateway -> "AWS::EC2::VPNGateway" AWSEC2Volume -> "AWS::EC2::Volume" AWSELASTICLOADBALANCINGV2LoadBalancer -> "AWS::ElasticLoadBalancingV2::LoadBalancer"+ AWSElasticBeanstalkApplication -> "AWS::ElasticBeanstalk::Application"+ AWSElasticBeanstalkApplicationVersion -> "AWS::ElasticBeanstalk::ApplicationVersion"+ AWSElasticBeanstalkEnvironment -> "AWS::ElasticBeanstalk::Environment"+ AWSElasticLoadBalancingLoadBalancer -> "AWS::ElasticLoadBalancing::LoadBalancer" AWSIAMGroup -> "AWS::IAM::Group" AWSIAMPolicy -> "AWS::IAM::Policy" AWSIAMRole -> "AWS::IAM::Role" AWSIAMUser -> "AWS::IAM::User"+ AWSLambdaFunction -> "AWS::Lambda::Function" AWSRDSDBInstance -> "AWS::RDS::DBInstance" AWSRDSDBSecurityGroup -> "AWS::RDS::DBSecurityGroup" AWSRDSDBSnapshot -> "AWS::RDS::DBSnapshot"@@ -480,6 +607,14 @@ AWSRedshiftEventSubscription -> "AWS::Redshift::EventSubscription" AWSS3Bucket -> "AWS::S3::Bucket" AWSSsmManagedInstanceInventory -> "AWS::SSM::ManagedInstanceInventory"+ AWSWAFRegionalRateBasedRule -> "AWS::WAFRegional::RateBasedRule"+ AWSWAFRegionalRule -> "AWS::WAFRegional::Rule"+ AWSWAFRegionalRuleGroup -> "AWS::WAFRegional::RuleGroup"+ AWSWAFRegionalWebACL -> "AWS::WAFRegional::WebACL"+ AWSWafRateBasedRule -> "AWS::WAF::RateBasedRule"+ AWSWafRule -> "AWS::WAF::Rule"+ AWSWafRuleGroup -> "AWS::WAF::RuleGroup"+ AWSWafWebACL -> "AWS::WAF::WebACL" instance Hashable ResourceType instance NFData ResourceType
gen/Network/AWS/Config/Waiters.hs view
@@ -7,7 +7,7 @@ -- | -- Module : Network.AWS.Config.Waiters--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated
test/Main.hs view
@@ -2,7 +2,7 @@ -- | -- Module : Main--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated
test/Test/AWS/Config.hs view
@@ -1,7 +1,7 @@ {-# LANGUAGE OverloadedStrings #-} -- Module : Test.AWS.Config--- Copyright : (c) 2013-2016 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : This Source Code Form is subject to the terms of -- the Mozilla Public License, v. 2.0. -- A copy of the MPL can be found in the LICENSE file or
test/Test/AWS/Config/Internal.hs view
@@ -2,7 +2,7 @@ {-# OPTIONS_GHC -fno-warn-unused-imports #-} -- Module : Test.AWS.Config.Internal--- Copyright : (c) 2013-2016 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : This Source Code Form is subject to the terms of -- the Mozilla Public License, v. 2.0. -- A copy of the MPL can be found in the LICENSE file or
test/Test/AWS/Gen/Config.hs view
@@ -5,7 +5,7 @@ -- | -- Module : Test.AWS.Gen.Config--- Copyright : (c) 2013-2017 Brendan Hay+-- Copyright : (c) 2013-2018 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com> -- Stability : auto-generated@@ -28,18 +28,33 @@ -- fixtures :: TestTree -- fixtures = -- [ testGroup "request"--- [ requestGetResourceConfigHistory $+-- [ requestDescribePendingAggregationRequests $+-- describePendingAggregationRequests+--+-- , requestGetResourceConfigHistory $ -- getResourceConfigHistory --+-- , requestDescribeConfigurationAggregators $+-- describeConfigurationAggregators+-- -- , requestDescribeComplianceByConfigRule $ -- describeComplianceByConfigRule -- -- , requestStopConfigurationRecorder $ -- stopConfigurationRecorder --+-- , requestGetAggregateConfigRuleComplianceSummary $+-- getAggregateConfigRuleComplianceSummary+--+-- , requestBatchGetResourceConfig $+-- batchGetResourceConfig+-- -- , requestDescribeConfigRules $ -- describeConfigRules --+-- , requestDescribeAggregateComplianceByConfigRules $+-- describeAggregateComplianceByConfigRules+-- -- , requestDeleteEvaluationResults $ -- deleteEvaluationResults --@@ -52,6 +67,9 @@ -- , requestGetComplianceDetailsByResource $ -- getComplianceDetailsByResource --+-- , requestDeletePendingAggregationRequest $+-- deletePendingAggregationRequest+-- -- , requestDeliverConfigSnapshot $ -- deliverConfigSnapshot --@@ -73,12 +91,21 @@ -- , requestDescribeConfigurationRecorders $ -- describeConfigurationRecorders --+-- , requestGetAggregateComplianceDetailsByConfigRule $+-- getAggregateComplianceDetailsByConfigRule+-- -- , requestStartConfigurationRecorder $ -- startConfigurationRecorder -- -- , requestGetComplianceSummaryByConfigRule $ -- getComplianceSummaryByConfigRule --+-- , requestPutConfigurationAggregator $+-- putConfigurationAggregator+--+-- , requestDeleteConfigurationAggregator $+-- deleteConfigurationAggregator+-- -- , requestDescribeConfigurationRecorderStatus $ -- describeConfigurationRecorderStatus --@@ -100,30 +127,57 @@ -- , requestGetComplianceDetailsByConfigRule $ -- getComplianceDetailsByConfigRule --+-- , requestDeleteAggregationAuthorization $+-- deleteAggregationAuthorization+-- -- , requestDeleteDeliveryChannel $ -- deleteDeliveryChannel --+-- , requestPutAggregationAuthorization $+-- putAggregationAuthorization+--+-- , requestDescribeConfigurationAggregatorSourcesStatus $+-- describeConfigurationAggregatorSourcesStatus+-- -- , requestListDiscoveredResources $ -- listDiscoveredResources -- -- , requestDescribeDeliveryChannels $ -- describeDeliveryChannels --+-- , requestDescribeAggregationAuthorizations $+-- describeAggregationAuthorizations+-- -- ] -- , testGroup "response"--- [ responseGetResourceConfigHistory $+-- [ responseDescribePendingAggregationRequests $+-- describePendingAggregationRequestsResponse+--+-- , responseGetResourceConfigHistory $ -- getResourceConfigHistoryResponse --+-- , responseDescribeConfigurationAggregators $+-- describeConfigurationAggregatorsResponse+-- -- , responseDescribeComplianceByConfigRule $ -- describeComplianceByConfigRuleResponse -- -- , responseStopConfigurationRecorder $ -- stopConfigurationRecorderResponse --+-- , responseGetAggregateConfigRuleComplianceSummary $+-- getAggregateConfigRuleComplianceSummaryResponse+--+-- , responseBatchGetResourceConfig $+-- batchGetResourceConfigResponse+-- -- , responseDescribeConfigRules $ -- describeConfigRulesResponse --+-- , responseDescribeAggregateComplianceByConfigRules $+-- describeAggregateComplianceByConfigRulesResponse+-- -- , responseDeleteEvaluationResults $ -- deleteEvaluationResultsResponse --@@ -136,6 +190,9 @@ -- , responseGetComplianceDetailsByResource $ -- getComplianceDetailsByResourceResponse --+-- , responseDeletePendingAggregationRequest $+-- deletePendingAggregationRequestResponse+-- -- , responseDeliverConfigSnapshot $ -- deliverConfigSnapshotResponse --@@ -157,12 +214,21 @@ -- , responseDescribeConfigurationRecorders $ -- describeConfigurationRecordersResponse --+-- , responseGetAggregateComplianceDetailsByConfigRule $+-- getAggregateComplianceDetailsByConfigRuleResponse+-- -- , responseStartConfigurationRecorder $ -- startConfigurationRecorderResponse -- -- , responseGetComplianceSummaryByConfigRule $ -- getComplianceSummaryByConfigRuleResponse --+-- , responsePutConfigurationAggregator $+-- putConfigurationAggregatorResponse+--+-- , responseDeleteConfigurationAggregator $+-- deleteConfigurationAggregatorResponse+-- -- , responseDescribeConfigurationRecorderStatus $ -- describeConfigurationRecorderStatusResponse --@@ -184,25 +250,47 @@ -- , responseGetComplianceDetailsByConfigRule $ -- getComplianceDetailsByConfigRuleResponse --+-- , responseDeleteAggregationAuthorization $+-- deleteAggregationAuthorizationResponse+-- -- , responseDeleteDeliveryChannel $ -- deleteDeliveryChannelResponse --+-- , responsePutAggregationAuthorization $+-- putAggregationAuthorizationResponse+--+-- , responseDescribeConfigurationAggregatorSourcesStatus $+-- describeConfigurationAggregatorSourcesStatusResponse+-- -- , responseListDiscoveredResources $ -- listDiscoveredResourcesResponse -- -- , responseDescribeDeliveryChannels $ -- describeDeliveryChannelsResponse --+-- , responseDescribeAggregationAuthorizations $+-- describeAggregationAuthorizationsResponse+-- -- ] -- ] -- Requests +requestDescribePendingAggregationRequests :: DescribePendingAggregationRequests -> TestTree+requestDescribePendingAggregationRequests = req+ "DescribePendingAggregationRequests"+ "fixture/DescribePendingAggregationRequests.yaml"+ requestGetResourceConfigHistory :: GetResourceConfigHistory -> TestTree requestGetResourceConfigHistory = req "GetResourceConfigHistory" "fixture/GetResourceConfigHistory.yaml" +requestDescribeConfigurationAggregators :: DescribeConfigurationAggregators -> TestTree+requestDescribeConfigurationAggregators = req+ "DescribeConfigurationAggregators"+ "fixture/DescribeConfigurationAggregators.yaml"+ requestDescribeComplianceByConfigRule :: DescribeComplianceByConfigRule -> TestTree requestDescribeComplianceByConfigRule = req "DescribeComplianceByConfigRule"@@ -213,11 +301,26 @@ "StopConfigurationRecorder" "fixture/StopConfigurationRecorder.yaml" +requestGetAggregateConfigRuleComplianceSummary :: GetAggregateConfigRuleComplianceSummary -> TestTree+requestGetAggregateConfigRuleComplianceSummary = req+ "GetAggregateConfigRuleComplianceSummary"+ "fixture/GetAggregateConfigRuleComplianceSummary.yaml"++requestBatchGetResourceConfig :: BatchGetResourceConfig -> TestTree+requestBatchGetResourceConfig = req+ "BatchGetResourceConfig"+ "fixture/BatchGetResourceConfig.yaml"+ requestDescribeConfigRules :: DescribeConfigRules -> TestTree requestDescribeConfigRules = req "DescribeConfigRules" "fixture/DescribeConfigRules.yaml" +requestDescribeAggregateComplianceByConfigRules :: DescribeAggregateComplianceByConfigRules -> TestTree+requestDescribeAggregateComplianceByConfigRules = req+ "DescribeAggregateComplianceByConfigRules"+ "fixture/DescribeAggregateComplianceByConfigRules.yaml"+ requestDeleteEvaluationResults :: DeleteEvaluationResults -> TestTree requestDeleteEvaluationResults = req "DeleteEvaluationResults"@@ -238,6 +341,11 @@ "GetComplianceDetailsByResource" "fixture/GetComplianceDetailsByResource.yaml" +requestDeletePendingAggregationRequest :: DeletePendingAggregationRequest -> TestTree+requestDeletePendingAggregationRequest = req+ "DeletePendingAggregationRequest"+ "fixture/DeletePendingAggregationRequest.yaml"+ requestDeliverConfigSnapshot :: DeliverConfigSnapshot -> TestTree requestDeliverConfigSnapshot = req "DeliverConfigSnapshot"@@ -273,6 +381,11 @@ "DescribeConfigurationRecorders" "fixture/DescribeConfigurationRecorders.yaml" +requestGetAggregateComplianceDetailsByConfigRule :: GetAggregateComplianceDetailsByConfigRule -> TestTree+requestGetAggregateComplianceDetailsByConfigRule = req+ "GetAggregateComplianceDetailsByConfigRule"+ "fixture/GetAggregateComplianceDetailsByConfigRule.yaml"+ requestStartConfigurationRecorder :: StartConfigurationRecorder -> TestTree requestStartConfigurationRecorder = req "StartConfigurationRecorder"@@ -283,6 +396,16 @@ "GetComplianceSummaryByConfigRule" "fixture/GetComplianceSummaryByConfigRule.yaml" +requestPutConfigurationAggregator :: PutConfigurationAggregator -> TestTree+requestPutConfigurationAggregator = req+ "PutConfigurationAggregator"+ "fixture/PutConfigurationAggregator.yaml"++requestDeleteConfigurationAggregator :: DeleteConfigurationAggregator -> TestTree+requestDeleteConfigurationAggregator = req+ "DeleteConfigurationAggregator"+ "fixture/DeleteConfigurationAggregator.yaml"+ requestDescribeConfigurationRecorderStatus :: DescribeConfigurationRecorderStatus -> TestTree requestDescribeConfigurationRecorderStatus = req "DescribeConfigurationRecorderStatus"@@ -318,11 +441,26 @@ "GetComplianceDetailsByConfigRule" "fixture/GetComplianceDetailsByConfigRule.yaml" +requestDeleteAggregationAuthorization :: DeleteAggregationAuthorization -> TestTree+requestDeleteAggregationAuthorization = req+ "DeleteAggregationAuthorization"+ "fixture/DeleteAggregationAuthorization.yaml"+ requestDeleteDeliveryChannel :: DeleteDeliveryChannel -> TestTree requestDeleteDeliveryChannel = req "DeleteDeliveryChannel" "fixture/DeleteDeliveryChannel.yaml" +requestPutAggregationAuthorization :: PutAggregationAuthorization -> TestTree+requestPutAggregationAuthorization = req+ "PutAggregationAuthorization"+ "fixture/PutAggregationAuthorization.yaml"++requestDescribeConfigurationAggregatorSourcesStatus :: DescribeConfigurationAggregatorSourcesStatus -> TestTree+requestDescribeConfigurationAggregatorSourcesStatus = req+ "DescribeConfigurationAggregatorSourcesStatus"+ "fixture/DescribeConfigurationAggregatorSourcesStatus.yaml"+ requestListDiscoveredResources :: ListDiscoveredResources -> TestTree requestListDiscoveredResources = req "ListDiscoveredResources"@@ -333,8 +471,20 @@ "DescribeDeliveryChannels" "fixture/DescribeDeliveryChannels.yaml" +requestDescribeAggregationAuthorizations :: DescribeAggregationAuthorizations -> TestTree+requestDescribeAggregationAuthorizations = req+ "DescribeAggregationAuthorizations"+ "fixture/DescribeAggregationAuthorizations.yaml"+ -- Responses +responseDescribePendingAggregationRequests :: DescribePendingAggregationRequestsResponse -> TestTree+responseDescribePendingAggregationRequests = res+ "DescribePendingAggregationRequestsResponse"+ "fixture/DescribePendingAggregationRequestsResponse.proto"+ config+ (Proxy :: Proxy DescribePendingAggregationRequests)+ responseGetResourceConfigHistory :: GetResourceConfigHistoryResponse -> TestTree responseGetResourceConfigHistory = res "GetResourceConfigHistoryResponse"@@ -342,6 +492,13 @@ config (Proxy :: Proxy GetResourceConfigHistory) +responseDescribeConfigurationAggregators :: DescribeConfigurationAggregatorsResponse -> TestTree+responseDescribeConfigurationAggregators = res+ "DescribeConfigurationAggregatorsResponse"+ "fixture/DescribeConfigurationAggregatorsResponse.proto"+ config+ (Proxy :: Proxy DescribeConfigurationAggregators)+ responseDescribeComplianceByConfigRule :: DescribeComplianceByConfigRuleResponse -> TestTree responseDescribeComplianceByConfigRule = res "DescribeComplianceByConfigRuleResponse"@@ -356,6 +513,20 @@ config (Proxy :: Proxy StopConfigurationRecorder) +responseGetAggregateConfigRuleComplianceSummary :: GetAggregateConfigRuleComplianceSummaryResponse -> TestTree+responseGetAggregateConfigRuleComplianceSummary = res+ "GetAggregateConfigRuleComplianceSummaryResponse"+ "fixture/GetAggregateConfigRuleComplianceSummaryResponse.proto"+ config+ (Proxy :: Proxy GetAggregateConfigRuleComplianceSummary)++responseBatchGetResourceConfig :: BatchGetResourceConfigResponse -> TestTree+responseBatchGetResourceConfig = res+ "BatchGetResourceConfigResponse"+ "fixture/BatchGetResourceConfigResponse.proto"+ config+ (Proxy :: Proxy BatchGetResourceConfig)+ responseDescribeConfigRules :: DescribeConfigRulesResponse -> TestTree responseDescribeConfigRules = res "DescribeConfigRulesResponse"@@ -363,6 +534,13 @@ config (Proxy :: Proxy DescribeConfigRules) +responseDescribeAggregateComplianceByConfigRules :: DescribeAggregateComplianceByConfigRulesResponse -> TestTree+responseDescribeAggregateComplianceByConfigRules = res+ "DescribeAggregateComplianceByConfigRulesResponse"+ "fixture/DescribeAggregateComplianceByConfigRulesResponse.proto"+ config+ (Proxy :: Proxy DescribeAggregateComplianceByConfigRules)+ responseDeleteEvaluationResults :: DeleteEvaluationResultsResponse -> TestTree responseDeleteEvaluationResults = res "DeleteEvaluationResultsResponse"@@ -391,6 +569,13 @@ config (Proxy :: Proxy GetComplianceDetailsByResource) +responseDeletePendingAggregationRequest :: DeletePendingAggregationRequestResponse -> TestTree+responseDeletePendingAggregationRequest = res+ "DeletePendingAggregationRequestResponse"+ "fixture/DeletePendingAggregationRequestResponse.proto"+ config+ (Proxy :: Proxy DeletePendingAggregationRequest)+ responseDeliverConfigSnapshot :: DeliverConfigSnapshotResponse -> TestTree responseDeliverConfigSnapshot = res "DeliverConfigSnapshotResponse"@@ -440,6 +625,13 @@ config (Proxy :: Proxy DescribeConfigurationRecorders) +responseGetAggregateComplianceDetailsByConfigRule :: GetAggregateComplianceDetailsByConfigRuleResponse -> TestTree+responseGetAggregateComplianceDetailsByConfigRule = res+ "GetAggregateComplianceDetailsByConfigRuleResponse"+ "fixture/GetAggregateComplianceDetailsByConfigRuleResponse.proto"+ config+ (Proxy :: Proxy GetAggregateComplianceDetailsByConfigRule)+ responseStartConfigurationRecorder :: StartConfigurationRecorderResponse -> TestTree responseStartConfigurationRecorder = res "StartConfigurationRecorderResponse"@@ -454,6 +646,20 @@ config (Proxy :: Proxy GetComplianceSummaryByConfigRule) +responsePutConfigurationAggregator :: PutConfigurationAggregatorResponse -> TestTree+responsePutConfigurationAggregator = res+ "PutConfigurationAggregatorResponse"+ "fixture/PutConfigurationAggregatorResponse.proto"+ config+ (Proxy :: Proxy PutConfigurationAggregator)++responseDeleteConfigurationAggregator :: DeleteConfigurationAggregatorResponse -> TestTree+responseDeleteConfigurationAggregator = res+ "DeleteConfigurationAggregatorResponse"+ "fixture/DeleteConfigurationAggregatorResponse.proto"+ config+ (Proxy :: Proxy DeleteConfigurationAggregator)+ responseDescribeConfigurationRecorderStatus :: DescribeConfigurationRecorderStatusResponse -> TestTree responseDescribeConfigurationRecorderStatus = res "DescribeConfigurationRecorderStatusResponse"@@ -503,6 +709,13 @@ config (Proxy :: Proxy GetComplianceDetailsByConfigRule) +responseDeleteAggregationAuthorization :: DeleteAggregationAuthorizationResponse -> TestTree+responseDeleteAggregationAuthorization = res+ "DeleteAggregationAuthorizationResponse"+ "fixture/DeleteAggregationAuthorizationResponse.proto"+ config+ (Proxy :: Proxy DeleteAggregationAuthorization)+ responseDeleteDeliveryChannel :: DeleteDeliveryChannelResponse -> TestTree responseDeleteDeliveryChannel = res "DeleteDeliveryChannelResponse"@@ -510,6 +723,20 @@ config (Proxy :: Proxy DeleteDeliveryChannel) +responsePutAggregationAuthorization :: PutAggregationAuthorizationResponse -> TestTree+responsePutAggregationAuthorization = res+ "PutAggregationAuthorizationResponse"+ "fixture/PutAggregationAuthorizationResponse.proto"+ config+ (Proxy :: Proxy PutAggregationAuthorization)++responseDescribeConfigurationAggregatorSourcesStatus :: DescribeConfigurationAggregatorSourcesStatusResponse -> TestTree+responseDescribeConfigurationAggregatorSourcesStatus = res+ "DescribeConfigurationAggregatorSourcesStatusResponse"+ "fixture/DescribeConfigurationAggregatorSourcesStatusResponse.proto"+ config+ (Proxy :: Proxy DescribeConfigurationAggregatorSourcesStatus)+ responseListDiscoveredResources :: ListDiscoveredResourcesResponse -> TestTree responseListDiscoveredResources = res "ListDiscoveredResourcesResponse"@@ -523,3 +750,10 @@ "fixture/DescribeDeliveryChannelsResponse.proto" config (Proxy :: Proxy DescribeDeliveryChannels)++responseDescribeAggregationAuthorizations :: DescribeAggregationAuthorizationsResponse -> TestTree+responseDescribeAggregationAuthorizations = res+ "DescribeAggregationAuthorizationsResponse"+ "fixture/DescribeAggregationAuthorizationsResponse.proto"+ config+ (Proxy :: Proxy DescribeAggregationAuthorizations)