// Code generated by smithy-go-codegen DO NOT EDIT.

package types

import (
	"fmt"
	smithy "github.com/aws/smithy-go"
)

// The specified allocation ID does not exist.
type AllocationIdNotFoundException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *AllocationIdNotFoundException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *AllocationIdNotFoundException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *AllocationIdNotFoundException) ErrorCode() string             { return "AllocationIdNotFound" }
func (e *AllocationIdNotFoundException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// The specified ALPN policy is not supported.
type ALPNPolicyNotSupportedException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *ALPNPolicyNotSupportedException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *ALPNPolicyNotSupportedException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *ALPNPolicyNotSupportedException) ErrorCode() string             { return "ALPNPolicyNotFound" }
func (e *ALPNPolicyNotSupportedException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// The specified Availability Zone is not supported.
type AvailabilityZoneNotSupportedException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *AvailabilityZoneNotSupportedException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *AvailabilityZoneNotSupportedException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *AvailabilityZoneNotSupportedException) ErrorCode() string {
	return "AvailabilityZoneNotSupported"
}
func (e *AvailabilityZoneNotSupportedException) ErrorFault() smithy.ErrorFault {
	return smithy.FaultClient
}

// The specified certificate does not exist.
type CertificateNotFoundException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *CertificateNotFoundException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *CertificateNotFoundException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *CertificateNotFoundException) ErrorCode() string             { return "CertificateNotFound" }
func (e *CertificateNotFoundException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// A listener with the specified port already exists.
type DuplicateListenerException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *DuplicateListenerException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *DuplicateListenerException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *DuplicateListenerException) ErrorCode() string             { return "DuplicateListener" }
func (e *DuplicateListenerException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// A load balancer with the specified name already exists.
type DuplicateLoadBalancerNameException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *DuplicateLoadBalancerNameException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *DuplicateLoadBalancerNameException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *DuplicateLoadBalancerNameException) ErrorCode() string { return "DuplicateLoadBalancerName" }
func (e *DuplicateLoadBalancerNameException) ErrorFault() smithy.ErrorFault {
	return smithy.FaultClient
}

// A tag key was specified more than once.
type DuplicateTagKeysException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *DuplicateTagKeysException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *DuplicateTagKeysException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *DuplicateTagKeysException) ErrorCode() string             { return "DuplicateTagKeys" }
func (e *DuplicateTagKeysException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// A target group with the specified name already exists.
type DuplicateTargetGroupNameException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *DuplicateTargetGroupNameException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *DuplicateTargetGroupNameException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *DuplicateTargetGroupNameException) ErrorCode() string             { return "DuplicateTargetGroupName" }
func (e *DuplicateTargetGroupNameException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// The health of the specified targets could not be retrieved due to an internal
// error.
type HealthUnavailableException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *HealthUnavailableException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *HealthUnavailableException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *HealthUnavailableException) ErrorCode() string             { return "HealthUnavailable" }
func (e *HealthUnavailableException) ErrorFault() smithy.ErrorFault { return smithy.FaultServer }

// The specified configuration is not valid with this protocol.
type IncompatibleProtocolsException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *IncompatibleProtocolsException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *IncompatibleProtocolsException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *IncompatibleProtocolsException) ErrorCode() string             { return "IncompatibleProtocols" }
func (e *IncompatibleProtocolsException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// The requested configuration is not valid.
type InvalidConfigurationRequestException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *InvalidConfigurationRequestException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *InvalidConfigurationRequestException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *InvalidConfigurationRequestException) ErrorCode() string {
	return "InvalidConfigurationRequest"
}
func (e *InvalidConfigurationRequestException) ErrorFault() smithy.ErrorFault {
	return smithy.FaultClient
}

// The requested action is not valid.
type InvalidLoadBalancerActionException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *InvalidLoadBalancerActionException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *InvalidLoadBalancerActionException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *InvalidLoadBalancerActionException) ErrorCode() string { return "InvalidLoadBalancerAction" }
func (e *InvalidLoadBalancerActionException) ErrorFault() smithy.ErrorFault {
	return smithy.FaultClient
}

