{-# LANGUAGE DisambiguateRecordFields #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE StrictData #-} {-# LANGUAGE NoImplicitPrelude #-} {-# OPTIONS_GHC -fno-warn-unused-matches #-} -- Derived from AWS service descriptions, licensed under Apache 2.0. -- | -- Module : Amazonka.Route53Resolver.Types -- Copyright : (c) 2013-2023 Brendan Hay -- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay -- Stability : auto-generated -- Portability : non-portable (GHC extensions) module Amazonka.Route53Resolver.Types ( -- * Service Configuration defaultService, -- * Errors _AccessDeniedException, _ConflictException, _InternalServiceErrorException, _InvalidNextTokenException, _InvalidParameterException, _InvalidPolicyDocument, _InvalidRequestException, _InvalidTagException, _LimitExceededException, _ResourceExistsException, _ResourceInUseException, _ResourceNotFoundException, _ResourceUnavailableException, _ThrottlingException, _UnknownResourceException, _ValidationException, -- * Action Action (..), -- * AutodefinedReverseFlag AutodefinedReverseFlag (..), -- * BlockOverrideDnsType BlockOverrideDnsType (..), -- * BlockResponse BlockResponse (..), -- * FirewallDomainImportOperation FirewallDomainImportOperation (..), -- * FirewallDomainListStatus FirewallDomainListStatus (..), -- * FirewallDomainUpdateOperation FirewallDomainUpdateOperation (..), -- * FirewallFailOpenStatus FirewallFailOpenStatus (..), -- * FirewallRuleGroupAssociationStatus FirewallRuleGroupAssociationStatus (..), -- * FirewallRuleGroupStatus FirewallRuleGroupStatus (..), -- * IpAddressStatus IpAddressStatus (..), -- * MutationProtectionStatus MutationProtectionStatus (..), -- * ResolverAutodefinedReverseStatus ResolverAutodefinedReverseStatus (..), -- * ResolverDNSSECValidationStatus ResolverDNSSECValidationStatus (..), -- * ResolverEndpointDirection ResolverEndpointDirection (..), -- * ResolverEndpointStatus ResolverEndpointStatus (..), -- * ResolverQueryLogConfigAssociationError ResolverQueryLogConfigAssociationError (..), -- * ResolverQueryLogConfigAssociationStatus ResolverQueryLogConfigAssociationStatus (..), -- * ResolverQueryLogConfigStatus ResolverQueryLogConfigStatus (..), -- * ResolverRuleAssociationStatus ResolverRuleAssociationStatus (..), -- * ResolverRuleStatus ResolverRuleStatus (..), -- * RuleTypeOption RuleTypeOption (..), -- * ShareStatus ShareStatus (..), -- * SortOrder SortOrder (..), -- * Validation Validation (..), -- * Filter Filter (..), newFilter, filter_name, filter_values, -- * FirewallConfig FirewallConfig (..), newFirewallConfig, firewallConfig_firewallFailOpen, firewallConfig_id, firewallConfig_ownerId, firewallConfig_resourceId, -- * FirewallDomainList FirewallDomainList (..), newFirewallDomainList, firewallDomainList_arn, firewallDomainList_creationTime, firewallDomainList_creatorRequestId, firewallDomainList_domainCount, firewallDomainList_id, firewallDomainList_managedOwnerName, firewallDomainList_modificationTime, firewallDomainList_name, firewallDomainList_status, firewallDomainList_statusMessage, -- * FirewallDomainListMetadata FirewallDomainListMetadata (..), newFirewallDomainListMetadata, firewallDomainListMetadata_arn, firewallDomainListMetadata_creatorRequestId, firewallDomainListMetadata_id, firewallDomainListMetadata_managedOwnerName, firewallDomainListMetadata_name, -- * FirewallRule FirewallRule (..), newFirewallRule, firewallRule_action, firewallRule_blockOverrideDnsType, firewallRule_blockOverrideDomain, firewallRule_blockOverrideTtl, firewallRule_blockResponse, firewallRule_creationTime, firewallRule_creatorRequestId, firewallRule_firewallDomainListId, firewallRule_firewallRuleGroupId, firewallRule_modificationTime, firewallRule_name, firewallRule_priority, -- * FirewallRuleGroup FirewallRuleGroup (..), newFirewallRuleGroup, firewallRuleGroup_arn, firewallRuleGroup_creationTime, firewallRuleGroup_creatorRequestId, firewallRuleGroup_id, firewallRuleGroup_modificationTime, firewallRuleGroup_name, firewallRuleGroup_ownerId, firewallRuleGroup_ruleCount, firewallRuleGroup_shareStatus, firewallRuleGroup_status, firewallRuleGroup_statusMessage, -- * FirewallRuleGroupAssociation FirewallRuleGroupAssociation (..), newFirewallRuleGroupAssociation, firewallRuleGroupAssociation_arn, firewallRuleGroupAssociation_creationTime, firewallRuleGroupAssociation_creatorRequestId, firewallRuleGroupAssociation_firewallRuleGroupId, firewallRuleGroupAssociation_id, firewallRuleGroupAssociation_managedOwnerName, firewallRuleGroupAssociation_modificationTime, firewallRuleGroupAssociation_mutationProtection, firewallRuleGroupAssociation_name, firewallRuleGroupAssociation_priority, firewallRuleGroupAssociation_status, firewallRuleGroupAssociation_statusMessage, firewallRuleGroupAssociation_vpcId, -- * FirewallRuleGroupMetadata FirewallRuleGroupMetadata (..), newFirewallRuleGroupMetadata, firewallRuleGroupMetadata_arn, firewallRuleGroupMetadata_creatorRequestId, firewallRuleGroupMetadata_id, firewallRuleGroupMetadata_name, firewallRuleGroupMetadata_ownerId, firewallRuleGroupMetadata_shareStatus, -- * IpAddressRequest IpAddressRequest (..), newIpAddressRequest, ipAddressRequest_ip, ipAddressRequest_subnetId, -- * IpAddressResponse IpAddressResponse (..), newIpAddressResponse, ipAddressResponse_creationTime, ipAddressResponse_ip, ipAddressResponse_ipId, ipAddressResponse_modificationTime, ipAddressResponse_status, ipAddressResponse_statusMessage, ipAddressResponse_subnetId, -- * IpAddressUpdate IpAddressUpdate (..), newIpAddressUpdate, ipAddressUpdate_ip, ipAddressUpdate_ipId, ipAddressUpdate_subnetId, -- * ResolverConfig ResolverConfig (..), newResolverConfig, resolverConfig_autodefinedReverse, resolverConfig_id, resolverConfig_ownerId, resolverConfig_resourceId, -- * ResolverDnssecConfig ResolverDnssecConfig (..), newResolverDnssecConfig, resolverDnssecConfig_id, resolverDnssecConfig_ownerId, resolverDnssecConfig_resourceId, resolverDnssecConfig_validationStatus, -- * ResolverEndpoint ResolverEndpoint (..), newResolverEndpoint, resolverEndpoint_arn, resolverEndpoint_creationTime, resolverEndpoint_creatorRequestId, resolverEndpoint_direction, resolverEndpoint_hostVPCId, resolverEndpoint_id, resolverEndpoint_ipAddressCount, resolverEndpoint_modificationTime, resolverEndpoint_name, resolverEndpoint_securityGroupIds, resolverEndpoint_status, resolverEndpoint_statusMessage, -- * ResolverQueryLogConfig ResolverQueryLogConfig (..), newResolverQueryLogConfig, resolverQueryLogConfig_arn, resolverQueryLogConfig_associationCount, resolverQueryLogConfig_creationTime, resolverQueryLogConfig_creatorRequestId, resolverQueryLogConfig_destinationArn, resolverQueryLogConfig_id, resolverQueryLogConfig_name, resolverQueryLogConfig_ownerId, resolverQueryLogConfig_shareStatus, resolverQueryLogConfig_status, -- * ResolverQueryLogConfigAssociation ResolverQueryLogConfigAssociation (..), newResolverQueryLogConfigAssociation, resolverQueryLogConfigAssociation_creationTime, resolverQueryLogConfigAssociation_error, resolverQueryLogConfigAssociation_errorMessage, resolverQueryLogConfigAssociation_id, resolverQueryLogConfigAssociation_resolverQueryLogConfigId, resolverQueryLogConfigAssociation_resourceId, resolverQueryLogConfigAssociation_status, -- * ResolverRule ResolverRule (..), newResolverRule, resolverRule_arn, resolverRule_creationTime, resolverRule_creatorRequestId, resolverRule_domainName, resolverRule_id, resolverRule_modificationTime, resolverRule_name, resolverRule_ownerId, resolverRule_resolverEndpointId, resolverRule_ruleType, resolverRule_shareStatus, resolverRule_status, resolverRule_statusMessage, resolverRule_targetIps, -- * ResolverRuleAssociation ResolverRuleAssociation (..), newResolverRuleAssociation, resolverRuleAssociation_id, resolverRuleAssociation_name, resolverRuleAssociation_resolverRuleId, resolverRuleAssociation_status, resolverRuleAssociation_statusMessage, resolverRuleAssociation_vPCId, -- * ResolverRuleConfig ResolverRuleConfig (..), newResolverRuleConfig, resolverRuleConfig_name, resolverRuleConfig_resolverEndpointId, resolverRuleConfig_targetIps, -- * Tag Tag (..), newTag, tag_key, tag_value, -- * TargetAddress TargetAddress (..), newTargetAddress, targetAddress_port, targetAddress_ip, ) where import qualified Amazonka.Core as Core import qualified Amazonka.Core.Lens.Internal as Lens import qualified Amazonka.Prelude as Prelude import Amazonka.Route53Resolver.Types.Action import Amazonka.Route53Resolver.Types.AutodefinedReverseFlag import Amazonka.Route53Resolver.Types.BlockOverrideDnsType import Amazonka.Route53Resolver.Types.BlockResponse import Amazonka.Route53Resolver.Types.Filter import Amazonka.Route53Resolver.Types.FirewallConfig import Amazonka.Route53Resolver.Types.FirewallDomainImportOperation import Amazonka.Route53Resolver.Types.FirewallDomainList import Amazonka.Route53Resolver.Types.FirewallDomainListMetadata import Amazonka.Route53Resolver.Types.FirewallDomainListStatus import Amazonka.Route53Resolver.Types.FirewallDomainUpdateOperation import Amazonka.Route53Resolver.Types.FirewallFailOpenStatus import Amazonka.Route53Resolver.Types.FirewallRule import Amazonka.Route53Resolver.Types.FirewallRuleGroup import Amazonka.Route53Resolver.Types.FirewallRuleGroupAssociation import Amazonka.Route53Resolver.Types.FirewallRuleGroupAssociationStatus import Amazonka.Route53Resolver.Types.FirewallRuleGroupMetadata import Amazonka.Route53Resolver.Types.FirewallRuleGroupStatus import Amazonka.Route53Resolver.Types.IpAddressRequest import Amazonka.Route53Resolver.Types.IpAddressResponse import Amazonka.Route53Resolver.Types.IpAddressStatus import Amazonka.Route53Resolver.Types.IpAddressUpdate import Amazonka.Route53Resolver.Types.MutationProtectionStatus import Amazonka.Route53Resolver.Types.ResolverAutodefinedReverseStatus import Amazonka.Route53Resolver.Types.ResolverConfig import Amazonka.Route53Resolver.Types.ResolverDNSSECValidationStatus import Amazonka.Route53Resolver.Types.ResolverDnssecConfig import Amazonka.Route53Resolver.Types.ResolverEndpoint import Amazonka.Route53Resolver.Types.ResolverEndpointDirection import Amazonka.Route53Resolver.Types.ResolverEndpointStatus import Amazonka.Route53Resolver.Types.ResolverQueryLogConfig import Amazonka.Route53Resolver.Types.ResolverQueryLogConfigAssociation import Amazonka.Route53Resolver.Types.ResolverQueryLogConfigAssociationError import Amazonka.Route53Resolver.Types.ResolverQueryLogConfigAssociationStatus import Amazonka.Route53Resolver.Types.ResolverQueryLogConfigStatus import Amazonka.Route53Resolver.Types.ResolverRule import Amazonka.Route53Resolver.Types.ResolverRuleAssociation import Amazonka.Route53Resolver.Types.ResolverRuleAssociationStatus import Amazonka.Route53Resolver.Types.ResolverRuleConfig import Amazonka.Route53Resolver.Types.ResolverRuleStatus import Amazonka.Route53Resolver.Types.RuleTypeOption import Amazonka.Route53Resolver.Types.ShareStatus import Amazonka.Route53Resolver.Types.SortOrder import Amazonka.Route53Resolver.Types.Tag import Amazonka.Route53Resolver.Types.TargetAddress import Amazonka.Route53Resolver.Types.Validation import qualified Amazonka.Sign.V4 as Sign -- | API version @2018-04-01@ of the Amazon Route 53 Resolver SDK configuration. defaultService :: Core.Service defaultService = Core.Service { Core.abbrev = "Route53Resolver", Core.signer = Sign.v4, Core.endpointPrefix = "route53resolver", Core.signingName = "route53resolver", Core.version = "2018-04-01", Core.s3AddressingStyle = Core.S3AddressingStyleAuto, Core.endpoint = Core.defaultEndpoint defaultService, Core.timeout = Prelude.Just 70, Core.check = Core.statusSuccess, Core.error = Core.parseJSONError "Route53Resolver", Core.retry = retry } where retry = Core.Exponential { Core.base = 5.0e-2, Core.growth = 2, Core.attempts = 5, Core.check = check } check e | Lens.has (Core.hasStatus 502) e = Prelude.Just "bad_gateway" | Lens.has (Core.hasStatus 504) e = Prelude.Just "gateway_timeout" | Lens.has (Core.hasStatus 500) e = Prelude.Just "general_server_error" | Lens.has (Core.hasStatus 509) e = Prelude.Just "limit_exceeded" | Lens.has ( Core.hasCode "RequestThrottledException" Prelude.. Core.hasStatus 400 ) e = Prelude.Just "request_throttled_exception" | Lens.has (Core.hasStatus 503) e = Prelude.Just "service_unavailable" | Lens.has ( Core.hasCode "ThrottledException" Prelude.. Core.hasStatus 400 ) e = Prelude.Just "throttled_exception" | Lens.has ( Core.hasCode "Throttling" Prelude.. Core.hasStatus 400 ) e = Prelude.Just "throttling" | Lens.has ( Core.hasCode "ThrottlingException" Prelude.. Core.hasStatus 400 ) e = Prelude.Just "throttling_exception" | Lens.has ( Core.hasCode "ProvisionedThroughputExceededException" Prelude.. Core.hasStatus 400 ) e = Prelude.Just "throughput_exceeded" | Lens.has (Core.hasStatus 429) e = Prelude.Just "too_many_requests" | Prelude.otherwise = Prelude.Nothing -- | The current account doesn\'t have the IAM permissions required to -- perform the specified Resolver operation. _AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _AccessDeniedException = Core._MatchServiceError defaultService "AccessDeniedException" _ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _ConflictException = Core._MatchServiceError defaultService "ConflictException" -- | We encountered an unknown error. Try again in a few minutes. _InternalServiceErrorException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _InternalServiceErrorException = Core._MatchServiceError defaultService "InternalServiceErrorException" -- | The value that you specified for @NextToken@ in a @List@ request isn\'t -- valid. _InvalidNextTokenException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _InvalidNextTokenException = Core._MatchServiceError defaultService "InvalidNextTokenException" -- | One or more parameters in this request are not valid. _InvalidParameterException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _InvalidParameterException = Core._MatchServiceError defaultService "InvalidParameterException" -- | The specified Resolver rule policy is invalid. _InvalidPolicyDocument :: (Core.AsError a) => Lens.Fold a Core.ServiceError _InvalidPolicyDocument = Core._MatchServiceError defaultService "InvalidPolicyDocument" -- | The request is invalid. _InvalidRequestException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _InvalidRequestException = Core._MatchServiceError defaultService "InvalidRequestException" -- | The specified tag is invalid. _InvalidTagException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _InvalidTagException = Core._MatchServiceError defaultService "InvalidTagException" -- | The request caused one or more limits to be exceeded. _LimitExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _LimitExceededException = Core._MatchServiceError defaultService "LimitExceededException" -- | The resource that you tried to create already exists. _ResourceExistsException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _ResourceExistsException = Core._MatchServiceError defaultService "ResourceExistsException" -- | The resource that you tried to update or delete is currently in use. _ResourceInUseException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _ResourceInUseException = Core._MatchServiceError defaultService "ResourceInUseException" -- | The specified resource doesn\'t exist. _ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _ResourceNotFoundException = Core._MatchServiceError defaultService "ResourceNotFoundException" -- | The specified resource isn\'t available. _ResourceUnavailableException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _ResourceUnavailableException = Core._MatchServiceError defaultService "ResourceUnavailableException" -- | The request was throttled. Try again in a few minutes. _ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _ThrottlingException = Core._MatchServiceError defaultService "ThrottlingException" -- | The specified resource doesn\'t exist. _UnknownResourceException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _UnknownResourceException = Core._MatchServiceError defaultService "UnknownResourceException" _ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError _ValidationException = Core._MatchServiceError defaultService "ValidationException"