2019-09-27 21:51:53 +00:00
// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
package elbv2
import (
"fmt"
"time"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/awsutil"
"github.com/aws/aws-sdk-go/aws/request"
"github.com/aws/aws-sdk-go/private/protocol"
"github.com/aws/aws-sdk-go/private/protocol/query"
)
const opAddListenerCertificates = "AddListenerCertificates"
// AddListenerCertificatesRequest generates a "aws/request.Request" representing the
// client's request for the AddListenerCertificates operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See AddListenerCertificates for more information on using the AddListenerCertificates
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the AddListenerCertificatesRequest method.
// req, resp := client.AddListenerCertificatesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/AddListenerCertificates
func ( c * ELBV2 ) AddListenerCertificatesRequest ( input * AddListenerCertificatesInput ) ( req * request . Request , output * AddListenerCertificatesOutput ) {
op := & request . Operation {
Name : opAddListenerCertificates ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & AddListenerCertificatesInput { }
}
output = & AddListenerCertificatesOutput { }
req = c . newRequest ( op , input , output )
return
}
// AddListenerCertificates API operation for Elastic Load Balancing.
//
2019-12-12 01:27:03 +00:00
// Adds the specified SSL server certificate to the certificate list for the
// specified HTTPS or TLS listener.
2019-09-27 21:51:53 +00:00
//
2019-12-12 01:27:03 +00:00
// If the certificate in already in the certificate list, the call is successful
// but the certificate is not added again.
2019-09-27 21:51:53 +00:00
//
2021-07-02 08:43:15 +00:00
// For more information, see HTTPS listeners (https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html)
// in the Application Load Balancers Guide or TLS listeners (https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html)
// in the Network Load Balancers Guide.
2019-09-27 21:51:53 +00:00
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation AddListenerCertificates for usage and error information.
//
// Returned Error Codes:
// * ErrCodeListenerNotFoundException "ListenerNotFound"
// The specified listener does not exist.
//
// * ErrCodeTooManyCertificatesException "TooManyCertificates"
// You've reached the limit on the number of certificates per load balancer.
//
// * ErrCodeCertificateNotFoundException "CertificateNotFound"
// The specified certificate does not exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/AddListenerCertificates
func ( c * ELBV2 ) AddListenerCertificates ( input * AddListenerCertificatesInput ) ( * AddListenerCertificatesOutput , error ) {
req , out := c . AddListenerCertificatesRequest ( input )
return out , req . Send ( )
}
// AddListenerCertificatesWithContext is the same as AddListenerCertificates with the addition of
// the ability to pass a context and additional request options.
//
// See AddListenerCertificates for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) AddListenerCertificatesWithContext ( ctx aws . Context , input * AddListenerCertificatesInput , opts ... request . Option ) ( * AddListenerCertificatesOutput , error ) {
req , out := c . AddListenerCertificatesRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opAddTags = "AddTags"
// AddTagsRequest generates a "aws/request.Request" representing the
// client's request for the AddTags operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See AddTags for more information on using the AddTags
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the AddTagsRequest method.
// req, resp := client.AddTagsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/AddTags
func ( c * ELBV2 ) AddTagsRequest ( input * AddTagsInput ) ( req * request . Request , output * AddTagsOutput ) {
op := & request . Operation {
Name : opAddTags ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & AddTagsInput { }
}
output = & AddTagsOutput { }
req = c . newRequest ( op , input , output )
req . Handlers . Unmarshal . Swap ( query . UnmarshalHandler . Name , protocol . UnmarshalDiscardBodyHandler )
return
}
// AddTags API operation for Elastic Load Balancing.
//
// Adds the specified tags to the specified Elastic Load Balancing resource.
2021-07-02 08:43:15 +00:00
// You can tag your Application Load Balancers, Network Load Balancers, Gateway
// Load Balancers, target groups, listeners, and rules.
2019-09-27 21:51:53 +00:00
//
// Each tag consists of a key and an optional value. If a resource already has
// a tag with the same key, AddTags updates its value.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation AddTags for usage and error information.
//
// Returned Error Codes:
// * ErrCodeDuplicateTagKeysException "DuplicateTagKeys"
// A tag key was specified more than once.
//
// * ErrCodeTooManyTagsException "TooManyTags"
// You've reached the limit on the number of tags per load balancer.
//
// * ErrCodeLoadBalancerNotFoundException "LoadBalancerNotFound"
// The specified load balancer does not exist.
//
// * ErrCodeTargetGroupNotFoundException "TargetGroupNotFound"
// The specified target group does not exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/AddTags
func ( c * ELBV2 ) AddTags ( input * AddTagsInput ) ( * AddTagsOutput , error ) {
req , out := c . AddTagsRequest ( input )
return out , req . Send ( )
}
// AddTagsWithContext is the same as AddTags with the addition of
// the ability to pass a context and additional request options.
//
// See AddTags for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) AddTagsWithContext ( ctx aws . Context , input * AddTagsInput , opts ... request . Option ) ( * AddTagsOutput , error ) {
req , out := c . AddTagsRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opCreateListener = "CreateListener"
// CreateListenerRequest generates a "aws/request.Request" representing the
// client's request for the CreateListener operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateListener for more information on using the CreateListener
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the CreateListenerRequest method.
// req, resp := client.CreateListenerRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateListener
func ( c * ELBV2 ) CreateListenerRequest ( input * CreateListenerInput ) ( req * request . Request , output * CreateListenerOutput ) {
op := & request . Operation {
Name : opCreateListener ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & CreateListenerInput { }
}
output = & CreateListenerOutput { }
req = c . newRequest ( op , input , output )
return
}
// CreateListener API operation for Elastic Load Balancing.
//
2021-07-02 08:43:15 +00:00
// Creates a listener for the specified Application Load Balancer, Network Load
// Balancer, or Gateway Load Balancer.
2019-09-27 21:51:53 +00:00
//
2021-07-02 08:43:15 +00:00
// For more information, see the following:
//
// * Listeners for your Application Load Balancers (https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html)
//
// * Listeners for your Network Load Balancers (https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-listeners.html)
//
// * Listeners for your Gateway Load Balancers (https://docs.aws.amazon.com/elasticloadbalancing/latest/gateway/gateway-listeners.html)
2019-09-27 21:51:53 +00:00
//
// This operation is idempotent, which means that it completes at most one time.
// If you attempt to create multiple listeners with the same settings, each
// call succeeds.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation CreateListener for usage and error information.
//
// Returned Error Codes:
// * ErrCodeDuplicateListenerException "DuplicateListener"
// A listener with the specified port already exists.
//
// * ErrCodeTooManyListenersException "TooManyListeners"
// You've reached the limit on the number of listeners per load balancer.
//
// * ErrCodeTooManyCertificatesException "TooManyCertificates"
// You've reached the limit on the number of certificates per load balancer.
//
// * ErrCodeLoadBalancerNotFoundException "LoadBalancerNotFound"
// The specified load balancer does not exist.
//
// * ErrCodeTargetGroupNotFoundException "TargetGroupNotFound"
// The specified target group does not exist.
//
// * ErrCodeTargetGroupAssociationLimitException "TargetGroupAssociationLimit"
// You've reached the limit on the number of load balancers per target group.
//
// * ErrCodeInvalidConfigurationRequestException "InvalidConfigurationRequest"
// The requested configuration is not valid.
//
// * ErrCodeIncompatibleProtocolsException "IncompatibleProtocols"
// The specified configuration is not valid with this protocol.
//
// * ErrCodeSSLPolicyNotFoundException "SSLPolicyNotFound"
// The specified SSL policy does not exist.
//
// * ErrCodeCertificateNotFoundException "CertificateNotFound"
// The specified certificate does not exist.
//
// * ErrCodeUnsupportedProtocolException "UnsupportedProtocol"
// The specified protocol is not supported.
//
// * ErrCodeTooManyRegistrationsForTargetIdException "TooManyRegistrationsForTargetId"
// You've reached the limit on the number of times a target can be registered
// with a load balancer.
//
// * ErrCodeTooManyTargetsException "TooManyTargets"
// You've reached the limit on the number of targets.
//
// * ErrCodeTooManyActionsException "TooManyActions"
// You've reached the limit on the number of actions per rule.
//
// * ErrCodeInvalidLoadBalancerActionException "InvalidLoadBalancerAction"
// The requested action is not valid.
//
2020-03-26 21:07:15 +00:00
// * ErrCodeTooManyUniqueTargetGroupsPerLoadBalancerException "TooManyUniqueTargetGroupsPerLoadBalancer"
// 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.
//
2020-12-01 01:06:26 +00:00
// * ErrCodeALPNPolicyNotSupportedException "ALPNPolicyNotFound"
// The specified ALPN policy is not supported.
//
// * ErrCodeTooManyTagsException "TooManyTags"
// You've reached the limit on the number of tags per load balancer.
//
2019-09-27 21:51:53 +00:00
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateListener
func ( c * ELBV2 ) CreateListener ( input * CreateListenerInput ) ( * CreateListenerOutput , error ) {
req , out := c . CreateListenerRequest ( input )
return out , req . Send ( )
}
// CreateListenerWithContext is the same as CreateListener with the addition of
// the ability to pass a context and additional request options.
//
// See CreateListener for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) CreateListenerWithContext ( ctx aws . Context , input * CreateListenerInput , opts ... request . Option ) ( * CreateListenerOutput , error ) {
req , out := c . CreateListenerRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opCreateLoadBalancer = "CreateLoadBalancer"
// CreateLoadBalancerRequest generates a "aws/request.Request" representing the
// client's request for the CreateLoadBalancer operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateLoadBalancer for more information on using the CreateLoadBalancer
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the CreateLoadBalancerRequest method.
// req, resp := client.CreateLoadBalancerRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateLoadBalancer
func ( c * ELBV2 ) CreateLoadBalancerRequest ( input * CreateLoadBalancerInput ) ( req * request . Request , output * CreateLoadBalancerOutput ) {
op := & request . Operation {
Name : opCreateLoadBalancer ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & CreateLoadBalancerInput { }
}
output = & CreateLoadBalancerOutput { }
req = c . newRequest ( op , input , output )
return
}
// CreateLoadBalancer API operation for Elastic Load Balancing.
//
2021-07-02 08:43:15 +00:00
// Creates an Application Load Balancer, Network Load Balancer, or Gateway Load
// Balancer.
2019-09-27 21:51:53 +00:00
//
2021-07-02 08:43:15 +00:00
// For more information, see the following:
2019-09-27 21:51:53 +00:00
//
2021-07-02 08:43:15 +00:00
// * Application Load Balancers (https://docs.aws.amazon.com/elasticloadbalancing/latest/application/application-load-balancers.html)
2019-09-27 21:51:53 +00:00
//
2021-07-02 08:43:15 +00:00
// * Network Load Balancers (https://docs.aws.amazon.com/elasticloadbalancing/latest/network/network-load-balancers.html)
//
// * Gateway Load Balancers (https://docs.aws.amazon.com/elasticloadbalancing/latest/gateway/gateway-load-balancers.html)
2019-09-27 21:51:53 +00:00
//
// This operation is idempotent, which means that it completes at most one time.
// If you attempt to create multiple load balancers with the same settings,
// each call succeeds.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation CreateLoadBalancer for usage and error information.
//
// Returned Error Codes:
// * ErrCodeDuplicateLoadBalancerNameException "DuplicateLoadBalancerName"
// A load balancer with the specified name already exists.
//
// * ErrCodeTooManyLoadBalancersException "TooManyLoadBalancers"
// You've reached the limit on the number of load balancers for your AWS account.
//
// * ErrCodeInvalidConfigurationRequestException "InvalidConfigurationRequest"
// The requested configuration is not valid.
//
// * ErrCodeSubnetNotFoundException "SubnetNotFound"
// The specified subnet does not exist.
//
// * ErrCodeInvalidSubnetException "InvalidSubnet"
// The specified subnet is out of available addresses.
//
// * ErrCodeInvalidSecurityGroupException "InvalidSecurityGroup"
// The specified security group does not exist.
//
// * ErrCodeInvalidSchemeException "InvalidScheme"
// The requested scheme is not valid.
//
// * ErrCodeTooManyTagsException "TooManyTags"
// You've reached the limit on the number of tags per load balancer.
//
// * ErrCodeDuplicateTagKeysException "DuplicateTagKeys"
// A tag key was specified more than once.
//
// * ErrCodeResourceInUseException "ResourceInUse"
// A specified resource is in use.
//
// * ErrCodeAllocationIdNotFoundException "AllocationIdNotFound"
// The specified allocation ID does not exist.
//
// * ErrCodeAvailabilityZoneNotSupportedException "AvailabilityZoneNotSupported"
// The specified Availability Zone is not supported.
//
// * ErrCodeOperationNotPermittedException "OperationNotPermitted"
// This operation is not allowed.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateLoadBalancer
func ( c * ELBV2 ) CreateLoadBalancer ( input * CreateLoadBalancerInput ) ( * CreateLoadBalancerOutput , error ) {
req , out := c . CreateLoadBalancerRequest ( input )
return out , req . Send ( )
}
// CreateLoadBalancerWithContext is the same as CreateLoadBalancer with the addition of
// the ability to pass a context and additional request options.
//
// See CreateLoadBalancer for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) CreateLoadBalancerWithContext ( ctx aws . Context , input * CreateLoadBalancerInput , opts ... request . Option ) ( * CreateLoadBalancerOutput , error ) {
req , out := c . CreateLoadBalancerRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opCreateRule = "CreateRule"
// CreateRuleRequest generates a "aws/request.Request" representing the
// client's request for the CreateRule operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateRule for more information on using the CreateRule
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the CreateRuleRequest method.
// req, resp := client.CreateRuleRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateRule
func ( c * ELBV2 ) CreateRuleRequest ( input * CreateRuleInput ) ( req * request . Request , output * CreateRuleOutput ) {
op := & request . Operation {
Name : opCreateRule ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & CreateRuleInput { }
}
output = & CreateRuleOutput { }
req = c . newRequest ( op , input , output )
return
}
// CreateRule API operation for Elastic Load Balancing.
//
// Creates a rule for the specified listener. The listener must be associated
// with an Application Load Balancer.
//
2020-12-01 01:06:26 +00:00
// Each rule consists of a priority, one or more actions, and one or more conditions.
2019-09-27 21:51:53 +00:00
// Rules are evaluated in priority order, from the lowest value to the highest
// value. When the conditions for a rule are met, its actions are performed.
// If the conditions for no rules are met, the actions for the default rule
2021-07-02 08:43:15 +00:00
// are performed. For more information, see Listener rules (https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-listeners.html#listener-rules)
2019-09-27 21:51:53 +00:00
// in the Application Load Balancers Guide.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation CreateRule for usage and error information.
//
// Returned Error Codes:
// * ErrCodePriorityInUseException "PriorityInUse"
// The specified priority is in use.
//
// * ErrCodeTooManyTargetGroupsException "TooManyTargetGroups"
// You've reached the limit on the number of target groups for your AWS account.
//
// * ErrCodeTooManyRulesException "TooManyRules"
// You've reached the limit on the number of rules per load balancer.
//
// * ErrCodeTargetGroupAssociationLimitException "TargetGroupAssociationLimit"
// You've reached the limit on the number of load balancers per target group.
//
// * ErrCodeIncompatibleProtocolsException "IncompatibleProtocols"
// The specified configuration is not valid with this protocol.
//
// * ErrCodeListenerNotFoundException "ListenerNotFound"
// The specified listener does not exist.
//
// * ErrCodeTargetGroupNotFoundException "TargetGroupNotFound"
// The specified target group does not exist.
//
// * ErrCodeInvalidConfigurationRequestException "InvalidConfigurationRequest"
// The requested configuration is not valid.
//
// * ErrCodeTooManyRegistrationsForTargetIdException "TooManyRegistrationsForTargetId"
// You've reached the limit on the number of times a target can be registered
// with a load balancer.
//
// * ErrCodeTooManyTargetsException "TooManyTargets"
// You've reached the limit on the number of targets.
//
// * ErrCodeUnsupportedProtocolException "UnsupportedProtocol"
// The specified protocol is not supported.
//
// * ErrCodeTooManyActionsException "TooManyActions"
// You've reached the limit on the number of actions per rule.
//
// * ErrCodeInvalidLoadBalancerActionException "InvalidLoadBalancerAction"
// The requested action is not valid.
//
2020-03-26 21:07:15 +00:00
// * ErrCodeTooManyUniqueTargetGroupsPerLoadBalancerException "TooManyUniqueTargetGroupsPerLoadBalancer"
// 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.
//
2020-12-01 01:06:26 +00:00
// * ErrCodeTooManyTagsException "TooManyTags"
// You've reached the limit on the number of tags per load balancer.
//
2019-09-27 21:51:53 +00:00
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateRule
func ( c * ELBV2 ) CreateRule ( input * CreateRuleInput ) ( * CreateRuleOutput , error ) {
req , out := c . CreateRuleRequest ( input )
return out , req . Send ( )
}
// CreateRuleWithContext is the same as CreateRule with the addition of
// the ability to pass a context and additional request options.
//
// See CreateRule for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) CreateRuleWithContext ( ctx aws . Context , input * CreateRuleInput , opts ... request . Option ) ( * CreateRuleOutput , error ) {
req , out := c . CreateRuleRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opCreateTargetGroup = "CreateTargetGroup"
// CreateTargetGroupRequest generates a "aws/request.Request" representing the
// client's request for the CreateTargetGroup operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See CreateTargetGroup for more information on using the CreateTargetGroup
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the CreateTargetGroupRequest method.
// req, resp := client.CreateTargetGroupRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateTargetGroup
func ( c * ELBV2 ) CreateTargetGroupRequest ( input * CreateTargetGroupInput ) ( req * request . Request , output * CreateTargetGroupOutput ) {
op := & request . Operation {
Name : opCreateTargetGroup ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & CreateTargetGroupInput { }
}
output = & CreateTargetGroupOutput { }
req = c . newRequest ( op , input , output )
return
}
// CreateTargetGroup API operation for Elastic Load Balancing.
//
// Creates a target group.
//
2021-07-02 08:43:15 +00:00
// For more information, see the following:
2019-09-27 21:51:53 +00:00
//
2021-07-02 08:43:15 +00:00
// * Target groups for your Application Load Balancers (https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html)
2019-09-27 21:51:53 +00:00
//
2021-07-02 08:43:15 +00:00
// * Target groups for your Network Load Balancers (https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html)
//
// * Target groups for your Gateway Load Balancers (https://docs.aws.amazon.com/elasticloadbalancing/latest/gateway/target-groups.html)
2019-09-27 21:51:53 +00:00
//
// This operation is idempotent, which means that it completes at most one time.
// If you attempt to create multiple target groups with the same settings, each
// call succeeds.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation CreateTargetGroup for usage and error information.
//
// Returned Error Codes:
// * ErrCodeDuplicateTargetGroupNameException "DuplicateTargetGroupName"
// A target group with the specified name already exists.
//
// * ErrCodeTooManyTargetGroupsException "TooManyTargetGroups"
// You've reached the limit on the number of target groups for your AWS account.
//
// * ErrCodeInvalidConfigurationRequestException "InvalidConfigurationRequest"
// The requested configuration is not valid.
//
2020-12-01 01:06:26 +00:00
// * ErrCodeTooManyTagsException "TooManyTags"
// You've reached the limit on the number of tags per load balancer.
//
2019-09-27 21:51:53 +00:00
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateTargetGroup
func ( c * ELBV2 ) CreateTargetGroup ( input * CreateTargetGroupInput ) ( * CreateTargetGroupOutput , error ) {
req , out := c . CreateTargetGroupRequest ( input )
return out , req . Send ( )
}
// CreateTargetGroupWithContext is the same as CreateTargetGroup with the addition of
// the ability to pass a context and additional request options.
//
// See CreateTargetGroup for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) CreateTargetGroupWithContext ( ctx aws . Context , input * CreateTargetGroupInput , opts ... request . Option ) ( * CreateTargetGroupOutput , error ) {
req , out := c . CreateTargetGroupRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDeleteListener = "DeleteListener"
// DeleteListenerRequest generates a "aws/request.Request" representing the
// client's request for the DeleteListener operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteListener for more information on using the DeleteListener
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DeleteListenerRequest method.
// req, resp := client.DeleteListenerRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteListener
func ( c * ELBV2 ) DeleteListenerRequest ( input * DeleteListenerInput ) ( req * request . Request , output * DeleteListenerOutput ) {
op := & request . Operation {
Name : opDeleteListener ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DeleteListenerInput { }
}
output = & DeleteListenerOutput { }
req = c . newRequest ( op , input , output )
req . Handlers . Unmarshal . Swap ( query . UnmarshalHandler . Name , protocol . UnmarshalDiscardBodyHandler )
return
}
// DeleteListener API operation for Elastic Load Balancing.
//
// Deletes the specified listener.
//
// Alternatively, your listener is deleted when you delete the load balancer
2021-07-02 08:43:15 +00:00
// to which it is attached.
2019-09-27 21:51:53 +00:00
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DeleteListener for usage and error information.
//
// Returned Error Codes:
// * ErrCodeListenerNotFoundException "ListenerNotFound"
// The specified listener does not exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteListener
func ( c * ELBV2 ) DeleteListener ( input * DeleteListenerInput ) ( * DeleteListenerOutput , error ) {
req , out := c . DeleteListenerRequest ( input )
return out , req . Send ( )
}
// DeleteListenerWithContext is the same as DeleteListener with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteListener for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DeleteListenerWithContext ( ctx aws . Context , input * DeleteListenerInput , opts ... request . Option ) ( * DeleteListenerOutput , error ) {
req , out := c . DeleteListenerRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDeleteLoadBalancer = "DeleteLoadBalancer"
// DeleteLoadBalancerRequest generates a "aws/request.Request" representing the
// client's request for the DeleteLoadBalancer operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteLoadBalancer for more information on using the DeleteLoadBalancer
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DeleteLoadBalancerRequest method.
// req, resp := client.DeleteLoadBalancerRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteLoadBalancer
func ( c * ELBV2 ) DeleteLoadBalancerRequest ( input * DeleteLoadBalancerInput ) ( req * request . Request , output * DeleteLoadBalancerOutput ) {
op := & request . Operation {
Name : opDeleteLoadBalancer ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DeleteLoadBalancerInput { }
}
output = & DeleteLoadBalancerOutput { }
req = c . newRequest ( op , input , output )
req . Handlers . Unmarshal . Swap ( query . UnmarshalHandler . Name , protocol . UnmarshalDiscardBodyHandler )
return
}
// DeleteLoadBalancer API operation for Elastic Load Balancing.
//
2021-07-02 08:43:15 +00:00
// Deletes the specified Application Load Balancer, Network Load Balancer, or
// Gateway Load Balancer. Deleting a load balancer also deletes its listeners.
2019-09-27 21:51:53 +00:00
//
// You can't delete a load balancer if deletion protection is enabled. If the
// load balancer does not exist or has already been deleted, the call succeeds.
//
// Deleting a load balancer does not affect its registered targets. For example,
// your EC2 instances continue to run and are still registered to their target
// groups. If you no longer need these EC2 instances, you can stop or terminate
// them.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DeleteLoadBalancer for usage and error information.
//
// Returned Error Codes:
// * ErrCodeLoadBalancerNotFoundException "LoadBalancerNotFound"
// The specified load balancer does not exist.
//
// * ErrCodeOperationNotPermittedException "OperationNotPermitted"
// This operation is not allowed.
//
// * ErrCodeResourceInUseException "ResourceInUse"
// A specified resource is in use.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteLoadBalancer
func ( c * ELBV2 ) DeleteLoadBalancer ( input * DeleteLoadBalancerInput ) ( * DeleteLoadBalancerOutput , error ) {
req , out := c . DeleteLoadBalancerRequest ( input )
return out , req . Send ( )
}
// DeleteLoadBalancerWithContext is the same as DeleteLoadBalancer with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteLoadBalancer for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DeleteLoadBalancerWithContext ( ctx aws . Context , input * DeleteLoadBalancerInput , opts ... request . Option ) ( * DeleteLoadBalancerOutput , error ) {
req , out := c . DeleteLoadBalancerRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDeleteRule = "DeleteRule"
// DeleteRuleRequest generates a "aws/request.Request" representing the
// client's request for the DeleteRule operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteRule for more information on using the DeleteRule
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DeleteRuleRequest method.
// req, resp := client.DeleteRuleRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteRule
func ( c * ELBV2 ) DeleteRuleRequest ( input * DeleteRuleInput ) ( req * request . Request , output * DeleteRuleOutput ) {
op := & request . Operation {
Name : opDeleteRule ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DeleteRuleInput { }
}
output = & DeleteRuleOutput { }
req = c . newRequest ( op , input , output )
req . Handlers . Unmarshal . Swap ( query . UnmarshalHandler . Name , protocol . UnmarshalDiscardBodyHandler )
return
}
// DeleteRule API operation for Elastic Load Balancing.
//
// Deletes the specified rule.
//
2020-12-01 01:06:26 +00:00
// You can't delete the default rule.
//
2019-09-27 21:51:53 +00:00
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DeleteRule for usage and error information.
//
// Returned Error Codes:
// * ErrCodeRuleNotFoundException "RuleNotFound"
// The specified rule does not exist.
//
// * ErrCodeOperationNotPermittedException "OperationNotPermitted"
// This operation is not allowed.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteRule
func ( c * ELBV2 ) DeleteRule ( input * DeleteRuleInput ) ( * DeleteRuleOutput , error ) {
req , out := c . DeleteRuleRequest ( input )
return out , req . Send ( )
}
// DeleteRuleWithContext is the same as DeleteRule with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteRule for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DeleteRuleWithContext ( ctx aws . Context , input * DeleteRuleInput , opts ... request . Option ) ( * DeleteRuleOutput , error ) {
req , out := c . DeleteRuleRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDeleteTargetGroup = "DeleteTargetGroup"
// DeleteTargetGroupRequest generates a "aws/request.Request" representing the
// client's request for the DeleteTargetGroup operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeleteTargetGroup for more information on using the DeleteTargetGroup
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DeleteTargetGroupRequest method.
// req, resp := client.DeleteTargetGroupRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteTargetGroup
func ( c * ELBV2 ) DeleteTargetGroupRequest ( input * DeleteTargetGroupInput ) ( req * request . Request , output * DeleteTargetGroupOutput ) {
op := & request . Operation {
Name : opDeleteTargetGroup ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DeleteTargetGroupInput { }
}
output = & DeleteTargetGroupOutput { }
req = c . newRequest ( op , input , output )
req . Handlers . Unmarshal . Swap ( query . UnmarshalHandler . Name , protocol . UnmarshalDiscardBodyHandler )
return
}
// DeleteTargetGroup API operation for Elastic Load Balancing.
//
// Deletes the specified target group.
//
// You can delete a target group if it is not referenced by any actions. Deleting
2021-07-02 08:43:15 +00:00
// a target group also deletes any associated health checks. Deleting a target
// group does not affect its registered targets. For example, any EC2 instances
// continue to run until you stop or terminate them.
2019-09-27 21:51:53 +00:00
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DeleteTargetGroup for usage and error information.
//
// Returned Error Codes:
// * ErrCodeResourceInUseException "ResourceInUse"
// A specified resource is in use.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteTargetGroup
func ( c * ELBV2 ) DeleteTargetGroup ( input * DeleteTargetGroupInput ) ( * DeleteTargetGroupOutput , error ) {
req , out := c . DeleteTargetGroupRequest ( input )
return out , req . Send ( )
}
// DeleteTargetGroupWithContext is the same as DeleteTargetGroup with the addition of
// the ability to pass a context and additional request options.
//
// See DeleteTargetGroup for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DeleteTargetGroupWithContext ( ctx aws . Context , input * DeleteTargetGroupInput , opts ... request . Option ) ( * DeleteTargetGroupOutput , error ) {
req , out := c . DeleteTargetGroupRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDeregisterTargets = "DeregisterTargets"
// DeregisterTargetsRequest generates a "aws/request.Request" representing the
// client's request for the DeregisterTargets operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DeregisterTargets for more information on using the DeregisterTargets
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DeregisterTargetsRequest method.
// req, resp := client.DeregisterTargetsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeregisterTargets
func ( c * ELBV2 ) DeregisterTargetsRequest ( input * DeregisterTargetsInput ) ( req * request . Request , output * DeregisterTargetsOutput ) {
op := & request . Operation {
Name : opDeregisterTargets ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DeregisterTargetsInput { }
}
output = & DeregisterTargetsOutput { }
req = c . newRequest ( op , input , output )
req . Handlers . Unmarshal . Swap ( query . UnmarshalHandler . Name , protocol . UnmarshalDiscardBodyHandler )
return
}
// DeregisterTargets API operation for Elastic Load Balancing.
//
// Deregisters the specified targets from the specified target group. After
// the targets are deregistered, they no longer receive traffic from the load
// balancer.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DeregisterTargets for usage and error information.
//
// Returned Error Codes:
// * ErrCodeTargetGroupNotFoundException "TargetGroupNotFound"
// The specified target group does not exist.
//
// * ErrCodeInvalidTargetException "InvalidTarget"
// The specified target does not exist, is not in the same VPC as the target
// group, or has an unsupported instance type.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeregisterTargets
func ( c * ELBV2 ) DeregisterTargets ( input * DeregisterTargetsInput ) ( * DeregisterTargetsOutput , error ) {
req , out := c . DeregisterTargetsRequest ( input )
return out , req . Send ( )
}
// DeregisterTargetsWithContext is the same as DeregisterTargets with the addition of
// the ability to pass a context and additional request options.
//
// See DeregisterTargets for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DeregisterTargetsWithContext ( ctx aws . Context , input * DeregisterTargetsInput , opts ... request . Option ) ( * DeregisterTargetsOutput , error ) {
req , out := c . DeregisterTargetsRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDescribeAccountLimits = "DescribeAccountLimits"
// DescribeAccountLimitsRequest generates a "aws/request.Request" representing the
// client's request for the DescribeAccountLimits operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeAccountLimits for more information on using the DescribeAccountLimits
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DescribeAccountLimitsRequest method.
// req, resp := client.DescribeAccountLimitsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeAccountLimits
func ( c * ELBV2 ) DescribeAccountLimitsRequest ( input * DescribeAccountLimitsInput ) ( req * request . Request , output * DescribeAccountLimitsOutput ) {
op := & request . Operation {
Name : opDescribeAccountLimits ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DescribeAccountLimitsInput { }
}
output = & DescribeAccountLimitsOutput { }
req = c . newRequest ( op , input , output )
return
}
// DescribeAccountLimits API operation for Elastic Load Balancing.
//
// Describes the current Elastic Load Balancing resource limits for your AWS
// account.
//
2021-07-02 08:43:15 +00:00
// For more information, see the following:
//
// * Quotas for your Application Load Balancers (https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-limits.html)
//
// * Quotas for your Network Load Balancers (https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-limits.html)
//
// * Quotas for your Gateway Load Balancers (https://docs.aws.amazon.com/elasticloadbalancing/latest/gateway/quotas-limits.html)
2019-09-27 21:51:53 +00:00
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DescribeAccountLimits for usage and error information.
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeAccountLimits
func ( c * ELBV2 ) DescribeAccountLimits ( input * DescribeAccountLimitsInput ) ( * DescribeAccountLimitsOutput , error ) {
req , out := c . DescribeAccountLimitsRequest ( input )
return out , req . Send ( )
}
// DescribeAccountLimitsWithContext is the same as DescribeAccountLimits with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeAccountLimits for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DescribeAccountLimitsWithContext ( ctx aws . Context , input * DescribeAccountLimitsInput , opts ... request . Option ) ( * DescribeAccountLimitsOutput , error ) {
req , out := c . DescribeAccountLimitsRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDescribeListenerCertificates = "DescribeListenerCertificates"
// DescribeListenerCertificatesRequest generates a "aws/request.Request" representing the
// client's request for the DescribeListenerCertificates operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeListenerCertificates for more information on using the DescribeListenerCertificates
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DescribeListenerCertificatesRequest method.
// req, resp := client.DescribeListenerCertificatesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeListenerCertificates
func ( c * ELBV2 ) DescribeListenerCertificatesRequest ( input * DescribeListenerCertificatesInput ) ( req * request . Request , output * DescribeListenerCertificatesOutput ) {
op := & request . Operation {
Name : opDescribeListenerCertificates ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DescribeListenerCertificatesInput { }
}
output = & DescribeListenerCertificatesOutput { }
req = c . newRequest ( op , input , output )
return
}
// DescribeListenerCertificates API operation for Elastic Load Balancing.
//
2019-12-12 01:27:03 +00:00
// Describes the default certificate and the certificate list for the specified
// HTTPS or TLS listener.
//
// If the default certificate is also in the certificate list, it appears twice
// in the results (once with IsDefault set to true and once with IsDefault set
// to false).
//
2021-07-02 08:43:15 +00:00
// For more information, see SSL certificates (https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html#https-listener-certificates)
// in the Application Load Balancers Guide or Server certificates (https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html#tls-listener-certificate)
// in the Network Load Balancers Guide.
2019-09-27 21:51:53 +00:00
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DescribeListenerCertificates for usage and error information.
//
// Returned Error Codes:
// * ErrCodeListenerNotFoundException "ListenerNotFound"
// The specified listener does not exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeListenerCertificates
func ( c * ELBV2 ) DescribeListenerCertificates ( input * DescribeListenerCertificatesInput ) ( * DescribeListenerCertificatesOutput , error ) {
req , out := c . DescribeListenerCertificatesRequest ( input )
return out , req . Send ( )
}
// DescribeListenerCertificatesWithContext is the same as DescribeListenerCertificates with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeListenerCertificates for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DescribeListenerCertificatesWithContext ( ctx aws . Context , input * DescribeListenerCertificatesInput , opts ... request . Option ) ( * DescribeListenerCertificatesOutput , error ) {
req , out := c . DescribeListenerCertificatesRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDescribeListeners = "DescribeListeners"
// DescribeListenersRequest generates a "aws/request.Request" representing the
// client's request for the DescribeListeners operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeListeners for more information on using the DescribeListeners
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DescribeListenersRequest method.
// req, resp := client.DescribeListenersRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeListeners
func ( c * ELBV2 ) DescribeListenersRequest ( input * DescribeListenersInput ) ( req * request . Request , output * DescribeListenersOutput ) {
op := & request . Operation {
Name : opDescribeListeners ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
Paginator : & request . Paginator {
InputTokens : [ ] string { "Marker" } ,
OutputTokens : [ ] string { "NextMarker" } ,
LimitToken : "" ,
TruncationToken : "" ,
} ,
}
if input == nil {
input = & DescribeListenersInput { }
}
output = & DescribeListenersOutput { }
req = c . newRequest ( op , input , output )
return
}
// DescribeListeners API operation for Elastic Load Balancing.
//
// Describes the specified listeners or the listeners for the specified Application
2021-07-02 08:43:15 +00:00
// Load Balancer, Network Load Balancer, or Gateway Load Balancer. You must
// specify either a load balancer or one or more listeners.
2019-12-12 01:27:03 +00:00
//
2019-09-27 21:51:53 +00:00
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DescribeListeners for usage and error information.
//
// Returned Error Codes:
// * ErrCodeListenerNotFoundException "ListenerNotFound"
// The specified listener does not exist.
//
// * ErrCodeLoadBalancerNotFoundException "LoadBalancerNotFound"
// The specified load balancer does not exist.
//
// * ErrCodeUnsupportedProtocolException "UnsupportedProtocol"
// The specified protocol is not supported.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeListeners
func ( c * ELBV2 ) DescribeListeners ( input * DescribeListenersInput ) ( * DescribeListenersOutput , error ) {
req , out := c . DescribeListenersRequest ( input )
return out , req . Send ( )
}
// DescribeListenersWithContext is the same as DescribeListeners with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeListeners for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DescribeListenersWithContext ( ctx aws . Context , input * DescribeListenersInput , opts ... request . Option ) ( * DescribeListenersOutput , error ) {
req , out := c . DescribeListenersRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
// DescribeListenersPages iterates over the pages of a DescribeListeners operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See DescribeListeners method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a DescribeListeners operation.
// pageNum := 0
// err := client.DescribeListenersPages(params,
2019-12-12 01:27:03 +00:00
// func(page *elbv2.DescribeListenersOutput, lastPage bool) bool {
2019-09-27 21:51:53 +00:00
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
//
func ( c * ELBV2 ) DescribeListenersPages ( input * DescribeListenersInput , fn func ( * DescribeListenersOutput , bool ) bool ) error {
return c . DescribeListenersPagesWithContext ( aws . BackgroundContext ( ) , input , fn )
}
// DescribeListenersPagesWithContext same as DescribeListenersPages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DescribeListenersPagesWithContext ( ctx aws . Context , input * DescribeListenersInput , fn func ( * DescribeListenersOutput , bool ) bool , opts ... request . Option ) error {
p := request . Pagination {
NewRequest : func ( ) ( * request . Request , error ) {
var inCpy * DescribeListenersInput
if input != nil {
tmp := * input
inCpy = & tmp
}
req , _ := c . DescribeListenersRequest ( inCpy )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return req , nil
} ,
}
2020-03-26 21:07:15 +00:00
for p . Next ( ) {
if ! fn ( p . Page ( ) . ( * DescribeListenersOutput ) , ! p . HasNextPage ( ) ) {
break
}
2019-09-27 21:51:53 +00:00
}
2020-03-26 21:07:15 +00:00
2019-09-27 21:51:53 +00:00
return p . Err ( )
}
const opDescribeLoadBalancerAttributes = "DescribeLoadBalancerAttributes"
// DescribeLoadBalancerAttributesRequest generates a "aws/request.Request" representing the
// client's request for the DescribeLoadBalancerAttributes operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeLoadBalancerAttributes for more information on using the DescribeLoadBalancerAttributes
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DescribeLoadBalancerAttributesRequest method.
// req, resp := client.DescribeLoadBalancerAttributesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeLoadBalancerAttributes
func ( c * ELBV2 ) DescribeLoadBalancerAttributesRequest ( input * DescribeLoadBalancerAttributesInput ) ( req * request . Request , output * DescribeLoadBalancerAttributesOutput ) {
op := & request . Operation {
Name : opDescribeLoadBalancerAttributes ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DescribeLoadBalancerAttributesInput { }
}
output = & DescribeLoadBalancerAttributesOutput { }
req = c . newRequest ( op , input , output )
return
}
// DescribeLoadBalancerAttributes API operation for Elastic Load Balancing.
//
2021-07-02 08:43:15 +00:00
// Describes the attributes for the specified Application Load Balancer, Network
// Load Balancer, or Gateway Load Balancer.
2019-09-27 21:51:53 +00:00
//
2021-07-02 08:43:15 +00:00
// For more information, see the following:
//
// * Load balancer attributes (https://docs.aws.amazon.com/elasticloadbalancing/latest/application/application-load-balancers.html#load-balancer-attributes)
// in the Application Load Balancers Guide
//
// * Load balancer attributes (https://docs.aws.amazon.com/elasticloadbalancing/latest/network/network-load-balancers.html#load-balancer-attributes)
// in the Network Load Balancers Guide
//
// * Load balancer attributes (https://docs.aws.amazon.com/elasticloadbalancing/latest/gateway/gateway-load-balancers.html#load-balancer-attributes)
// in the Gateway Load Balancers Guide
2019-09-27 21:51:53 +00:00
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DescribeLoadBalancerAttributes for usage and error information.
//
// Returned Error Codes:
// * ErrCodeLoadBalancerNotFoundException "LoadBalancerNotFound"
// The specified load balancer does not exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeLoadBalancerAttributes
func ( c * ELBV2 ) DescribeLoadBalancerAttributes ( input * DescribeLoadBalancerAttributesInput ) ( * DescribeLoadBalancerAttributesOutput , error ) {
req , out := c . DescribeLoadBalancerAttributesRequest ( input )
return out , req . Send ( )
}
// DescribeLoadBalancerAttributesWithContext is the same as DescribeLoadBalancerAttributes with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeLoadBalancerAttributes for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DescribeLoadBalancerAttributesWithContext ( ctx aws . Context , input * DescribeLoadBalancerAttributesInput , opts ... request . Option ) ( * DescribeLoadBalancerAttributesOutput , error ) {
req , out := c . DescribeLoadBalancerAttributesRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDescribeLoadBalancers = "DescribeLoadBalancers"
// DescribeLoadBalancersRequest generates a "aws/request.Request" representing the
// client's request for the DescribeLoadBalancers operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeLoadBalancers for more information on using the DescribeLoadBalancers
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DescribeLoadBalancersRequest method.
// req, resp := client.DescribeLoadBalancersRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeLoadBalancers
func ( c * ELBV2 ) DescribeLoadBalancersRequest ( input * DescribeLoadBalancersInput ) ( req * request . Request , output * DescribeLoadBalancersOutput ) {
op := & request . Operation {
Name : opDescribeLoadBalancers ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
Paginator : & request . Paginator {
InputTokens : [ ] string { "Marker" } ,
OutputTokens : [ ] string { "NextMarker" } ,
LimitToken : "" ,
TruncationToken : "" ,
} ,
}
if input == nil {
input = & DescribeLoadBalancersInput { }
}
output = & DescribeLoadBalancersOutput { }
req = c . newRequest ( op , input , output )
return
}
// DescribeLoadBalancers API operation for Elastic Load Balancing.
//
// Describes the specified load balancers or all of your load balancers.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DescribeLoadBalancers for usage and error information.
//
// Returned Error Codes:
// * ErrCodeLoadBalancerNotFoundException "LoadBalancerNotFound"
// The specified load balancer does not exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeLoadBalancers
func ( c * ELBV2 ) DescribeLoadBalancers ( input * DescribeLoadBalancersInput ) ( * DescribeLoadBalancersOutput , error ) {
req , out := c . DescribeLoadBalancersRequest ( input )
return out , req . Send ( )
}
// DescribeLoadBalancersWithContext is the same as DescribeLoadBalancers with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeLoadBalancers for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DescribeLoadBalancersWithContext ( ctx aws . Context , input * DescribeLoadBalancersInput , opts ... request . Option ) ( * DescribeLoadBalancersOutput , error ) {
req , out := c . DescribeLoadBalancersRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
// DescribeLoadBalancersPages iterates over the pages of a DescribeLoadBalancers operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See DescribeLoadBalancers method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a DescribeLoadBalancers operation.
// pageNum := 0
// err := client.DescribeLoadBalancersPages(params,
2019-12-12 01:27:03 +00:00
// func(page *elbv2.DescribeLoadBalancersOutput, lastPage bool) bool {
2019-09-27 21:51:53 +00:00
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
//
func ( c * ELBV2 ) DescribeLoadBalancersPages ( input * DescribeLoadBalancersInput , fn func ( * DescribeLoadBalancersOutput , bool ) bool ) error {
return c . DescribeLoadBalancersPagesWithContext ( aws . BackgroundContext ( ) , input , fn )
}
// DescribeLoadBalancersPagesWithContext same as DescribeLoadBalancersPages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DescribeLoadBalancersPagesWithContext ( ctx aws . Context , input * DescribeLoadBalancersInput , fn func ( * DescribeLoadBalancersOutput , bool ) bool , opts ... request . Option ) error {
p := request . Pagination {
NewRequest : func ( ) ( * request . Request , error ) {
var inCpy * DescribeLoadBalancersInput
if input != nil {
tmp := * input
inCpy = & tmp
}
req , _ := c . DescribeLoadBalancersRequest ( inCpy )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return req , nil
} ,
}
2020-03-26 21:07:15 +00:00
for p . Next ( ) {
if ! fn ( p . Page ( ) . ( * DescribeLoadBalancersOutput ) , ! p . HasNextPage ( ) ) {
break
}
2019-09-27 21:51:53 +00:00
}
2020-03-26 21:07:15 +00:00
2019-09-27 21:51:53 +00:00
return p . Err ( )
}
const opDescribeRules = "DescribeRules"
// DescribeRulesRequest generates a "aws/request.Request" representing the
// client's request for the DescribeRules operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeRules for more information on using the DescribeRules
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DescribeRulesRequest method.
// req, resp := client.DescribeRulesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeRules
func ( c * ELBV2 ) DescribeRulesRequest ( input * DescribeRulesInput ) ( req * request . Request , output * DescribeRulesOutput ) {
op := & request . Operation {
Name : opDescribeRules ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DescribeRulesInput { }
}
output = & DescribeRulesOutput { }
req = c . newRequest ( op , input , output )
return
}
// DescribeRules API operation for Elastic Load Balancing.
//
// Describes the specified rules or the rules for the specified listener. You
// must specify either a listener or one or more rules.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DescribeRules for usage and error information.
//
// Returned Error Codes:
// * ErrCodeListenerNotFoundException "ListenerNotFound"
// The specified listener does not exist.
//
// * ErrCodeRuleNotFoundException "RuleNotFound"
// The specified rule does not exist.
//
// * ErrCodeUnsupportedProtocolException "UnsupportedProtocol"
// The specified protocol is not supported.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeRules
func ( c * ELBV2 ) DescribeRules ( input * DescribeRulesInput ) ( * DescribeRulesOutput , error ) {
req , out := c . DescribeRulesRequest ( input )
return out , req . Send ( )
}
// DescribeRulesWithContext is the same as DescribeRules with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeRules for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DescribeRulesWithContext ( ctx aws . Context , input * DescribeRulesInput , opts ... request . Option ) ( * DescribeRulesOutput , error ) {
req , out := c . DescribeRulesRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDescribeSSLPolicies = "DescribeSSLPolicies"
// DescribeSSLPoliciesRequest generates a "aws/request.Request" representing the
// client's request for the DescribeSSLPolicies operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeSSLPolicies for more information on using the DescribeSSLPolicies
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DescribeSSLPoliciesRequest method.
// req, resp := client.DescribeSSLPoliciesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeSSLPolicies
func ( c * ELBV2 ) DescribeSSLPoliciesRequest ( input * DescribeSSLPoliciesInput ) ( req * request . Request , output * DescribeSSLPoliciesOutput ) {
op := & request . Operation {
Name : opDescribeSSLPolicies ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DescribeSSLPoliciesInput { }
}
output = & DescribeSSLPoliciesOutput { }
req = c . newRequest ( op , input , output )
return
}
// DescribeSSLPolicies API operation for Elastic Load Balancing.
//
// Describes the specified policies or all policies used for SSL negotiation.
//
2021-07-02 08:43:15 +00:00
// For more information, see Security policies (https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html#describe-ssl-policies)
// in the Application Load Balancers Guide or Security policies (https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html#describe-ssl-policies)
// in the Network Load Balancers Guide.
2019-09-27 21:51:53 +00:00
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DescribeSSLPolicies for usage and error information.
//
// Returned Error Codes:
// * ErrCodeSSLPolicyNotFoundException "SSLPolicyNotFound"
// The specified SSL policy does not exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeSSLPolicies
func ( c * ELBV2 ) DescribeSSLPolicies ( input * DescribeSSLPoliciesInput ) ( * DescribeSSLPoliciesOutput , error ) {
req , out := c . DescribeSSLPoliciesRequest ( input )
return out , req . Send ( )
}
// DescribeSSLPoliciesWithContext is the same as DescribeSSLPolicies with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeSSLPolicies for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DescribeSSLPoliciesWithContext ( ctx aws . Context , input * DescribeSSLPoliciesInput , opts ... request . Option ) ( * DescribeSSLPoliciesOutput , error ) {
req , out := c . DescribeSSLPoliciesRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDescribeTags = "DescribeTags"
// DescribeTagsRequest generates a "aws/request.Request" representing the
// client's request for the DescribeTags operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeTags for more information on using the DescribeTags
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DescribeTagsRequest method.
// req, resp := client.DescribeTagsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTags
func ( c * ELBV2 ) DescribeTagsRequest ( input * DescribeTagsInput ) ( req * request . Request , output * DescribeTagsOutput ) {
op := & request . Operation {
Name : opDescribeTags ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DescribeTagsInput { }
}
output = & DescribeTagsOutput { }
req = c . newRequest ( op , input , output )
return
}
// DescribeTags API operation for Elastic Load Balancing.
//
2020-12-01 01:06:26 +00:00
// Describes the tags for the specified Elastic Load Balancing resources. You
// can describe the tags for one or more Application Load Balancers, Network
2021-07-02 08:43:15 +00:00
// Load Balancers, Gateway Load Balancers, target groups, listeners, or rules.
2019-09-27 21:51:53 +00:00
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DescribeTags for usage and error information.
//
// Returned Error Codes:
// * ErrCodeLoadBalancerNotFoundException "LoadBalancerNotFound"
// The specified load balancer does not exist.
//
// * ErrCodeTargetGroupNotFoundException "TargetGroupNotFound"
// The specified target group does not exist.
//
// * ErrCodeListenerNotFoundException "ListenerNotFound"
// The specified listener does not exist.
//
// * ErrCodeRuleNotFoundException "RuleNotFound"
// The specified rule does not exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTags
func ( c * ELBV2 ) DescribeTags ( input * DescribeTagsInput ) ( * DescribeTagsOutput , error ) {
req , out := c . DescribeTagsRequest ( input )
return out , req . Send ( )
}
// DescribeTagsWithContext is the same as DescribeTags with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeTags for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DescribeTagsWithContext ( ctx aws . Context , input * DescribeTagsInput , opts ... request . Option ) ( * DescribeTagsOutput , error ) {
req , out := c . DescribeTagsRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDescribeTargetGroupAttributes = "DescribeTargetGroupAttributes"
// DescribeTargetGroupAttributesRequest generates a "aws/request.Request" representing the
// client's request for the DescribeTargetGroupAttributes operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeTargetGroupAttributes for more information on using the DescribeTargetGroupAttributes
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DescribeTargetGroupAttributesRequest method.
// req, resp := client.DescribeTargetGroupAttributesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetGroupAttributes
func ( c * ELBV2 ) DescribeTargetGroupAttributesRequest ( input * DescribeTargetGroupAttributesInput ) ( req * request . Request , output * DescribeTargetGroupAttributesOutput ) {
op := & request . Operation {
Name : opDescribeTargetGroupAttributes ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DescribeTargetGroupAttributesInput { }
}
output = & DescribeTargetGroupAttributesOutput { }
req = c . newRequest ( op , input , output )
return
}
// DescribeTargetGroupAttributes API operation for Elastic Load Balancing.
//
// Describes the attributes for the specified target group.
//
2021-07-02 08:43:15 +00:00
// For more information, see the following:
//
// * Target group attributes (https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html#target-group-attributes)
// in the Application Load Balancers Guide
//
// * Target group attributes (https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-target-groups.html#target-group-attributes)
// in the Network Load Balancers Guide
//
// * Target group attributes (https://docs.aws.amazon.com/elasticloadbalancing/latest/gateway/target-groups.html#target-group-attributes)
// in the Gateway Load Balancers Guide
2019-09-27 21:51:53 +00:00
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DescribeTargetGroupAttributes for usage and error information.
//
// Returned Error Codes:
// * ErrCodeTargetGroupNotFoundException "TargetGroupNotFound"
// The specified target group does not exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetGroupAttributes
func ( c * ELBV2 ) DescribeTargetGroupAttributes ( input * DescribeTargetGroupAttributesInput ) ( * DescribeTargetGroupAttributesOutput , error ) {
req , out := c . DescribeTargetGroupAttributesRequest ( input )
return out , req . Send ( )
}
// DescribeTargetGroupAttributesWithContext is the same as DescribeTargetGroupAttributes with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeTargetGroupAttributes for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DescribeTargetGroupAttributesWithContext ( ctx aws . Context , input * DescribeTargetGroupAttributesInput , opts ... request . Option ) ( * DescribeTargetGroupAttributesOutput , error ) {
req , out := c . DescribeTargetGroupAttributesRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opDescribeTargetGroups = "DescribeTargetGroups"
// DescribeTargetGroupsRequest generates a "aws/request.Request" representing the
// client's request for the DescribeTargetGroups operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeTargetGroups for more information on using the DescribeTargetGroups
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DescribeTargetGroupsRequest method.
// req, resp := client.DescribeTargetGroupsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetGroups
func ( c * ELBV2 ) DescribeTargetGroupsRequest ( input * DescribeTargetGroupsInput ) ( req * request . Request , output * DescribeTargetGroupsOutput ) {
op := & request . Operation {
Name : opDescribeTargetGroups ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
Paginator : & request . Paginator {
InputTokens : [ ] string { "Marker" } ,
OutputTokens : [ ] string { "NextMarker" } ,
LimitToken : "" ,
TruncationToken : "" ,
} ,
}
if input == nil {
input = & DescribeTargetGroupsInput { }
}
output = & DescribeTargetGroupsOutput { }
req = c . newRequest ( op , input , output )
return
}
// DescribeTargetGroups API operation for Elastic Load Balancing.
//
// Describes the specified target groups or all of your target groups. By default,
// all target groups are described. Alternatively, you can specify one of the
// following to filter the results: the ARN of the load balancer, the names
// of one or more target groups, or the ARNs of one or more target groups.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DescribeTargetGroups for usage and error information.
//
// Returned Error Codes:
// * ErrCodeLoadBalancerNotFoundException "LoadBalancerNotFound"
// The specified load balancer does not exist.
//
// * ErrCodeTargetGroupNotFoundException "TargetGroupNotFound"
// The specified target group does not exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetGroups
func ( c * ELBV2 ) DescribeTargetGroups ( input * DescribeTargetGroupsInput ) ( * DescribeTargetGroupsOutput , error ) {
req , out := c . DescribeTargetGroupsRequest ( input )
return out , req . Send ( )
}
// DescribeTargetGroupsWithContext is the same as DescribeTargetGroups with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeTargetGroups for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DescribeTargetGroupsWithContext ( ctx aws . Context , input * DescribeTargetGroupsInput , opts ... request . Option ) ( * DescribeTargetGroupsOutput , error ) {
req , out := c . DescribeTargetGroupsRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
// DescribeTargetGroupsPages iterates over the pages of a DescribeTargetGroups operation,
// calling the "fn" function with the response data for each page. To stop
// iterating, return false from the fn function.
//
// See DescribeTargetGroups method for more information on how to use this operation.
//
// Note: This operation can generate multiple requests to a service.
//
// // Example iterating over at most 3 pages of a DescribeTargetGroups operation.
// pageNum := 0
// err := client.DescribeTargetGroupsPages(params,
2019-12-12 01:27:03 +00:00
// func(page *elbv2.DescribeTargetGroupsOutput, lastPage bool) bool {
2019-09-27 21:51:53 +00:00
// pageNum++
// fmt.Println(page)
// return pageNum <= 3
// })
//
func ( c * ELBV2 ) DescribeTargetGroupsPages ( input * DescribeTargetGroupsInput , fn func ( * DescribeTargetGroupsOutput , bool ) bool ) error {
return c . DescribeTargetGroupsPagesWithContext ( aws . BackgroundContext ( ) , input , fn )
}
// DescribeTargetGroupsPagesWithContext same as DescribeTargetGroupsPages except
// it takes a Context and allows setting request options on the pages.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DescribeTargetGroupsPagesWithContext ( ctx aws . Context , input * DescribeTargetGroupsInput , fn func ( * DescribeTargetGroupsOutput , bool ) bool , opts ... request . Option ) error {
p := request . Pagination {
NewRequest : func ( ) ( * request . Request , error ) {
var inCpy * DescribeTargetGroupsInput
if input != nil {
tmp := * input
inCpy = & tmp
}
req , _ := c . DescribeTargetGroupsRequest ( inCpy )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return req , nil
} ,
}
2020-03-26 21:07:15 +00:00
for p . Next ( ) {
if ! fn ( p . Page ( ) . ( * DescribeTargetGroupsOutput ) , ! p . HasNextPage ( ) ) {
break
}
2019-09-27 21:51:53 +00:00
}
2020-03-26 21:07:15 +00:00
2019-09-27 21:51:53 +00:00
return p . Err ( )
}
const opDescribeTargetHealth = "DescribeTargetHealth"
// DescribeTargetHealthRequest generates a "aws/request.Request" representing the
// client's request for the DescribeTargetHealth operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See DescribeTargetHealth for more information on using the DescribeTargetHealth
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the DescribeTargetHealthRequest method.
// req, resp := client.DescribeTargetHealthRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetHealth
func ( c * ELBV2 ) DescribeTargetHealthRequest ( input * DescribeTargetHealthInput ) ( req * request . Request , output * DescribeTargetHealthOutput ) {
op := & request . Operation {
Name : opDescribeTargetHealth ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & DescribeTargetHealthInput { }
}
output = & DescribeTargetHealthOutput { }
req = c . newRequest ( op , input , output )
return
}
// DescribeTargetHealth API operation for Elastic Load Balancing.
//
// Describes the health of the specified targets or all of your targets.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation DescribeTargetHealth for usage and error information.
//
// Returned Error Codes:
// * ErrCodeInvalidTargetException "InvalidTarget"
// The specified target does not exist, is not in the same VPC as the target
// group, or has an unsupported instance type.
//
// * ErrCodeTargetGroupNotFoundException "TargetGroupNotFound"
// The specified target group does not exist.
//
// * ErrCodeHealthUnavailableException "HealthUnavailable"
// The health of the specified targets could not be retrieved due to an internal
// error.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetHealth
func ( c * ELBV2 ) DescribeTargetHealth ( input * DescribeTargetHealthInput ) ( * DescribeTargetHealthOutput , error ) {
req , out := c . DescribeTargetHealthRequest ( input )
return out , req . Send ( )
}
// DescribeTargetHealthWithContext is the same as DescribeTargetHealth with the addition of
// the ability to pass a context and additional request options.
//
// See DescribeTargetHealth for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) DescribeTargetHealthWithContext ( ctx aws . Context , input * DescribeTargetHealthInput , opts ... request . Option ) ( * DescribeTargetHealthOutput , error ) {
req , out := c . DescribeTargetHealthRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opModifyListener = "ModifyListener"
// ModifyListenerRequest generates a "aws/request.Request" representing the
// client's request for the ModifyListener operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ModifyListener for more information on using the ModifyListener
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the ModifyListenerRequest method.
// req, resp := client.ModifyListenerRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyListener
func ( c * ELBV2 ) ModifyListenerRequest ( input * ModifyListenerInput ) ( req * request . Request , output * ModifyListenerOutput ) {
op := & request . Operation {
Name : opModifyListener ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & ModifyListenerInput { }
}
output = & ModifyListenerOutput { }
req = c . newRequest ( op , input , output )
return
}
// ModifyListener API operation for Elastic Load Balancing.
//
2020-03-26 21:07:15 +00:00
// Replaces the specified properties of the specified listener. Any properties
// that you do not specify remain unchanged.
2019-09-27 21:51:53 +00:00
//
2020-03-26 21:07:15 +00:00
// Changing the protocol from HTTPS to HTTP, or from TLS to TCP, removes the
2019-12-12 01:27:03 +00:00
// security policy and default certificate properties. If you change the protocol
2019-09-27 21:51:53 +00:00
// from HTTP to HTTPS, or from TCP to TLS, you must add the security policy
2019-12-12 01:27:03 +00:00
// and default certificate properties.
2019-09-27 21:51:53 +00:00
//
2020-03-26 21:07:15 +00:00
// To add an item to a list, remove an item from a list, or update an item in
// a list, you must provide the entire list. For example, to add an action,
// specify a list with the current actions plus the new action.
//
2019-09-27 21:51:53 +00:00
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation ModifyListener for usage and error information.
//
// Returned Error Codes:
// * ErrCodeDuplicateListenerException "DuplicateListener"
// A listener with the specified port already exists.
//
// * ErrCodeTooManyListenersException "TooManyListeners"
// You've reached the limit on the number of listeners per load balancer.
//
// * ErrCodeTooManyCertificatesException "TooManyCertificates"
// You've reached the limit on the number of certificates per load balancer.
//
// * ErrCodeListenerNotFoundException "ListenerNotFound"
// The specified listener does not exist.
//
// * ErrCodeTargetGroupNotFoundException "TargetGroupNotFound"
// The specified target group does not exist.
//
// * ErrCodeTargetGroupAssociationLimitException "TargetGroupAssociationLimit"
// You've reached the limit on the number of load balancers per target group.
//
// * ErrCodeIncompatibleProtocolsException "IncompatibleProtocols"
// The specified configuration is not valid with this protocol.
//
// * ErrCodeSSLPolicyNotFoundException "SSLPolicyNotFound"
// The specified SSL policy does not exist.
//
// * ErrCodeCertificateNotFoundException "CertificateNotFound"
// The specified certificate does not exist.
//
// * ErrCodeInvalidConfigurationRequestException "InvalidConfigurationRequest"
// The requested configuration is not valid.
//
// * ErrCodeUnsupportedProtocolException "UnsupportedProtocol"
// The specified protocol is not supported.
//
// * ErrCodeTooManyRegistrationsForTargetIdException "TooManyRegistrationsForTargetId"
// You've reached the limit on the number of times a target can be registered
// with a load balancer.
//
// * ErrCodeTooManyTargetsException "TooManyTargets"
// You've reached the limit on the number of targets.
//
// * ErrCodeTooManyActionsException "TooManyActions"
// You've reached the limit on the number of actions per rule.
//
// * ErrCodeInvalidLoadBalancerActionException "InvalidLoadBalancerAction"
// The requested action is not valid.
//
2020-03-26 21:07:15 +00:00
// * ErrCodeTooManyUniqueTargetGroupsPerLoadBalancerException "TooManyUniqueTargetGroupsPerLoadBalancer"
// 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.
//
2020-12-01 01:06:26 +00:00
// * ErrCodeALPNPolicyNotSupportedException "ALPNPolicyNotFound"
// The specified ALPN policy is not supported.
//
2019-09-27 21:51:53 +00:00
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyListener
func ( c * ELBV2 ) ModifyListener ( input * ModifyListenerInput ) ( * ModifyListenerOutput , error ) {
req , out := c . ModifyListenerRequest ( input )
return out , req . Send ( )
}
// ModifyListenerWithContext is the same as ModifyListener with the addition of
// the ability to pass a context and additional request options.
//
// See ModifyListener for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) ModifyListenerWithContext ( ctx aws . Context , input * ModifyListenerInput , opts ... request . Option ) ( * ModifyListenerOutput , error ) {
req , out := c . ModifyListenerRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opModifyLoadBalancerAttributes = "ModifyLoadBalancerAttributes"
// ModifyLoadBalancerAttributesRequest generates a "aws/request.Request" representing the
// client's request for the ModifyLoadBalancerAttributes operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ModifyLoadBalancerAttributes for more information on using the ModifyLoadBalancerAttributes
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the ModifyLoadBalancerAttributesRequest method.
// req, resp := client.ModifyLoadBalancerAttributesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyLoadBalancerAttributes
func ( c * ELBV2 ) ModifyLoadBalancerAttributesRequest ( input * ModifyLoadBalancerAttributesInput ) ( req * request . Request , output * ModifyLoadBalancerAttributesOutput ) {
op := & request . Operation {
Name : opModifyLoadBalancerAttributes ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & ModifyLoadBalancerAttributesInput { }
}
output = & ModifyLoadBalancerAttributesOutput { }
req = c . newRequest ( op , input , output )
return
}
// ModifyLoadBalancerAttributes API operation for Elastic Load Balancing.
//
2021-07-02 08:43:15 +00:00
// Modifies the specified attributes of the specified Application Load Balancer,
// Network Load Balancer, or Gateway Load Balancer.
2019-09-27 21:51:53 +00:00
//
// If any of the specified attributes can't be modified as requested, the call
// fails. Any existing attributes that you do not modify retain their current
// values.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation ModifyLoadBalancerAttributes for usage and error information.
//
// Returned Error Codes:
// * ErrCodeLoadBalancerNotFoundException "LoadBalancerNotFound"
// The specified load balancer does not exist.
//
// * ErrCodeInvalidConfigurationRequestException "InvalidConfigurationRequest"
// The requested configuration is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyLoadBalancerAttributes
func ( c * ELBV2 ) ModifyLoadBalancerAttributes ( input * ModifyLoadBalancerAttributesInput ) ( * ModifyLoadBalancerAttributesOutput , error ) {
req , out := c . ModifyLoadBalancerAttributesRequest ( input )
return out , req . Send ( )
}
// ModifyLoadBalancerAttributesWithContext is the same as ModifyLoadBalancerAttributes with the addition of
// the ability to pass a context and additional request options.
//
// See ModifyLoadBalancerAttributes for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) ModifyLoadBalancerAttributesWithContext ( ctx aws . Context , input * ModifyLoadBalancerAttributesInput , opts ... request . Option ) ( * ModifyLoadBalancerAttributesOutput , error ) {
req , out := c . ModifyLoadBalancerAttributesRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opModifyRule = "ModifyRule"
// ModifyRuleRequest generates a "aws/request.Request" representing the
// client's request for the ModifyRule operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ModifyRule for more information on using the ModifyRule
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the ModifyRuleRequest method.
// req, resp := client.ModifyRuleRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyRule
func ( c * ELBV2 ) ModifyRuleRequest ( input * ModifyRuleInput ) ( req * request . Request , output * ModifyRuleOutput ) {
op := & request . Operation {
Name : opModifyRule ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & ModifyRuleInput { }
}
output = & ModifyRuleOutput { }
req = c . newRequest ( op , input , output )
return
}
// ModifyRule API operation for Elastic Load Balancing.
//
2020-03-26 21:07:15 +00:00
// Replaces the specified properties of the specified rule. Any properties that
// you do not specify are unchanged.
2019-09-27 21:51:53 +00:00
//
2020-03-26 21:07:15 +00:00
// To add an item to a list, remove an item from a list, or update an item in
// a list, you must provide the entire list. For example, to add an action,
// specify a list with the current actions plus the new action.
2019-09-27 21:51:53 +00:00
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation ModifyRule for usage and error information.
//
// Returned Error Codes:
// * ErrCodeTargetGroupAssociationLimitException "TargetGroupAssociationLimit"
// You've reached the limit on the number of load balancers per target group.
//
// * ErrCodeIncompatibleProtocolsException "IncompatibleProtocols"
// The specified configuration is not valid with this protocol.
//
// * ErrCodeRuleNotFoundException "RuleNotFound"
// The specified rule does not exist.
//
// * ErrCodeOperationNotPermittedException "OperationNotPermitted"
// This operation is not allowed.
//
// * ErrCodeTooManyRegistrationsForTargetIdException "TooManyRegistrationsForTargetId"
// You've reached the limit on the number of times a target can be registered
// with a load balancer.
//
// * ErrCodeTooManyTargetsException "TooManyTargets"
// You've reached the limit on the number of targets.
//
// * ErrCodeTargetGroupNotFoundException "TargetGroupNotFound"
// The specified target group does not exist.
//
// * ErrCodeUnsupportedProtocolException "UnsupportedProtocol"
// The specified protocol is not supported.
//
// * ErrCodeTooManyActionsException "TooManyActions"
// You've reached the limit on the number of actions per rule.
//
// * ErrCodeInvalidLoadBalancerActionException "InvalidLoadBalancerAction"
// The requested action is not valid.
//
2020-03-26 21:07:15 +00:00
// * ErrCodeTooManyUniqueTargetGroupsPerLoadBalancerException "TooManyUniqueTargetGroupsPerLoadBalancer"
// 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.
//
2019-09-27 21:51:53 +00:00
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyRule
func ( c * ELBV2 ) ModifyRule ( input * ModifyRuleInput ) ( * ModifyRuleOutput , error ) {
req , out := c . ModifyRuleRequest ( input )
return out , req . Send ( )
}
// ModifyRuleWithContext is the same as ModifyRule with the addition of
// the ability to pass a context and additional request options.
//
// See ModifyRule for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) ModifyRuleWithContext ( ctx aws . Context , input * ModifyRuleInput , opts ... request . Option ) ( * ModifyRuleOutput , error ) {
req , out := c . ModifyRuleRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opModifyTargetGroup = "ModifyTargetGroup"
// ModifyTargetGroupRequest generates a "aws/request.Request" representing the
// client's request for the ModifyTargetGroup operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ModifyTargetGroup for more information on using the ModifyTargetGroup
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the ModifyTargetGroupRequest method.
// req, resp := client.ModifyTargetGroupRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTargetGroup
func ( c * ELBV2 ) ModifyTargetGroupRequest ( input * ModifyTargetGroupInput ) ( req * request . Request , output * ModifyTargetGroupOutput ) {
op := & request . Operation {
Name : opModifyTargetGroup ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & ModifyTargetGroupInput { }
}
output = & ModifyTargetGroupOutput { }
req = c . newRequest ( op , input , output )
return
}
// ModifyTargetGroup API operation for Elastic Load Balancing.
//
// Modifies the health checks used when evaluating the health state of the targets
// in the specified target group.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation ModifyTargetGroup for usage and error information.
//
// Returned Error Codes:
// * ErrCodeTargetGroupNotFoundException "TargetGroupNotFound"
// The specified target group does not exist.
//
// * ErrCodeInvalidConfigurationRequestException "InvalidConfigurationRequest"
// The requested configuration is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTargetGroup
func ( c * ELBV2 ) ModifyTargetGroup ( input * ModifyTargetGroupInput ) ( * ModifyTargetGroupOutput , error ) {
req , out := c . ModifyTargetGroupRequest ( input )
return out , req . Send ( )
}
// ModifyTargetGroupWithContext is the same as ModifyTargetGroup with the addition of
// the ability to pass a context and additional request options.
//
// See ModifyTargetGroup for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) ModifyTargetGroupWithContext ( ctx aws . Context , input * ModifyTargetGroupInput , opts ... request . Option ) ( * ModifyTargetGroupOutput , error ) {
req , out := c . ModifyTargetGroupRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opModifyTargetGroupAttributes = "ModifyTargetGroupAttributes"
// ModifyTargetGroupAttributesRequest generates a "aws/request.Request" representing the
// client's request for the ModifyTargetGroupAttributes operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See ModifyTargetGroupAttributes for more information on using the ModifyTargetGroupAttributes
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the ModifyTargetGroupAttributesRequest method.
// req, resp := client.ModifyTargetGroupAttributesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTargetGroupAttributes
func ( c * ELBV2 ) ModifyTargetGroupAttributesRequest ( input * ModifyTargetGroupAttributesInput ) ( req * request . Request , output * ModifyTargetGroupAttributesOutput ) {
op := & request . Operation {
Name : opModifyTargetGroupAttributes ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & ModifyTargetGroupAttributesInput { }
}
output = & ModifyTargetGroupAttributesOutput { }
req = c . newRequest ( op , input , output )
return
}
// ModifyTargetGroupAttributes API operation for Elastic Load Balancing.
//
// Modifies the specified attributes of the specified target group.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation ModifyTargetGroupAttributes for usage and error information.
//
// Returned Error Codes:
// * ErrCodeTargetGroupNotFoundException "TargetGroupNotFound"
// The specified target group does not exist.
//
// * ErrCodeInvalidConfigurationRequestException "InvalidConfigurationRequest"
// The requested configuration is not valid.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTargetGroupAttributes
func ( c * ELBV2 ) ModifyTargetGroupAttributes ( input * ModifyTargetGroupAttributesInput ) ( * ModifyTargetGroupAttributesOutput , error ) {
req , out := c . ModifyTargetGroupAttributesRequest ( input )
return out , req . Send ( )
}
// ModifyTargetGroupAttributesWithContext is the same as ModifyTargetGroupAttributes with the addition of
// the ability to pass a context and additional request options.
//
// See ModifyTargetGroupAttributes for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) ModifyTargetGroupAttributesWithContext ( ctx aws . Context , input * ModifyTargetGroupAttributesInput , opts ... request . Option ) ( * ModifyTargetGroupAttributesOutput , error ) {
req , out := c . ModifyTargetGroupAttributesRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opRegisterTargets = "RegisterTargets"
// RegisterTargetsRequest generates a "aws/request.Request" representing the
// client's request for the RegisterTargets operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See RegisterTargets for more information on using the RegisterTargets
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the RegisterTargetsRequest method.
// req, resp := client.RegisterTargetsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RegisterTargets
func ( c * ELBV2 ) RegisterTargetsRequest ( input * RegisterTargetsInput ) ( req * request . Request , output * RegisterTargetsOutput ) {
op := & request . Operation {
Name : opRegisterTargets ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & RegisterTargetsInput { }
}
output = & RegisterTargetsOutput { }
req = c . newRequest ( op , input , output )
req . Handlers . Unmarshal . Swap ( query . UnmarshalHandler . Name , protocol . UnmarshalDiscardBodyHandler )
return
}
// RegisterTargets API operation for Elastic Load Balancing.
//
// Registers the specified targets with the specified target group.
//
// If the target is an EC2 instance, it must be in the running state when you
// register it.
//
// By default, the load balancer routes requests to registered targets using
// the protocol and port for the target group. Alternatively, you can override
// the port for a target when you register it. You can register each EC2 instance
// or IP address with the same target group multiple times using different ports.
//
// With a Network Load Balancer, you cannot register instances by instance ID
// if they have the following instance types: C1, CC1, CC2, CG1, CG2, CR1, CS1,
// G1, G2, HI1, HS1, M1, M2, M3, and T1. You can register instances of these
// types by IP address.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation RegisterTargets for usage and error information.
//
// Returned Error Codes:
// * ErrCodeTargetGroupNotFoundException "TargetGroupNotFound"
// The specified target group does not exist.
//
// * ErrCodeTooManyTargetsException "TooManyTargets"
// You've reached the limit on the number of targets.
//
// * ErrCodeInvalidTargetException "InvalidTarget"
// The specified target does not exist, is not in the same VPC as the target
// group, or has an unsupported instance type.
//
// * ErrCodeTooManyRegistrationsForTargetIdException "TooManyRegistrationsForTargetId"
// You've reached the limit on the number of times a target can be registered
// with a load balancer.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RegisterTargets
func ( c * ELBV2 ) RegisterTargets ( input * RegisterTargetsInput ) ( * RegisterTargetsOutput , error ) {
req , out := c . RegisterTargetsRequest ( input )
return out , req . Send ( )
}
// RegisterTargetsWithContext is the same as RegisterTargets with the addition of
// the ability to pass a context and additional request options.
//
// See RegisterTargets for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) RegisterTargetsWithContext ( ctx aws . Context , input * RegisterTargetsInput , opts ... request . Option ) ( * RegisterTargetsOutput , error ) {
req , out := c . RegisterTargetsRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opRemoveListenerCertificates = "RemoveListenerCertificates"
// RemoveListenerCertificatesRequest generates a "aws/request.Request" representing the
// client's request for the RemoveListenerCertificates operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See RemoveListenerCertificates for more information on using the RemoveListenerCertificates
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the RemoveListenerCertificatesRequest method.
// req, resp := client.RemoveListenerCertificatesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RemoveListenerCertificates
func ( c * ELBV2 ) RemoveListenerCertificatesRequest ( input * RemoveListenerCertificatesInput ) ( req * request . Request , output * RemoveListenerCertificatesOutput ) {
op := & request . Operation {
Name : opRemoveListenerCertificates ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & RemoveListenerCertificatesInput { }
}
output = & RemoveListenerCertificatesOutput { }
req = c . newRequest ( op , input , output )
req . Handlers . Unmarshal . Swap ( query . UnmarshalHandler . Name , protocol . UnmarshalDiscardBodyHandler )
return
}
// RemoveListenerCertificates API operation for Elastic Load Balancing.
//
2019-12-12 01:27:03 +00:00
// Removes the specified certificate from the certificate list for the specified
// HTTPS or TLS listener.
2019-09-27 21:51:53 +00:00
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation RemoveListenerCertificates for usage and error information.
//
// Returned Error Codes:
// * ErrCodeListenerNotFoundException "ListenerNotFound"
// The specified listener does not exist.
//
// * ErrCodeOperationNotPermittedException "OperationNotPermitted"
// This operation is not allowed.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RemoveListenerCertificates
func ( c * ELBV2 ) RemoveListenerCertificates ( input * RemoveListenerCertificatesInput ) ( * RemoveListenerCertificatesOutput , error ) {
req , out := c . RemoveListenerCertificatesRequest ( input )
return out , req . Send ( )
}
// RemoveListenerCertificatesWithContext is the same as RemoveListenerCertificates with the addition of
// the ability to pass a context and additional request options.
//
// See RemoveListenerCertificates for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) RemoveListenerCertificatesWithContext ( ctx aws . Context , input * RemoveListenerCertificatesInput , opts ... request . Option ) ( * RemoveListenerCertificatesOutput , error ) {
req , out := c . RemoveListenerCertificatesRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opRemoveTags = "RemoveTags"
// RemoveTagsRequest generates a "aws/request.Request" representing the
// client's request for the RemoveTags operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See RemoveTags for more information on using the RemoveTags
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the RemoveTagsRequest method.
// req, resp := client.RemoveTagsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RemoveTags
func ( c * ELBV2 ) RemoveTagsRequest ( input * RemoveTagsInput ) ( req * request . Request , output * RemoveTagsOutput ) {
op := & request . Operation {
Name : opRemoveTags ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & RemoveTagsInput { }
}
output = & RemoveTagsOutput { }
req = c . newRequest ( op , input , output )
req . Handlers . Unmarshal . Swap ( query . UnmarshalHandler . Name , protocol . UnmarshalDiscardBodyHandler )
return
}
// RemoveTags API operation for Elastic Load Balancing.
//
2020-12-01 01:06:26 +00:00
// Removes the specified tags from the specified Elastic Load Balancing resources.
// You can remove the tags for one or more Application Load Balancers, Network
2021-07-02 08:43:15 +00:00
// Load Balancers, Gateway Load Balancers, target groups, listeners, or rules.
2019-09-27 21:51:53 +00:00
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation RemoveTags for usage and error information.
//
// Returned Error Codes:
// * ErrCodeLoadBalancerNotFoundException "LoadBalancerNotFound"
// The specified load balancer does not exist.
//
// * ErrCodeTargetGroupNotFoundException "TargetGroupNotFound"
// The specified target group does not exist.
//
// * ErrCodeListenerNotFoundException "ListenerNotFound"
// The specified listener does not exist.
//
// * ErrCodeRuleNotFoundException "RuleNotFound"
// The specified rule does not exist.
//
// * ErrCodeTooManyTagsException "TooManyTags"
// You've reached the limit on the number of tags per load balancer.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RemoveTags
func ( c * ELBV2 ) RemoveTags ( input * RemoveTagsInput ) ( * RemoveTagsOutput , error ) {
req , out := c . RemoveTagsRequest ( input )
return out , req . Send ( )
}
// RemoveTagsWithContext is the same as RemoveTags with the addition of
// the ability to pass a context and additional request options.
//
// See RemoveTags for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) RemoveTagsWithContext ( ctx aws . Context , input * RemoveTagsInput , opts ... request . Option ) ( * RemoveTagsOutput , error ) {
req , out := c . RemoveTagsRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opSetIpAddressType = "SetIpAddressType"
// SetIpAddressTypeRequest generates a "aws/request.Request" representing the
// client's request for the SetIpAddressType operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See SetIpAddressType for more information on using the SetIpAddressType
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the SetIpAddressTypeRequest method.
// req, resp := client.SetIpAddressTypeRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetIpAddressType
func ( c * ELBV2 ) SetIpAddressTypeRequest ( input * SetIpAddressTypeInput ) ( req * request . Request , output * SetIpAddressTypeOutput ) {
op := & request . Operation {
Name : opSetIpAddressType ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & SetIpAddressTypeInput { }
}
output = & SetIpAddressTypeOutput { }
req = c . newRequest ( op , input , output )
return
}
// SetIpAddressType API operation for Elastic Load Balancing.
//
// Sets the type of IP addresses used by the subnets of the specified Application
// Load Balancer or Network Load Balancer.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation SetIpAddressType for usage and error information.
//
// Returned Error Codes:
// * ErrCodeLoadBalancerNotFoundException "LoadBalancerNotFound"
// The specified load balancer does not exist.
//
// * ErrCodeInvalidConfigurationRequestException "InvalidConfigurationRequest"
// The requested configuration is not valid.
//
// * ErrCodeInvalidSubnetException "InvalidSubnet"
// The specified subnet is out of available addresses.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetIpAddressType
func ( c * ELBV2 ) SetIpAddressType ( input * SetIpAddressTypeInput ) ( * SetIpAddressTypeOutput , error ) {
req , out := c . SetIpAddressTypeRequest ( input )
return out , req . Send ( )
}
// SetIpAddressTypeWithContext is the same as SetIpAddressType with the addition of
// the ability to pass a context and additional request options.
//
// See SetIpAddressType for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) SetIpAddressTypeWithContext ( ctx aws . Context , input * SetIpAddressTypeInput , opts ... request . Option ) ( * SetIpAddressTypeOutput , error ) {
req , out := c . SetIpAddressTypeRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opSetRulePriorities = "SetRulePriorities"
// SetRulePrioritiesRequest generates a "aws/request.Request" representing the
// client's request for the SetRulePriorities operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See SetRulePriorities for more information on using the SetRulePriorities
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the SetRulePrioritiesRequest method.
// req, resp := client.SetRulePrioritiesRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetRulePriorities
func ( c * ELBV2 ) SetRulePrioritiesRequest ( input * SetRulePrioritiesInput ) ( req * request . Request , output * SetRulePrioritiesOutput ) {
op := & request . Operation {
Name : opSetRulePriorities ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & SetRulePrioritiesInput { }
}
output = & SetRulePrioritiesOutput { }
req = c . newRequest ( op , input , output )
return
}
// SetRulePriorities API operation for Elastic Load Balancing.
//
// Sets the priorities of the specified rules.
//
// You can reorder the rules as long as there are no priority conflicts in the
// new order. Any existing rules that you do not specify retain their current
// priority.
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation SetRulePriorities for usage and error information.
//
// Returned Error Codes:
// * ErrCodeRuleNotFoundException "RuleNotFound"
// The specified rule does not exist.
//
// * ErrCodePriorityInUseException "PriorityInUse"
// The specified priority is in use.
//
// * ErrCodeOperationNotPermittedException "OperationNotPermitted"
// This operation is not allowed.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetRulePriorities
func ( c * ELBV2 ) SetRulePriorities ( input * SetRulePrioritiesInput ) ( * SetRulePrioritiesOutput , error ) {
req , out := c . SetRulePrioritiesRequest ( input )
return out , req . Send ( )
}
// SetRulePrioritiesWithContext is the same as SetRulePriorities with the addition of
// the ability to pass a context and additional request options.
//
// See SetRulePriorities for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) SetRulePrioritiesWithContext ( ctx aws . Context , input * SetRulePrioritiesInput , opts ... request . Option ) ( * SetRulePrioritiesOutput , error ) {
req , out := c . SetRulePrioritiesRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opSetSecurityGroups = "SetSecurityGroups"
// SetSecurityGroupsRequest generates a "aws/request.Request" representing the
// client's request for the SetSecurityGroups operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See SetSecurityGroups for more information on using the SetSecurityGroups
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the SetSecurityGroupsRequest method.
// req, resp := client.SetSecurityGroupsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetSecurityGroups
func ( c * ELBV2 ) SetSecurityGroupsRequest ( input * SetSecurityGroupsInput ) ( req * request . Request , output * SetSecurityGroupsOutput ) {
op := & request . Operation {
Name : opSetSecurityGroups ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & SetSecurityGroupsInput { }
}
output = & SetSecurityGroupsOutput { }
req = c . newRequest ( op , input , output )
return
}
// SetSecurityGroups API operation for Elastic Load Balancing.
//
// Associates the specified security groups with the specified Application Load
// Balancer. The specified security groups override the previously associated
// security groups.
//
2021-07-02 08:43:15 +00:00
// You can't specify a security group for a Network Load Balancer or Gateway
// Load Balancer.
2019-09-27 21:51:53 +00:00
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation SetSecurityGroups for usage and error information.
//
// Returned Error Codes:
// * ErrCodeLoadBalancerNotFoundException "LoadBalancerNotFound"
// The specified load balancer does not exist.
//
// * ErrCodeInvalidConfigurationRequestException "InvalidConfigurationRequest"
// The requested configuration is not valid.
//
// * ErrCodeInvalidSecurityGroupException "InvalidSecurityGroup"
// The specified security group does not exist.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetSecurityGroups
func ( c * ELBV2 ) SetSecurityGroups ( input * SetSecurityGroupsInput ) ( * SetSecurityGroupsOutput , error ) {
req , out := c . SetSecurityGroupsRequest ( input )
return out , req . Send ( )
}
// SetSecurityGroupsWithContext is the same as SetSecurityGroups with the addition of
// the ability to pass a context and additional request options.
//
// See SetSecurityGroups for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) SetSecurityGroupsWithContext ( ctx aws . Context , input * SetSecurityGroupsInput , opts ... request . Option ) ( * SetSecurityGroupsOutput , error ) {
req , out := c . SetSecurityGroupsRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
const opSetSubnets = "SetSubnets"
// SetSubnetsRequest generates a "aws/request.Request" representing the
// client's request for the SetSubnets operation. The "output" return
// value will be populated with the request's response once the request completes
// successfully.
//
// Use "Send" method on the returned Request to send the API call to the service.
// the "output" return value is not valid until after Send returns without error.
//
// See SetSubnets for more information on using the SetSubnets
// API call, and error handling.
//
// This method is useful when you want to inject custom logic or configuration
// into the SDK's request lifecycle. Such as custom headers, or retry logic.
//
//
// // Example sending a request using the SetSubnetsRequest method.
// req, resp := client.SetSubnetsRequest(params)
//
// err := req.Send()
// if err == nil { // resp is now filled
// fmt.Println(resp)
// }
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetSubnets
func ( c * ELBV2 ) SetSubnetsRequest ( input * SetSubnetsInput ) ( req * request . Request , output * SetSubnetsOutput ) {
op := & request . Operation {
Name : opSetSubnets ,
HTTPMethod : "POST" ,
HTTPPath : "/" ,
}
if input == nil {
input = & SetSubnetsInput { }
}
output = & SetSubnetsOutput { }
req = c . newRequest ( op , input , output )
return
}
// SetSubnets API operation for Elastic Load Balancing.
//
2020-03-26 21:07:15 +00:00
// Enables the Availability Zones for the specified public subnets for the specified
2021-07-02 08:43:15 +00:00
// Application Load Balancer or Network Load Balancer. The specified subnets
// replace the previously enabled subnets.
2019-09-27 21:51:53 +00:00
//
2020-03-26 21:07:15 +00:00
// When you specify subnets for a Network Load Balancer, you must include all
// subnets that were enabled previously, with their existing configurations,
// plus any additional subnets.
2019-09-27 21:51:53 +00:00
//
// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
// with awserr.Error's Code and Message methods to get detailed information about
// the error.
//
// See the AWS API reference guide for Elastic Load Balancing's
// API operation SetSubnets for usage and error information.
//
// Returned Error Codes:
// * ErrCodeLoadBalancerNotFoundException "LoadBalancerNotFound"
// The specified load balancer does not exist.
//
// * ErrCodeInvalidConfigurationRequestException "InvalidConfigurationRequest"
// The requested configuration is not valid.
//
// * ErrCodeSubnetNotFoundException "SubnetNotFound"
// The specified subnet does not exist.
//
// * ErrCodeInvalidSubnetException "InvalidSubnet"
// The specified subnet is out of available addresses.
//
// * ErrCodeAllocationIdNotFoundException "AllocationIdNotFound"
// The specified allocation ID does not exist.
//
// * ErrCodeAvailabilityZoneNotSupportedException "AvailabilityZoneNotSupported"
// The specified Availability Zone is not supported.
//
// See also, https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetSubnets
func ( c * ELBV2 ) SetSubnets ( input * SetSubnetsInput ) ( * SetSubnetsOutput , error ) {
req , out := c . SetSubnetsRequest ( input )
return out , req . Send ( )
}
// SetSubnetsWithContext is the same as SetSubnets with the addition of
// the ability to pass a context and additional request options.
//
// See SetSubnets for details on how to use this API operation.
//
// The context must be non-nil and will be used for request cancellation. If
// the context is nil a panic will occur. In the future the SDK may create
// sub-contexts for http.Requests. See https://golang.org/pkg/context/
// for more information on using Contexts.
func ( c * ELBV2 ) SetSubnetsWithContext ( ctx aws . Context , input * SetSubnetsInput , opts ... request . Option ) ( * SetSubnetsOutput , error ) {
req , out := c . SetSubnetsRequest ( input )
req . SetContext ( ctx )
req . ApplyOptions ( opts ... )
return out , req . Send ( )
}
// Information about an action.
2020-12-01 01:06:26 +00:00
//
// Each rule must include exactly one of the following types of actions: forward,
// fixed-response, or redirect, and it must be the last action to be performed.
2019-09-27 21:51:53 +00:00
type Action struct {
_ struct { } ` type:"structure" `
// [HTTPS listeners] Information for using Amazon Cognito to authenticate users.
// Specify only when Type is authenticate-cognito.
AuthenticateCognitoConfig * AuthenticateCognitoActionConfig ` type:"structure" `
// [HTTPS listeners] Information about an identity provider that is compliant
// with OpenID Connect (OIDC). Specify only when Type is authenticate-oidc.
AuthenticateOidcConfig * AuthenticateOidcActionConfig ` type:"structure" `
// [Application Load Balancer] Information for creating an action that returns
// a custom HTTP response. Specify only when Type is fixed-response.
FixedResponseConfig * FixedResponseActionConfig ` type:"structure" `
2020-03-26 21:07:15 +00:00
// Information for creating an action that distributes requests among one or
// more target groups. For Network Load Balancers, you can specify a single
// target group. Specify only when Type is forward. If you specify both ForwardConfig
// and TargetGroupArn, you can specify only one target group using ForwardConfig
// and it must be the same target group specified in TargetGroupArn.
ForwardConfig * ForwardActionConfig ` type:"structure" `
2019-09-27 21:51:53 +00:00
// The order for the action. This value is required for rules with multiple
2020-12-01 01:06:26 +00:00
// actions. The action with the lowest value for order is performed first.
2019-09-27 21:51:53 +00:00
Order * int64 ` min:"1" type:"integer" `
// [Application Load Balancer] Information for creating a redirect action. Specify
// only when Type is redirect.
RedirectConfig * RedirectActionConfig ` type:"structure" `
// The Amazon Resource Name (ARN) of the target group. Specify only when Type
2020-03-26 21:07:15 +00:00
// is forward and you want to route to a single target group. To route to one
// or more target groups, use ForwardConfig instead.
2019-09-27 21:51:53 +00:00
TargetGroupArn * string ` type:"string" `
2020-03-26 21:07:15 +00:00
// The type of action.
2019-09-27 21:51:53 +00:00
//
// Type is a required field
Type * string ` type:"string" required:"true" enum:"ActionTypeEnum" `
}
// String returns the string representation
func ( s Action ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s Action ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * Action ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "Action" }
if s . Order != nil && * s . Order < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "Order" , 1 ) )
}
if s . Type == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Type" ) )
}
if s . AuthenticateCognitoConfig != nil {
if err := s . AuthenticateCognitoConfig . Validate ( ) ; err != nil {
invalidParams . AddNested ( "AuthenticateCognitoConfig" , err . ( request . ErrInvalidParams ) )
}
}
if s . AuthenticateOidcConfig != nil {
if err := s . AuthenticateOidcConfig . Validate ( ) ; err != nil {
invalidParams . AddNested ( "AuthenticateOidcConfig" , err . ( request . ErrInvalidParams ) )
}
}
if s . FixedResponseConfig != nil {
if err := s . FixedResponseConfig . Validate ( ) ; err != nil {
invalidParams . AddNested ( "FixedResponseConfig" , err . ( request . ErrInvalidParams ) )
}
}
if s . RedirectConfig != nil {
if err := s . RedirectConfig . Validate ( ) ; err != nil {
invalidParams . AddNested ( "RedirectConfig" , err . ( request . ErrInvalidParams ) )
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetAuthenticateCognitoConfig sets the AuthenticateCognitoConfig field's value.
func ( s * Action ) SetAuthenticateCognitoConfig ( v * AuthenticateCognitoActionConfig ) * Action {
s . AuthenticateCognitoConfig = v
return s
}
// SetAuthenticateOidcConfig sets the AuthenticateOidcConfig field's value.
func ( s * Action ) SetAuthenticateOidcConfig ( v * AuthenticateOidcActionConfig ) * Action {
s . AuthenticateOidcConfig = v
return s
}
// SetFixedResponseConfig sets the FixedResponseConfig field's value.
func ( s * Action ) SetFixedResponseConfig ( v * FixedResponseActionConfig ) * Action {
s . FixedResponseConfig = v
return s
}
2020-03-26 21:07:15 +00:00
// SetForwardConfig sets the ForwardConfig field's value.
func ( s * Action ) SetForwardConfig ( v * ForwardActionConfig ) * Action {
s . ForwardConfig = v
return s
}
2019-09-27 21:51:53 +00:00
// SetOrder sets the Order field's value.
func ( s * Action ) SetOrder ( v int64 ) * Action {
s . Order = & v
return s
}
// SetRedirectConfig sets the RedirectConfig field's value.
func ( s * Action ) SetRedirectConfig ( v * RedirectActionConfig ) * Action {
s . RedirectConfig = v
return s
}
// SetTargetGroupArn sets the TargetGroupArn field's value.
func ( s * Action ) SetTargetGroupArn ( v string ) * Action {
s . TargetGroupArn = & v
return s
}
// SetType sets the Type field's value.
func ( s * Action ) SetType ( v string ) * Action {
s . Type = & v
return s
}
type AddListenerCertificatesInput struct {
_ struct { } ` type:"structure" `
// The certificate to add. You can specify one certificate per call. Set CertificateArn
// to the certificate ARN but do not set IsDefault.
//
// Certificates is a required field
Certificates [ ] * Certificate ` type:"list" required:"true" `
// The Amazon Resource Name (ARN) of the listener.
//
// ListenerArn is a required field
ListenerArn * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s AddListenerCertificatesInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s AddListenerCertificatesInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * AddListenerCertificatesInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "AddListenerCertificatesInput" }
if s . Certificates == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Certificates" ) )
}
if s . ListenerArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ListenerArn" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetCertificates sets the Certificates field's value.
func ( s * AddListenerCertificatesInput ) SetCertificates ( v [ ] * Certificate ) * AddListenerCertificatesInput {
s . Certificates = v
return s
}
// SetListenerArn sets the ListenerArn field's value.
func ( s * AddListenerCertificatesInput ) SetListenerArn ( v string ) * AddListenerCertificatesInput {
s . ListenerArn = & v
return s
}
type AddListenerCertificatesOutput struct {
_ struct { } ` type:"structure" `
2019-12-12 01:27:03 +00:00
// Information about the certificates in the certificate list.
2019-09-27 21:51:53 +00:00
Certificates [ ] * Certificate ` type:"list" `
}
// String returns the string representation
func ( s AddListenerCertificatesOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s AddListenerCertificatesOutput ) GoString ( ) string {
return s . String ( )
}
// SetCertificates sets the Certificates field's value.
func ( s * AddListenerCertificatesOutput ) SetCertificates ( v [ ] * Certificate ) * AddListenerCertificatesOutput {
s . Certificates = v
return s
}
type AddTagsInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the resource.
//
// ResourceArns is a required field
ResourceArns [ ] * string ` type:"list" required:"true" `
2020-12-01 01:06:26 +00:00
// The tags.
2019-09-27 21:51:53 +00:00
//
// Tags is a required field
Tags [ ] * Tag ` min:"1" type:"list" required:"true" `
}
// String returns the string representation
func ( s AddTagsInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s AddTagsInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * AddTagsInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "AddTagsInput" }
if s . ResourceArns == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ResourceArns" ) )
}
if s . Tags == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Tags" ) )
}
if s . Tags != nil && len ( s . Tags ) < 1 {
invalidParams . Add ( request . NewErrParamMinLen ( "Tags" , 1 ) )
}
if s . Tags != nil {
for i , v := range s . Tags {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "Tags" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetResourceArns sets the ResourceArns field's value.
func ( s * AddTagsInput ) SetResourceArns ( v [ ] * string ) * AddTagsInput {
s . ResourceArns = v
return s
}
// SetTags sets the Tags field's value.
func ( s * AddTagsInput ) SetTags ( v [ ] * Tag ) * AddTagsInput {
s . Tags = v
return s
}
type AddTagsOutput struct {
_ struct { } ` type:"structure" `
}
// String returns the string representation
func ( s AddTagsOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s AddTagsOutput ) GoString ( ) string {
return s . String ( )
}
// Request parameters to use when integrating with Amazon Cognito to authenticate
// users.
type AuthenticateCognitoActionConfig struct {
_ struct { } ` type:"structure" `
// The query parameters (up to 10) to include in the redirect request to the
// authorization endpoint.
AuthenticationRequestExtraParams map [ string ] * string ` type:"map" `
// The behavior if the user is not authenticated. The following are possible
// values:
//
// * deny - Return an HTTP 401 Unauthorized error.
//
// * allow - Allow the request to be forwarded to the target.
//
2019-12-12 01:27:03 +00:00
// * authenticate - Redirect the request to the IdP authorization endpoint.
// This is the default value.
2019-09-27 21:51:53 +00:00
OnUnauthenticatedRequest * string ` type:"string" enum:"AuthenticateCognitoActionConditionalBehaviorEnum" `
// The set of user claims to be requested from the IdP. The default is openid.
//
// To verify which scope values your IdP supports and how to separate multiple
// values, see the documentation for your IdP.
Scope * string ` type:"string" `
// The name of the cookie used to maintain session information. The default
// is AWSELBAuthSessionCookie.
SessionCookieName * string ` type:"string" `
// The maximum duration of the authentication session, in seconds. The default
// is 604800 seconds (7 days).
SessionTimeout * int64 ` type:"long" `
// The Amazon Resource Name (ARN) of the Amazon Cognito user pool.
//
// UserPoolArn is a required field
UserPoolArn * string ` type:"string" required:"true" `
// The ID of the Amazon Cognito user pool client.
//
// UserPoolClientId is a required field
UserPoolClientId * string ` type:"string" required:"true" `
// The domain prefix or fully-qualified domain name of the Amazon Cognito user
// pool.
//
// UserPoolDomain is a required field
UserPoolDomain * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s AuthenticateCognitoActionConfig ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s AuthenticateCognitoActionConfig ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * AuthenticateCognitoActionConfig ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "AuthenticateCognitoActionConfig" }
if s . UserPoolArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "UserPoolArn" ) )
}
if s . UserPoolClientId == nil {
invalidParams . Add ( request . NewErrParamRequired ( "UserPoolClientId" ) )
}
if s . UserPoolDomain == nil {
invalidParams . Add ( request . NewErrParamRequired ( "UserPoolDomain" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetAuthenticationRequestExtraParams sets the AuthenticationRequestExtraParams field's value.
func ( s * AuthenticateCognitoActionConfig ) SetAuthenticationRequestExtraParams ( v map [ string ] * string ) * AuthenticateCognitoActionConfig {
s . AuthenticationRequestExtraParams = v
return s
}
// SetOnUnauthenticatedRequest sets the OnUnauthenticatedRequest field's value.
func ( s * AuthenticateCognitoActionConfig ) SetOnUnauthenticatedRequest ( v string ) * AuthenticateCognitoActionConfig {
s . OnUnauthenticatedRequest = & v
return s
}
// SetScope sets the Scope field's value.
func ( s * AuthenticateCognitoActionConfig ) SetScope ( v string ) * AuthenticateCognitoActionConfig {
s . Scope = & v
return s
}
// SetSessionCookieName sets the SessionCookieName field's value.
func ( s * AuthenticateCognitoActionConfig ) SetSessionCookieName ( v string ) * AuthenticateCognitoActionConfig {
s . SessionCookieName = & v
return s
}
// SetSessionTimeout sets the SessionTimeout field's value.
func ( s * AuthenticateCognitoActionConfig ) SetSessionTimeout ( v int64 ) * AuthenticateCognitoActionConfig {
s . SessionTimeout = & v
return s
}
// SetUserPoolArn sets the UserPoolArn field's value.
func ( s * AuthenticateCognitoActionConfig ) SetUserPoolArn ( v string ) * AuthenticateCognitoActionConfig {
s . UserPoolArn = & v
return s
}
// SetUserPoolClientId sets the UserPoolClientId field's value.
func ( s * AuthenticateCognitoActionConfig ) SetUserPoolClientId ( v string ) * AuthenticateCognitoActionConfig {
s . UserPoolClientId = & v
return s
}
// SetUserPoolDomain sets the UserPoolDomain field's value.
func ( s * AuthenticateCognitoActionConfig ) SetUserPoolDomain ( v string ) * AuthenticateCognitoActionConfig {
s . UserPoolDomain = & v
return s
}
// Request parameters when using an identity provider (IdP) that is compliant
// with OpenID Connect (OIDC) to authenticate users.
type AuthenticateOidcActionConfig struct {
_ struct { } ` type:"structure" `
// The query parameters (up to 10) to include in the redirect request to the
// authorization endpoint.
AuthenticationRequestExtraParams map [ string ] * string ` type:"map" `
// The authorization endpoint of the IdP. This must be a full URL, including
// the HTTPS protocol, the domain, and the path.
//
// AuthorizationEndpoint is a required field
AuthorizationEndpoint * string ` type:"string" required:"true" `
// The OAuth 2.0 client identifier.
//
// ClientId is a required field
ClientId * string ` type:"string" required:"true" `
2019-12-12 01:27:03 +00:00
// The OAuth 2.0 client secret. This parameter is required if you are creating
// a rule. If you are modifying a rule, you can omit this parameter if you set
// UseExistingClientSecret to true.
ClientSecret * string ` type:"string" `
2019-09-27 21:51:53 +00:00
// The OIDC issuer identifier of the IdP. This must be a full URL, including
// the HTTPS protocol, the domain, and the path.
//
// Issuer is a required field
Issuer * string ` type:"string" required:"true" `
// The behavior if the user is not authenticated. The following are possible
// values:
//
// * deny - Return an HTTP 401 Unauthorized error.
//
// * allow - Allow the request to be forwarded to the target.
//
2019-12-12 01:27:03 +00:00
// * authenticate - Redirect the request to the IdP authorization endpoint.
// This is the default value.
2019-09-27 21:51:53 +00:00
OnUnauthenticatedRequest * string ` type:"string" enum:"AuthenticateOidcActionConditionalBehaviorEnum" `
// The set of user claims to be requested from the IdP. The default is openid.
//
// To verify which scope values your IdP supports and how to separate multiple
// values, see the documentation for your IdP.
Scope * string ` type:"string" `
// The name of the cookie used to maintain session information. The default
// is AWSELBAuthSessionCookie.
SessionCookieName * string ` type:"string" `
// The maximum duration of the authentication session, in seconds. The default
// is 604800 seconds (7 days).
SessionTimeout * int64 ` type:"long" `
// The token endpoint of the IdP. This must be a full URL, including the HTTPS
// protocol, the domain, and the path.
//
// TokenEndpoint is a required field
TokenEndpoint * string ` type:"string" required:"true" `
2019-12-12 01:27:03 +00:00
// Indicates whether to use the existing client secret when modifying a rule.
// If you are creating a rule, you can omit this parameter or set it to false.
UseExistingClientSecret * bool ` type:"boolean" `
2019-09-27 21:51:53 +00:00
// The user info endpoint of the IdP. This must be a full URL, including the
// HTTPS protocol, the domain, and the path.
//
// UserInfoEndpoint is a required field
UserInfoEndpoint * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s AuthenticateOidcActionConfig ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s AuthenticateOidcActionConfig ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * AuthenticateOidcActionConfig ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "AuthenticateOidcActionConfig" }
if s . AuthorizationEndpoint == nil {
invalidParams . Add ( request . NewErrParamRequired ( "AuthorizationEndpoint" ) )
}
if s . ClientId == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ClientId" ) )
}
if s . Issuer == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Issuer" ) )
}
if s . TokenEndpoint == nil {
invalidParams . Add ( request . NewErrParamRequired ( "TokenEndpoint" ) )
}
if s . UserInfoEndpoint == nil {
invalidParams . Add ( request . NewErrParamRequired ( "UserInfoEndpoint" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetAuthenticationRequestExtraParams sets the AuthenticationRequestExtraParams field's value.
func ( s * AuthenticateOidcActionConfig ) SetAuthenticationRequestExtraParams ( v map [ string ] * string ) * AuthenticateOidcActionConfig {
s . AuthenticationRequestExtraParams = v
return s
}
// SetAuthorizationEndpoint sets the AuthorizationEndpoint field's value.
func ( s * AuthenticateOidcActionConfig ) SetAuthorizationEndpoint ( v string ) * AuthenticateOidcActionConfig {
s . AuthorizationEndpoint = & v
return s
}
// SetClientId sets the ClientId field's value.
func ( s * AuthenticateOidcActionConfig ) SetClientId ( v string ) * AuthenticateOidcActionConfig {
s . ClientId = & v
return s
}
// SetClientSecret sets the ClientSecret field's value.
func ( s * AuthenticateOidcActionConfig ) SetClientSecret ( v string ) * AuthenticateOidcActionConfig {
s . ClientSecret = & v
return s
}
// SetIssuer sets the Issuer field's value.
func ( s * AuthenticateOidcActionConfig ) SetIssuer ( v string ) * AuthenticateOidcActionConfig {
s . Issuer = & v
return s
}
// SetOnUnauthenticatedRequest sets the OnUnauthenticatedRequest field's value.
func ( s * AuthenticateOidcActionConfig ) SetOnUnauthenticatedRequest ( v string ) * AuthenticateOidcActionConfig {
s . OnUnauthenticatedRequest = & v
return s
}
// SetScope sets the Scope field's value.
func ( s * AuthenticateOidcActionConfig ) SetScope ( v string ) * AuthenticateOidcActionConfig {
s . Scope = & v
return s
}
// SetSessionCookieName sets the SessionCookieName field's value.
func ( s * AuthenticateOidcActionConfig ) SetSessionCookieName ( v string ) * AuthenticateOidcActionConfig {
s . SessionCookieName = & v
return s
}
// SetSessionTimeout sets the SessionTimeout field's value.
func ( s * AuthenticateOidcActionConfig ) SetSessionTimeout ( v int64 ) * AuthenticateOidcActionConfig {
s . SessionTimeout = & v
return s
}
// SetTokenEndpoint sets the TokenEndpoint field's value.
func ( s * AuthenticateOidcActionConfig ) SetTokenEndpoint ( v string ) * AuthenticateOidcActionConfig {
s . TokenEndpoint = & v
return s
}
2019-12-12 01:27:03 +00:00
// SetUseExistingClientSecret sets the UseExistingClientSecret field's value.
func ( s * AuthenticateOidcActionConfig ) SetUseExistingClientSecret ( v bool ) * AuthenticateOidcActionConfig {
s . UseExistingClientSecret = & v
return s
}
2019-09-27 21:51:53 +00:00
// SetUserInfoEndpoint sets the UserInfoEndpoint field's value.
func ( s * AuthenticateOidcActionConfig ) SetUserInfoEndpoint ( v string ) * AuthenticateOidcActionConfig {
s . UserInfoEndpoint = & v
return s
}
// Information about an Availability Zone.
type AvailabilityZone struct {
_ struct { } ` type:"structure" `
2019-12-12 01:27:03 +00:00
// [Network Load Balancers] If you need static IP addresses for your load balancer,
// you can specify one Elastic IP address per Availability Zone when you create
2020-03-26 21:07:15 +00:00
// an internal-facing load balancer. For internal load balancers, you can specify
// a private IP address from the IPv4 range of the subnet.
2019-09-27 21:51:53 +00:00
LoadBalancerAddresses [ ] * LoadBalancerAddress ` type:"list" `
2020-12-01 01:06:26 +00:00
// [Application Load Balancers on Outposts] The ID of the Outpost.
OutpostId * string ` type:"string" `
2019-12-12 01:27:03 +00:00
// The ID of the subnet. You can specify one subnet per Availability Zone.
2019-09-27 21:51:53 +00:00
SubnetId * string ` type:"string" `
// The name of the Availability Zone.
ZoneName * string ` type:"string" `
}
// String returns the string representation
func ( s AvailabilityZone ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s AvailabilityZone ) GoString ( ) string {
return s . String ( )
}
// SetLoadBalancerAddresses sets the LoadBalancerAddresses field's value.
func ( s * AvailabilityZone ) SetLoadBalancerAddresses ( v [ ] * LoadBalancerAddress ) * AvailabilityZone {
s . LoadBalancerAddresses = v
return s
}
2020-12-01 01:06:26 +00:00
// SetOutpostId sets the OutpostId field's value.
func ( s * AvailabilityZone ) SetOutpostId ( v string ) * AvailabilityZone {
s . OutpostId = & v
return s
}
2019-09-27 21:51:53 +00:00
// SetSubnetId sets the SubnetId field's value.
func ( s * AvailabilityZone ) SetSubnetId ( v string ) * AvailabilityZone {
s . SubnetId = & v
return s
}
// SetZoneName sets the ZoneName field's value.
func ( s * AvailabilityZone ) SetZoneName ( v string ) * AvailabilityZone {
s . ZoneName = & v
return s
}
// Information about an SSL server certificate.
type Certificate struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the certificate.
CertificateArn * string ` type:"string" `
// Indicates whether the certificate is the default certificate. Do not set
2019-12-12 01:27:03 +00:00
// this value when specifying a certificate as an input. This value is not included
// in the output when describing a listener, but is included when describing
// listener certificates.
2019-09-27 21:51:53 +00:00
IsDefault * bool ` type:"boolean" `
}
// String returns the string representation
func ( s Certificate ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s Certificate ) GoString ( ) string {
return s . String ( )
}
// SetCertificateArn sets the CertificateArn field's value.
func ( s * Certificate ) SetCertificateArn ( v string ) * Certificate {
s . CertificateArn = & v
return s
}
// SetIsDefault sets the IsDefault field's value.
func ( s * Certificate ) SetIsDefault ( v bool ) * Certificate {
s . IsDefault = & v
return s
}
// Information about a cipher used in a policy.
type Cipher struct {
_ struct { } ` type:"structure" `
// The name of the cipher.
Name * string ` type:"string" `
// The priority of the cipher.
Priority * int64 ` type:"integer" `
}
// String returns the string representation
func ( s Cipher ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s Cipher ) GoString ( ) string {
return s . String ( )
}
// SetName sets the Name field's value.
func ( s * Cipher ) SetName ( v string ) * Cipher {
s . Name = & v
return s
}
// SetPriority sets the Priority field's value.
func ( s * Cipher ) SetPriority ( v int64 ) * Cipher {
s . Priority = & v
return s
}
type CreateListenerInput struct {
_ struct { } ` type:"structure" `
2020-12-01 01:06:26 +00:00
// [TLS listeners] The name of the Application-Layer Protocol Negotiation (ALPN)
// policy. You can specify one policy name. The following are the possible values:
//
// * HTTP1Only
//
// * HTTP2Only
//
// * HTTP2Optional
//
// * HTTP2Preferred
//
// * None
//
2021-07-02 08:43:15 +00:00
// For more information, see ALPN policies (https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html#alpn-policies)
2020-12-01 01:06:26 +00:00
// in the Network Load Balancers Guide.
AlpnPolicy [ ] * string ` type:"list" `
2019-12-12 01:27:03 +00:00
// [HTTPS and TLS listeners] The default certificate for the listener. You must
// provide exactly one certificate. Set CertificateArn to the certificate ARN
// but do not set IsDefault.
2019-09-27 21:51:53 +00:00
Certificates [ ] * Certificate ` type:"list" `
2020-12-01 01:06:26 +00:00
// The actions for the default rule.
2019-09-27 21:51:53 +00:00
//
// DefaultActions is a required field
DefaultActions [ ] * Action ` type:"list" required:"true" `
// The Amazon Resource Name (ARN) of the load balancer.
//
// LoadBalancerArn is a required field
LoadBalancerArn * string ` type:"string" required:"true" `
2021-07-02 08:43:15 +00:00
// The port on which the load balancer is listening. You cannot specify a port
// for a Gateway Load Balancer.
Port * int64 ` min:"1" type:"integer" `
2019-09-27 21:51:53 +00:00
// The protocol for connections from clients to the load balancer. For Application
// Load Balancers, the supported protocols are HTTP and HTTPS. For Network Load
2021-07-02 08:43:15 +00:00
// Balancers, the supported protocols are TCP, TLS, UDP, and TCP_UDP. You can’ t
// specify the UDP or TCP_UDP protocol if dual-stack mode is enabled. You cannot
// specify a protocol for a Gateway Load Balancer.
Protocol * string ` type:"string" enum:"ProtocolEnum" `
2019-09-27 21:51:53 +00:00
2020-12-01 01:06:26 +00:00
// [HTTPS and TLS listeners] The security policy that defines which protocols
2021-07-02 08:43:15 +00:00
// and ciphers are supported.
2020-12-01 01:06:26 +00:00
//
2021-07-02 08:43:15 +00:00
// For more information, see Security policies (https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html#describe-ssl-policies)
// in the Application Load Balancers Guide and Security policies (https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html#describe-ssl-policies)
2020-12-01 01:06:26 +00:00
// in the Network Load Balancers Guide.
2019-09-27 21:51:53 +00:00
SslPolicy * string ` type:"string" `
2020-12-01 01:06:26 +00:00
// The tags to assign to the listener.
Tags [ ] * Tag ` min:"1" type:"list" `
2019-09-27 21:51:53 +00:00
}
// String returns the string representation
func ( s CreateListenerInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s CreateListenerInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * CreateListenerInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "CreateListenerInput" }
if s . DefaultActions == nil {
invalidParams . Add ( request . NewErrParamRequired ( "DefaultActions" ) )
}
if s . LoadBalancerArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "LoadBalancerArn" ) )
}
if s . Port != nil && * s . Port < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "Port" , 1 ) )
}
2020-12-01 01:06:26 +00:00
if s . Tags != nil && len ( s . Tags ) < 1 {
invalidParams . Add ( request . NewErrParamMinLen ( "Tags" , 1 ) )
}
2019-09-27 21:51:53 +00:00
if s . DefaultActions != nil {
for i , v := range s . DefaultActions {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "DefaultActions" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
2020-12-01 01:06:26 +00:00
if s . Tags != nil {
for i , v := range s . Tags {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "Tags" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
2019-09-27 21:51:53 +00:00
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
2020-12-01 01:06:26 +00:00
// SetAlpnPolicy sets the AlpnPolicy field's value.
func ( s * CreateListenerInput ) SetAlpnPolicy ( v [ ] * string ) * CreateListenerInput {
s . AlpnPolicy = v
return s
}
2019-09-27 21:51:53 +00:00
// SetCertificates sets the Certificates field's value.
func ( s * CreateListenerInput ) SetCertificates ( v [ ] * Certificate ) * CreateListenerInput {
s . Certificates = v
return s
}
// SetDefaultActions sets the DefaultActions field's value.
func ( s * CreateListenerInput ) SetDefaultActions ( v [ ] * Action ) * CreateListenerInput {
s . DefaultActions = v
return s
}
// SetLoadBalancerArn sets the LoadBalancerArn field's value.
func ( s * CreateListenerInput ) SetLoadBalancerArn ( v string ) * CreateListenerInput {
s . LoadBalancerArn = & v
return s
}
// SetPort sets the Port field's value.
func ( s * CreateListenerInput ) SetPort ( v int64 ) * CreateListenerInput {
s . Port = & v
return s
}
// SetProtocol sets the Protocol field's value.
func ( s * CreateListenerInput ) SetProtocol ( v string ) * CreateListenerInput {
s . Protocol = & v
return s
}
// SetSslPolicy sets the SslPolicy field's value.
func ( s * CreateListenerInput ) SetSslPolicy ( v string ) * CreateListenerInput {
s . SslPolicy = & v
return s
}
2020-12-01 01:06:26 +00:00
// SetTags sets the Tags field's value.
func ( s * CreateListenerInput ) SetTags ( v [ ] * Tag ) * CreateListenerInput {
s . Tags = v
return s
}
2019-09-27 21:51:53 +00:00
type CreateListenerOutput struct {
_ struct { } ` type:"structure" `
// Information about the listener.
Listeners [ ] * Listener ` type:"list" `
}
// String returns the string representation
func ( s CreateListenerOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s CreateListenerOutput ) GoString ( ) string {
return s . String ( )
}
// SetListeners sets the Listeners field's value.
func ( s * CreateListenerOutput ) SetListeners ( v [ ] * Listener ) * CreateListenerOutput {
s . Listeners = v
return s
}
type CreateLoadBalancerInput struct {
_ struct { } ` type:"structure" `
2020-12-01 01:06:26 +00:00
// [Application Load Balancers on Outposts] The ID of the customer-owned address
// pool (CoIP pool).
CustomerOwnedIpv4Pool * string ` type:"string" `
2021-07-02 08:43:15 +00:00
// The type of IP addresses used by the subnets for your load balancer. The
// possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and
// IPv6 addresses). Internal load balancers must use ipv4.
2019-09-27 21:51:53 +00:00
IpAddressType * string ` type:"string" enum:"IpAddressType" `
// The name of the load balancer.
//
// This name must be unique per region per account, can have a maximum of 32
// characters, must contain only alphanumeric characters or hyphens, must not
// begin or end with a hyphen, and must not begin with "internal-".
//
// Name is a required field
Name * string ` type:"string" required:"true" `
// The nodes of an Internet-facing load balancer have public IP addresses. The
// DNS name of an Internet-facing load balancer is publicly resolvable to the
// public IP addresses of the nodes. Therefore, Internet-facing load balancers
// can route requests from clients over the internet.
//
// The nodes of an internal load balancer have only private IP addresses. The
// DNS name of an internal load balancer is publicly resolvable to the private
2020-03-26 21:07:15 +00:00
// IP addresses of the nodes. Therefore, internal load balancers can route requests
// only from clients with access to the VPC for the load balancer.
2019-09-27 21:51:53 +00:00
//
// The default is an Internet-facing load balancer.
2021-07-02 08:43:15 +00:00
//
// You cannot specify a scheme for a Gateway Load Balancer.
2019-09-27 21:51:53 +00:00
Scheme * string ` type:"string" enum:"LoadBalancerSchemeEnum" `
// [Application Load Balancers] The IDs of the security groups for the load
// balancer.
SecurityGroups [ ] * string ` type:"list" `
// The IDs of the public subnets. You can specify only one subnet per Availability
// Zone. You must specify either subnets or subnet mappings.
//
// [Application Load Balancers] You must specify subnets from at least two Availability
// Zones. You cannot specify Elastic IP addresses for your subnets.
//
2020-12-01 01:06:26 +00:00
// [Application Load Balancers on Outposts] You must specify one Outpost subnet.
//
// [Application Load Balancers on Local Zones] You can specify subnets from
// one or more Local Zones.
//
2019-09-27 21:51:53 +00:00
// [Network Load Balancers] You can specify subnets from one or more Availability
2019-12-12 01:27:03 +00:00
// Zones. You can specify one Elastic IP address per subnet if you need static
2020-03-26 21:07:15 +00:00
// IP addresses for your internet-facing load balancer. For internal load balancers,
// you can specify one private IP address per subnet from the IPv4 range of
2021-07-02 08:43:15 +00:00
// the subnet. For internet-facing load balancer, you can specify one IPv6 address
// per subnet.
//
// [Gateway Load Balancers] You can specify subnets from one or more Availability
// Zones. You cannot specify Elastic IP addresses for your subnets.
2019-09-27 21:51:53 +00:00
SubnetMappings [ ] * SubnetMapping ` type:"list" `
// The IDs of the public subnets. You can specify only one subnet per Availability
// Zone. You must specify either subnets or subnet mappings.
//
// [Application Load Balancers] You must specify subnets from at least two Availability
// Zones.
//
2020-12-01 01:06:26 +00:00
// [Application Load Balancers on Outposts] You must specify one Outpost subnet.
//
// [Application Load Balancers on Local Zones] You can specify subnets from
// one or more Local Zones.
//
2019-09-27 21:51:53 +00:00
// [Network Load Balancers] You can specify subnets from one or more Availability
// Zones.
2021-07-02 08:43:15 +00:00
//
// [Gateway Load Balancers] You can specify subnets from one or more Availability
// Zones.
2019-09-27 21:51:53 +00:00
Subnets [ ] * string ` type:"list" `
2020-12-01 01:06:26 +00:00
// The tags to assign to the load balancer.
2019-09-27 21:51:53 +00:00
Tags [ ] * Tag ` min:"1" type:"list" `
// The type of load balancer. The default is application.
Type * string ` type:"string" enum:"LoadBalancerTypeEnum" `
}
// String returns the string representation
func ( s CreateLoadBalancerInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s CreateLoadBalancerInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * CreateLoadBalancerInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "CreateLoadBalancerInput" }
if s . Name == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Name" ) )
}
if s . Tags != nil && len ( s . Tags ) < 1 {
invalidParams . Add ( request . NewErrParamMinLen ( "Tags" , 1 ) )
}
if s . Tags != nil {
for i , v := range s . Tags {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "Tags" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
2020-12-01 01:06:26 +00:00
// SetCustomerOwnedIpv4Pool sets the CustomerOwnedIpv4Pool field's value.
func ( s * CreateLoadBalancerInput ) SetCustomerOwnedIpv4Pool ( v string ) * CreateLoadBalancerInput {
s . CustomerOwnedIpv4Pool = & v
return s
}
2019-09-27 21:51:53 +00:00
// SetIpAddressType sets the IpAddressType field's value.
func ( s * CreateLoadBalancerInput ) SetIpAddressType ( v string ) * CreateLoadBalancerInput {
s . IpAddressType = & v
return s
}
// SetName sets the Name field's value.
func ( s * CreateLoadBalancerInput ) SetName ( v string ) * CreateLoadBalancerInput {
s . Name = & v
return s
}
// SetScheme sets the Scheme field's value.
func ( s * CreateLoadBalancerInput ) SetScheme ( v string ) * CreateLoadBalancerInput {
s . Scheme = & v
return s
}
// SetSecurityGroups sets the SecurityGroups field's value.
func ( s * CreateLoadBalancerInput ) SetSecurityGroups ( v [ ] * string ) * CreateLoadBalancerInput {
s . SecurityGroups = v
return s
}
// SetSubnetMappings sets the SubnetMappings field's value.
func ( s * CreateLoadBalancerInput ) SetSubnetMappings ( v [ ] * SubnetMapping ) * CreateLoadBalancerInput {
s . SubnetMappings = v
return s
}
// SetSubnets sets the Subnets field's value.
func ( s * CreateLoadBalancerInput ) SetSubnets ( v [ ] * string ) * CreateLoadBalancerInput {
s . Subnets = v
return s
}
// SetTags sets the Tags field's value.
func ( s * CreateLoadBalancerInput ) SetTags ( v [ ] * Tag ) * CreateLoadBalancerInput {
s . Tags = v
return s
}
// SetType sets the Type field's value.
func ( s * CreateLoadBalancerInput ) SetType ( v string ) * CreateLoadBalancerInput {
s . Type = & v
return s
}
type CreateLoadBalancerOutput struct {
_ struct { } ` type:"structure" `
// Information about the load balancer.
LoadBalancers [ ] * LoadBalancer ` type:"list" `
}
// String returns the string representation
func ( s CreateLoadBalancerOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s CreateLoadBalancerOutput ) GoString ( ) string {
return s . String ( )
}
// SetLoadBalancers sets the LoadBalancers field's value.
func ( s * CreateLoadBalancerOutput ) SetLoadBalancers ( v [ ] * LoadBalancer ) * CreateLoadBalancerOutput {
s . LoadBalancers = v
return s
}
type CreateRuleInput struct {
_ struct { } ` type:"structure" `
2020-12-01 01:06:26 +00:00
// The actions.
2019-09-27 21:51:53 +00:00
//
// Actions is a required field
Actions [ ] * Action ` type:"list" required:"true" `
2020-12-01 01:06:26 +00:00
// The conditions.
2019-09-27 21:51:53 +00:00
//
// Conditions is a required field
Conditions [ ] * RuleCondition ` type:"list" required:"true" `
// The Amazon Resource Name (ARN) of the listener.
//
// ListenerArn is a required field
ListenerArn * string ` type:"string" required:"true" `
// The rule priority. A listener can't have multiple rules with the same priority.
//
// Priority is a required field
Priority * int64 ` min:"1" type:"integer" required:"true" `
2020-12-01 01:06:26 +00:00
// The tags to assign to the rule.
Tags [ ] * Tag ` min:"1" type:"list" `
2019-09-27 21:51:53 +00:00
}
// String returns the string representation
func ( s CreateRuleInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s CreateRuleInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * CreateRuleInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "CreateRuleInput" }
if s . Actions == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Actions" ) )
}
if s . Conditions == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Conditions" ) )
}
if s . ListenerArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ListenerArn" ) )
}
if s . Priority == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Priority" ) )
}
if s . Priority != nil && * s . Priority < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "Priority" , 1 ) )
}
2020-12-01 01:06:26 +00:00
if s . Tags != nil && len ( s . Tags ) < 1 {
invalidParams . Add ( request . NewErrParamMinLen ( "Tags" , 1 ) )
}
2019-09-27 21:51:53 +00:00
if s . Actions != nil {
for i , v := range s . Actions {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "Actions" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
2020-12-01 01:06:26 +00:00
if s . Tags != nil {
for i , v := range s . Tags {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "Tags" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
2019-09-27 21:51:53 +00:00
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetActions sets the Actions field's value.
func ( s * CreateRuleInput ) SetActions ( v [ ] * Action ) * CreateRuleInput {
s . Actions = v
return s
}
// SetConditions sets the Conditions field's value.
func ( s * CreateRuleInput ) SetConditions ( v [ ] * RuleCondition ) * CreateRuleInput {
s . Conditions = v
return s
}
// SetListenerArn sets the ListenerArn field's value.
func ( s * CreateRuleInput ) SetListenerArn ( v string ) * CreateRuleInput {
s . ListenerArn = & v
return s
}
// SetPriority sets the Priority field's value.
func ( s * CreateRuleInput ) SetPriority ( v int64 ) * CreateRuleInput {
s . Priority = & v
return s
}
2020-12-01 01:06:26 +00:00
// SetTags sets the Tags field's value.
func ( s * CreateRuleInput ) SetTags ( v [ ] * Tag ) * CreateRuleInput {
s . Tags = v
return s
}
2019-09-27 21:51:53 +00:00
type CreateRuleOutput struct {
_ struct { } ` type:"structure" `
// Information about the rule.
Rules [ ] * Rule ` type:"list" `
}
// String returns the string representation
func ( s CreateRuleOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s CreateRuleOutput ) GoString ( ) string {
return s . String ( )
}
// SetRules sets the Rules field's value.
func ( s * CreateRuleOutput ) SetRules ( v [ ] * Rule ) * CreateRuleOutput {
s . Rules = v
return s
}
type CreateTargetGroupInput struct {
_ struct { } ` type:"structure" `
2019-12-12 01:27:03 +00:00
// Indicates whether health checks are enabled. If the target type is lambda,
// health checks are disabled by default but can be enabled. If the target type
// is instance or ip, health checks are always enabled and cannot be disabled.
2019-09-27 21:51:53 +00:00
HealthCheckEnabled * bool ` type:"boolean" `
// The approximate amount of time, in seconds, between health checks of an individual
2021-07-02 08:43:15 +00:00
// target. If the target group protocol is TCP, TLS, UDP, or TCP_UDP, the supported
// values are 10 and 30 seconds. If the target group protocol is HTTP or HTTPS,
// the default is 30 seconds. If the target group protocol is GENEVE, the default
// is 10 seconds. If the target type is lambda, the default is 35 seconds.
2019-09-27 21:51:53 +00:00
HealthCheckIntervalSeconds * int64 ` min:"5" type:"integer" `
2020-12-01 01:06:26 +00:00
// [HTTP/HTTPS health checks] The destination for health checks on the targets.
//
// [HTTP1 or HTTP2 protocol version] The ping path. The default is /.
//
// [GRPC protocol version] The path of a custom health check method with the
// format /package.service/method. The default is /AWS.ALB/healthcheck.
2019-09-27 21:51:53 +00:00
HealthCheckPath * string ` min:"1" type:"string" `
// The port the load balancer uses when performing health checks on targets.
2021-07-02 08:43:15 +00:00
// If the protocol is HTTP, HTTPS, TCP, TLS, UDP, or TCP_UDP, the default is
// traffic-port, which is the port on which each target receives traffic from
// the load balancer. If the protocol is GENEVE, the default is port 80.
2019-09-27 21:51:53 +00:00
HealthCheckPort * string ` type:"string" `
// The protocol the load balancer uses when performing health checks on targets.
2021-07-02 08:43:15 +00:00
// For Application Load Balancers, the default is HTTP. For Network Load Balancers
// and Gateway Load Balancers, the default is TCP. The TCP protocol is not supported
// for health checks if the protocol of the target group is HTTP or HTTPS. The
// GENEVE, TLS, UDP, and TCP_UDP protocols are not supported for health checks.
2019-09-27 21:51:53 +00:00
HealthCheckProtocol * string ` type:"string" enum:"ProtocolEnum" `
// The amount of time, in seconds, during which no response from a target means
2021-07-02 08:43:15 +00:00
// a failed health check. For target groups with a protocol of HTTP, HTTPS,
// or GENEVE, the default is 5 seconds. For target groups with a protocol of
// TCP or TLS, this value must be 6 seconds for HTTP health checks and 10 seconds
// for TCP and HTTPS health checks. If the target type is lambda, the default
// is 30 seconds.
2019-09-27 21:51:53 +00:00
HealthCheckTimeoutSeconds * int64 ` min:"2" type:"integer" `
// The number of consecutive health checks successes required before considering
2019-12-12 01:27:03 +00:00
// an unhealthy target healthy. For target groups with a protocol of HTTP or
2021-07-02 08:43:15 +00:00
// HTTPS, the default is 5. For target groups with a protocol of TCP, TLS, or
// GENEVE, the default is 3. If the target type is lambda, the default is 5.
2019-09-27 21:51:53 +00:00
HealthyThresholdCount * int64 ` min:"2" type:"integer" `
2020-12-01 01:06:26 +00:00
// [HTTP/HTTPS health checks] The HTTP or gRPC codes to use when checking for
// a successful response from a target.
2019-09-27 21:51:53 +00:00
Matcher * Matcher ` type:"structure" `
// The name of the target group.
//
// This name must be unique per region per account, can have a maximum of 32
// characters, must contain only alphanumeric characters or hyphens, and must
// not begin or end with a hyphen.
//
// Name is a required field
Name * string ` type:"string" required:"true" `
// The port on which the targets receive traffic. This port is used unless you
// specify a port override when registering the target. If the target is a Lambda
2021-07-02 08:43:15 +00:00
// function, this parameter does not apply. If the protocol is GENEVE, the supported
// port is 6081.
2019-09-27 21:51:53 +00:00
Port * int64 ` min:"1" type:"integer" `
// The protocol to use for routing traffic to the targets. For Application Load
// Balancers, the supported protocols are HTTP and HTTPS. For Network Load Balancers,
2021-07-02 08:43:15 +00:00
// the supported protocols are TCP, TLS, UDP, or TCP_UDP. For Gateway Load Balancers,
// the supported protocol is GENEVE. A TCP_UDP listener must be associated with
// a TCP_UDP target group. If the target is a Lambda function, this parameter
// does not apply.
2019-09-27 21:51:53 +00:00
Protocol * string ` type:"string" enum:"ProtocolEnum" `
2020-12-01 01:06:26 +00:00
// [HTTP/HTTPS protocol] The protocol version. Specify GRPC to send requests
// to targets using gRPC. Specify HTTP2 to send requests to targets using HTTP/2.
// The default is HTTP1, which sends requests to targets using HTTP/1.1.
ProtocolVersion * string ` type:"string" `
// The tags to assign to the target group.
Tags [ ] * Tag ` min:"1" type:"list" `
2019-09-27 21:51:53 +00:00
// The type of target that you must specify when registering targets with this
// target group. You can't specify targets for a target group using more than
// one target type.
//
2021-07-02 08:43:15 +00:00
// * instance - Register targets by instance ID. This is the default value.
2019-09-27 21:51:53 +00:00
//
2021-07-02 08:43:15 +00:00
// * ip - Register targets by IP address. You can specify IP addresses from
// the subnets of the virtual private cloud (VPC) for the target group, the
// RFC 1918 range (10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16), and the
// RFC 6598 range (100.64.0.0/10). You can't specify publicly routable IP
// addresses.
2019-09-27 21:51:53 +00:00
//
2021-07-02 08:43:15 +00:00
// * lambda - Register a single Lambda function as a target.
2019-09-27 21:51:53 +00:00
TargetType * string ` type:"string" enum:"TargetTypeEnum" `
// The number of consecutive health check failures required before considering
2021-07-02 08:43:15 +00:00
// a target unhealthy. If the target group protocol is HTTP or HTTPS, the default
// is 2. If the target group protocol is TCP or TLS, this value must be the
// same as the healthy threshold count. If the target group protocol is GENEVE,
// the default is 3. If the target type is lambda, the default is 2.
2019-09-27 21:51:53 +00:00
UnhealthyThresholdCount * int64 ` min:"2" type:"integer" `
// The identifier of the virtual private cloud (VPC). If the target is a Lambda
2019-12-12 01:27:03 +00:00
// function, this parameter does not apply. Otherwise, this parameter is required.
2019-09-27 21:51:53 +00:00
VpcId * string ` type:"string" `
}
// String returns the string representation
func ( s CreateTargetGroupInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s CreateTargetGroupInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * CreateTargetGroupInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "CreateTargetGroupInput" }
if s . HealthCheckIntervalSeconds != nil && * s . HealthCheckIntervalSeconds < 5 {
invalidParams . Add ( request . NewErrParamMinValue ( "HealthCheckIntervalSeconds" , 5 ) )
}
if s . HealthCheckPath != nil && len ( * s . HealthCheckPath ) < 1 {
invalidParams . Add ( request . NewErrParamMinLen ( "HealthCheckPath" , 1 ) )
}
if s . HealthCheckTimeoutSeconds != nil && * s . HealthCheckTimeoutSeconds < 2 {
invalidParams . Add ( request . NewErrParamMinValue ( "HealthCheckTimeoutSeconds" , 2 ) )
}
if s . HealthyThresholdCount != nil && * s . HealthyThresholdCount < 2 {
invalidParams . Add ( request . NewErrParamMinValue ( "HealthyThresholdCount" , 2 ) )
}
if s . Name == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Name" ) )
}
if s . Port != nil && * s . Port < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "Port" , 1 ) )
}
2020-12-01 01:06:26 +00:00
if s . Tags != nil && len ( s . Tags ) < 1 {
invalidParams . Add ( request . NewErrParamMinLen ( "Tags" , 1 ) )
}
2019-09-27 21:51:53 +00:00
if s . UnhealthyThresholdCount != nil && * s . UnhealthyThresholdCount < 2 {
invalidParams . Add ( request . NewErrParamMinValue ( "UnhealthyThresholdCount" , 2 ) )
}
2020-12-01 01:06:26 +00:00
if s . Tags != nil {
for i , v := range s . Tags {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "Tags" , i ) , err . ( request . ErrInvalidParams ) )
}
2019-09-27 21:51:53 +00:00
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetHealthCheckEnabled sets the HealthCheckEnabled field's value.
func ( s * CreateTargetGroupInput ) SetHealthCheckEnabled ( v bool ) * CreateTargetGroupInput {
s . HealthCheckEnabled = & v
return s
}
// SetHealthCheckIntervalSeconds sets the HealthCheckIntervalSeconds field's value.
func ( s * CreateTargetGroupInput ) SetHealthCheckIntervalSeconds ( v int64 ) * CreateTargetGroupInput {
s . HealthCheckIntervalSeconds = & v
return s
}
// SetHealthCheckPath sets the HealthCheckPath field's value.
func ( s * CreateTargetGroupInput ) SetHealthCheckPath ( v string ) * CreateTargetGroupInput {
s . HealthCheckPath = & v
return s
}
// SetHealthCheckPort sets the HealthCheckPort field's value.
func ( s * CreateTargetGroupInput ) SetHealthCheckPort ( v string ) * CreateTargetGroupInput {
s . HealthCheckPort = & v
return s
}
// SetHealthCheckProtocol sets the HealthCheckProtocol field's value.
func ( s * CreateTargetGroupInput ) SetHealthCheckProtocol ( v string ) * CreateTargetGroupInput {
s . HealthCheckProtocol = & v
return s
}
// SetHealthCheckTimeoutSeconds sets the HealthCheckTimeoutSeconds field's value.
func ( s * CreateTargetGroupInput ) SetHealthCheckTimeoutSeconds ( v int64 ) * CreateTargetGroupInput {
s . HealthCheckTimeoutSeconds = & v
return s
}
// SetHealthyThresholdCount sets the HealthyThresholdCount field's value.
func ( s * CreateTargetGroupInput ) SetHealthyThresholdCount ( v int64 ) * CreateTargetGroupInput {
s . HealthyThresholdCount = & v
return s
}
// SetMatcher sets the Matcher field's value.
func ( s * CreateTargetGroupInput ) SetMatcher ( v * Matcher ) * CreateTargetGroupInput {
s . Matcher = v
return s
}
// SetName sets the Name field's value.
func ( s * CreateTargetGroupInput ) SetName ( v string ) * CreateTargetGroupInput {
s . Name = & v
return s
}
// SetPort sets the Port field's value.
func ( s * CreateTargetGroupInput ) SetPort ( v int64 ) * CreateTargetGroupInput {
s . Port = & v
return s
}
// SetProtocol sets the Protocol field's value.
func ( s * CreateTargetGroupInput ) SetProtocol ( v string ) * CreateTargetGroupInput {
s . Protocol = & v
return s
}
2020-12-01 01:06:26 +00:00
// SetProtocolVersion sets the ProtocolVersion field's value.
func ( s * CreateTargetGroupInput ) SetProtocolVersion ( v string ) * CreateTargetGroupInput {
s . ProtocolVersion = & v
return s
}
// SetTags sets the Tags field's value.
func ( s * CreateTargetGroupInput ) SetTags ( v [ ] * Tag ) * CreateTargetGroupInput {
s . Tags = v
return s
}
2019-09-27 21:51:53 +00:00
// SetTargetType sets the TargetType field's value.
func ( s * CreateTargetGroupInput ) SetTargetType ( v string ) * CreateTargetGroupInput {
s . TargetType = & v
return s
}
// SetUnhealthyThresholdCount sets the UnhealthyThresholdCount field's value.
func ( s * CreateTargetGroupInput ) SetUnhealthyThresholdCount ( v int64 ) * CreateTargetGroupInput {
s . UnhealthyThresholdCount = & v
return s
}
// SetVpcId sets the VpcId field's value.
func ( s * CreateTargetGroupInput ) SetVpcId ( v string ) * CreateTargetGroupInput {
s . VpcId = & v
return s
}
type CreateTargetGroupOutput struct {
_ struct { } ` type:"structure" `
// Information about the target group.
TargetGroups [ ] * TargetGroup ` type:"list" `
}
// String returns the string representation
func ( s CreateTargetGroupOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s CreateTargetGroupOutput ) GoString ( ) string {
return s . String ( )
}
// SetTargetGroups sets the TargetGroups field's value.
func ( s * CreateTargetGroupOutput ) SetTargetGroups ( v [ ] * TargetGroup ) * CreateTargetGroupOutput {
s . TargetGroups = v
return s
}
type DeleteListenerInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the listener.
//
// ListenerArn is a required field
ListenerArn * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s DeleteListenerInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeleteListenerInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DeleteListenerInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DeleteListenerInput" }
if s . ListenerArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ListenerArn" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetListenerArn sets the ListenerArn field's value.
func ( s * DeleteListenerInput ) SetListenerArn ( v string ) * DeleteListenerInput {
s . ListenerArn = & v
return s
}
type DeleteListenerOutput struct {
_ struct { } ` type:"structure" `
}
// String returns the string representation
func ( s DeleteListenerOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeleteListenerOutput ) GoString ( ) string {
return s . String ( )
}
type DeleteLoadBalancerInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the load balancer.
//
// LoadBalancerArn is a required field
LoadBalancerArn * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s DeleteLoadBalancerInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeleteLoadBalancerInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DeleteLoadBalancerInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DeleteLoadBalancerInput" }
if s . LoadBalancerArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "LoadBalancerArn" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetLoadBalancerArn sets the LoadBalancerArn field's value.
func ( s * DeleteLoadBalancerInput ) SetLoadBalancerArn ( v string ) * DeleteLoadBalancerInput {
s . LoadBalancerArn = & v
return s
}
type DeleteLoadBalancerOutput struct {
_ struct { } ` type:"structure" `
}
// String returns the string representation
func ( s DeleteLoadBalancerOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeleteLoadBalancerOutput ) GoString ( ) string {
return s . String ( )
}
type DeleteRuleInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the rule.
//
// RuleArn is a required field
RuleArn * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s DeleteRuleInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeleteRuleInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DeleteRuleInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DeleteRuleInput" }
if s . RuleArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "RuleArn" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetRuleArn sets the RuleArn field's value.
func ( s * DeleteRuleInput ) SetRuleArn ( v string ) * DeleteRuleInput {
s . RuleArn = & v
return s
}
type DeleteRuleOutput struct {
_ struct { } ` type:"structure" `
}
// String returns the string representation
func ( s DeleteRuleOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeleteRuleOutput ) GoString ( ) string {
return s . String ( )
}
type DeleteTargetGroupInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the target group.
//
// TargetGroupArn is a required field
TargetGroupArn * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s DeleteTargetGroupInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeleteTargetGroupInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DeleteTargetGroupInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DeleteTargetGroupInput" }
if s . TargetGroupArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "TargetGroupArn" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetTargetGroupArn sets the TargetGroupArn field's value.
func ( s * DeleteTargetGroupInput ) SetTargetGroupArn ( v string ) * DeleteTargetGroupInput {
s . TargetGroupArn = & v
return s
}
type DeleteTargetGroupOutput struct {
_ struct { } ` type:"structure" `
}
// String returns the string representation
func ( s DeleteTargetGroupOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeleteTargetGroupOutput ) GoString ( ) string {
return s . String ( )
}
type DeregisterTargetsInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the target group.
//
// TargetGroupArn is a required field
TargetGroupArn * string ` type:"string" required:"true" `
// The targets. If you specified a port override when you registered a target,
// you must specify both the target ID and the port when you deregister it.
//
// Targets is a required field
Targets [ ] * TargetDescription ` type:"list" required:"true" `
}
// String returns the string representation
func ( s DeregisterTargetsInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeregisterTargetsInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DeregisterTargetsInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DeregisterTargetsInput" }
if s . TargetGroupArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "TargetGroupArn" ) )
}
if s . Targets == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Targets" ) )
}
if s . Targets != nil {
for i , v := range s . Targets {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "Targets" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetTargetGroupArn sets the TargetGroupArn field's value.
func ( s * DeregisterTargetsInput ) SetTargetGroupArn ( v string ) * DeregisterTargetsInput {
s . TargetGroupArn = & v
return s
}
// SetTargets sets the Targets field's value.
func ( s * DeregisterTargetsInput ) SetTargets ( v [ ] * TargetDescription ) * DeregisterTargetsInput {
s . Targets = v
return s
}
type DeregisterTargetsOutput struct {
_ struct { } ` type:"structure" `
}
// String returns the string representation
func ( s DeregisterTargetsOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DeregisterTargetsOutput ) GoString ( ) string {
return s . String ( )
}
type DescribeAccountLimitsInput struct {
_ struct { } ` type:"structure" `
// The marker for the next set of results. (You received this marker from a
// previous call.)
Marker * string ` type:"string" `
// The maximum number of results to return with this call.
PageSize * int64 ` min:"1" type:"integer" `
}
// String returns the string representation
func ( s DescribeAccountLimitsInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeAccountLimitsInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DescribeAccountLimitsInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DescribeAccountLimitsInput" }
if s . PageSize != nil && * s . PageSize < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "PageSize" , 1 ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetMarker sets the Marker field's value.
func ( s * DescribeAccountLimitsInput ) SetMarker ( v string ) * DescribeAccountLimitsInput {
s . Marker = & v
return s
}
// SetPageSize sets the PageSize field's value.
func ( s * DescribeAccountLimitsInput ) SetPageSize ( v int64 ) * DescribeAccountLimitsInput {
s . PageSize = & v
return s
}
type DescribeAccountLimitsOutput struct {
_ struct { } ` type:"structure" `
// Information about the limits.
Limits [ ] * Limit ` type:"list" `
2019-12-12 01:27:03 +00:00
// If there are additional results, this is the marker for the next set of results.
// Otherwise, this is null.
2019-09-27 21:51:53 +00:00
NextMarker * string ` type:"string" `
}
// String returns the string representation
func ( s DescribeAccountLimitsOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeAccountLimitsOutput ) GoString ( ) string {
return s . String ( )
}
// SetLimits sets the Limits field's value.
func ( s * DescribeAccountLimitsOutput ) SetLimits ( v [ ] * Limit ) * DescribeAccountLimitsOutput {
s . Limits = v
return s
}
// SetNextMarker sets the NextMarker field's value.
func ( s * DescribeAccountLimitsOutput ) SetNextMarker ( v string ) * DescribeAccountLimitsOutput {
s . NextMarker = & v
return s
}
type DescribeListenerCertificatesInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Names (ARN) of the listener.
//
// ListenerArn is a required field
ListenerArn * string ` type:"string" required:"true" `
// The marker for the next set of results. (You received this marker from a
// previous call.)
Marker * string ` type:"string" `
// The maximum number of results to return with this call.
PageSize * int64 ` min:"1" type:"integer" `
}
// String returns the string representation
func ( s DescribeListenerCertificatesInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeListenerCertificatesInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DescribeListenerCertificatesInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DescribeListenerCertificatesInput" }
if s . ListenerArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ListenerArn" ) )
}
if s . PageSize != nil && * s . PageSize < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "PageSize" , 1 ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetListenerArn sets the ListenerArn field's value.
func ( s * DescribeListenerCertificatesInput ) SetListenerArn ( v string ) * DescribeListenerCertificatesInput {
s . ListenerArn = & v
return s
}
// SetMarker sets the Marker field's value.
func ( s * DescribeListenerCertificatesInput ) SetMarker ( v string ) * DescribeListenerCertificatesInput {
s . Marker = & v
return s
}
// SetPageSize sets the PageSize field's value.
func ( s * DescribeListenerCertificatesInput ) SetPageSize ( v int64 ) * DescribeListenerCertificatesInput {
s . PageSize = & v
return s
}
type DescribeListenerCertificatesOutput struct {
_ struct { } ` type:"structure" `
// Information about the certificates.
Certificates [ ] * Certificate ` type:"list" `
2019-12-12 01:27:03 +00:00
// If there are additional results, this is the marker for the next set of results.
// Otherwise, this is null.
2019-09-27 21:51:53 +00:00
NextMarker * string ` type:"string" `
}
// String returns the string representation
func ( s DescribeListenerCertificatesOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeListenerCertificatesOutput ) GoString ( ) string {
return s . String ( )
}
// SetCertificates sets the Certificates field's value.
func ( s * DescribeListenerCertificatesOutput ) SetCertificates ( v [ ] * Certificate ) * DescribeListenerCertificatesOutput {
s . Certificates = v
return s
}
// SetNextMarker sets the NextMarker field's value.
func ( s * DescribeListenerCertificatesOutput ) SetNextMarker ( v string ) * DescribeListenerCertificatesOutput {
s . NextMarker = & v
return s
}
type DescribeListenersInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Names (ARN) of the listeners.
ListenerArns [ ] * string ` type:"list" `
// The Amazon Resource Name (ARN) of the load balancer.
LoadBalancerArn * string ` type:"string" `
// The marker for the next set of results. (You received this marker from a
// previous call.)
Marker * string ` type:"string" `
// The maximum number of results to return with this call.
PageSize * int64 ` min:"1" type:"integer" `
}
// String returns the string representation
func ( s DescribeListenersInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeListenersInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DescribeListenersInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DescribeListenersInput" }
if s . PageSize != nil && * s . PageSize < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "PageSize" , 1 ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetListenerArns sets the ListenerArns field's value.
func ( s * DescribeListenersInput ) SetListenerArns ( v [ ] * string ) * DescribeListenersInput {
s . ListenerArns = v
return s
}
// SetLoadBalancerArn sets the LoadBalancerArn field's value.
func ( s * DescribeListenersInput ) SetLoadBalancerArn ( v string ) * DescribeListenersInput {
s . LoadBalancerArn = & v
return s
}
// SetMarker sets the Marker field's value.
func ( s * DescribeListenersInput ) SetMarker ( v string ) * DescribeListenersInput {
s . Marker = & v
return s
}
// SetPageSize sets the PageSize field's value.
func ( s * DescribeListenersInput ) SetPageSize ( v int64 ) * DescribeListenersInput {
s . PageSize = & v
return s
}
type DescribeListenersOutput struct {
_ struct { } ` type:"structure" `
// Information about the listeners.
Listeners [ ] * Listener ` type:"list" `
2019-12-12 01:27:03 +00:00
// If there are additional results, this is the marker for the next set of results.
// Otherwise, this is null.
2019-09-27 21:51:53 +00:00
NextMarker * string ` type:"string" `
}
// String returns the string representation
func ( s DescribeListenersOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeListenersOutput ) GoString ( ) string {
return s . String ( )
}
// SetListeners sets the Listeners field's value.
func ( s * DescribeListenersOutput ) SetListeners ( v [ ] * Listener ) * DescribeListenersOutput {
s . Listeners = v
return s
}
// SetNextMarker sets the NextMarker field's value.
func ( s * DescribeListenersOutput ) SetNextMarker ( v string ) * DescribeListenersOutput {
s . NextMarker = & v
return s
}
type DescribeLoadBalancerAttributesInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the load balancer.
//
// LoadBalancerArn is a required field
LoadBalancerArn * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s DescribeLoadBalancerAttributesInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeLoadBalancerAttributesInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DescribeLoadBalancerAttributesInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DescribeLoadBalancerAttributesInput" }
if s . LoadBalancerArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "LoadBalancerArn" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetLoadBalancerArn sets the LoadBalancerArn field's value.
func ( s * DescribeLoadBalancerAttributesInput ) SetLoadBalancerArn ( v string ) * DescribeLoadBalancerAttributesInput {
s . LoadBalancerArn = & v
return s
}
type DescribeLoadBalancerAttributesOutput struct {
_ struct { } ` type:"structure" `
// Information about the load balancer attributes.
Attributes [ ] * LoadBalancerAttribute ` type:"list" `
}
// String returns the string representation
func ( s DescribeLoadBalancerAttributesOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeLoadBalancerAttributesOutput ) GoString ( ) string {
return s . String ( )
}
// SetAttributes sets the Attributes field's value.
func ( s * DescribeLoadBalancerAttributesOutput ) SetAttributes ( v [ ] * LoadBalancerAttribute ) * DescribeLoadBalancerAttributesOutput {
s . Attributes = v
return s
}
type DescribeLoadBalancersInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Names (ARN) of the load balancers. You can specify up
// to 20 load balancers in a single call.
LoadBalancerArns [ ] * string ` type:"list" `
// The marker for the next set of results. (You received this marker from a
// previous call.)
Marker * string ` type:"string" `
// The names of the load balancers.
Names [ ] * string ` type:"list" `
// The maximum number of results to return with this call.
PageSize * int64 ` min:"1" type:"integer" `
}
// String returns the string representation
func ( s DescribeLoadBalancersInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeLoadBalancersInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DescribeLoadBalancersInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DescribeLoadBalancersInput" }
if s . PageSize != nil && * s . PageSize < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "PageSize" , 1 ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetLoadBalancerArns sets the LoadBalancerArns field's value.
func ( s * DescribeLoadBalancersInput ) SetLoadBalancerArns ( v [ ] * string ) * DescribeLoadBalancersInput {
s . LoadBalancerArns = v
return s
}
// SetMarker sets the Marker field's value.
func ( s * DescribeLoadBalancersInput ) SetMarker ( v string ) * DescribeLoadBalancersInput {
s . Marker = & v
return s
}
// SetNames sets the Names field's value.
func ( s * DescribeLoadBalancersInput ) SetNames ( v [ ] * string ) * DescribeLoadBalancersInput {
s . Names = v
return s
}
// SetPageSize sets the PageSize field's value.
func ( s * DescribeLoadBalancersInput ) SetPageSize ( v int64 ) * DescribeLoadBalancersInput {
s . PageSize = & v
return s
}
type DescribeLoadBalancersOutput struct {
_ struct { } ` type:"structure" `
// Information about the load balancers.
LoadBalancers [ ] * LoadBalancer ` type:"list" `
2019-12-12 01:27:03 +00:00
// If there are additional results, this is the marker for the next set of results.
// Otherwise, this is null.
2019-09-27 21:51:53 +00:00
NextMarker * string ` type:"string" `
}
// String returns the string representation
func ( s DescribeLoadBalancersOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeLoadBalancersOutput ) GoString ( ) string {
return s . String ( )
}
// SetLoadBalancers sets the LoadBalancers field's value.
func ( s * DescribeLoadBalancersOutput ) SetLoadBalancers ( v [ ] * LoadBalancer ) * DescribeLoadBalancersOutput {
s . LoadBalancers = v
return s
}
// SetNextMarker sets the NextMarker field's value.
func ( s * DescribeLoadBalancersOutput ) SetNextMarker ( v string ) * DescribeLoadBalancersOutput {
s . NextMarker = & v
return s
}
type DescribeRulesInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the listener.
ListenerArn * string ` type:"string" `
// The marker for the next set of results. (You received this marker from a
// previous call.)
Marker * string ` type:"string" `
// The maximum number of results to return with this call.
PageSize * int64 ` min:"1" type:"integer" `
// The Amazon Resource Names (ARN) of the rules.
RuleArns [ ] * string ` type:"list" `
}
// String returns the string representation
func ( s DescribeRulesInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeRulesInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DescribeRulesInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DescribeRulesInput" }
if s . PageSize != nil && * s . PageSize < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "PageSize" , 1 ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetListenerArn sets the ListenerArn field's value.
func ( s * DescribeRulesInput ) SetListenerArn ( v string ) * DescribeRulesInput {
s . ListenerArn = & v
return s
}
// SetMarker sets the Marker field's value.
func ( s * DescribeRulesInput ) SetMarker ( v string ) * DescribeRulesInput {
s . Marker = & v
return s
}
// SetPageSize sets the PageSize field's value.
func ( s * DescribeRulesInput ) SetPageSize ( v int64 ) * DescribeRulesInput {
s . PageSize = & v
return s
}
// SetRuleArns sets the RuleArns field's value.
func ( s * DescribeRulesInput ) SetRuleArns ( v [ ] * string ) * DescribeRulesInput {
s . RuleArns = v
return s
}
type DescribeRulesOutput struct {
_ struct { } ` type:"structure" `
2019-12-12 01:27:03 +00:00
// If there are additional results, this is the marker for the next set of results.
// Otherwise, this is null.
2019-09-27 21:51:53 +00:00
NextMarker * string ` type:"string" `
// Information about the rules.
Rules [ ] * Rule ` type:"list" `
}
// String returns the string representation
func ( s DescribeRulesOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeRulesOutput ) GoString ( ) string {
return s . String ( )
}
// SetNextMarker sets the NextMarker field's value.
func ( s * DescribeRulesOutput ) SetNextMarker ( v string ) * DescribeRulesOutput {
s . NextMarker = & v
return s
}
// SetRules sets the Rules field's value.
func ( s * DescribeRulesOutput ) SetRules ( v [ ] * Rule ) * DescribeRulesOutput {
s . Rules = v
return s
}
type DescribeSSLPoliciesInput struct {
_ struct { } ` type:"structure" `
// The marker for the next set of results. (You received this marker from a
// previous call.)
Marker * string ` type:"string" `
// The names of the policies.
Names [ ] * string ` type:"list" `
// The maximum number of results to return with this call.
PageSize * int64 ` min:"1" type:"integer" `
}
// String returns the string representation
func ( s DescribeSSLPoliciesInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeSSLPoliciesInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DescribeSSLPoliciesInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DescribeSSLPoliciesInput" }
if s . PageSize != nil && * s . PageSize < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "PageSize" , 1 ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetMarker sets the Marker field's value.
func ( s * DescribeSSLPoliciesInput ) SetMarker ( v string ) * DescribeSSLPoliciesInput {
s . Marker = & v
return s
}
// SetNames sets the Names field's value.
func ( s * DescribeSSLPoliciesInput ) SetNames ( v [ ] * string ) * DescribeSSLPoliciesInput {
s . Names = v
return s
}
// SetPageSize sets the PageSize field's value.
func ( s * DescribeSSLPoliciesInput ) SetPageSize ( v int64 ) * DescribeSSLPoliciesInput {
s . PageSize = & v
return s
}
type DescribeSSLPoliciesOutput struct {
_ struct { } ` type:"structure" `
2019-12-12 01:27:03 +00:00
// If there are additional results, this is the marker for the next set of results.
// Otherwise, this is null.
2019-09-27 21:51:53 +00:00
NextMarker * string ` type:"string" `
2020-12-01 01:06:26 +00:00
// Information about the security policies.
2019-09-27 21:51:53 +00:00
SslPolicies [ ] * SslPolicy ` type:"list" `
}
// String returns the string representation
func ( s DescribeSSLPoliciesOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeSSLPoliciesOutput ) GoString ( ) string {
return s . String ( )
}
// SetNextMarker sets the NextMarker field's value.
func ( s * DescribeSSLPoliciesOutput ) SetNextMarker ( v string ) * DescribeSSLPoliciesOutput {
s . NextMarker = & v
return s
}
// SetSslPolicies sets the SslPolicies field's value.
func ( s * DescribeSSLPoliciesOutput ) SetSslPolicies ( v [ ] * SslPolicy ) * DescribeSSLPoliciesOutput {
s . SslPolicies = v
return s
}
type DescribeTagsInput struct {
_ struct { } ` type:"structure" `
2020-12-01 01:06:26 +00:00
// The Amazon Resource Names (ARN) of the resources. You can specify up to 20
// resources in a single call.
2019-09-27 21:51:53 +00:00
//
// ResourceArns is a required field
ResourceArns [ ] * string ` type:"list" required:"true" `
}
// String returns the string representation
func ( s DescribeTagsInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeTagsInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DescribeTagsInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DescribeTagsInput" }
if s . ResourceArns == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ResourceArns" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetResourceArns sets the ResourceArns field's value.
func ( s * DescribeTagsInput ) SetResourceArns ( v [ ] * string ) * DescribeTagsInput {
s . ResourceArns = v
return s
}
type DescribeTagsOutput struct {
_ struct { } ` type:"structure" `
// Information about the tags.
TagDescriptions [ ] * TagDescription ` type:"list" `
}
// String returns the string representation
func ( s DescribeTagsOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeTagsOutput ) GoString ( ) string {
return s . String ( )
}
// SetTagDescriptions sets the TagDescriptions field's value.
func ( s * DescribeTagsOutput ) SetTagDescriptions ( v [ ] * TagDescription ) * DescribeTagsOutput {
s . TagDescriptions = v
return s
}
type DescribeTargetGroupAttributesInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the target group.
//
// TargetGroupArn is a required field
TargetGroupArn * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s DescribeTargetGroupAttributesInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeTargetGroupAttributesInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DescribeTargetGroupAttributesInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DescribeTargetGroupAttributesInput" }
if s . TargetGroupArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "TargetGroupArn" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetTargetGroupArn sets the TargetGroupArn field's value.
func ( s * DescribeTargetGroupAttributesInput ) SetTargetGroupArn ( v string ) * DescribeTargetGroupAttributesInput {
s . TargetGroupArn = & v
return s
}
type DescribeTargetGroupAttributesOutput struct {
_ struct { } ` type:"structure" `
// Information about the target group attributes
Attributes [ ] * TargetGroupAttribute ` type:"list" `
}
// String returns the string representation
func ( s DescribeTargetGroupAttributesOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeTargetGroupAttributesOutput ) GoString ( ) string {
return s . String ( )
}
// SetAttributes sets the Attributes field's value.
func ( s * DescribeTargetGroupAttributesOutput ) SetAttributes ( v [ ] * TargetGroupAttribute ) * DescribeTargetGroupAttributesOutput {
s . Attributes = v
return s
}
type DescribeTargetGroupsInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the load balancer.
LoadBalancerArn * string ` type:"string" `
// The marker for the next set of results. (You received this marker from a
// previous call.)
Marker * string ` type:"string" `
// The names of the target groups.
Names [ ] * string ` type:"list" `
// The maximum number of results to return with this call.
PageSize * int64 ` min:"1" type:"integer" `
// The Amazon Resource Names (ARN) of the target groups.
TargetGroupArns [ ] * string ` type:"list" `
}
// String returns the string representation
func ( s DescribeTargetGroupsInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeTargetGroupsInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DescribeTargetGroupsInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DescribeTargetGroupsInput" }
if s . PageSize != nil && * s . PageSize < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "PageSize" , 1 ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetLoadBalancerArn sets the LoadBalancerArn field's value.
func ( s * DescribeTargetGroupsInput ) SetLoadBalancerArn ( v string ) * DescribeTargetGroupsInput {
s . LoadBalancerArn = & v
return s
}
// SetMarker sets the Marker field's value.
func ( s * DescribeTargetGroupsInput ) SetMarker ( v string ) * DescribeTargetGroupsInput {
s . Marker = & v
return s
}
// SetNames sets the Names field's value.
func ( s * DescribeTargetGroupsInput ) SetNames ( v [ ] * string ) * DescribeTargetGroupsInput {
s . Names = v
return s
}
// SetPageSize sets the PageSize field's value.
func ( s * DescribeTargetGroupsInput ) SetPageSize ( v int64 ) * DescribeTargetGroupsInput {
s . PageSize = & v
return s
}
// SetTargetGroupArns sets the TargetGroupArns field's value.
func ( s * DescribeTargetGroupsInput ) SetTargetGroupArns ( v [ ] * string ) * DescribeTargetGroupsInput {
s . TargetGroupArns = v
return s
}
type DescribeTargetGroupsOutput struct {
_ struct { } ` type:"structure" `
2019-12-12 01:27:03 +00:00
// If there are additional results, this is the marker for the next set of results.
// Otherwise, this is null.
2019-09-27 21:51:53 +00:00
NextMarker * string ` type:"string" `
// Information about the target groups.
TargetGroups [ ] * TargetGroup ` type:"list" `
}
// String returns the string representation
func ( s DescribeTargetGroupsOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeTargetGroupsOutput ) GoString ( ) string {
return s . String ( )
}
// SetNextMarker sets the NextMarker field's value.
func ( s * DescribeTargetGroupsOutput ) SetNextMarker ( v string ) * DescribeTargetGroupsOutput {
s . NextMarker = & v
return s
}
// SetTargetGroups sets the TargetGroups field's value.
func ( s * DescribeTargetGroupsOutput ) SetTargetGroups ( v [ ] * TargetGroup ) * DescribeTargetGroupsOutput {
s . TargetGroups = v
return s
}
type DescribeTargetHealthInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the target group.
//
// TargetGroupArn is a required field
TargetGroupArn * string ` type:"string" required:"true" `
// The targets.
Targets [ ] * TargetDescription ` type:"list" `
}
// String returns the string representation
func ( s DescribeTargetHealthInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeTargetHealthInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * DescribeTargetHealthInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "DescribeTargetHealthInput" }
if s . TargetGroupArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "TargetGroupArn" ) )
}
if s . Targets != nil {
for i , v := range s . Targets {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "Targets" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetTargetGroupArn sets the TargetGroupArn field's value.
func ( s * DescribeTargetHealthInput ) SetTargetGroupArn ( v string ) * DescribeTargetHealthInput {
s . TargetGroupArn = & v
return s
}
// SetTargets sets the Targets field's value.
func ( s * DescribeTargetHealthInput ) SetTargets ( v [ ] * TargetDescription ) * DescribeTargetHealthInput {
s . Targets = v
return s
}
type DescribeTargetHealthOutput struct {
_ struct { } ` type:"structure" `
// Information about the health of the targets.
TargetHealthDescriptions [ ] * TargetHealthDescription ` type:"list" `
}
// String returns the string representation
func ( s DescribeTargetHealthOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s DescribeTargetHealthOutput ) GoString ( ) string {
return s . String ( )
}
// SetTargetHealthDescriptions sets the TargetHealthDescriptions field's value.
func ( s * DescribeTargetHealthOutput ) SetTargetHealthDescriptions ( v [ ] * TargetHealthDescription ) * DescribeTargetHealthOutput {
s . TargetHealthDescriptions = v
return s
}
// Information about an action that returns a custom HTTP response.
type FixedResponseActionConfig struct {
_ struct { } ` type:"structure" `
// The content type.
//
// Valid Values: text/plain | text/css | text/html | application/javascript
// | application/json
ContentType * string ` type:"string" `
// The message.
MessageBody * string ` type:"string" `
// The HTTP response code (2XX, 4XX, or 5XX).
//
// StatusCode is a required field
StatusCode * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s FixedResponseActionConfig ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s FixedResponseActionConfig ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * FixedResponseActionConfig ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "FixedResponseActionConfig" }
if s . StatusCode == nil {
invalidParams . Add ( request . NewErrParamRequired ( "StatusCode" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetContentType sets the ContentType field's value.
func ( s * FixedResponseActionConfig ) SetContentType ( v string ) * FixedResponseActionConfig {
s . ContentType = & v
return s
}
// SetMessageBody sets the MessageBody field's value.
func ( s * FixedResponseActionConfig ) SetMessageBody ( v string ) * FixedResponseActionConfig {
s . MessageBody = & v
return s
}
// SetStatusCode sets the StatusCode field's value.
func ( s * FixedResponseActionConfig ) SetStatusCode ( v string ) * FixedResponseActionConfig {
s . StatusCode = & v
return s
}
2020-03-26 21:07:15 +00:00
// Information about a forward action.
type ForwardActionConfig struct {
_ struct { } ` type:"structure" `
// The target group stickiness for the rule.
TargetGroupStickinessConfig * TargetGroupStickinessConfig ` type:"structure" `
// One or more target groups. For Network Load Balancers, you can specify a
// single target group.
TargetGroups [ ] * TargetGroupTuple ` type:"list" `
}
// String returns the string representation
func ( s ForwardActionConfig ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ForwardActionConfig ) GoString ( ) string {
return s . String ( )
}
// SetTargetGroupStickinessConfig sets the TargetGroupStickinessConfig field's value.
func ( s * ForwardActionConfig ) SetTargetGroupStickinessConfig ( v * TargetGroupStickinessConfig ) * ForwardActionConfig {
s . TargetGroupStickinessConfig = v
return s
}
// SetTargetGroups sets the TargetGroups field's value.
func ( s * ForwardActionConfig ) SetTargetGroups ( v [ ] * TargetGroupTuple ) * ForwardActionConfig {
s . TargetGroups = v
return s
}
2019-12-12 01:27:03 +00:00
// Information about a host header condition.
type HostHeaderConditionConfig struct {
_ struct { } ` type:"structure" `
// One or more host names. The maximum size of each name is 128 characters.
// The comparison is case insensitive. The following wildcard characters are
// supported: * (matches 0 or more characters) and ? (matches exactly 1 character).
//
// If you specify multiple strings, the condition is satisfied if one of the
// strings matches the host name.
Values [ ] * string ` type:"list" `
}
// String returns the string representation
func ( s HostHeaderConditionConfig ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s HostHeaderConditionConfig ) GoString ( ) string {
return s . String ( )
}
// SetValues sets the Values field's value.
func ( s * HostHeaderConditionConfig ) SetValues ( v [ ] * string ) * HostHeaderConditionConfig {
s . Values = v
return s
}
// Information about an HTTP header condition.
//
// There is a set of standard HTTP header fields. You can also define custom
// HTTP header fields.
type HttpHeaderConditionConfig struct {
_ struct { } ` type:"structure" `
// The name of the HTTP header field. The maximum size is 40 characters. The
// header name is case insensitive. The allowed characters are specified by
// RFC 7230. Wildcards are not supported.
//
// You can't use an HTTP header condition to specify the host header. Use HostHeaderConditionConfig
// to specify a host header condition.
HttpHeaderName * string ` type:"string" `
// One or more strings to compare against the value of the HTTP header. The
// maximum size of each string is 128 characters. The comparison strings are
// case insensitive. The following wildcard characters are supported: * (matches
// 0 or more characters) and ? (matches exactly 1 character).
//
// If the same header appears multiple times in the request, we search them
// in order until a match is found.
//
// If you specify multiple strings, the condition is satisfied if one of the
// strings matches the value of the HTTP header. To require that all of the
// strings are a match, create one condition per string.
Values [ ] * string ` type:"list" `
}
// String returns the string representation
func ( s HttpHeaderConditionConfig ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s HttpHeaderConditionConfig ) GoString ( ) string {
return s . String ( )
}
// SetHttpHeaderName sets the HttpHeaderName field's value.
func ( s * HttpHeaderConditionConfig ) SetHttpHeaderName ( v string ) * HttpHeaderConditionConfig {
s . HttpHeaderName = & v
return s
}
// SetValues sets the Values field's value.
func ( s * HttpHeaderConditionConfig ) SetValues ( v [ ] * string ) * HttpHeaderConditionConfig {
s . Values = v
return s
}
// Information about an HTTP method condition.
//
// HTTP defines a set of request methods, also referred to as HTTP verbs. For
// more information, see the HTTP Method Registry (https://www.iana.org/assignments/http-methods/http-methods.xhtml).
// You can also define custom HTTP methods.
type HttpRequestMethodConditionConfig struct {
_ struct { } ` type:"structure" `
// The name of the request method. The maximum size is 40 characters. The allowed
// characters are A-Z, hyphen (-), and underscore (_). The comparison is case
// sensitive. Wildcards are not supported; therefore, the method name must be
// an exact match.
//
// If you specify multiple strings, the condition is satisfied if one of the
// strings matches the HTTP request method. We recommend that you route GET
// and HEAD requests in the same way, because the response to a HEAD request
// may be cached.
Values [ ] * string ` type:"list" `
}
// String returns the string representation
func ( s HttpRequestMethodConditionConfig ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s HttpRequestMethodConditionConfig ) GoString ( ) string {
return s . String ( )
}
// SetValues sets the Values field's value.
func ( s * HttpRequestMethodConditionConfig ) SetValues ( v [ ] * string ) * HttpRequestMethodConditionConfig {
s . Values = v
return s
}
2019-09-27 21:51:53 +00:00
// Information about an Elastic Load Balancing resource limit for your AWS account.
type Limit struct {
_ struct { } ` type:"structure" `
// The maximum value of the limit.
Max * string ` type:"string" `
// The name of the limit. The possible values are:
//
// * application-load-balancers
//
2021-07-02 08:43:15 +00:00
// * condition-values-per-alb-rule
//
// * condition-wildcards-per-alb-rule
//
// * gateway-load-balancers
//
// * gateway-load-balancers-per-vpc
//
// * geneve-target-groups
//
2019-09-27 21:51:53 +00:00
// * listeners-per-application-load-balancer
//
// * listeners-per-network-load-balancer
//
// * network-load-balancers
//
// * rules-per-application-load-balancer
//
// * target-groups
//
2020-03-26 21:07:15 +00:00
// * target-groups-per-action-on-application-load-balancer
//
// * target-groups-per-action-on-network-load-balancer
//
// * target-groups-per-application-load-balancer
//
2019-09-27 21:51:53 +00:00
// * targets-per-application-load-balancer
//
2021-07-02 08:43:15 +00:00
// * targets-per-availability-zone-per-gateway-load-balancer
//
2019-09-27 21:51:53 +00:00
// * targets-per-availability-zone-per-network-load-balancer
//
// * targets-per-network-load-balancer
Name * string ` type:"string" `
}
// String returns the string representation
func ( s Limit ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s Limit ) GoString ( ) string {
return s . String ( )
}
// SetMax sets the Max field's value.
func ( s * Limit ) SetMax ( v string ) * Limit {
s . Max = & v
return s
}
// SetName sets the Name field's value.
func ( s * Limit ) SetName ( v string ) * Limit {
s . Name = & v
return s
}
// Information about a listener.
type Listener struct {
_ struct { } ` type:"structure" `
2020-12-01 01:06:26 +00:00
// [TLS listener] The name of the Application-Layer Protocol Negotiation (ALPN)
// policy.
AlpnPolicy [ ] * string ` type:"list" `
2019-12-12 01:27:03 +00:00
// [HTTPS or TLS listener] The default certificate for the listener.
2019-09-27 21:51:53 +00:00
Certificates [ ] * Certificate ` type:"list" `
// The default actions for the listener.
DefaultActions [ ] * Action ` type:"list" `
// The Amazon Resource Name (ARN) of the listener.
ListenerArn * string ` type:"string" `
// The Amazon Resource Name (ARN) of the load balancer.
LoadBalancerArn * string ` type:"string" `
// The port on which the load balancer is listening.
Port * int64 ` min:"1" type:"integer" `
// The protocol for connections from clients to the load balancer.
Protocol * string ` type:"string" enum:"ProtocolEnum" `
2020-12-01 01:06:26 +00:00
// [HTTPS or TLS listener] The security policy that defines which protocols
// and ciphers are supported.
2019-09-27 21:51:53 +00:00
SslPolicy * string ` type:"string" `
}
// String returns the string representation
func ( s Listener ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s Listener ) GoString ( ) string {
return s . String ( )
}
2020-12-01 01:06:26 +00:00
// SetAlpnPolicy sets the AlpnPolicy field's value.
func ( s * Listener ) SetAlpnPolicy ( v [ ] * string ) * Listener {
s . AlpnPolicy = v
return s
}
2019-09-27 21:51:53 +00:00
// SetCertificates sets the Certificates field's value.
func ( s * Listener ) SetCertificates ( v [ ] * Certificate ) * Listener {
s . Certificates = v
return s
}
// SetDefaultActions sets the DefaultActions field's value.
func ( s * Listener ) SetDefaultActions ( v [ ] * Action ) * Listener {
s . DefaultActions = v
return s
}
// SetListenerArn sets the ListenerArn field's value.
func ( s * Listener ) SetListenerArn ( v string ) * Listener {
s . ListenerArn = & v
return s
}
// SetLoadBalancerArn sets the LoadBalancerArn field's value.
func ( s * Listener ) SetLoadBalancerArn ( v string ) * Listener {
s . LoadBalancerArn = & v
return s
}
// SetPort sets the Port field's value.
func ( s * Listener ) SetPort ( v int64 ) * Listener {
s . Port = & v
return s
}
// SetProtocol sets the Protocol field's value.
func ( s * Listener ) SetProtocol ( v string ) * Listener {
s . Protocol = & v
return s
}
// SetSslPolicy sets the SslPolicy field's value.
func ( s * Listener ) SetSslPolicy ( v string ) * Listener {
s . SslPolicy = & v
return s
}
// Information about a load balancer.
type LoadBalancer struct {
_ struct { } ` type:"structure" `
2020-12-01 01:06:26 +00:00
// The subnets for the load balancer.
2019-09-27 21:51:53 +00:00
AvailabilityZones [ ] * AvailabilityZone ` type:"list" `
// The ID of the Amazon Route 53 hosted zone associated with the load balancer.
CanonicalHostedZoneId * string ` type:"string" `
// The date and time the load balancer was created.
CreatedTime * time . Time ` type:"timestamp" `
2020-12-01 01:06:26 +00:00
// [Application Load Balancers on Outposts] The ID of the customer-owned address
// pool.
CustomerOwnedIpv4Pool * string ` type:"string" `
2019-09-27 21:51:53 +00:00
// The public DNS name of the load balancer.
DNSName * string ` type:"string" `
// The type of IP addresses used by the subnets for your load balancer. The
// possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and
// IPv6 addresses).
IpAddressType * string ` type:"string" enum:"IpAddressType" `
// The Amazon Resource Name (ARN) of the load balancer.
LoadBalancerArn * string ` type:"string" `
// The name of the load balancer.
LoadBalancerName * string ` type:"string" `
// The nodes of an Internet-facing load balancer have public IP addresses. The
// DNS name of an Internet-facing load balancer is publicly resolvable to the
// public IP addresses of the nodes. Therefore, Internet-facing load balancers
// can route requests from clients over the internet.
//
// The nodes of an internal load balancer have only private IP addresses. The
// DNS name of an internal load balancer is publicly resolvable to the private
2020-03-26 21:07:15 +00:00
// IP addresses of the nodes. Therefore, internal load balancers can route requests
// only from clients with access to the VPC for the load balancer.
2019-09-27 21:51:53 +00:00
Scheme * string ` type:"string" enum:"LoadBalancerSchemeEnum" `
// The IDs of the security groups for the load balancer.
SecurityGroups [ ] * string ` type:"list" `
// The state of the load balancer.
State * LoadBalancerState ` type:"structure" `
// The type of load balancer.
Type * string ` type:"string" enum:"LoadBalancerTypeEnum" `
// The ID of the VPC for the load balancer.
VpcId * string ` type:"string" `
}
// String returns the string representation
func ( s LoadBalancer ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s LoadBalancer ) GoString ( ) string {
return s . String ( )
}
// SetAvailabilityZones sets the AvailabilityZones field's value.
func ( s * LoadBalancer ) SetAvailabilityZones ( v [ ] * AvailabilityZone ) * LoadBalancer {
s . AvailabilityZones = v
return s
}
// SetCanonicalHostedZoneId sets the CanonicalHostedZoneId field's value.
func ( s * LoadBalancer ) SetCanonicalHostedZoneId ( v string ) * LoadBalancer {
s . CanonicalHostedZoneId = & v
return s
}
// SetCreatedTime sets the CreatedTime field's value.
func ( s * LoadBalancer ) SetCreatedTime ( v time . Time ) * LoadBalancer {
s . CreatedTime = & v
return s
}
2020-12-01 01:06:26 +00:00
// SetCustomerOwnedIpv4Pool sets the CustomerOwnedIpv4Pool field's value.
func ( s * LoadBalancer ) SetCustomerOwnedIpv4Pool ( v string ) * LoadBalancer {
s . CustomerOwnedIpv4Pool = & v
return s
}
2019-09-27 21:51:53 +00:00
// SetDNSName sets the DNSName field's value.
func ( s * LoadBalancer ) SetDNSName ( v string ) * LoadBalancer {
s . DNSName = & v
return s
}
// SetIpAddressType sets the IpAddressType field's value.
func ( s * LoadBalancer ) SetIpAddressType ( v string ) * LoadBalancer {
s . IpAddressType = & v
return s
}
// SetLoadBalancerArn sets the LoadBalancerArn field's value.
func ( s * LoadBalancer ) SetLoadBalancerArn ( v string ) * LoadBalancer {
s . LoadBalancerArn = & v
return s
}
// SetLoadBalancerName sets the LoadBalancerName field's value.
func ( s * LoadBalancer ) SetLoadBalancerName ( v string ) * LoadBalancer {
s . LoadBalancerName = & v
return s
}
// SetScheme sets the Scheme field's value.
func ( s * LoadBalancer ) SetScheme ( v string ) * LoadBalancer {
s . Scheme = & v
return s
}
// SetSecurityGroups sets the SecurityGroups field's value.
func ( s * LoadBalancer ) SetSecurityGroups ( v [ ] * string ) * LoadBalancer {
s . SecurityGroups = v
return s
}
// SetState sets the State field's value.
func ( s * LoadBalancer ) SetState ( v * LoadBalancerState ) * LoadBalancer {
s . State = v
return s
}
// SetType sets the Type field's value.
func ( s * LoadBalancer ) SetType ( v string ) * LoadBalancer {
s . Type = & v
return s
}
// SetVpcId sets the VpcId field's value.
func ( s * LoadBalancer ) SetVpcId ( v string ) * LoadBalancer {
s . VpcId = & v
return s
}
// Information about a static IP address for a load balancer.
type LoadBalancerAddress struct {
_ struct { } ` type:"structure" `
2020-03-26 21:07:15 +00:00
// [Network Load Balancers] The allocation ID of the Elastic IP address for
// an internal-facing load balancer.
2019-09-27 21:51:53 +00:00
AllocationId * string ` type:"string" `
2021-07-02 08:43:15 +00:00
// [Network Load Balancers] The IPv6 address.
IPv6Address * string ` type:"string" `
2019-09-27 21:51:53 +00:00
// The static IP address.
IpAddress * string ` type:"string" `
2020-03-26 21:07:15 +00:00
// [Network Load Balancers] The private IPv4 address for an internal load balancer.
PrivateIPv4Address * string ` type:"string" `
2019-09-27 21:51:53 +00:00
}
// String returns the string representation
func ( s LoadBalancerAddress ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s LoadBalancerAddress ) GoString ( ) string {
return s . String ( )
}
// SetAllocationId sets the AllocationId field's value.
func ( s * LoadBalancerAddress ) SetAllocationId ( v string ) * LoadBalancerAddress {
s . AllocationId = & v
return s
}
2021-07-02 08:43:15 +00:00
// SetIPv6Address sets the IPv6Address field's value.
func ( s * LoadBalancerAddress ) SetIPv6Address ( v string ) * LoadBalancerAddress {
s . IPv6Address = & v
return s
}
2019-09-27 21:51:53 +00:00
// SetIpAddress sets the IpAddress field's value.
func ( s * LoadBalancerAddress ) SetIpAddress ( v string ) * LoadBalancerAddress {
s . IpAddress = & v
return s
}
2020-03-26 21:07:15 +00:00
// SetPrivateIPv4Address sets the PrivateIPv4Address field's value.
func ( s * LoadBalancerAddress ) SetPrivateIPv4Address ( v string ) * LoadBalancerAddress {
s . PrivateIPv4Address = & v
return s
}
2019-09-27 21:51:53 +00:00
// Information about a load balancer attribute.
type LoadBalancerAttribute struct {
_ struct { } ` type:"structure" `
// The name of the attribute.
//
2021-07-02 08:43:15 +00:00
// The following attribute is supported by all load balancers:
//
// * deletion_protection.enabled - Indicates whether deletion protection
// is enabled. The value is true or false. The default is false.
//
2019-09-27 21:51:53 +00:00
// The following attributes are supported by both Application Load Balancers
// and Network Load Balancers:
//
// * access_logs.s3.enabled - Indicates whether access logs are enabled.
// The value is true or false. The default is false.
//
// * access_logs.s3.bucket - The name of the S3 bucket for the access logs.
// This attribute is required if access logs are enabled. The bucket must
// exist in the same region as the load balancer and have a bucket policy
// that grants Elastic Load Balancing permissions to write to the bucket.
//
// * access_logs.s3.prefix - The prefix for the location in the S3 bucket
// for the access logs.
//
2019-12-12 01:27:03 +00:00
// The following attributes are supported by only Application Load Balancers:
//
2019-09-27 21:51:53 +00:00
// * idle_timeout.timeout_seconds - The idle timeout value, in seconds. The
// valid range is 1-4000 seconds. The default is 60 seconds.
//
2020-12-01 01:06:26 +00:00
// * routing.http.desync_mitigation_mode - Determines how the load balancer
// handles requests that might pose a security risk to your application.
// The possible values are monitor, defensive, and strictest. The default
// is defensive.
//
2020-03-26 21:07:15 +00:00
// * routing.http.drop_invalid_header_fields.enabled - Indicates whether
// HTTP headers with invalid header fields are removed by the load balancer
// (true) or routed to targets (false). The default is false.
//
2019-09-27 21:51:53 +00:00
// * routing.http2.enabled - Indicates whether HTTP/2 is enabled. The value
2020-12-01 01:06:26 +00:00
// is true or false. The default is true. Elastic Load Balancing requires
// that message header names contain only alphanumeric characters and hyphens.
2019-09-27 21:51:53 +00:00
//
2021-07-02 08:43:15 +00:00
// * waf.fail_open.enabled - Indicates whether to allow a WAF-enabled load
// balancer to route requests to targets if it is unable to forward the request
// to AWS WAF. The value is true or false. The default is false.
//
// The following attribute is supported by Network Load Balancers and Gateway
// Load Balancers:
2019-09-27 21:51:53 +00:00
//
// * load_balancing.cross_zone.enabled - Indicates whether cross-zone load
// balancing is enabled. The value is true or false. The default is false.
Key * string ` type:"string" `
// The value of the attribute.
Value * string ` type:"string" `
}
// String returns the string representation
func ( s LoadBalancerAttribute ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s LoadBalancerAttribute ) GoString ( ) string {
return s . String ( )
}
// SetKey sets the Key field's value.
func ( s * LoadBalancerAttribute ) SetKey ( v string ) * LoadBalancerAttribute {
s . Key = & v
return s
}
// SetValue sets the Value field's value.
func ( s * LoadBalancerAttribute ) SetValue ( v string ) * LoadBalancerAttribute {
s . Value = & v
return s
}
// Information about the state of the load balancer.
type LoadBalancerState struct {
_ struct { } ` type:"structure" `
// The state code. The initial state of the load balancer is provisioning. After
// the load balancer is fully set up and ready to route traffic, its state is
2021-07-02 08:43:15 +00:00
// active. If load balancer is routing traffic but does not have the resources
// it needs to scale, its state isactive_impaired. If the load balancer could
// not be set up, its state is failed.
2019-09-27 21:51:53 +00:00
Code * string ` type:"string" enum:"LoadBalancerStateEnum" `
// A description of the state.
Reason * string ` type:"string" `
}
// String returns the string representation
func ( s LoadBalancerState ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s LoadBalancerState ) GoString ( ) string {
return s . String ( )
}
// SetCode sets the Code field's value.
func ( s * LoadBalancerState ) SetCode ( v string ) * LoadBalancerState {
s . Code = & v
return s
}
// SetReason sets the Reason field's value.
func ( s * LoadBalancerState ) SetReason ( v string ) * LoadBalancerState {
s . Reason = & v
return s
}
2020-12-01 01:06:26 +00:00
// The codes to use when checking for a successful response from a target. If
// the protocol version is gRPC, these are gRPC codes. Otherwise, these are
// HTTP codes.
2019-09-27 21:51:53 +00:00
type Matcher struct {
_ struct { } ` type:"structure" `
2020-12-01 01:06:26 +00:00
// You can specify values between 0 and 99. You can specify multiple values
// (for example, "0,1") or a range of values (for example, "0-5"). The default
// value is 12.
GrpcCode * string ` type:"string" `
2019-09-27 21:51:53 +00:00
// For Application Load Balancers, you can specify values between 200 and 499,
// and the default value is 200. You can specify multiple values (for example,
// "200,202") or a range of values (for example, "200-299").
//
2021-07-02 08:43:15 +00:00
// For Network Load Balancers and Gateway Load Balancers, this must be "200– 399".
2020-12-01 01:06:26 +00:00
HttpCode * string ` type:"string" `
2019-09-27 21:51:53 +00:00
}
// String returns the string representation
func ( s Matcher ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s Matcher ) GoString ( ) string {
return s . String ( )
}
2020-12-01 01:06:26 +00:00
// SetGrpcCode sets the GrpcCode field's value.
func ( s * Matcher ) SetGrpcCode ( v string ) * Matcher {
s . GrpcCode = & v
return s
2019-09-27 21:51:53 +00:00
}
// SetHttpCode sets the HttpCode field's value.
func ( s * Matcher ) SetHttpCode ( v string ) * Matcher {
s . HttpCode = & v
return s
}
type ModifyListenerInput struct {
_ struct { } ` type:"structure" `
2020-12-01 01:06:26 +00:00
// [TLS listeners] The name of the Application-Layer Protocol Negotiation (ALPN)
// policy. You can specify one policy name. The following are the possible values:
//
// * HTTP1Only
//
// * HTTP2Only
//
// * HTTP2Optional
//
// * HTTP2Preferred
//
// * None
//
2021-07-02 08:43:15 +00:00
// For more information, see ALPN policies (https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html#alpn-policies)
2020-12-01 01:06:26 +00:00
// in the Network Load Balancers Guide.
AlpnPolicy [ ] * string ` type:"list" `
2019-12-12 01:27:03 +00:00
// [HTTPS and TLS listeners] The default certificate for the listener. You must
// provide exactly one certificate. Set CertificateArn to the certificate ARN
// but do not set IsDefault.
2019-09-27 21:51:53 +00:00
Certificates [ ] * Certificate ` type:"list" `
2020-12-01 01:06:26 +00:00
// The actions for the default rule.
2019-09-27 21:51:53 +00:00
DefaultActions [ ] * Action ` type:"list" `
// The Amazon Resource Name (ARN) of the listener.
//
// ListenerArn is a required field
ListenerArn * string ` type:"string" required:"true" `
2021-07-02 08:43:15 +00:00
// The port for connections from clients to the load balancer. You cannot specify
// a port for a Gateway Load Balancer.
2019-09-27 21:51:53 +00:00
Port * int64 ` min:"1" type:"integer" `
// The protocol for connections from clients to the load balancer. Application
// Load Balancers support the HTTP and HTTPS protocols. Network Load Balancers
2021-07-02 08:43:15 +00:00
// support the TCP, TLS, UDP, and TCP_UDP protocols. You can’ t change the
// protocol to UDP or TCP_UDP if dual-stack mode is enabled. You cannot specify
// a protocol for a Gateway Load Balancer.
2019-09-27 21:51:53 +00:00
Protocol * string ` type:"string" enum:"ProtocolEnum" `
// [HTTPS and TLS listeners] The security policy that defines which protocols
2021-07-02 08:43:15 +00:00
// and ciphers are supported.
2020-12-01 01:06:26 +00:00
//
2021-07-02 08:43:15 +00:00
// For more information, see Security policies (https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-https-listener.html#describe-ssl-policies)
// in the Application Load Balancers Guide or Security policies (https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-tls-listener.html#describe-ssl-policies)
2020-12-01 01:06:26 +00:00
// in the Network Load Balancers Guide.
2019-09-27 21:51:53 +00:00
SslPolicy * string ` type:"string" `
}
// String returns the string representation
func ( s ModifyListenerInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ModifyListenerInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * ModifyListenerInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "ModifyListenerInput" }
if s . ListenerArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ListenerArn" ) )
}
if s . Port != nil && * s . Port < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "Port" , 1 ) )
}
if s . DefaultActions != nil {
for i , v := range s . DefaultActions {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "DefaultActions" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
2020-12-01 01:06:26 +00:00
// SetAlpnPolicy sets the AlpnPolicy field's value.
func ( s * ModifyListenerInput ) SetAlpnPolicy ( v [ ] * string ) * ModifyListenerInput {
s . AlpnPolicy = v
return s
}
2019-09-27 21:51:53 +00:00
// SetCertificates sets the Certificates field's value.
func ( s * ModifyListenerInput ) SetCertificates ( v [ ] * Certificate ) * ModifyListenerInput {
s . Certificates = v
return s
}
// SetDefaultActions sets the DefaultActions field's value.
func ( s * ModifyListenerInput ) SetDefaultActions ( v [ ] * Action ) * ModifyListenerInput {
s . DefaultActions = v
return s
}
// SetListenerArn sets the ListenerArn field's value.
func ( s * ModifyListenerInput ) SetListenerArn ( v string ) * ModifyListenerInput {
s . ListenerArn = & v
return s
}
// SetPort sets the Port field's value.
func ( s * ModifyListenerInput ) SetPort ( v int64 ) * ModifyListenerInput {
s . Port = & v
return s
}
// SetProtocol sets the Protocol field's value.
func ( s * ModifyListenerInput ) SetProtocol ( v string ) * ModifyListenerInput {
s . Protocol = & v
return s
}
// SetSslPolicy sets the SslPolicy field's value.
func ( s * ModifyListenerInput ) SetSslPolicy ( v string ) * ModifyListenerInput {
s . SslPolicy = & v
return s
}
type ModifyListenerOutput struct {
_ struct { } ` type:"structure" `
// Information about the modified listener.
Listeners [ ] * Listener ` type:"list" `
}
// String returns the string representation
func ( s ModifyListenerOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ModifyListenerOutput ) GoString ( ) string {
return s . String ( )
}
// SetListeners sets the Listeners field's value.
func ( s * ModifyListenerOutput ) SetListeners ( v [ ] * Listener ) * ModifyListenerOutput {
s . Listeners = v
return s
}
type ModifyLoadBalancerAttributesInput struct {
_ struct { } ` type:"structure" `
// The load balancer attributes.
//
// Attributes is a required field
Attributes [ ] * LoadBalancerAttribute ` type:"list" required:"true" `
// The Amazon Resource Name (ARN) of the load balancer.
//
// LoadBalancerArn is a required field
LoadBalancerArn * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s ModifyLoadBalancerAttributesInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ModifyLoadBalancerAttributesInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * ModifyLoadBalancerAttributesInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "ModifyLoadBalancerAttributesInput" }
if s . Attributes == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Attributes" ) )
}
if s . LoadBalancerArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "LoadBalancerArn" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetAttributes sets the Attributes field's value.
func ( s * ModifyLoadBalancerAttributesInput ) SetAttributes ( v [ ] * LoadBalancerAttribute ) * ModifyLoadBalancerAttributesInput {
s . Attributes = v
return s
}
// SetLoadBalancerArn sets the LoadBalancerArn field's value.
func ( s * ModifyLoadBalancerAttributesInput ) SetLoadBalancerArn ( v string ) * ModifyLoadBalancerAttributesInput {
s . LoadBalancerArn = & v
return s
}
type ModifyLoadBalancerAttributesOutput struct {
_ struct { } ` type:"structure" `
// Information about the load balancer attributes.
Attributes [ ] * LoadBalancerAttribute ` type:"list" `
}
// String returns the string representation
func ( s ModifyLoadBalancerAttributesOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ModifyLoadBalancerAttributesOutput ) GoString ( ) string {
return s . String ( )
}
// SetAttributes sets the Attributes field's value.
func ( s * ModifyLoadBalancerAttributesOutput ) SetAttributes ( v [ ] * LoadBalancerAttribute ) * ModifyLoadBalancerAttributesOutput {
s . Attributes = v
return s
}
type ModifyRuleInput struct {
_ struct { } ` type:"structure" `
2020-12-01 01:06:26 +00:00
// The actions.
2019-09-27 21:51:53 +00:00
Actions [ ] * Action ` type:"list" `
2020-12-01 01:06:26 +00:00
// The conditions.
2019-09-27 21:51:53 +00:00
Conditions [ ] * RuleCondition ` type:"list" `
// The Amazon Resource Name (ARN) of the rule.
//
// RuleArn is a required field
RuleArn * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s ModifyRuleInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ModifyRuleInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * ModifyRuleInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "ModifyRuleInput" }
if s . RuleArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "RuleArn" ) )
}
if s . Actions != nil {
for i , v := range s . Actions {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "Actions" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetActions sets the Actions field's value.
func ( s * ModifyRuleInput ) SetActions ( v [ ] * Action ) * ModifyRuleInput {
s . Actions = v
return s
}
// SetConditions sets the Conditions field's value.
func ( s * ModifyRuleInput ) SetConditions ( v [ ] * RuleCondition ) * ModifyRuleInput {
s . Conditions = v
return s
}
// SetRuleArn sets the RuleArn field's value.
func ( s * ModifyRuleInput ) SetRuleArn ( v string ) * ModifyRuleInput {
s . RuleArn = & v
return s
}
type ModifyRuleOutput struct {
_ struct { } ` type:"structure" `
// Information about the modified rule.
Rules [ ] * Rule ` type:"list" `
}
// String returns the string representation
func ( s ModifyRuleOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ModifyRuleOutput ) GoString ( ) string {
return s . String ( )
}
// SetRules sets the Rules field's value.
func ( s * ModifyRuleOutput ) SetRules ( v [ ] * Rule ) * ModifyRuleOutput {
s . Rules = v
return s
}
type ModifyTargetGroupAttributesInput struct {
_ struct { } ` type:"structure" `
// The attributes.
//
// Attributes is a required field
Attributes [ ] * TargetGroupAttribute ` type:"list" required:"true" `
// The Amazon Resource Name (ARN) of the target group.
//
// TargetGroupArn is a required field
TargetGroupArn * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s ModifyTargetGroupAttributesInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ModifyTargetGroupAttributesInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * ModifyTargetGroupAttributesInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "ModifyTargetGroupAttributesInput" }
if s . Attributes == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Attributes" ) )
}
if s . TargetGroupArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "TargetGroupArn" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetAttributes sets the Attributes field's value.
func ( s * ModifyTargetGroupAttributesInput ) SetAttributes ( v [ ] * TargetGroupAttribute ) * ModifyTargetGroupAttributesInput {
s . Attributes = v
return s
}
// SetTargetGroupArn sets the TargetGroupArn field's value.
func ( s * ModifyTargetGroupAttributesInput ) SetTargetGroupArn ( v string ) * ModifyTargetGroupAttributesInput {
s . TargetGroupArn = & v
return s
}
type ModifyTargetGroupAttributesOutput struct {
_ struct { } ` type:"structure" `
// Information about the attributes.
Attributes [ ] * TargetGroupAttribute ` type:"list" `
}
// String returns the string representation
func ( s ModifyTargetGroupAttributesOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ModifyTargetGroupAttributesOutput ) GoString ( ) string {
return s . String ( )
}
// SetAttributes sets the Attributes field's value.
func ( s * ModifyTargetGroupAttributesOutput ) SetAttributes ( v [ ] * TargetGroupAttribute ) * ModifyTargetGroupAttributesOutput {
s . Attributes = v
return s
}
type ModifyTargetGroupInput struct {
_ struct { } ` type:"structure" `
// Indicates whether health checks are enabled.
HealthCheckEnabled * bool ` type:"boolean" `
// The approximate amount of time, in seconds, between health checks of an individual
2021-07-02 08:43:15 +00:00
// target. For TCP health checks, the supported values are 10 or 30 seconds.
2019-09-27 21:51:53 +00:00
//
2020-03-26 21:07:15 +00:00
// With Network Load Balancers, you can't modify this setting.
2019-09-27 21:51:53 +00:00
HealthCheckIntervalSeconds * int64 ` min:"5" type:"integer" `
2020-12-01 01:06:26 +00:00
// [HTTP/HTTPS health checks] The destination for health checks on the targets.
//
// [HTTP1 or HTTP2 protocol version] The ping path. The default is /.
//
// [GRPC protocol version] The path of a custom health check method with the
// format /package.service/method. The default is /AWS.ALB/healthcheck.
2019-09-27 21:51:53 +00:00
HealthCheckPath * string ` min:"1" type:"string" `
// The port the load balancer uses when performing health checks on targets.
HealthCheckPort * string ` type:"string" `
// The protocol the load balancer uses when performing health checks on targets.
// The TCP protocol is supported for health checks only if the protocol of the
2021-07-02 08:43:15 +00:00
// target group is TCP, TLS, UDP, or TCP_UDP. The GENEVE, TLS, UDP, and TCP_UDP
// protocols are not supported for health checks.
2019-09-27 21:51:53 +00:00
//
2020-03-26 21:07:15 +00:00
// With Network Load Balancers, you can't modify this setting.
2019-09-27 21:51:53 +00:00
HealthCheckProtocol * string ` type:"string" enum:"ProtocolEnum" `
// [HTTP/HTTPS health checks] The amount of time, in seconds, during which no
// response means a failed health check.
//
2020-03-26 21:07:15 +00:00
// With Network Load Balancers, you can't modify this setting.
2019-09-27 21:51:53 +00:00
HealthCheckTimeoutSeconds * int64 ` min:"2" type:"integer" `
// The number of consecutive health checks successes required before considering
// an unhealthy target healthy.
HealthyThresholdCount * int64 ` min:"2" type:"integer" `
2020-12-01 01:06:26 +00:00
// [HTTP/HTTPS health checks] The HTTP or gRPC codes to use when checking for
// a successful response from a target.
2019-09-27 21:51:53 +00:00
//
2020-03-26 21:07:15 +00:00
// With Network Load Balancers, you can't modify this setting.
2019-09-27 21:51:53 +00:00
Matcher * Matcher ` type:"structure" `
// The Amazon Resource Name (ARN) of the target group.
//
// TargetGroupArn is a required field
TargetGroupArn * string ` type:"string" required:"true" `
// The number of consecutive health check failures required before considering
2020-12-01 01:06:26 +00:00
// the target unhealthy. For target groups with a protocol of TCP or TLS, this
// value must be the same as the healthy threshold count.
2019-09-27 21:51:53 +00:00
UnhealthyThresholdCount * int64 ` min:"2" type:"integer" `
}
// String returns the string representation
func ( s ModifyTargetGroupInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ModifyTargetGroupInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * ModifyTargetGroupInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "ModifyTargetGroupInput" }
if s . HealthCheckIntervalSeconds != nil && * s . HealthCheckIntervalSeconds < 5 {
invalidParams . Add ( request . NewErrParamMinValue ( "HealthCheckIntervalSeconds" , 5 ) )
}
if s . HealthCheckPath != nil && len ( * s . HealthCheckPath ) < 1 {
invalidParams . Add ( request . NewErrParamMinLen ( "HealthCheckPath" , 1 ) )
}
if s . HealthCheckTimeoutSeconds != nil && * s . HealthCheckTimeoutSeconds < 2 {
invalidParams . Add ( request . NewErrParamMinValue ( "HealthCheckTimeoutSeconds" , 2 ) )
}
if s . HealthyThresholdCount != nil && * s . HealthyThresholdCount < 2 {
invalidParams . Add ( request . NewErrParamMinValue ( "HealthyThresholdCount" , 2 ) )
}
if s . TargetGroupArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "TargetGroupArn" ) )
}
if s . UnhealthyThresholdCount != nil && * s . UnhealthyThresholdCount < 2 {
invalidParams . Add ( request . NewErrParamMinValue ( "UnhealthyThresholdCount" , 2 ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetHealthCheckEnabled sets the HealthCheckEnabled field's value.
func ( s * ModifyTargetGroupInput ) SetHealthCheckEnabled ( v bool ) * ModifyTargetGroupInput {
s . HealthCheckEnabled = & v
return s
}
// SetHealthCheckIntervalSeconds sets the HealthCheckIntervalSeconds field's value.
func ( s * ModifyTargetGroupInput ) SetHealthCheckIntervalSeconds ( v int64 ) * ModifyTargetGroupInput {
s . HealthCheckIntervalSeconds = & v
return s
}
// SetHealthCheckPath sets the HealthCheckPath field's value.
func ( s * ModifyTargetGroupInput ) SetHealthCheckPath ( v string ) * ModifyTargetGroupInput {
s . HealthCheckPath = & v
return s
}
// SetHealthCheckPort sets the HealthCheckPort field's value.
func ( s * ModifyTargetGroupInput ) SetHealthCheckPort ( v string ) * ModifyTargetGroupInput {
s . HealthCheckPort = & v
return s
}
// SetHealthCheckProtocol sets the HealthCheckProtocol field's value.
func ( s * ModifyTargetGroupInput ) SetHealthCheckProtocol ( v string ) * ModifyTargetGroupInput {
s . HealthCheckProtocol = & v
return s
}
// SetHealthCheckTimeoutSeconds sets the HealthCheckTimeoutSeconds field's value.
func ( s * ModifyTargetGroupInput ) SetHealthCheckTimeoutSeconds ( v int64 ) * ModifyTargetGroupInput {
s . HealthCheckTimeoutSeconds = & v
return s
}
// SetHealthyThresholdCount sets the HealthyThresholdCount field's value.
func ( s * ModifyTargetGroupInput ) SetHealthyThresholdCount ( v int64 ) * ModifyTargetGroupInput {
s . HealthyThresholdCount = & v
return s
}
// SetMatcher sets the Matcher field's value.
func ( s * ModifyTargetGroupInput ) SetMatcher ( v * Matcher ) * ModifyTargetGroupInput {
s . Matcher = v
return s
}
// SetTargetGroupArn sets the TargetGroupArn field's value.
func ( s * ModifyTargetGroupInput ) SetTargetGroupArn ( v string ) * ModifyTargetGroupInput {
s . TargetGroupArn = & v
return s
}
// SetUnhealthyThresholdCount sets the UnhealthyThresholdCount field's value.
func ( s * ModifyTargetGroupInput ) SetUnhealthyThresholdCount ( v int64 ) * ModifyTargetGroupInput {
s . UnhealthyThresholdCount = & v
return s
}
type ModifyTargetGroupOutput struct {
_ struct { } ` type:"structure" `
// Information about the modified target group.
TargetGroups [ ] * TargetGroup ` type:"list" `
}
// String returns the string representation
func ( s ModifyTargetGroupOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s ModifyTargetGroupOutput ) GoString ( ) string {
return s . String ( )
}
// SetTargetGroups sets the TargetGroups field's value.
func ( s * ModifyTargetGroupOutput ) SetTargetGroups ( v [ ] * TargetGroup ) * ModifyTargetGroupOutput {
s . TargetGroups = v
return s
}
2019-12-12 01:27:03 +00:00
// Information about a path pattern condition.
type PathPatternConditionConfig struct {
_ struct { } ` type:"structure" `
// One or more path patterns to compare against the request URL. The maximum
// size of each string is 128 characters. The comparison is case sensitive.
// The following wildcard characters are supported: * (matches 0 or more characters)
// and ? (matches exactly 1 character).
//
// If you specify multiple strings, the condition is satisfied if one of them
// matches the request URL. The path pattern is compared only to the path of
// the URL, not to its query string. To compare against the query string, use
// QueryStringConditionConfig.
Values [ ] * string ` type:"list" `
}
// String returns the string representation
func ( s PathPatternConditionConfig ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s PathPatternConditionConfig ) GoString ( ) string {
return s . String ( )
}
// SetValues sets the Values field's value.
func ( s * PathPatternConditionConfig ) SetValues ( v [ ] * string ) * PathPatternConditionConfig {
s . Values = v
return s
}
// Information about a query string condition.
//
// The query string component of a URI starts after the first '?' character
// and is terminated by either a '#' character or the end of the URI. A typical
// query string contains key/value pairs separated by '&' characters. The allowed
// characters are specified by RFC 3986. Any character can be percentage encoded.
type QueryStringConditionConfig struct {
_ struct { } ` type:"structure" `
// One or more key/value pairs or values to find in the query string. The maximum
// size of each string is 128 characters. The comparison is case insensitive.
// The following wildcard characters are supported: * (matches 0 or more characters)
// and ? (matches exactly 1 character). To search for a literal '*' or '?' character
// in a query string, you must escape these characters in Values using a '\'
// character.
//
// If you specify multiple key/value pairs or values, the condition is satisfied
// if one of them is found in the query string.
Values [ ] * QueryStringKeyValuePair ` type:"list" `
}
// String returns the string representation
func ( s QueryStringConditionConfig ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s QueryStringConditionConfig ) GoString ( ) string {
return s . String ( )
}
// SetValues sets the Values field's value.
func ( s * QueryStringConditionConfig ) SetValues ( v [ ] * QueryStringKeyValuePair ) * QueryStringConditionConfig {
s . Values = v
return s
}
// Information about a key/value pair.
type QueryStringKeyValuePair struct {
_ struct { } ` type:"structure" `
// The key. You can omit the key.
Key * string ` type:"string" `
// The value.
Value * string ` type:"string" `
}
// String returns the string representation
func ( s QueryStringKeyValuePair ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s QueryStringKeyValuePair ) GoString ( ) string {
return s . String ( )
}
// SetKey sets the Key field's value.
func ( s * QueryStringKeyValuePair ) SetKey ( v string ) * QueryStringKeyValuePair {
s . Key = & v
return s
}
// SetValue sets the Value field's value.
func ( s * QueryStringKeyValuePair ) SetValue ( v string ) * QueryStringKeyValuePair {
s . Value = & v
return s
}
2019-09-27 21:51:53 +00:00
// Information about a redirect action.
//
// A URI consists of the following components: protocol://hostname:port/path?query.
// You must modify at least one of the following components to avoid a redirect
// loop: protocol, hostname, port, or path. Any components that you do not modify
// retain their original values.
//
// You can reuse URI components using the following reserved keywords:
//
// * #{protocol}
//
// * #{host}
//
// * #{port}
//
// * #{path} (the leading "/" is removed)
//
// * #{query}
//
// For example, you can change the path to "/new/#{path}", the hostname to "example.#{host}",
// or the query to "#{query}&value=xyz".
type RedirectActionConfig struct {
_ struct { } ` type:"structure" `
// The hostname. This component is not percent-encoded. The hostname can contain
// #{host}.
Host * string ` min:"1" type:"string" `
// The absolute path, starting with the leading "/". This component is not percent-encoded.
// The path can contain #{host}, #{path}, and #{port}.
Path * string ` min:"1" type:"string" `
// The port. You can specify a value from 1 to 65535 or #{port}.
Port * string ` type:"string" `
// The protocol. You can specify HTTP, HTTPS, or #{protocol}. You can redirect
// HTTP to HTTP, HTTP to HTTPS, and HTTPS to HTTPS. You cannot redirect HTTPS
// to HTTP.
Protocol * string ` type:"string" `
// The query parameters, URL-encoded when necessary, but not percent-encoded.
// Do not include the leading "?", as it is automatically added. You can specify
// any of the reserved keywords.
Query * string ` type:"string" `
// The HTTP redirect code. The redirect is either permanent (HTTP 301) or temporary
// (HTTP 302).
//
// StatusCode is a required field
StatusCode * string ` type:"string" required:"true" enum:"RedirectActionStatusCodeEnum" `
}
// String returns the string representation
func ( s RedirectActionConfig ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s RedirectActionConfig ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * RedirectActionConfig ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "RedirectActionConfig" }
if s . Host != nil && len ( * s . Host ) < 1 {
invalidParams . Add ( request . NewErrParamMinLen ( "Host" , 1 ) )
}
if s . Path != nil && len ( * s . Path ) < 1 {
invalidParams . Add ( request . NewErrParamMinLen ( "Path" , 1 ) )
}
if s . StatusCode == nil {
invalidParams . Add ( request . NewErrParamRequired ( "StatusCode" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetHost sets the Host field's value.
func ( s * RedirectActionConfig ) SetHost ( v string ) * RedirectActionConfig {
s . Host = & v
return s
}
// SetPath sets the Path field's value.
func ( s * RedirectActionConfig ) SetPath ( v string ) * RedirectActionConfig {
s . Path = & v
return s
}
// SetPort sets the Port field's value.
func ( s * RedirectActionConfig ) SetPort ( v string ) * RedirectActionConfig {
s . Port = & v
return s
}
// SetProtocol sets the Protocol field's value.
func ( s * RedirectActionConfig ) SetProtocol ( v string ) * RedirectActionConfig {
s . Protocol = & v
return s
}
// SetQuery sets the Query field's value.
func ( s * RedirectActionConfig ) SetQuery ( v string ) * RedirectActionConfig {
s . Query = & v
return s
}
// SetStatusCode sets the StatusCode field's value.
func ( s * RedirectActionConfig ) SetStatusCode ( v string ) * RedirectActionConfig {
s . StatusCode = & v
return s
}
type RegisterTargetsInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the target group.
//
// TargetGroupArn is a required field
TargetGroupArn * string ` type:"string" required:"true" `
// The targets.
//
// Targets is a required field
Targets [ ] * TargetDescription ` type:"list" required:"true" `
}
// String returns the string representation
func ( s RegisterTargetsInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s RegisterTargetsInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * RegisterTargetsInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "RegisterTargetsInput" }
if s . TargetGroupArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "TargetGroupArn" ) )
}
if s . Targets == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Targets" ) )
}
if s . Targets != nil {
for i , v := range s . Targets {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "Targets" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetTargetGroupArn sets the TargetGroupArn field's value.
func ( s * RegisterTargetsInput ) SetTargetGroupArn ( v string ) * RegisterTargetsInput {
s . TargetGroupArn = & v
return s
}
// SetTargets sets the Targets field's value.
func ( s * RegisterTargetsInput ) SetTargets ( v [ ] * TargetDescription ) * RegisterTargetsInput {
s . Targets = v
return s
}
type RegisterTargetsOutput struct {
_ struct { } ` type:"structure" `
}
// String returns the string representation
func ( s RegisterTargetsOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s RegisterTargetsOutput ) GoString ( ) string {
return s . String ( )
}
type RemoveListenerCertificatesInput struct {
_ struct { } ` type:"structure" `
// The certificate to remove. You can specify one certificate per call. Set
// CertificateArn to the certificate ARN but do not set IsDefault.
//
// Certificates is a required field
Certificates [ ] * Certificate ` type:"list" required:"true" `
// The Amazon Resource Name (ARN) of the listener.
//
// ListenerArn is a required field
ListenerArn * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s RemoveListenerCertificatesInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s RemoveListenerCertificatesInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * RemoveListenerCertificatesInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "RemoveListenerCertificatesInput" }
if s . Certificates == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Certificates" ) )
}
if s . ListenerArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ListenerArn" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetCertificates sets the Certificates field's value.
func ( s * RemoveListenerCertificatesInput ) SetCertificates ( v [ ] * Certificate ) * RemoveListenerCertificatesInput {
s . Certificates = v
return s
}
// SetListenerArn sets the ListenerArn field's value.
func ( s * RemoveListenerCertificatesInput ) SetListenerArn ( v string ) * RemoveListenerCertificatesInput {
s . ListenerArn = & v
return s
}
type RemoveListenerCertificatesOutput struct {
_ struct { } ` type:"structure" `
}
// String returns the string representation
func ( s RemoveListenerCertificatesOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s RemoveListenerCertificatesOutput ) GoString ( ) string {
return s . String ( )
}
type RemoveTagsInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the resource.
//
// ResourceArns is a required field
ResourceArns [ ] * string ` type:"list" required:"true" `
// The tag keys for the tags to remove.
//
// TagKeys is a required field
TagKeys [ ] * string ` type:"list" required:"true" `
}
// String returns the string representation
func ( s RemoveTagsInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s RemoveTagsInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * RemoveTagsInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "RemoveTagsInput" }
if s . ResourceArns == nil {
invalidParams . Add ( request . NewErrParamRequired ( "ResourceArns" ) )
}
if s . TagKeys == nil {
invalidParams . Add ( request . NewErrParamRequired ( "TagKeys" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetResourceArns sets the ResourceArns field's value.
func ( s * RemoveTagsInput ) SetResourceArns ( v [ ] * string ) * RemoveTagsInput {
s . ResourceArns = v
return s
}
// SetTagKeys sets the TagKeys field's value.
func ( s * RemoveTagsInput ) SetTagKeys ( v [ ] * string ) * RemoveTagsInput {
s . TagKeys = v
return s
}
type RemoveTagsOutput struct {
_ struct { } ` type:"structure" `
}
// String returns the string representation
func ( s RemoveTagsOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s RemoveTagsOutput ) GoString ( ) string {
return s . String ( )
}
// Information about a rule.
type Rule struct {
_ struct { } ` type:"structure" `
2019-12-12 01:27:03 +00:00
// The actions. Each rule must include exactly one of the following types of
// actions: forward, redirect, or fixed-response, and it must be the last action
// to be performed.
2019-09-27 21:51:53 +00:00
Actions [ ] * Action ` type:"list" `
2019-12-12 01:27:03 +00:00
// The conditions. Each rule can include zero or one of the following conditions:
// http-request-method, host-header, path-pattern, and source-ip, and zero or
// more of the following conditions: http-header and query-string.
2019-09-27 21:51:53 +00:00
Conditions [ ] * RuleCondition ` type:"list" `
// Indicates whether this is the default rule.
IsDefault * bool ` type:"boolean" `
// The priority.
Priority * string ` type:"string" `
// The Amazon Resource Name (ARN) of the rule.
RuleArn * string ` type:"string" `
}
// String returns the string representation
func ( s Rule ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s Rule ) GoString ( ) string {
return s . String ( )
}
// SetActions sets the Actions field's value.
func ( s * Rule ) SetActions ( v [ ] * Action ) * Rule {
s . Actions = v
return s
}
// SetConditions sets the Conditions field's value.
func ( s * Rule ) SetConditions ( v [ ] * RuleCondition ) * Rule {
s . Conditions = v
return s
}
// SetIsDefault sets the IsDefault field's value.
func ( s * Rule ) SetIsDefault ( v bool ) * Rule {
s . IsDefault = & v
return s
}
// SetPriority sets the Priority field's value.
func ( s * Rule ) SetPriority ( v string ) * Rule {
s . Priority = & v
return s
}
// SetRuleArn sets the RuleArn field's value.
func ( s * Rule ) SetRuleArn ( v string ) * Rule {
s . RuleArn = & v
return s
}
// Information about a condition for a rule.
2020-12-01 01:06:26 +00:00
//
// Each rule can optionally include up to one of each of the following conditions:
// http-request-method, host-header, path-pattern, and source-ip. Each rule
// can also optionally include one or more of each of the following conditions:
// http-header and query-string.
2019-09-27 21:51:53 +00:00
type RuleCondition struct {
_ struct { } ` type:"structure" `
2019-12-12 01:27:03 +00:00
// The field in the HTTP request. The following are the possible values:
//
// * http-header
//
// * http-request-method
//
// * host-header
//
// * path-pattern
//
// * query-string
//
// * source-ip
2019-09-27 21:51:53 +00:00
Field * string ` type:"string" `
2019-12-12 01:27:03 +00:00
// Information for a host header condition. Specify only when Field is host-header.
HostHeaderConfig * HostHeaderConditionConfig ` type:"structure" `
// Information for an HTTP header condition. Specify only when Field is http-header.
HttpHeaderConfig * HttpHeaderConditionConfig ` type:"structure" `
// Information for an HTTP method condition. Specify only when Field is http-request-method.
HttpRequestMethodConfig * HttpRequestMethodConditionConfig ` type:"structure" `
// Information for a path pattern condition. Specify only when Field is path-pattern.
PathPatternConfig * PathPatternConditionConfig ` type:"structure" `
// Information for a query string condition. Specify only when Field is query-string.
QueryStringConfig * QueryStringConditionConfig ` type:"structure" `
// Information for a source IP condition. Specify only when Field is source-ip.
SourceIpConfig * SourceIpConditionConfig ` type:"structure" `
2020-12-01 01:06:26 +00:00
// The condition value. Specify only when Field is host-header or path-pattern.
// Alternatively, to specify multiple host names or multiple path patterns,
// use HostHeaderConfig or PathPatternConfig.
2019-09-27 21:51:53 +00:00
//
2020-12-01 01:06:26 +00:00
// If Field is host-header and you are not using HostHeaderConfig, you can specify
// a single host name (for example, my.example.com) in Values. A host name is
// case insensitive, can be up to 128 characters in length, and can contain
// any of the following characters.
2019-09-27 21:51:53 +00:00
//
// * A-Z, a-z, 0-9
//
// * - .
//
// * * (matches 0 or more characters)
//
// * ? (matches exactly 1 character)
//
2020-12-01 01:06:26 +00:00
// If Field is path-pattern and you are not using PathPatternConfig, you can
// specify a single path pattern (for example, /img/*) in Values. A path pattern
// is case-sensitive, can be up to 128 characters in length, and can contain
// any of the following characters.
2019-09-27 21:51:53 +00:00
//
// * A-Z, a-z, 0-9
//
// * _ - . $ / ~ " ' @ : +
//
// * & (using &)
//
// * * (matches 0 or more characters)
//
// * ? (matches exactly 1 character)
Values [ ] * string ` type:"list" `
}
// String returns the string representation
func ( s RuleCondition ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s RuleCondition ) GoString ( ) string {
return s . String ( )
}
// SetField sets the Field field's value.
func ( s * RuleCondition ) SetField ( v string ) * RuleCondition {
s . Field = & v
return s
}
2019-12-12 01:27:03 +00:00
// SetHostHeaderConfig sets the HostHeaderConfig field's value.
func ( s * RuleCondition ) SetHostHeaderConfig ( v * HostHeaderConditionConfig ) * RuleCondition {
s . HostHeaderConfig = v
return s
}
// SetHttpHeaderConfig sets the HttpHeaderConfig field's value.
func ( s * RuleCondition ) SetHttpHeaderConfig ( v * HttpHeaderConditionConfig ) * RuleCondition {
s . HttpHeaderConfig = v
return s
}
// SetHttpRequestMethodConfig sets the HttpRequestMethodConfig field's value.
func ( s * RuleCondition ) SetHttpRequestMethodConfig ( v * HttpRequestMethodConditionConfig ) * RuleCondition {
s . HttpRequestMethodConfig = v
return s
}
// SetPathPatternConfig sets the PathPatternConfig field's value.
func ( s * RuleCondition ) SetPathPatternConfig ( v * PathPatternConditionConfig ) * RuleCondition {
s . PathPatternConfig = v
return s
}
// SetQueryStringConfig sets the QueryStringConfig field's value.
func ( s * RuleCondition ) SetQueryStringConfig ( v * QueryStringConditionConfig ) * RuleCondition {
s . QueryStringConfig = v
return s
}
// SetSourceIpConfig sets the SourceIpConfig field's value.
func ( s * RuleCondition ) SetSourceIpConfig ( v * SourceIpConditionConfig ) * RuleCondition {
s . SourceIpConfig = v
return s
}
2019-09-27 21:51:53 +00:00
// SetValues sets the Values field's value.
func ( s * RuleCondition ) SetValues ( v [ ] * string ) * RuleCondition {
s . Values = v
return s
}
// Information about the priorities for the rules for a listener.
type RulePriorityPair struct {
_ struct { } ` type:"structure" `
// The rule priority.
Priority * int64 ` min:"1" type:"integer" `
// The Amazon Resource Name (ARN) of the rule.
RuleArn * string ` type:"string" `
}
// String returns the string representation
func ( s RulePriorityPair ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s RulePriorityPair ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * RulePriorityPair ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "RulePriorityPair" }
if s . Priority != nil && * s . Priority < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "Priority" , 1 ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetPriority sets the Priority field's value.
func ( s * RulePriorityPair ) SetPriority ( v int64 ) * RulePriorityPair {
s . Priority = & v
return s
}
// SetRuleArn sets the RuleArn field's value.
func ( s * RulePriorityPair ) SetRuleArn ( v string ) * RulePriorityPair {
s . RuleArn = & v
return s
}
type SetIpAddressTypeInput struct {
_ struct { } ` type:"structure" `
// The IP address type. The possible values are ipv4 (for IPv4 addresses) and
// dualstack (for IPv4 and IPv6 addresses). Internal load balancers must use
2021-07-02 08:43:15 +00:00
// ipv4. You can’ t specify dualstack for a load balancer with a UDP or TCP_UDP
// listener.
2019-09-27 21:51:53 +00:00
//
// IpAddressType is a required field
IpAddressType * string ` type:"string" required:"true" enum:"IpAddressType" `
// The Amazon Resource Name (ARN) of the load balancer.
//
// LoadBalancerArn is a required field
LoadBalancerArn * string ` type:"string" required:"true" `
}
// String returns the string representation
func ( s SetIpAddressTypeInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s SetIpAddressTypeInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * SetIpAddressTypeInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "SetIpAddressTypeInput" }
if s . IpAddressType == nil {
invalidParams . Add ( request . NewErrParamRequired ( "IpAddressType" ) )
}
if s . LoadBalancerArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "LoadBalancerArn" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetIpAddressType sets the IpAddressType field's value.
func ( s * SetIpAddressTypeInput ) SetIpAddressType ( v string ) * SetIpAddressTypeInput {
s . IpAddressType = & v
return s
}
// SetLoadBalancerArn sets the LoadBalancerArn field's value.
func ( s * SetIpAddressTypeInput ) SetLoadBalancerArn ( v string ) * SetIpAddressTypeInput {
s . LoadBalancerArn = & v
return s
}
type SetIpAddressTypeOutput struct {
_ struct { } ` type:"structure" `
// The IP address type.
IpAddressType * string ` type:"string" enum:"IpAddressType" `
}
// String returns the string representation
func ( s SetIpAddressTypeOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s SetIpAddressTypeOutput ) GoString ( ) string {
return s . String ( )
}
// SetIpAddressType sets the IpAddressType field's value.
func ( s * SetIpAddressTypeOutput ) SetIpAddressType ( v string ) * SetIpAddressTypeOutput {
s . IpAddressType = & v
return s
}
type SetRulePrioritiesInput struct {
_ struct { } ` type:"structure" `
// The rule priorities.
//
// RulePriorities is a required field
RulePriorities [ ] * RulePriorityPair ` type:"list" required:"true" `
}
// String returns the string representation
func ( s SetRulePrioritiesInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s SetRulePrioritiesInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * SetRulePrioritiesInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "SetRulePrioritiesInput" }
if s . RulePriorities == nil {
invalidParams . Add ( request . NewErrParamRequired ( "RulePriorities" ) )
}
if s . RulePriorities != nil {
for i , v := range s . RulePriorities {
if v == nil {
continue
}
if err := v . Validate ( ) ; err != nil {
invalidParams . AddNested ( fmt . Sprintf ( "%s[%v]" , "RulePriorities" , i ) , err . ( request . ErrInvalidParams ) )
}
}
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetRulePriorities sets the RulePriorities field's value.
func ( s * SetRulePrioritiesInput ) SetRulePriorities ( v [ ] * RulePriorityPair ) * SetRulePrioritiesInput {
s . RulePriorities = v
return s
}
type SetRulePrioritiesOutput struct {
_ struct { } ` type:"structure" `
// Information about the rules.
Rules [ ] * Rule ` type:"list" `
}
// String returns the string representation
func ( s SetRulePrioritiesOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s SetRulePrioritiesOutput ) GoString ( ) string {
return s . String ( )
}
// SetRules sets the Rules field's value.
func ( s * SetRulePrioritiesOutput ) SetRules ( v [ ] * Rule ) * SetRulePrioritiesOutput {
s . Rules = v
return s
}
type SetSecurityGroupsInput struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the load balancer.
//
// LoadBalancerArn is a required field
LoadBalancerArn * string ` type:"string" required:"true" `
// The IDs of the security groups.
//
// SecurityGroups is a required field
SecurityGroups [ ] * string ` type:"list" required:"true" `
}
// String returns the string representation
func ( s SetSecurityGroupsInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s SetSecurityGroupsInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * SetSecurityGroupsInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "SetSecurityGroupsInput" }
if s . LoadBalancerArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "LoadBalancerArn" ) )
}
if s . SecurityGroups == nil {
invalidParams . Add ( request . NewErrParamRequired ( "SecurityGroups" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetLoadBalancerArn sets the LoadBalancerArn field's value.
func ( s * SetSecurityGroupsInput ) SetLoadBalancerArn ( v string ) * SetSecurityGroupsInput {
s . LoadBalancerArn = & v
return s
}
// SetSecurityGroups sets the SecurityGroups field's value.
func ( s * SetSecurityGroupsInput ) SetSecurityGroups ( v [ ] * string ) * SetSecurityGroupsInput {
s . SecurityGroups = v
return s
}
type SetSecurityGroupsOutput struct {
_ struct { } ` type:"structure" `
// The IDs of the security groups associated with the load balancer.
SecurityGroupIds [ ] * string ` type:"list" `
}
// String returns the string representation
func ( s SetSecurityGroupsOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s SetSecurityGroupsOutput ) GoString ( ) string {
return s . String ( )
}
// SetSecurityGroupIds sets the SecurityGroupIds field's value.
func ( s * SetSecurityGroupsOutput ) SetSecurityGroupIds ( v [ ] * string ) * SetSecurityGroupsOutput {
s . SecurityGroupIds = v
return s
}
type SetSubnetsInput struct {
_ struct { } ` type:"structure" `
2021-07-02 08:43:15 +00:00
// [Network Load Balancers] The type of IP addresses used by the subnets for
// your load balancer. The possible values are ipv4 (for IPv4 addresses) and
// dualstack (for IPv4 and IPv6 addresses). You can’ t specify dualstack for
// a load balancer with a UDP or TCP_UDP listener. Internal load balancers must
// use ipv4.
IpAddressType * string ` type:"string" enum:"IpAddressType" `
2019-09-27 21:51:53 +00:00
// The Amazon Resource Name (ARN) of the load balancer.
//
// LoadBalancerArn is a required field
LoadBalancerArn * string ` type:"string" required:"true" `
2020-03-26 21:07:15 +00:00
// The IDs of the public subnets. You can specify only one subnet per Availability
// Zone. You must specify either subnets or subnet mappings.
//
// [Application Load Balancers] You must specify subnets from at least two Availability
// Zones. You cannot specify Elastic IP addresses for your subnets.
2019-09-27 21:51:53 +00:00
//
2021-07-02 08:43:15 +00:00
// [Application Load Balancers on Outposts] You must specify one Outpost subnet.
//
// [Application Load Balancers on Local Zones] You can specify subnets from
// one or more Local Zones.
//
2020-03-26 21:07:15 +00:00
// [Network Load Balancers] You can specify subnets from one or more Availability
2021-07-02 08:43:15 +00:00
// Zones. You can specify one Elastic IP address per subnet if you need static
// IP addresses for your internet-facing load balancer. For internal load balancers,
2020-03-26 21:07:15 +00:00
// you can specify one private IP address per subnet from the IPv4 range of
2021-07-02 08:43:15 +00:00
// the subnet. For internet-facing load balancer, you can specify one IPv6 address
// per subnet.
2019-09-27 21:51:53 +00:00
SubnetMappings [ ] * SubnetMapping ` type:"list" `
2021-07-02 08:43:15 +00:00
// The IDs of the public subnets. You can specify only one subnet per Availability
// Zone. You must specify either subnets or subnet mappings.
//
// [Application Load Balancers] You must specify subnets from at least two Availability
// Zones.
//
// [Application Load Balancers on Outposts] You must specify one Outpost subnet.
//
// [Application Load Balancers on Local Zones] You can specify subnets from
// one or more Local Zones.
//
// [Network Load Balancers] You can specify subnets from one or more Availability
// Zones.
2019-09-27 21:51:53 +00:00
Subnets [ ] * string ` type:"list" `
}
// String returns the string representation
func ( s SetSubnetsInput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s SetSubnetsInput ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * SetSubnetsInput ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "SetSubnetsInput" }
if s . LoadBalancerArn == nil {
invalidParams . Add ( request . NewErrParamRequired ( "LoadBalancerArn" ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
2021-07-02 08:43:15 +00:00
// SetIpAddressType sets the IpAddressType field's value.
func ( s * SetSubnetsInput ) SetIpAddressType ( v string ) * SetSubnetsInput {
s . IpAddressType = & v
return s
}
2019-09-27 21:51:53 +00:00
// SetLoadBalancerArn sets the LoadBalancerArn field's value.
func ( s * SetSubnetsInput ) SetLoadBalancerArn ( v string ) * SetSubnetsInput {
s . LoadBalancerArn = & v
return s
}
// SetSubnetMappings sets the SubnetMappings field's value.
func ( s * SetSubnetsInput ) SetSubnetMappings ( v [ ] * SubnetMapping ) * SetSubnetsInput {
s . SubnetMappings = v
return s
}
// SetSubnets sets the Subnets field's value.
func ( s * SetSubnetsInput ) SetSubnets ( v [ ] * string ) * SetSubnetsInput {
s . Subnets = v
return s
}
type SetSubnetsOutput struct {
_ struct { } ` type:"structure" `
2020-12-01 01:06:26 +00:00
// Information about the subnets.
2019-09-27 21:51:53 +00:00
AvailabilityZones [ ] * AvailabilityZone ` type:"list" `
2021-07-02 08:43:15 +00:00
// [Network Load Balancers] The IP address type.
IpAddressType * string ` type:"string" enum:"IpAddressType" `
2019-09-27 21:51:53 +00:00
}
// String returns the string representation
func ( s SetSubnetsOutput ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s SetSubnetsOutput ) GoString ( ) string {
return s . String ( )
}
// SetAvailabilityZones sets the AvailabilityZones field's value.
func ( s * SetSubnetsOutput ) SetAvailabilityZones ( v [ ] * AvailabilityZone ) * SetSubnetsOutput {
s . AvailabilityZones = v
return s
}
2021-07-02 08:43:15 +00:00
// SetIpAddressType sets the IpAddressType field's value.
func ( s * SetSubnetsOutput ) SetIpAddressType ( v string ) * SetSubnetsOutput {
s . IpAddressType = & v
return s
}
2019-12-12 01:27:03 +00:00
// Information about a source IP condition.
//
// You can use this condition to route based on the IP address of the source
// that connects to the load balancer. If a client is behind a proxy, this is
// the IP address of the proxy not the IP address of the client.
type SourceIpConditionConfig struct {
_ struct { } ` type:"structure" `
// One or more source IP addresses, in CIDR format. You can use both IPv4 and
// IPv6 addresses. Wildcards are not supported.
//
// If you specify multiple addresses, the condition is satisfied if the source
// IP address of the request matches one of the CIDR blocks. This condition
// is not satisfied by the addresses in the X-Forwarded-For header. To search
// for addresses in the X-Forwarded-For header, use HttpHeaderConditionConfig.
Values [ ] * string ` type:"list" `
}
// String returns the string representation
func ( s SourceIpConditionConfig ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s SourceIpConditionConfig ) GoString ( ) string {
return s . String ( )
}
// SetValues sets the Values field's value.
func ( s * SourceIpConditionConfig ) SetValues ( v [ ] * string ) * SourceIpConditionConfig {
s . Values = v
return s
}
2019-09-27 21:51:53 +00:00
// Information about a policy used for SSL negotiation.
type SslPolicy struct {
_ struct { } ` type:"structure" `
// The ciphers.
Ciphers [ ] * Cipher ` type:"list" `
// The name of the policy.
Name * string ` type:"string" `
// The protocols.
SslProtocols [ ] * string ` type:"list" `
}
// String returns the string representation
func ( s SslPolicy ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s SslPolicy ) GoString ( ) string {
return s . String ( )
}
// SetCiphers sets the Ciphers field's value.
func ( s * SslPolicy ) SetCiphers ( v [ ] * Cipher ) * SslPolicy {
s . Ciphers = v
return s
}
// SetName sets the Name field's value.
func ( s * SslPolicy ) SetName ( v string ) * SslPolicy {
s . Name = & v
return s
}
// SetSslProtocols sets the SslProtocols field's value.
func ( s * SslPolicy ) SetSslProtocols ( v [ ] * string ) * SslPolicy {
s . SslProtocols = v
return s
}
// Information about a subnet mapping.
type SubnetMapping struct {
_ struct { } ` type:"structure" `
2020-03-26 21:07:15 +00:00
// [Network Load Balancers] The allocation ID of the Elastic IP address for
// an internet-facing load balancer.
2019-09-27 21:51:53 +00:00
AllocationId * string ` type:"string" `
2021-07-02 08:43:15 +00:00
// [Network Load Balancers] The IPv6 address.
IPv6Address * string ` type:"string" `
2020-03-26 21:07:15 +00:00
// [Network Load Balancers] The private IPv4 address for an internal load balancer.
PrivateIPv4Address * string ` type:"string" `
2019-09-27 21:51:53 +00:00
// The ID of the subnet.
SubnetId * string ` type:"string" `
}
// String returns the string representation
func ( s SubnetMapping ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s SubnetMapping ) GoString ( ) string {
return s . String ( )
}
// SetAllocationId sets the AllocationId field's value.
func ( s * SubnetMapping ) SetAllocationId ( v string ) * SubnetMapping {
s . AllocationId = & v
return s
}
2021-07-02 08:43:15 +00:00
// SetIPv6Address sets the IPv6Address field's value.
func ( s * SubnetMapping ) SetIPv6Address ( v string ) * SubnetMapping {
s . IPv6Address = & v
return s
}
2020-03-26 21:07:15 +00:00
// SetPrivateIPv4Address sets the PrivateIPv4Address field's value.
func ( s * SubnetMapping ) SetPrivateIPv4Address ( v string ) * SubnetMapping {
s . PrivateIPv4Address = & v
return s
}
2019-09-27 21:51:53 +00:00
// SetSubnetId sets the SubnetId field's value.
func ( s * SubnetMapping ) SetSubnetId ( v string ) * SubnetMapping {
s . SubnetId = & v
return s
}
// Information about a tag.
type Tag struct {
_ struct { } ` type:"structure" `
// The key of the tag.
//
// Key is a required field
Key * string ` min:"1" type:"string" required:"true" `
// The value of the tag.
Value * string ` type:"string" `
}
// String returns the string representation
func ( s Tag ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s Tag ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * Tag ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "Tag" }
if s . Key == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Key" ) )
}
if s . Key != nil && len ( * s . Key ) < 1 {
invalidParams . Add ( request . NewErrParamMinLen ( "Key" , 1 ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetKey sets the Key field's value.
func ( s * Tag ) SetKey ( v string ) * Tag {
s . Key = & v
return s
}
// SetValue sets the Value field's value.
func ( s * Tag ) SetValue ( v string ) * Tag {
s . Value = & v
return s
}
// The tags associated with a resource.
type TagDescription struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the resource.
ResourceArn * string ` type:"string" `
// Information about the tags.
Tags [ ] * Tag ` min:"1" type:"list" `
}
// String returns the string representation
func ( s TagDescription ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s TagDescription ) GoString ( ) string {
return s . String ( )
}
// SetResourceArn sets the ResourceArn field's value.
func ( s * TagDescription ) SetResourceArn ( v string ) * TagDescription {
s . ResourceArn = & v
return s
}
// SetTags sets the Tags field's value.
func ( s * TagDescription ) SetTags ( v [ ] * Tag ) * TagDescription {
s . Tags = v
return s
}
// Information about a target.
type TargetDescription struct {
_ struct { } ` type:"structure" `
// An Availability Zone or all. This determines whether the target receives
// traffic from the load balancer nodes in the specified Availability Zone or
// from all enabled Availability Zones for the load balancer.
//
// This parameter is not supported if the target type of the target group is
// instance.
//
// If the target type is ip and the IP address is in a subnet of the VPC for
// the target group, the Availability Zone is automatically detected and this
// parameter is optional. If the IP address is outside the VPC, this parameter
// is required.
//
// With an Application Load Balancer, if the target type is ip and the IP address
// is outside the VPC for the target group, the only supported value is all.
//
// If the target type is lambda, this parameter is optional and the only supported
// value is all.
AvailabilityZone * string ` type:"string" `
// The ID of the target. If the target type of the target group is instance,
// specify an instance ID. If the target type is ip, specify an IP address.
// If the target type is lambda, specify the ARN of the Lambda function.
//
// Id is a required field
Id * string ` type:"string" required:"true" `
2021-07-02 08:43:15 +00:00
// The port on which the target is listening. If the target group protocol is
// GENEVE, the supported port is 6081. Not used if the target is a Lambda function.
2019-09-27 21:51:53 +00:00
Port * int64 ` min:"1" type:"integer" `
}
// String returns the string representation
func ( s TargetDescription ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s TargetDescription ) GoString ( ) string {
return s . String ( )
}
// Validate inspects the fields of the type to determine if they are valid.
func ( s * TargetDescription ) Validate ( ) error {
invalidParams := request . ErrInvalidParams { Context : "TargetDescription" }
if s . Id == nil {
invalidParams . Add ( request . NewErrParamRequired ( "Id" ) )
}
if s . Port != nil && * s . Port < 1 {
invalidParams . Add ( request . NewErrParamMinValue ( "Port" , 1 ) )
}
if invalidParams . Len ( ) > 0 {
return invalidParams
}
return nil
}
// SetAvailabilityZone sets the AvailabilityZone field's value.
func ( s * TargetDescription ) SetAvailabilityZone ( v string ) * TargetDescription {
s . AvailabilityZone = & v
return s
}
// SetId sets the Id field's value.
func ( s * TargetDescription ) SetId ( v string ) * TargetDescription {
s . Id = & v
return s
}
// SetPort sets the Port field's value.
func ( s * TargetDescription ) SetPort ( v int64 ) * TargetDescription {
s . Port = & v
return s
}
// Information about a target group.
type TargetGroup struct {
_ struct { } ` type:"structure" `
// Indicates whether health checks are enabled.
HealthCheckEnabled * bool ` type:"boolean" `
// The approximate amount of time, in seconds, between health checks of an individual
// target.
HealthCheckIntervalSeconds * int64 ` min:"5" type:"integer" `
2020-12-01 01:06:26 +00:00
// The destination for health checks on the targets.
2019-09-27 21:51:53 +00:00
HealthCheckPath * string ` min:"1" type:"string" `
// The port to use to connect with the target.
HealthCheckPort * string ` type:"string" `
2021-07-02 08:43:15 +00:00
// The protocol to use to connect with the target. The GENEVE, TLS, UDP, and
// TCP_UDP protocols are not supported for health checks.
2019-09-27 21:51:53 +00:00
HealthCheckProtocol * string ` type:"string" enum:"ProtocolEnum" `
// The amount of time, in seconds, during which no response means a failed health
// check.
HealthCheckTimeoutSeconds * int64 ` min:"2" type:"integer" `
// The number of consecutive health checks successes required before considering
// an unhealthy target healthy.
HealthyThresholdCount * int64 ` min:"2" type:"integer" `
// The Amazon Resource Names (ARN) of the load balancers that route traffic
// to this target group.
LoadBalancerArns [ ] * string ` type:"list" `
2020-12-01 01:06:26 +00:00
// The HTTP or gRPC codes to use when checking for a successful response from
// a target.
2019-09-27 21:51:53 +00:00
Matcher * Matcher ` type:"structure" `
2020-03-26 21:07:15 +00:00
// The port on which the targets are listening. Not used if the target is a
// Lambda function.
2019-09-27 21:51:53 +00:00
Port * int64 ` min:"1" type:"integer" `
// The protocol to use for routing traffic to the targets.
Protocol * string ` type:"string" enum:"ProtocolEnum" `
2020-12-01 01:06:26 +00:00
// [HTTP/HTTPS protocol] The protocol version. The possible values are GRPC,
// HTTP1, and HTTP2.
ProtocolVersion * string ` type:"string" `
2019-09-27 21:51:53 +00:00
// The Amazon Resource Name (ARN) of the target group.
TargetGroupArn * string ` type:"string" `
// The name of the target group.
TargetGroupName * string ` type:"string" `
// The type of target that you must specify when registering targets with this
2021-07-02 08:43:15 +00:00
// target group. The possible values are instance (register targets by instance
// ID), ip (register targets by IP address), or lambda (register a single Lambda
// function as a target).
2019-09-27 21:51:53 +00:00
TargetType * string ` type:"string" enum:"TargetTypeEnum" `
// The number of consecutive health check failures required before considering
// the target unhealthy.
UnhealthyThresholdCount * int64 ` min:"2" type:"integer" `
// The ID of the VPC for the targets.
VpcId * string ` type:"string" `
}
// String returns the string representation
func ( s TargetGroup ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s TargetGroup ) GoString ( ) string {
return s . String ( )
}
// SetHealthCheckEnabled sets the HealthCheckEnabled field's value.
func ( s * TargetGroup ) SetHealthCheckEnabled ( v bool ) * TargetGroup {
s . HealthCheckEnabled = & v
return s
}
// SetHealthCheckIntervalSeconds sets the HealthCheckIntervalSeconds field's value.
func ( s * TargetGroup ) SetHealthCheckIntervalSeconds ( v int64 ) * TargetGroup {
s . HealthCheckIntervalSeconds = & v
return s
}
// SetHealthCheckPath sets the HealthCheckPath field's value.
func ( s * TargetGroup ) SetHealthCheckPath ( v string ) * TargetGroup {
s . HealthCheckPath = & v
return s
}
// SetHealthCheckPort sets the HealthCheckPort field's value.
func ( s * TargetGroup ) SetHealthCheckPort ( v string ) * TargetGroup {
s . HealthCheckPort = & v
return s
}
// SetHealthCheckProtocol sets the HealthCheckProtocol field's value.
func ( s * TargetGroup ) SetHealthCheckProtocol ( v string ) * TargetGroup {
s . HealthCheckProtocol = & v
return s
}
// SetHealthCheckTimeoutSeconds sets the HealthCheckTimeoutSeconds field's value.
func ( s * TargetGroup ) SetHealthCheckTimeoutSeconds ( v int64 ) * TargetGroup {
s . HealthCheckTimeoutSeconds = & v
return s
}
// SetHealthyThresholdCount sets the HealthyThresholdCount field's value.
func ( s * TargetGroup ) SetHealthyThresholdCount ( v int64 ) * TargetGroup {
s . HealthyThresholdCount = & v
return s
}
// SetLoadBalancerArns sets the LoadBalancerArns field's value.
func ( s * TargetGroup ) SetLoadBalancerArns ( v [ ] * string ) * TargetGroup {
s . LoadBalancerArns = v
return s
}
// SetMatcher sets the Matcher field's value.
func ( s * TargetGroup ) SetMatcher ( v * Matcher ) * TargetGroup {
s . Matcher = v
return s
}
// SetPort sets the Port field's value.
func ( s * TargetGroup ) SetPort ( v int64 ) * TargetGroup {
s . Port = & v
return s
}
// SetProtocol sets the Protocol field's value.
func ( s * TargetGroup ) SetProtocol ( v string ) * TargetGroup {
s . Protocol = & v
return s
}
2020-12-01 01:06:26 +00:00
// SetProtocolVersion sets the ProtocolVersion field's value.
func ( s * TargetGroup ) SetProtocolVersion ( v string ) * TargetGroup {
s . ProtocolVersion = & v
return s
}
2019-09-27 21:51:53 +00:00
// SetTargetGroupArn sets the TargetGroupArn field's value.
func ( s * TargetGroup ) SetTargetGroupArn ( v string ) * TargetGroup {
s . TargetGroupArn = & v
return s
}
// SetTargetGroupName sets the TargetGroupName field's value.
func ( s * TargetGroup ) SetTargetGroupName ( v string ) * TargetGroup {
s . TargetGroupName = & v
return s
}
// SetTargetType sets the TargetType field's value.
func ( s * TargetGroup ) SetTargetType ( v string ) * TargetGroup {
s . TargetType = & v
return s
}
// SetUnhealthyThresholdCount sets the UnhealthyThresholdCount field's value.
func ( s * TargetGroup ) SetUnhealthyThresholdCount ( v int64 ) * TargetGroup {
s . UnhealthyThresholdCount = & v
return s
}
// SetVpcId sets the VpcId field's value.
func ( s * TargetGroup ) SetVpcId ( v string ) * TargetGroup {
s . VpcId = & v
return s
}
// Information about a target group attribute.
type TargetGroupAttribute struct {
_ struct { } ` type:"structure" `
// The name of the attribute.
//
2021-07-02 08:43:15 +00:00
// The following attribute is supported by all load balancers:
2019-09-27 21:51:53 +00:00
//
// * deregistration_delay.timeout_seconds - The amount of time, in seconds,
// for Elastic Load Balancing to wait before changing the state of a deregistering
// target from draining to unused. The range is 0-3600 seconds. The default
// value is 300 seconds. If the target is a Lambda function, this attribute
// is not supported.
//
2021-07-02 08:43:15 +00:00
// The following attributes are supported by both Application Load Balancers
// and Network Load Balancers:
//
2020-12-01 01:06:26 +00:00
// * stickiness.enabled - Indicates whether sticky sessions are enabled.
// The value is true or false. The default is false.
//
// * stickiness.type - The type of sticky sessions. The possible values are
2021-07-02 08:43:15 +00:00
// lb_cookie and app_cookie for Application Load Balancers or source_ip for
// Network Load Balancers.
2020-12-01 01:06:26 +00:00
//
// The following attributes are supported only if the load balancer is an Application
// Load Balancer and the target is an instance or an IP address:
2019-09-27 21:51:53 +00:00
//
2020-03-26 21:07:15 +00:00
// * load_balancing.algorithm.type - The load balancing algorithm determines
// how the load balancer selects targets when routing requests. The value
// is round_robin or least_outstanding_requests. The default is round_robin.
//
2019-09-27 21:51:53 +00:00
// * slow_start.duration_seconds - The time period, in seconds, during which
2020-12-01 01:06:26 +00:00
// a newly registered target receives an increasing share of the traffic
// to the target group. After this time period ends, the target receives
// its full share of traffic. The range is 30-900 seconds (15 minutes). The
// default is 0 seconds (disabled).
2019-09-27 21:51:53 +00:00
//
2021-07-02 08:43:15 +00:00
// * stickiness.app_cookie.cookie_name - Indicates the name of the application-based
// cookie. Names that start with the following names are not allowed: AWSALB,
// AWSALBAPP, and AWSALBTG. They're reserved for use by the load balancer.
//
// * stickiness.app_cookie.duration_seconds - The time period, in seconds,
// during which requests from a client should be routed to the same target.
// After this time period expires, the application-based cookie is considered
// stale. The range is 1 second to 1 week (604800 seconds). The default value
// is 1 day (86400 seconds).
//
2019-09-27 21:51:53 +00:00
// * stickiness.lb_cookie.duration_seconds - The time period, in seconds,
// during which requests from a client should be routed to the same target.
// After this time period expires, the load balancer-generated cookie is
// considered stale. The range is 1 second to 1 week (604800 seconds). The
// default value is 1 day (86400 seconds).
//
2020-12-01 01:06:26 +00:00
// The following attribute is supported only if the load balancer is an Application
// Load Balancer and the target is a Lambda function:
2019-09-27 21:51:53 +00:00
//
// * lambda.multi_value_headers.enabled - Indicates whether the request and
2020-12-01 01:06:26 +00:00
// response headers that are exchanged between the load balancer and the
// Lambda function include arrays of values or strings. The value is true
// or false. The default is false. If the value is false and the request
// contains a duplicate header field name or query parameter key, the load
// balancer uses the last value sent by the client.
2019-09-27 21:51:53 +00:00
//
2021-07-02 08:43:15 +00:00
// The following attributes are supported only by Network Load Balancers:
//
// * deregistration_delay.connection_termination.enabled - Indicates whether
// the load balancer terminates connections at the end of the deregistration
// timeout. The value is true or false. The default is false.
//
// * preserve_client_ip.enabled - Indicates whether client IP preservation
// is enabled. The value is true or false. The default is disabled if the
// target group type is IP address and the target group protocol is TCP or
// TLS. Otherwise, the default is enabled. Client IP preservation cannot
// be disabled for UDP and TCP_UDP target groups.
2019-09-27 21:51:53 +00:00
//
// * proxy_protocol_v2.enabled - Indicates whether Proxy Protocol version
// 2 is enabled. The value is true or false. The default is false.
Key * string ` type:"string" `
// The value of the attribute.
Value * string ` type:"string" `
}
// String returns the string representation
func ( s TargetGroupAttribute ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s TargetGroupAttribute ) GoString ( ) string {
return s . String ( )
}
// SetKey sets the Key field's value.
func ( s * TargetGroupAttribute ) SetKey ( v string ) * TargetGroupAttribute {
s . Key = & v
return s
}
// SetValue sets the Value field's value.
func ( s * TargetGroupAttribute ) SetValue ( v string ) * TargetGroupAttribute {
s . Value = & v
return s
}
2020-03-26 21:07:15 +00:00
// Information about the target group stickiness for a rule.
type TargetGroupStickinessConfig struct {
_ struct { } ` type:"structure" `
// The time period, in seconds, during which requests from a client should be
// routed to the same target group. The range is 1-604800 seconds (7 days).
DurationSeconds * int64 ` type:"integer" `
// Indicates whether target group stickiness is enabled.
Enabled * bool ` type:"boolean" `
}
// String returns the string representation
func ( s TargetGroupStickinessConfig ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s TargetGroupStickinessConfig ) GoString ( ) string {
return s . String ( )
}
// SetDurationSeconds sets the DurationSeconds field's value.
func ( s * TargetGroupStickinessConfig ) SetDurationSeconds ( v int64 ) * TargetGroupStickinessConfig {
s . DurationSeconds = & v
return s
}
// SetEnabled sets the Enabled field's value.
func ( s * TargetGroupStickinessConfig ) SetEnabled ( v bool ) * TargetGroupStickinessConfig {
s . Enabled = & v
return s
}
// Information about how traffic will be distributed between multiple target
// groups in a forward rule.
type TargetGroupTuple struct {
_ struct { } ` type:"structure" `
// The Amazon Resource Name (ARN) of the target group.
TargetGroupArn * string ` type:"string" `
// The weight. The range is 0 to 999.
Weight * int64 ` type:"integer" `
}
// String returns the string representation
func ( s TargetGroupTuple ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s TargetGroupTuple ) GoString ( ) string {
return s . String ( )
}
// SetTargetGroupArn sets the TargetGroupArn field's value.
func ( s * TargetGroupTuple ) SetTargetGroupArn ( v string ) * TargetGroupTuple {
s . TargetGroupArn = & v
return s
}
// SetWeight sets the Weight field's value.
func ( s * TargetGroupTuple ) SetWeight ( v int64 ) * TargetGroupTuple {
s . Weight = & v
return s
}
2019-09-27 21:51:53 +00:00
// Information about the current health of a target.
type TargetHealth struct {
_ struct { } ` type:"structure" `
// A description of the target health that provides additional details. If the
// state is healthy, a description is not provided.
Description * string ` type:"string" `
// The reason code.
//
// If the target state is healthy, a reason code is not provided.
//
// If the target state is initial, the reason code can be one of the following
// values:
//
// * Elb.RegistrationInProgress - The target is in the process of being registered
// with the load balancer.
//
// * Elb.InitialHealthChecking - The load balancer is still sending the target
// the minimum number of health checks required to determine its health status.
//
// If the target state is unhealthy, the reason code can be one of the following
// values:
//
// * Target.ResponseCodeMismatch - The health checks did not return an expected
2021-07-02 08:43:15 +00:00
// HTTP code. Applies only to Application Load Balancers and Gateway Load
// Balancers.
2019-09-27 21:51:53 +00:00
//
2020-03-26 21:07:15 +00:00
// * Target.Timeout - The health check requests timed out. Applies only to
2021-07-02 08:43:15 +00:00
// Application Load Balancers and Gateway Load Balancers.
2019-09-27 21:51:53 +00:00
//
2019-12-12 01:27:03 +00:00
// * Target.FailedHealthChecks - The load balancer received an error while
// establishing a connection to the target or the target response was malformed.
2019-09-27 21:51:53 +00:00
//
// * Elb.InternalError - The health checks failed due to an internal error.
2020-03-26 21:07:15 +00:00
// Applies only to Application Load Balancers.
2019-09-27 21:51:53 +00:00
//
// If the target state is unused, the reason code can be one of the following
// values:
//
// * Target.NotRegistered - The target is not registered with the target
// group.
//
// * Target.NotInUse - The target group is not used by any load balancer
// or the target is in an Availability Zone that is not enabled for its load
// balancer.
//
2020-03-26 21:07:15 +00:00
// * Target.InvalidState - The target is in the stopped or terminated state.
//
2019-09-27 21:51:53 +00:00
// * Target.IpUnusable - The target IP address is reserved for use by a load
// balancer.
//
// If the target state is draining, the reason code can be the following value:
//
// * Target.DeregistrationInProgress - The target is in the process of being
// deregistered and the deregistration delay period has not expired.
//
// If the target state is unavailable, the reason code can be the following
// value:
//
// * Target.HealthCheckDisabled - Health checks are disabled for the target
2020-03-26 21:07:15 +00:00
// group. Applies only to Application Load Balancers.
//
// * Elb.InternalError - Target health is unavailable due to an internal
// error. Applies only to Network Load Balancers.
2019-09-27 21:51:53 +00:00
Reason * string ` type:"string" enum:"TargetHealthReasonEnum" `
// The state of the target.
State * string ` type:"string" enum:"TargetHealthStateEnum" `
}
// String returns the string representation
func ( s TargetHealth ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s TargetHealth ) GoString ( ) string {
return s . String ( )
}
// SetDescription sets the Description field's value.
func ( s * TargetHealth ) SetDescription ( v string ) * TargetHealth {
s . Description = & v
return s
}
// SetReason sets the Reason field's value.
func ( s * TargetHealth ) SetReason ( v string ) * TargetHealth {
s . Reason = & v
return s
}
// SetState sets the State field's value.
func ( s * TargetHealth ) SetState ( v string ) * TargetHealth {
s . State = & v
return s
}
// Information about the health of a target.
type TargetHealthDescription struct {
_ struct { } ` type:"structure" `
// The port to use to connect with the target.
HealthCheckPort * string ` type:"string" `
// The description of the target.
Target * TargetDescription ` type:"structure" `
// The health information for the target.
TargetHealth * TargetHealth ` type:"structure" `
}
// String returns the string representation
func ( s TargetHealthDescription ) String ( ) string {
return awsutil . Prettify ( s )
}
// GoString returns the string representation
func ( s TargetHealthDescription ) GoString ( ) string {
return s . String ( )
}
// SetHealthCheckPort sets the HealthCheckPort field's value.
func ( s * TargetHealthDescription ) SetHealthCheckPort ( v string ) * TargetHealthDescription {
s . HealthCheckPort = & v
return s
}
// SetTarget sets the Target field's value.
func ( s * TargetHealthDescription ) SetTarget ( v * TargetDescription ) * TargetHealthDescription {
s . Target = v
return s
}
// SetTargetHealth sets the TargetHealth field's value.
func ( s * TargetHealthDescription ) SetTargetHealth ( v * TargetHealth ) * TargetHealthDescription {
s . TargetHealth = v
return s
}
const (
// ActionTypeEnumForward is a ActionTypeEnum enum value
ActionTypeEnumForward = "forward"
// ActionTypeEnumAuthenticateOidc is a ActionTypeEnum enum value
ActionTypeEnumAuthenticateOidc = "authenticate-oidc"
// ActionTypeEnumAuthenticateCognito is a ActionTypeEnum enum value
ActionTypeEnumAuthenticateCognito = "authenticate-cognito"
// ActionTypeEnumRedirect is a ActionTypeEnum enum value
ActionTypeEnumRedirect = "redirect"
// ActionTypeEnumFixedResponse is a ActionTypeEnum enum value
ActionTypeEnumFixedResponse = "fixed-response"
)
2020-12-01 01:06:26 +00:00
// ActionTypeEnum_Values returns all elements of the ActionTypeEnum enum
func ActionTypeEnum_Values ( ) [ ] string {
return [ ] string {
ActionTypeEnumForward ,
ActionTypeEnumAuthenticateOidc ,
ActionTypeEnumAuthenticateCognito ,
ActionTypeEnumRedirect ,
ActionTypeEnumFixedResponse ,
}
}
2019-09-27 21:51:53 +00:00
const (
// AuthenticateCognitoActionConditionalBehaviorEnumDeny is a AuthenticateCognitoActionConditionalBehaviorEnum enum value
AuthenticateCognitoActionConditionalBehaviorEnumDeny = "deny"
// AuthenticateCognitoActionConditionalBehaviorEnumAllow is a AuthenticateCognitoActionConditionalBehaviorEnum enum value
AuthenticateCognitoActionConditionalBehaviorEnumAllow = "allow"
// AuthenticateCognitoActionConditionalBehaviorEnumAuthenticate is a AuthenticateCognitoActionConditionalBehaviorEnum enum value
AuthenticateCognitoActionConditionalBehaviorEnumAuthenticate = "authenticate"
)
2020-12-01 01:06:26 +00:00
// AuthenticateCognitoActionConditionalBehaviorEnum_Values returns all elements of the AuthenticateCognitoActionConditionalBehaviorEnum enum
func AuthenticateCognitoActionConditionalBehaviorEnum_Values ( ) [ ] string {
return [ ] string {
AuthenticateCognitoActionConditionalBehaviorEnumDeny ,
AuthenticateCognitoActionConditionalBehaviorEnumAllow ,
AuthenticateCognitoActionConditionalBehaviorEnumAuthenticate ,
}
}
2019-09-27 21:51:53 +00:00
const (
// AuthenticateOidcActionConditionalBehaviorEnumDeny is a AuthenticateOidcActionConditionalBehaviorEnum enum value
AuthenticateOidcActionConditionalBehaviorEnumDeny = "deny"
// AuthenticateOidcActionConditionalBehaviorEnumAllow is a AuthenticateOidcActionConditionalBehaviorEnum enum value
AuthenticateOidcActionConditionalBehaviorEnumAllow = "allow"
// AuthenticateOidcActionConditionalBehaviorEnumAuthenticate is a AuthenticateOidcActionConditionalBehaviorEnum enum value
AuthenticateOidcActionConditionalBehaviorEnumAuthenticate = "authenticate"
)
2020-12-01 01:06:26 +00:00
// AuthenticateOidcActionConditionalBehaviorEnum_Values returns all elements of the AuthenticateOidcActionConditionalBehaviorEnum enum
func AuthenticateOidcActionConditionalBehaviorEnum_Values ( ) [ ] string {
return [ ] string {
AuthenticateOidcActionConditionalBehaviorEnumDeny ,
AuthenticateOidcActionConditionalBehaviorEnumAllow ,
AuthenticateOidcActionConditionalBehaviorEnumAuthenticate ,
}
}
2019-09-27 21:51:53 +00:00
const (
// IpAddressTypeIpv4 is a IpAddressType enum value
IpAddressTypeIpv4 = "ipv4"
// IpAddressTypeDualstack is a IpAddressType enum value
IpAddressTypeDualstack = "dualstack"
)
2020-12-01 01:06:26 +00:00
// IpAddressType_Values returns all elements of the IpAddressType enum
func IpAddressType_Values ( ) [ ] string {
return [ ] string {
IpAddressTypeIpv4 ,
IpAddressTypeDualstack ,
}
}
2019-09-27 21:51:53 +00:00
const (
// LoadBalancerSchemeEnumInternetFacing is a LoadBalancerSchemeEnum enum value
LoadBalancerSchemeEnumInternetFacing = "internet-facing"
// LoadBalancerSchemeEnumInternal is a LoadBalancerSchemeEnum enum value
LoadBalancerSchemeEnumInternal = "internal"
)
2020-12-01 01:06:26 +00:00
// LoadBalancerSchemeEnum_Values returns all elements of the LoadBalancerSchemeEnum enum
func LoadBalancerSchemeEnum_Values ( ) [ ] string {
return [ ] string {
LoadBalancerSchemeEnumInternetFacing ,
LoadBalancerSchemeEnumInternal ,
}
}
2019-09-27 21:51:53 +00:00
const (
// LoadBalancerStateEnumActive is a LoadBalancerStateEnum enum value
LoadBalancerStateEnumActive = "active"
// LoadBalancerStateEnumProvisioning is a LoadBalancerStateEnum enum value
LoadBalancerStateEnumProvisioning = "provisioning"
// LoadBalancerStateEnumActiveImpaired is a LoadBalancerStateEnum enum value
LoadBalancerStateEnumActiveImpaired = "active_impaired"
// LoadBalancerStateEnumFailed is a LoadBalancerStateEnum enum value
LoadBalancerStateEnumFailed = "failed"
)
2020-12-01 01:06:26 +00:00
// LoadBalancerStateEnum_Values returns all elements of the LoadBalancerStateEnum enum
func LoadBalancerStateEnum_Values ( ) [ ] string {
return [ ] string {
LoadBalancerStateEnumActive ,
LoadBalancerStateEnumProvisioning ,
LoadBalancerStateEnumActiveImpaired ,
LoadBalancerStateEnumFailed ,
}
}
2019-09-27 21:51:53 +00:00
const (
// LoadBalancerTypeEnumApplication is a LoadBalancerTypeEnum enum value
LoadBalancerTypeEnumApplication = "application"
// LoadBalancerTypeEnumNetwork is a LoadBalancerTypeEnum enum value
LoadBalancerTypeEnumNetwork = "network"
2021-07-02 08:43:15 +00:00
// LoadBalancerTypeEnumGateway is a LoadBalancerTypeEnum enum value
LoadBalancerTypeEnumGateway = "gateway"
2019-09-27 21:51:53 +00:00
)
2020-12-01 01:06:26 +00:00
// LoadBalancerTypeEnum_Values returns all elements of the LoadBalancerTypeEnum enum
func LoadBalancerTypeEnum_Values ( ) [ ] string {
return [ ] string {
LoadBalancerTypeEnumApplication ,
LoadBalancerTypeEnumNetwork ,
2021-07-02 08:43:15 +00:00
LoadBalancerTypeEnumGateway ,
2020-12-01 01:06:26 +00:00
}
}
2019-09-27 21:51:53 +00:00
const (
// ProtocolEnumHttp is a ProtocolEnum enum value
ProtocolEnumHttp = "HTTP"
// ProtocolEnumHttps is a ProtocolEnum enum value
ProtocolEnumHttps = "HTTPS"
// ProtocolEnumTcp is a ProtocolEnum enum value
ProtocolEnumTcp = "TCP"
// ProtocolEnumTls is a ProtocolEnum enum value
ProtocolEnumTls = "TLS"
2019-12-12 01:27:03 +00:00
// ProtocolEnumUdp is a ProtocolEnum enum value
ProtocolEnumUdp = "UDP"
// ProtocolEnumTcpUdp is a ProtocolEnum enum value
ProtocolEnumTcpUdp = "TCP_UDP"
2021-07-02 08:43:15 +00:00
// ProtocolEnumGeneve is a ProtocolEnum enum value
ProtocolEnumGeneve = "GENEVE"
2019-09-27 21:51:53 +00:00
)
2020-12-01 01:06:26 +00:00
// ProtocolEnum_Values returns all elements of the ProtocolEnum enum
func ProtocolEnum_Values ( ) [ ] string {
return [ ] string {
ProtocolEnumHttp ,
ProtocolEnumHttps ,
ProtocolEnumTcp ,
ProtocolEnumTls ,
ProtocolEnumUdp ,
ProtocolEnumTcpUdp ,
2021-07-02 08:43:15 +00:00
ProtocolEnumGeneve ,
2020-12-01 01:06:26 +00:00
}
}
2019-09-27 21:51:53 +00:00
const (
// RedirectActionStatusCodeEnumHttp301 is a RedirectActionStatusCodeEnum enum value
RedirectActionStatusCodeEnumHttp301 = "HTTP_301"
// RedirectActionStatusCodeEnumHttp302 is a RedirectActionStatusCodeEnum enum value
RedirectActionStatusCodeEnumHttp302 = "HTTP_302"
)
2020-12-01 01:06:26 +00:00
// RedirectActionStatusCodeEnum_Values returns all elements of the RedirectActionStatusCodeEnum enum
func RedirectActionStatusCodeEnum_Values ( ) [ ] string {
return [ ] string {
RedirectActionStatusCodeEnumHttp301 ,
RedirectActionStatusCodeEnumHttp302 ,
}
}
2019-09-27 21:51:53 +00:00
const (
// TargetHealthReasonEnumElbRegistrationInProgress is a TargetHealthReasonEnum enum value
TargetHealthReasonEnumElbRegistrationInProgress = "Elb.RegistrationInProgress"
// TargetHealthReasonEnumElbInitialHealthChecking is a TargetHealthReasonEnum enum value
TargetHealthReasonEnumElbInitialHealthChecking = "Elb.InitialHealthChecking"
// TargetHealthReasonEnumTargetResponseCodeMismatch is a TargetHealthReasonEnum enum value
TargetHealthReasonEnumTargetResponseCodeMismatch = "Target.ResponseCodeMismatch"
// TargetHealthReasonEnumTargetTimeout is a TargetHealthReasonEnum enum value
TargetHealthReasonEnumTargetTimeout = "Target.Timeout"
// TargetHealthReasonEnumTargetFailedHealthChecks is a TargetHealthReasonEnum enum value
TargetHealthReasonEnumTargetFailedHealthChecks = "Target.FailedHealthChecks"
// TargetHealthReasonEnumTargetNotRegistered is a TargetHealthReasonEnum enum value
TargetHealthReasonEnumTargetNotRegistered = "Target.NotRegistered"
// TargetHealthReasonEnumTargetNotInUse is a TargetHealthReasonEnum enum value
TargetHealthReasonEnumTargetNotInUse = "Target.NotInUse"
// TargetHealthReasonEnumTargetDeregistrationInProgress is a TargetHealthReasonEnum enum value
TargetHealthReasonEnumTargetDeregistrationInProgress = "Target.DeregistrationInProgress"
// TargetHealthReasonEnumTargetInvalidState is a TargetHealthReasonEnum enum value
TargetHealthReasonEnumTargetInvalidState = "Target.InvalidState"
// TargetHealthReasonEnumTargetIpUnusable is a TargetHealthReasonEnum enum value
TargetHealthReasonEnumTargetIpUnusable = "Target.IpUnusable"
// TargetHealthReasonEnumTargetHealthCheckDisabled is a TargetHealthReasonEnum enum value
TargetHealthReasonEnumTargetHealthCheckDisabled = "Target.HealthCheckDisabled"
// TargetHealthReasonEnumElbInternalError is a TargetHealthReasonEnum enum value
TargetHealthReasonEnumElbInternalError = "Elb.InternalError"
)
2020-12-01 01:06:26 +00:00
// TargetHealthReasonEnum_Values returns all elements of the TargetHealthReasonEnum enum
func TargetHealthReasonEnum_Values ( ) [ ] string {
return [ ] string {
TargetHealthReasonEnumElbRegistrationInProgress ,
TargetHealthReasonEnumElbInitialHealthChecking ,
TargetHealthReasonEnumTargetResponseCodeMismatch ,
TargetHealthReasonEnumTargetTimeout ,
TargetHealthReasonEnumTargetFailedHealthChecks ,
TargetHealthReasonEnumTargetNotRegistered ,
TargetHealthReasonEnumTargetNotInUse ,
TargetHealthReasonEnumTargetDeregistrationInProgress ,
TargetHealthReasonEnumTargetInvalidState ,
TargetHealthReasonEnumTargetIpUnusable ,
TargetHealthReasonEnumTargetHealthCheckDisabled ,
TargetHealthReasonEnumElbInternalError ,
}
}
2019-09-27 21:51:53 +00:00
const (
// TargetHealthStateEnumInitial is a TargetHealthStateEnum enum value
TargetHealthStateEnumInitial = "initial"
// TargetHealthStateEnumHealthy is a TargetHealthStateEnum enum value
TargetHealthStateEnumHealthy = "healthy"
// TargetHealthStateEnumUnhealthy is a TargetHealthStateEnum enum value
TargetHealthStateEnumUnhealthy = "unhealthy"
// TargetHealthStateEnumUnused is a TargetHealthStateEnum enum value
TargetHealthStateEnumUnused = "unused"
// TargetHealthStateEnumDraining is a TargetHealthStateEnum enum value
TargetHealthStateEnumDraining = "draining"
// TargetHealthStateEnumUnavailable is a TargetHealthStateEnum enum value
TargetHealthStateEnumUnavailable = "unavailable"
)
2020-12-01 01:06:26 +00:00
// TargetHealthStateEnum_Values returns all elements of the TargetHealthStateEnum enum
func TargetHealthStateEnum_Values ( ) [ ] string {
return [ ] string {
TargetHealthStateEnumInitial ,
TargetHealthStateEnumHealthy ,
TargetHealthStateEnumUnhealthy ,
TargetHealthStateEnumUnused ,
TargetHealthStateEnumDraining ,
TargetHealthStateEnumUnavailable ,
}
}
2019-09-27 21:51:53 +00:00
const (
// TargetTypeEnumInstance is a TargetTypeEnum enum value
TargetTypeEnumInstance = "instance"
// TargetTypeEnumIp is a TargetTypeEnum enum value
TargetTypeEnumIp = "ip"
// TargetTypeEnumLambda is a TargetTypeEnum enum value
TargetTypeEnumLambda = "lambda"
)
2020-12-01 01:06:26 +00:00
// TargetTypeEnum_Values returns all elements of the TargetTypeEnum enum
func TargetTypeEnum_Values ( ) [ ] string {
return [ ] string {
TargetTypeEnumInstance ,
TargetTypeEnumIp ,
TargetTypeEnumLambda ,
}
}