// The requested scheme is not valid.
type InvalidSchemeException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *InvalidSchemeException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *InvalidSchemeException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *InvalidSchemeException) ErrorCode() string             { return "InvalidScheme" }
func (e *InvalidSchemeException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// The specified security group does not exist.
type InvalidSecurityGroupException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *InvalidSecurityGroupException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *InvalidSecurityGroupException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *InvalidSecurityGroupException) ErrorCode() string             { return "InvalidSecurityGroup" }
func (e *InvalidSecurityGroupException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// The specified subnet is out of available addresses.
type InvalidSubnetException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *InvalidSubnetException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *InvalidSubnetException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *InvalidSubnetException) ErrorCode() string             { return "InvalidSubnet" }
func (e *InvalidSubnetException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// The specified target does not exist, is not in the same VPC as the target group,
// or has an unsupported instance type.
type InvalidTargetException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *InvalidTargetException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *InvalidTargetException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *InvalidTargetException) ErrorCode() string             { return "InvalidTarget" }
func (e *InvalidTargetException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// The specified listener does not exist.
type ListenerNotFoundException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *ListenerNotFoundException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *ListenerNotFoundException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *ListenerNotFoundException) ErrorCode() string             { return "ListenerNotFound" }
func (e *ListenerNotFoundException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// The specified load balancer does not exist.
type LoadBalancerNotFoundException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *LoadBalancerNotFoundException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *LoadBalancerNotFoundException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *LoadBalancerNotFoundException) ErrorCode() string             { return "LoadBalancerNotFound" }
func (e *LoadBalancerNotFoundException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// This operation is not allowed.
type OperationNotPermittedException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *OperationNotPermittedException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *OperationNotPermittedException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *OperationNotPermittedException) ErrorCode() string             { return "OperationNotPermitted" }
func (e *OperationNotPermittedException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// The specified priority is in use.
type PriorityInUseException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *PriorityInUseException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *PriorityInUseException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *PriorityInUseException) ErrorCode() string             { return "PriorityInUse" }
func (e *PriorityInUseException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// A specified resource is in use.
type ResourceInUseException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *ResourceInUseException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *ResourceInUseException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *ResourceInUseException) ErrorCode() string             { return "ResourceInUse" }
func (e *ResourceInUseException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// The specified rule does not exist.
type RuleNotFoundException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *RuleNotFoundException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *RuleNotFoundException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *RuleNotFoundException) ErrorCode() string             { return "RuleNotFound" }
func (e *RuleNotFoundException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// The specified SSL policy does not exist.
type SSLPolicyNotFoundException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *SSLPolicyNotFoundException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *SSLPolicyNotFoundException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *SSLPolicyNotFoundException) ErrorCode() string             { return "SSLPolicyNotFound" }
func (e *SSLPolicyNotFoundException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// The specified subnet does not exist.
type SubnetNotFoundException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *SubnetNotFoundException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *SubnetNotFoundException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *SubnetNotFoundException) ErrorCode() string             { return "SubnetNotFound" }
func (e *SubnetNotFoundException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// You've reached the limit on the number of load balancers per target group.
type TargetGroupAssociationLimitException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *TargetGroupAssociationLimitException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *TargetGroupAssociationLimitException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *TargetGroupAssociationLimitException) ErrorCode() string {
	return "TargetGroupAssociationLimit"
}
func (e *TargetGroupAssociationLimitException) ErrorFault() smithy.ErrorFault {
	return smithy.FaultClient
}

