{-# 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.ELB.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.ELB.Types
  ( -- * Service Configuration
    defaultService,

    -- * Errors
    _AccessPointNotFoundException,
    _CertificateNotFoundException,
    _DependencyThrottleException,
    _DuplicateAccessPointNameException,
    _DuplicateListenerException,
    _DuplicatePolicyNameException,
    _DuplicateTagKeysException,
    _InvalidConfigurationRequestException,
    _InvalidEndPointException,
    _InvalidSchemeException,
    _InvalidSecurityGroupException,
    _InvalidSubnetException,
    _ListenerNotFoundException,
    _LoadBalancerAttributeNotFoundException,
    _OperationNotPermittedException,
    _PolicyNotFoundException,
    _PolicyTypeNotFoundException,
    _SubnetNotFoundException,
    _TooManyAccessPointsException,
    _TooManyPoliciesException,
    _TooManyTagsException,
    _UnsupportedProtocolException,

    -- * Re-exported Types
    module Amazonka.ELB.Internal,

    -- * AccessLog
    AccessLog (..),
    newAccessLog,
    accessLog_emitInterval,
    accessLog_s3BucketName,
    accessLog_s3BucketPrefix,
    accessLog_enabled,

    -- * AdditionalAttribute
    AdditionalAttribute (..),
    newAdditionalAttribute,
    additionalAttribute_key,
    additionalAttribute_value,

    -- * AppCookieStickinessPolicy
    AppCookieStickinessPolicy (..),
    newAppCookieStickinessPolicy,
    appCookieStickinessPolicy_cookieName,
    appCookieStickinessPolicy_policyName,

    -- * BackendServerDescription
    BackendServerDescription (..),
    newBackendServerDescription,
    backendServerDescription_instancePort,
    backendServerDescription_policyNames,

    -- * ConnectionDraining
    ConnectionDraining (..),
    newConnectionDraining,
    connectionDraining_timeout,
    connectionDraining_enabled,

    -- * ConnectionSettings
    ConnectionSettings (..),
    newConnectionSettings,
    connectionSettings_idleTimeout,

    -- * CrossZoneLoadBalancing
    CrossZoneLoadBalancing (..),
    newCrossZoneLoadBalancing,
    crossZoneLoadBalancing_enabled,

    -- * HealthCheck
    HealthCheck (..),
    newHealthCheck,
    healthCheck_target,
    healthCheck_interval,
    healthCheck_timeout,
    healthCheck_unhealthyThreshold,
    healthCheck_healthyThreshold,

    -- * Instance
    Instance (..),
    newInstance,
    instance_instanceId,

    -- * InstanceState
    InstanceState (..),
    newInstanceState,
    instanceState_description,
    instanceState_instanceId,
    instanceState_reasonCode,
    instanceState_state,

    -- * LBCookieStickinessPolicy
    LBCookieStickinessPolicy (..),
    newLBCookieStickinessPolicy,
    lBCookieStickinessPolicy_cookieExpirationPeriod,
    lBCookieStickinessPolicy_policyName,

    -- * Limit
    Limit (..),
    newLimit,
    limit_max,
    limit_name,

    -- * Listener
    Listener (..),
    newListener,
    listener_instanceProtocol,
    listener_sSLCertificateId,
    listener_protocol,
    listener_loadBalancerPort,
    listener_instancePort,

    -- * ListenerDescription
    ListenerDescription (..),
    newListenerDescription,
    listenerDescription_listener,
    listenerDescription_policyNames,

    -- * LoadBalancerAttributes
    LoadBalancerAttributes (..),
    newLoadBalancerAttributes,
    loadBalancerAttributes_accessLog,
    loadBalancerAttributes_additionalAttributes,
    loadBalancerAttributes_connectionDraining,
    loadBalancerAttributes_connectionSettings,
    loadBalancerAttributes_crossZoneLoadBalancing,

    -- * LoadBalancerDescription
    LoadBalancerDescription (..),
    newLoadBalancerDescription,
    loadBalancerDescription_availabilityZones,
    loadBalancerDescription_backendServerDescriptions,
    loadBalancerDescription_canonicalHostedZoneName,
    loadBalancerDescription_canonicalHostedZoneNameID,
    loadBalancerDescription_createdTime,
    loadBalancerDescription_dNSName,
    loadBalancerDescription_healthCheck,
    loadBalancerDescription_instances,
    loadBalancerDescription_listenerDescriptions,
    loadBalancerDescription_loadBalancerName,
    loadBalancerDescription_policies,
    loadBalancerDescription_scheme,
    loadBalancerDescription_securityGroups,
    loadBalancerDescription_sourceSecurityGroup,
    loadBalancerDescription_subnets,
    loadBalancerDescription_vPCId,

    -- * Policies
    Policies (..),
    newPolicies,
    policies_appCookieStickinessPolicies,
    policies_lBCookieStickinessPolicies,
    policies_otherPolicies,

    -- * PolicyAttribute
    PolicyAttribute (..),
    newPolicyAttribute,
    policyAttribute_attributeName,
    policyAttribute_attributeValue,

    -- * PolicyAttributeDescription
    PolicyAttributeDescription (..),
    newPolicyAttributeDescription,
    policyAttributeDescription_attributeName,
    policyAttributeDescription_attributeValue,

    -- * PolicyAttributeTypeDescription
    PolicyAttributeTypeDescription (..),
    newPolicyAttributeTypeDescription,
    policyAttributeTypeDescription_attributeName,
    policyAttributeTypeDescription_attributeType,
    policyAttributeTypeDescription_cardinality,
    policyAttributeTypeDescription_defaultValue,
    policyAttributeTypeDescription_description,

    -- * PolicyDescription
    PolicyDescription (..),
    newPolicyDescription,
    policyDescription_policyAttributeDescriptions,
    policyDescription_policyName,
    policyDescription_policyTypeName,

    -- * PolicyTypeDescription
    PolicyTypeDescription (..),
    newPolicyTypeDescription,
    policyTypeDescription_description,
    policyTypeDescription_policyAttributeTypeDescriptions,
    policyTypeDescription_policyTypeName,

    -- * SourceSecurityGroup
    SourceSecurityGroup (..),
    newSourceSecurityGroup,
    sourceSecurityGroup_groupName,
    sourceSecurityGroup_ownerAlias,

    -- * Tag
    Tag (..),
    newTag,
    tag_value,
    tag_key,

    -- * TagDescription
    TagDescription (..),
    newTagDescription,
    tagDescription_loadBalancerName,
    tagDescription_tags,

    -- * TagKeyOnly
    TagKeyOnly (..),
    newTagKeyOnly,
    tagKeyOnly_key,
  )
where

import qualified Amazonka.Core as Core
import qualified Amazonka.Core.Lens.Internal as Lens
import Amazonka.ELB.Internal
import Amazonka.ELB.Types.AccessLog
import Amazonka.ELB.Types.AdditionalAttribute
import Amazonka.ELB.Types.AppCookieStickinessPolicy
import Amazonka.ELB.Types.BackendServerDescription
import Amazonka.ELB.Types.ConnectionDraining
import Amazonka.ELB.Types.ConnectionSettings
import Amazonka.ELB.Types.CrossZoneLoadBalancing
import Amazonka.ELB.Types.HealthCheck
import Amazonka.ELB.Types.Instance
import Amazonka.ELB.Types.InstanceState
import Amazonka.ELB.Types.LBCookieStickinessPolicy
import Amazonka.ELB.Types.Limit
import Amazonka.ELB.Types.Listener
import Amazonka.ELB.Types.ListenerDescription
import Amazonka.ELB.Types.LoadBalancerAttributes
import Amazonka.ELB.Types.LoadBalancerDescription
import Amazonka.ELB.Types.Policies
import Amazonka.ELB.Types.PolicyAttribute
import Amazonka.ELB.Types.PolicyAttributeDescription
import Amazonka.ELB.Types.PolicyAttributeTypeDescription
import Amazonka.ELB.Types.PolicyDescription
import Amazonka.ELB.Types.PolicyTypeDescription
import Amazonka.ELB.Types.SourceSecurityGroup
import Amazonka.ELB.Types.Tag
import Amazonka.ELB.Types.TagDescription
import Amazonka.ELB.Types.TagKeyOnly
import qualified Amazonka.Prelude as Prelude
import qualified Amazonka.Sign.V4 as Sign

-- | API version @2012-06-01@ of the Amazon Elastic Load Balancing SDK configuration.
defaultService :: Core.Service
defaultService :: Service
defaultService =
  Core.Service
    { $sel:abbrev:Service :: Abbrev
Core.abbrev = Abbrev
"ELB",
      $sel:signer:Service :: Signer
Core.signer = Signer
Sign.v4,
      $sel:endpointPrefix:Service :: ByteString
Core.endpointPrefix = ByteString
"elasticloadbalancing",
      $sel:signingName:Service :: ByteString
Core.signingName = ByteString
"elasticloadbalancing",
      $sel:version:Service :: ByteString
Core.version = ByteString
"2012-06-01",
      $sel:s3AddressingStyle:Service :: S3AddressingStyle
Core.s3AddressingStyle = S3AddressingStyle
Core.S3AddressingStyleAuto,
      $sel:endpoint:Service :: Region -> Endpoint
Core.endpoint = Service -> Region -> Endpoint
Core.defaultEndpoint Service
defaultService,
      $sel:timeout:Service :: Maybe Seconds
Core.timeout = forall a. a -> Maybe a
Prelude.Just Seconds
70,
      $sel:check:Service :: Status -> Bool
Core.check = Status -> Bool
Core.statusSuccess,
      $sel:error:Service :: Status -> [Header] -> ByteStringLazy -> Error
Core.error = Abbrev -> Status -> [Header] -> ByteStringLazy -> Error
Core.parseXMLError Abbrev
"ELB",
      $sel:retry:Service :: Retry
Core.retry = Retry
retry
    }
  where
    retry :: Retry
retry =
      Core.Exponential
        { $sel:base:Exponential :: Double
Core.base = Double
5.0e-2,
          $sel:growth:Exponential :: Int
Core.growth = Int
2,
          $sel:attempts:Exponential :: Int
Core.attempts = Int
5,
          $sel:check:Exponential :: ServiceError -> Maybe Text
Core.check = forall {a}. IsString a => ServiceError -> Maybe a
check
        }
    check :: ServiceError -> Maybe a
check ServiceError
e
      | forall s a. Getting Any s a -> s -> Bool
Lens.has (forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
502) ServiceError
e =
          forall a. a -> Maybe a
Prelude.Just a
"bad_gateway"
      | forall s a. Getting Any s a -> s -> Bool
Lens.has (forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
504) ServiceError
e =
          forall a. a -> Maybe a
Prelude.Just a
"gateway_timeout"
      | forall s a. Getting Any s a -> s -> Bool
Lens.has (forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
500) ServiceError
e =
          forall a. a -> Maybe a
Prelude.Just a
"general_server_error"
      | forall s a. Getting Any s a -> s -> Bool
Lens.has (forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
509) ServiceError
e =
          forall a. a -> Maybe a
Prelude.Just a
"limit_exceeded"
      | forall s a. Getting Any s a -> s -> Bool
Lens.has
          ( forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
ErrorCode -> Optic' p f ServiceError ServiceError
Core.hasCode ErrorCode
"RequestThrottledException"
              forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400
          )
          ServiceError
e =
          forall a. a -> Maybe a
Prelude.Just a
"request_throttled_exception"
      | forall s a. Getting Any s a -> s -> Bool
Lens.has (forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
503) ServiceError
e =
          forall a. a -> Maybe a
Prelude.Just a
"service_unavailable"
      | forall s a. Getting Any s a -> s -> Bool
Lens.has
          ( forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
ErrorCode -> Optic' p f ServiceError ServiceError
Core.hasCode ErrorCode
"ThrottledException"
              forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400
          )
          ServiceError
e =
          forall a. a -> Maybe a
Prelude.Just a
"throttled_exception"
      | forall s a. Getting Any s a -> s -> Bool
Lens.has
          ( forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
ErrorCode -> Optic' p f ServiceError ServiceError
Core.hasCode ErrorCode
"Throttling"
              forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400
          )
          ServiceError
e =
          forall a. a -> Maybe a
Prelude.Just a
"throttling"
      | forall s a. Getting Any s a -> s -> Bool
Lens.has
          ( forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
ErrorCode -> Optic' p f ServiceError ServiceError
Core.hasCode ErrorCode
"ThrottlingException"
              forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400
          )
          ServiceError
e =
          forall a. a -> Maybe a
Prelude.Just a
"throttling_exception"
      | forall s a. Getting Any s a -> s -> Bool
Lens.has
          ( forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
ErrorCode -> Optic' p f ServiceError ServiceError
Core.hasCode
              ErrorCode
"ProvisionedThroughputExceededException"
              forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400
          )
          ServiceError
e =
          forall a. a -> Maybe a
Prelude.Just a
"throughput_exceeded"
      | forall s a. Getting Any s a -> s -> Bool
Lens.has (forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
429) ServiceError
e =
          forall a. a -> Maybe a
Prelude.Just a
"too_many_requests"
      | Bool
Prelude.otherwise = forall a. Maybe a
Prelude.Nothing

-- | The specified load balancer does not exist.
_AccessPointNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_AccessPointNotFoundException :: forall a. AsError a => Fold a ServiceError
_AccessPointNotFoundException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"LoadBalancerNotFound"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | The specified ARN does not refer to a valid SSL certificate in AWS
-- Identity and Access Management (IAM) or AWS Certificate Manager (ACM).
-- Note that if you recently uploaded the certificate to IAM, this error
-- might indicate that the certificate is not fully available yet.
_CertificateNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_CertificateNotFoundException :: forall a. AsError a => Fold a ServiceError
_CertificateNotFoundException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"CertificateNotFound"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | A request made by Elastic Load Balancing to another service exceeds the
-- maximum request rate permitted for your account.
_DependencyThrottleException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_DependencyThrottleException :: forall a. AsError a => Fold a ServiceError
_DependencyThrottleException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"DependencyThrottle"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | The specified load balancer name already exists for this account.
_DuplicateAccessPointNameException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_DuplicateAccessPointNameException :: forall a. AsError a => Fold a ServiceError
_DuplicateAccessPointNameException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"DuplicateLoadBalancerName"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | A listener already exists for the specified load balancer name and port,
-- but with a different instance port, protocol, or SSL certificate.
_DuplicateListenerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_DuplicateListenerException :: forall a. AsError a => Fold a ServiceError
_DuplicateListenerException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"DuplicateListener"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | A policy with the specified name already exists for this load balancer.
_DuplicatePolicyNameException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_DuplicatePolicyNameException :: forall a. AsError a => Fold a ServiceError
_DuplicatePolicyNameException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"DuplicatePolicyName"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | A tag key was specified more than once.
_DuplicateTagKeysException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_DuplicateTagKeysException :: forall a. AsError a => Fold a ServiceError
_DuplicateTagKeysException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"DuplicateTagKeys"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | The requested configuration change is not valid.
_InvalidConfigurationRequestException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_InvalidConfigurationRequestException :: forall a. AsError a => Fold a ServiceError
_InvalidConfigurationRequestException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"InvalidConfigurationRequest"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
409

-- | The specified endpoint is not valid.
_InvalidEndPointException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_InvalidEndPointException :: forall a. AsError a => Fold a ServiceError
_InvalidEndPointException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"InvalidInstance"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | The specified value for the schema is not valid. You can only specify a
-- scheme for load balancers in a VPC.
_InvalidSchemeException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_InvalidSchemeException :: forall a. AsError a => Fold a ServiceError
_InvalidSchemeException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"InvalidScheme"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | One or more of the specified security groups do not exist.
_InvalidSecurityGroupException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_InvalidSecurityGroupException :: forall a. AsError a => Fold a ServiceError
_InvalidSecurityGroupException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"InvalidSecurityGroup"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | The specified VPC has no associated Internet gateway.
_InvalidSubnetException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_InvalidSubnetException :: forall a. AsError a => Fold a ServiceError
_InvalidSubnetException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"InvalidSubnet"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | The load balancer does not have a listener configured at the specified
-- port.
_ListenerNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_ListenerNotFoundException :: forall a. AsError a => Fold a ServiceError
_ListenerNotFoundException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"ListenerNotFound"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | The specified load balancer attribute does not exist.
_LoadBalancerAttributeNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_LoadBalancerAttributeNotFoundException :: forall a. AsError a => Fold a ServiceError
_LoadBalancerAttributeNotFoundException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"LoadBalancerAttributeNotFound"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | This operation is not allowed.
_OperationNotPermittedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_OperationNotPermittedException :: forall a. AsError a => Fold a ServiceError
_OperationNotPermittedException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"OperationNotPermitted"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | One or more of the specified policies do not exist.
_PolicyNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_PolicyNotFoundException :: forall a. AsError a => Fold a ServiceError
_PolicyNotFoundException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"PolicyNotFound"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | One or more of the specified policy types do not exist.
_PolicyTypeNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_PolicyTypeNotFoundException :: forall a. AsError a => Fold a ServiceError
_PolicyTypeNotFoundException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"PolicyTypeNotFound"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | One or more of the specified subnets do not exist.
_SubnetNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_SubnetNotFoundException :: forall a. AsError a => Fold a ServiceError
_SubnetNotFoundException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"SubnetNotFound"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | The quota for the number of load balancers has been reached.
_TooManyAccessPointsException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_TooManyAccessPointsException :: forall a. AsError a => Fold a ServiceError
_TooManyAccessPointsException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"TooManyLoadBalancers"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | The quota for the number of policies for this load balancer has been
-- reached.
_TooManyPoliciesException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_TooManyPoliciesException :: forall a. AsError a => Fold a ServiceError
_TooManyPoliciesException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"TooManyPolicies"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | The quota for the number of tags that can be assigned to a load balancer
-- has been reached.
_TooManyTagsException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_TooManyTagsException :: forall a. AsError a => Fold a ServiceError
_TooManyTagsException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"TooManyTags"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400

-- | The specified protocol or signature version is not supported.
_UnsupportedProtocolException :: (Core.AsError a) => Lens.Fold a Core.ServiceError
_UnsupportedProtocolException :: forall a. AsError a => Fold a ServiceError
_UnsupportedProtocolException =
  forall a. AsError a => Service -> ErrorCode -> Fold a ServiceError
Core._MatchServiceError
    Service
defaultService
    ErrorCode
"UnsupportedProtocol"
    forall b c a. (b -> c) -> (a -> b) -> a -> c
Prelude.. forall (f :: * -> *) (p :: * -> * -> *).
(Applicative f, Choice p) =>
Int -> Optic' p f ServiceError ServiceError
Core.hasStatus Int
400