// The specified target group does not exist.
type TargetGroupNotFoundException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *TargetGroupNotFoundException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *TargetGroupNotFoundException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *TargetGroupNotFoundException) ErrorCode() string             { return "TargetGroupNotFound" }
func (e *TargetGroupNotFoundException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// You've reached the limit on the number of actions per rule.
type TooManyActionsException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *TooManyActionsException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *TooManyActionsException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *TooManyActionsException) ErrorCode() string             { return "TooManyActions" }
func (e *TooManyActionsException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// You've reached the limit on the number of certificates per load balancer.
type TooManyCertificatesException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *TooManyCertificatesException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *TooManyCertificatesException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *TooManyCertificatesException) ErrorCode() string             { return "TooManyCertificates" }
func (e *TooManyCertificatesException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// You've reached the limit on the number of listeners per load balancer.
type TooManyListenersException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *TooManyListenersException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *TooManyListenersException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *TooManyListenersException) ErrorCode() string             { return "TooManyListeners" }
func (e *TooManyListenersException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// You've reached the limit on the number of load balancers for your Amazon Web
// Services account.
type TooManyLoadBalancersException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *TooManyLoadBalancersException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *TooManyLoadBalancersException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *TooManyLoadBalancersException) ErrorCode() string             { return "TooManyLoadBalancers" }
func (e *TooManyLoadBalancersException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// You've reached the limit on the number of times a target can be registered with
// a load balancer.
type TooManyRegistrationsForTargetIdException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *TooManyRegistrationsForTargetIdException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *TooManyRegistrationsForTargetIdException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *TooManyRegistrationsForTargetIdException) ErrorCode() string {
	return "TooManyRegistrationsForTargetId"
}
func (e *TooManyRegistrationsForTargetIdException) ErrorFault() smithy.ErrorFault {
	return smithy.FaultClient
}

// You've reached the limit on the number of rules per load balancer.
type TooManyRulesException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *TooManyRulesException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *TooManyRulesException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *TooManyRulesException) ErrorCode() string             { return "TooManyRules" }
func (e *TooManyRulesException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// You've reached the limit on the number of tags per load balancer.
type TooManyTagsException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *TooManyTagsException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *TooManyTagsException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *TooManyTagsException) ErrorCode() string             { return "TooManyTags" }
func (e *TooManyTagsException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// You've reached the limit on the number of target groups for your Amazon Web
// Services account.
type TooManyTargetGroupsException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *TooManyTargetGroupsException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *TooManyTargetGroupsException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *TooManyTargetGroupsException) ErrorCode() string             { return "TooManyTargetGroups" }
func (e *TooManyTargetGroupsException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// You've reached the limit on the number of targets.
type TooManyTargetsException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *TooManyTargetsException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *TooManyTargetsException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *TooManyTargetsException) ErrorCode() string             { return "TooManyTargets" }
func (e *TooManyTargetsException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }

// You've reached the limit on the number of unique target groups per load balancer
// across all listeners. If a target group is used by multiple actions for a load
// balancer, it is counted as only one use.
type TooManyUniqueTargetGroupsPerLoadBalancerException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *TooManyUniqueTargetGroupsPerLoadBalancerException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *TooManyUniqueTargetGroupsPerLoadBalancerException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *TooManyUniqueTargetGroupsPerLoadBalancerException) ErrorCode() string {
	return "TooManyUniqueTargetGroupsPerLoadBalancer"
}
func (e *TooManyUniqueTargetGroupsPerLoadBalancerException) ErrorFault() smithy.ErrorFault {
	return smithy.FaultClient
}

// The specified protocol is not supported.
type UnsupportedProtocolException struct {
	Message *string

	noSmithyDocumentSerde
}

func (e *UnsupportedProtocolException) Error() string {
	return fmt.Sprintf("%s: %s", e.ErrorCode(), e.ErrorMessage())
}
func (e *UnsupportedProtocolException) ErrorMessage() string {
	if e.Message == nil {
		return ""
	}
	return *e.Message
}
func (e *UnsupportedProtocolException) ErrorCode() string             { return "UnsupportedProtocol" }
func (e *UnsupportedProtocolException) ErrorFault() smithy.ErrorFault { return smithy.FaultClient }
